Brass Lantern
the adventure game web site


Downloading and Running Text Adventures

by Stephen Granade

Table of Contents
• Introduction
• Basic Structure
• Hugo
• Alan
• Z-Code
• TADS 3
• Glulx

Let's face it: if you haven't played a modern text adventure before, chances are you'll have some trouble even figuring out how to get one to run on your computer. The talk of interpreters and runtimes and virtual machines is enough to make you give up before you even really get started.

If you find yourself confused by the terminology or unsure as to just what you need to download to play interactive fiction, this guide should help. Note that I won't be talking any about what to do once you actually start playing one of these new-fangled games. If you're looking for a guide to playing text adventures, you will need to look elsewhere.

Basic Structure

Most modern text adventures come in two pieces: the game file, and the interpreter.

I can hear the question already: "Why these two pieces?" There is a reason behind such a division, and it does make sense. Honest. Let's say you're going to write a text adventure. You want as many people as possible to play your game, especially since there aren't that many who are interested in interactive fiction. Ideally that means your game will need to be available on all kinds of computers running all kinds of operating systems, from Windows to MacOS to Linux to PalmOS.

You could try porting your game to each of these computers, rewriting it so that it ran on all of these different systems. It wouldn't be as difficult as porting a modern game with graphics, but it would still be a lot of work. And you'd have to have access to a Mac and to Windows and to Linux and to a Palm or Handspring....

Or you could save yourself some time and energy by dividing your game into the data, which describes your particular game, and the engine, which won't really change from game to game. Then you only have to port this engine to new systems, as the data won't change from computer to computer. You will still need access to many computers, or to volunteers who have those computers, but there will be less to port. There's an additional benefit: if later you write another text adventure, you won't have to port that adventure. By porting the engine now you can save yourself time and energy in the future.

That engine is a virtual machine, the equivalent of a computer created out of software instead of transistors and chips. (See, it's "virtual" because it doesn't really exist except as electrical impulses. Oh, those wacky computer science types.) Once it runs on a given computer, all of the software (in this case, text adventures) written for the virtual machine will run on that computer. Java is one language which runs on a virtual machine; most modern text adventures run on virtual machines as well.

Even if you never plan on writing a text adventure, virtual machines are good for you. Once you've downloaded the program which implements a given virtual machine on your computer, called an interpreter, and customized that interpreter, you won't have to re-customize it for the next game you play. As an added bonus, you'll have less to download in the future, since you won't need to get the interpreter again.

That's why most modern adventures come in two pieces. Once you've downloaded a game file, you'll need to make sure you have the appropriate interpreter. Oh, and the interpreter may be called a runtime or engine or somesuch as that. Don't be fooled: they're all talking about the same thing.

The file names of game files tend to end in strange extensions such as .gam or .z5. If you download these files using a web browser, your browser may not know that these are supposed to be binary files and should be saved as such. If you download a game using your browser and can't get it to run, try right-clicking (or clicking and holding on a Mac) the link and selecting the option to "Save link as" or "Download link to disk".

Before I move onto specific systems, one final note: I will often make reference to a directory on the IF Archive. The IF Archive is a big repository of interactive fiction resources, including interpreters and game files. If you're unfamiliar with the archive, I recommend that you take at least a brief glance at my guide to the archive.

Next | 1 | 2 | 3 | 4

About Us | Contact Us | Technical Info | History
Copyright © 1997-2010, Stephen Granade.