Learning Zork Implementation Language, by Steve Meretzky

Back in the days of hallowed Infocom, the people who made a living making text adventures better than anyone else ever has before or since, life was often pretty harrowing. They had some huge hits, like Zork, Planetfall and The Hitchhiker’s Guide to the Galaxy, but as time passed and graphic adventures took up more and more of the market, It became harder to make the case for a purely textual medium.

Infocom tried different things to diversify, like a weird computer and board game called Fooblitzky, and an office software package called Cornerstone. In the end they got bought out by Activision, which had renamed itself to “Mediagenic.” But that’s a story for another time.

There was a period where earlier Implementors, or “imps,” had left the company, so it was left to remaining employee Steve Meretzsky, the creator of the afore-mentioned Planetfall, and co-author with Douglas Adams of the Hitchhiker’s Guide game, to write a manual to tell new hires how to use their bespoke development tool, ZIL, to make text adventure games.

This is that manual (78 pages), preserved on the Internet Archive. And it’s great! Steve had made multiple successful games with it and knew his stuff. He didn’t know everything about it, and at multiple points appeals to a mystery Stu, who was probably Stu Galley, fellow imp. We don’t know if he ever filled in those holes when talking to people. Stu passed away in 2018, so I guess it’s a moot point now.

Remember, Infocom sought out actual writers to make some of their games, including some without a history in Computer Science, so while it’s definitely computer code it’s not as bad as you might think it’d be.

Meretzky is a fine and funny writer, and his personality shines through the document. And he’s a good teacher too, I feel like I could use this to make games with ZIL, while Inform 7, while I understand it is also great and has extensive documentation with lots of examples, I couldn’t handle.

ZIL is a Lisp-like language, where everything is lists. It compiles to “Z-code,” a virtual machine that was run by Infocom’s interpreter (which is the secret of their many ports to different computer platforms of that era), and of which there are now many different free and open source ports like Frotz and Gargoyle. So you could use this to write a ZIL game, use ZILF and ZAPF to build it, and run it in Frotz. As Exercise Three in the manual, Meretzsky tasks the read with building a complete game, collaborating with the Infocom marketing department to design a box for it, and then selling 250,000 copies. That’s pretty difficult since Infocom is gone and it’s essentially impossible now to sell text adventures for money. Maybe you’ll find a way.

Learning ZIL, or, Everything You Always Wanted To Know About Writing Interactive Fiction But Couldn’t Find Anyone Still Working Here To Ask (Internet Archive, PDF)

A Complete Playthrough of the Original Zork Games

Three videos of a Youtuber called SwimYBO going through all three of Infocom’s classic Zork games. Zork was originally made for the PDP-10 by a number of students at MIT as a larger and funnier version of Colossal Cave, and was made all as one game. When remade for a variety of home microcomputers at the time, it was written in a special language, ZIL, for a virtual machine called the Z Machine. So, the game writers wrote their games once for ZIL, which had a Z Machine written for each of the target platforms. This explains how they were able to relatively easily port for every platform under the sun, back when there were over a dozen, and also why most of their games looked like they were the output of a simple terminal emulator.

Infocom was bought by Activision, used as a brand for a number of weird titles like an NES game, and eventually the Zork name would be applied to a pair of Windows graphic adventures. The property currently lies dormant in the hands of an uncarring megacorp, along with many other old computer game settings, characters and properties from over the proliferating decades of time since Pong.

Anyway. SwimYBO’s playthroughs go through the entire game and reveal all the puzzles and solutions, but they do leave some of the descriptions and game lore unrevealed for a player who might come to them later.

Zork I (“The Great Underground Empire,” 29 minutes):

Zork II (“The Wizard of Frobozz,” 30 minutes):

And Zork III (“The Dungeon Master,” 34 minutes):

The Digital Antiquarian on the Infocom Z-Machine

The Digital Antiquarian‘s website contains a wealth of information, but rather than let my works get too gummed up in describing it all right now, here’s is one page from 2012, on the creation of ZIL, the Zork Implementation Language, and the virtual machine that runs it, the Z-Machine.

When we left off last time, Marc Blank and Joel Berez were considering how to bring Zork to the microcomputer. Really, they were trying to solve three interrelated problems. At the risk of being pedantic, let me lay out them for you:

1. How to get Zork, a massive game that consumed 1 MB of memory on the PDP-10, onto their chosen minimum microcomputer system, an Apple II or TRS-80 with 32 K of RAM and a single floppy-disk drive.

2. How to do so in a portable way that would make it as painless as possible to move Zork not only to the Apple II and TRS-80 but also, if all went well, to many more current and future mutually incompatible platforms.

3. How to use the existing MDL source code to Zork as the basis for the new microcomputer version, rather than having to start all over again and implement the game from scratch in some new environment.

The Digital Antiquarian

The Digital Antiquarian: ZIL and the Z-Machine