Friday, July 17

Doomception: How modders got Doom to run inside of Doom

Video of the GZDoom mod that plays Doom in an in-game cabinet.

Since the original Doom was released as open source code in the late '90s, hackers and modders have taken great joy in porting it to everything from Android Wear watches to printers. Now, those efforts have reached what may well be their zenith, with the release of a new mod that allows you to run a copy of Doom inside Doom itself.

OK, if we're being technically accurate, this is actually Doom running inside GZDoom, a heavily modified Doom source port that was first released in 2005 to bring a slew of modern gaming features to the 1993 original. The author also warns that the in-game versions of Doom and Wolfenstein 3D available in the mod are only "semi-complete." Still, the sheer amount of near-pointless effort and dedication needed to get GZDoom to run what is essentially a version of itself within itself is impressive (and kind of frightening).

Porting Doom to GZDoom was made possible through some elegant work on Action Code Script (ACS), a tool first introduced to the Doom engine in 1995's Hexen. ACS was designed to allow modders to create more interactive environments through simple bytecodes that did things like open doors, play sounds, or move items and characters around in response to player actions. The basic bytecode-based language in that game was later extended in the ZDoom source port to allow for high-level programming features like named scripts, functions, arrays, and entire libraries. Those additions made their way into the later GZDoom as well.

Read 2 remaining paragraphs | Comments

No comments:

Post a Comment