123
-=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- (c) WidthPadding Industries 1987 0|302|0 -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=- -=+=-
Socoder -> Question of the Day -> QOTD : Compression

Thu, 20 Aug 2009, 06:10
Afr0
How small do you think it is possible to make a game?
Will it ever be possible to release a game with an executable that is 1 byte in size?

-=-=-
Afr0 Games

Project Dollhouse on Github - Please fork!
Thu, 20 Aug 2009, 06:20
Jayenkai
No.
1 byte isn't enough information. You need to be able to decompress the thing, and without any true information on how to do it, that's not going to happen.

What you could do, is release an engine with 256 games already in it, hide them all, then release little single byte files that unlock each of the games, and freak everyone out, thinking the 1 byte files contain the code, and the engine is just the decompressor.

..
But that would suck.

Having said that, small games are still possible. There's craploads of good examples over at Pouet.net... Neat stuff, but I don't particularly feel like figuring out how to do all that!!

-=-=-
''Load, Next List!''
Thu, 20 Aug 2009, 09:59
HoboBen
133 bytes to download a file and execute it

Not bad!

-=-=-
blog | work | code | more code
Thu, 20 Aug 2009, 10:46
shroom_monk
You couldn't possibly have a game that is only 1 byte large, because there would only be 256 possible combinations of data it could hold, which would never be enough for a game.

-=-=-
A mushroom a day keeps the doctor away...

Keep It Simple, Shroom!
Thu, 20 Aug 2009, 10:51
Afr0
You couldn't possibly have a game that is only 1 byte large, because there would only be 256 possible combinations of data it could hold, which would never be enough for a game.


No, it wouldn't be enough for a game.
But would it be enough for a compression algorithm?
It might be if it was mutating.

-=-=-
Afr0 Games

Project Dollhouse on Github - Please fork!
Thu, 20 Aug 2009, 14:46
Jayenkai
No, it'd be more of a hash, since you just cen't get stuff back out..

eg, if "The way my head feels after a really big bar of chocolate, makes me want to lie down a lot." becomes "7", and "The way my leg feels after I run for 7 miles makes me want to lie down a lot." becomes "7" .. Even if your compression made complete and total sense, how would you possibly be able to get it back out again, when they're both just 7.

-=-=-
''Load, Next List!''
Thu, 20 Aug 2009, 14:55
Afr0
Need I mention that it would be able to hold lots more than 256 possible combinations?

1 byte equals 8 bits.
Which means "The way my head feels after a really big bar of chocolate, makes me want to lie down a lot." could become 01, and "The way my leg feels after I run for 7 miles makes me want to lie down a lot." could become 010 and so on...

Edit: Theoretically you could hardcode the data of an entire bitmap to correspond to 01, another bitmap to correspond to 010, and so on. Sure, it'd be hardcoded and messy, but it'd work!

-=-=-
Afr0 Games

Project Dollhouse on Github - Please fork!
Thu, 20 Aug 2009, 15:10
Scherererer
no, 8 bits can only have 256 combinations. It's 2^8=256. Meaning that even if you had an interpreter to convert 01 to "The way my head feels after a really big bar of chocolate, makes me want to lie down a lot.", there could still only be 256 "sentences" total. So again, you'd need some kind of interpreter like tikihead was saying in order to make it work, which would mean you need more than 1 byte to do it.

-=-=-
YouTube Twitter
Computer Science Series: Logic (pt1) (part 2) (part 3) 2's Complement Mathematics: Basic Differential Calculus
Fri, 21 Aug 2009, 06:44
JL235
You could produce a game that only used 1 byte for storing the games state. That would be interesting to see.

Perhaps a future WW?
Fri, 21 Aug 2009, 07:15
mindstorm8191
Please don't forget, people, that executables are actually already compressed .com files. These .com (short for command) files are what the computer actually processes.

Even if you made an application in assembly, I don't think even one command would fit into a single byte.

-=-=-
Vesuvius web game
Fri, 21 Aug 2009, 13:51
Phoenix
Have a search for 32 byte intros. The effects usually aren't breathtaking, but they show that it's possible to get really small. One byte is completely impossible though, as already stated. Even a simple mov instruction will consume several bytes.