When a new game is announced, most of us will often make a mental note to check back at a later date for more information, such as screens, videos, or previews. But rarely do we head off and start building usable components before a single game build has seen the light of day.
It has been only a month since Minecraft creator Markus "Notch" Persson made the announcement of his next game, 0x10c, yet already developers have latched onto the game's hook, a programmable 16-bit computer, and re-created an ecosystem of programs for it.
Entire operating systems, games, and other applications have been created without the release of a single bit of game code; the motivating spark was simply the specification for the DCPU-16 chip to be used in the in-game computer.
0x10c is a space simulation game built on the premise that the space race never stopped, such that by the 1980s, space travel was increasing among the rich and powerful of society. As often happens in sci-fi, cryogenics started to be developed and were compatible with the 16-bit computers of the era. But thanks to an encoding error in the drivers between the computers and the cryogenic cells, people were put to sleep for 2^48 years, rather than the 1 year intended. These poor people have started waking up in the distant future on a spaceship packed with 1980s technology, at a time called the Degenerate Era when the stars have stopped forming, the universe is decaying, and black holes are starting to dominate.
What really separates this game is that you will have three of the DCPU-16 computers on your ship, and they are completely player programmable. Notch will not be supplying an operating system or any applications for the DCPU-16; it will all need to come from the player community. Notch has stated that malware will be possible because players will be able to trade programs on in-game 1.44MB floppy disks.
While it may sound a bit much to expect people to get their heads around, people have already developed applications such as minesweeper games, development kits, and even an entire multitasking operating system. One group has even declared itself an unofficial standards committee to provide guidelines to programmers, and the popular code hosting site GitHub has added support for DCPU-16 files.
That this has appeared in less than four weeks, based on nothing more than this single page is staggering.
What makes it even more surprising is that so far, almost all programming has had to happen using assembly language, the lowest programming that a person can do without manipulating individual 1s and 0s. Assembly used to be the best way to program for games, and it provides the most control and efficiency to the programmer, but it can be laborious and difficult to work with. An example of a game written in assembly is Prince of Persia for the Apple II: take a look at this file to see why programmers moved on to other languages such as C.
It's a common occurrence nowadays for games to drip-feed potential gamers a series of teaser trailers to tide them over and keep the heat in a game's hype bubble via social networks and press. Crytek showed how it's done last week with its latest trailer for an upcoming CryEngine release. Make no mistake, the CryEngine will be great (and probably need a supercomputer to run), but gamers cannot create anything substantial for it today. They must wait patiently until Crytek deems that the technology is fit to ship.
By contrast, a 0x10c user could start with a DCPU-16 assembly tutorial and start making programs to take into the game with them when 0x10c is released.
If Notch decided to end his work on 0x10c, it's likely that niche websites dedicated to making programs for the DCPU-16 would continue. If Crytek ended work on CryEngine, not much would be left for users other than a handful of YouTube videos and inflated expectations.
Before an alpha or beta build has been released, Notch has managed to spawn a vibrant community that is creating better tools each day for the archaic 16-bit processor. When a playable version of 0x10c is finally released, the cornucopia of programs immediately available will provide an extra layer of richness that few games that use user-generated content can offer.
The bar for creating hype and anticipation for a game has been raised--passive engagement with videos and previews has worked in the past, but 0x10c shows that providing a mechanism for gamers to construct an entire environment while the game is in development is the new gold standard of engagement.
In the future, allowing users to contribute to the game ecosystem will not be restricted to programming; it may be images, video, or text. It just happens that, as with many inventions and ideas, that the future had to arrive via the nerdy vein of science fiction before becoming mainstream science fact.
Chris Duckett is the editor of TechRepublic Australia. You can read more of his work here.