Brass Lantern
the adventure game web site


Choosing a Text Adventure Language

by Stephen Granade

Sometimes the most difficult part of a project is knowing where to begin. When it comes to writing a text adventure, the first step is often choosing a specialized language to use. But which language? The Interactive Fiction Archive has around forty such languages archived. How do you narrow your search enough to choose one?


Narrow it by considering the trade-offs involved in picking a language. Each language has weaknesses and strengths. By deciding what characteristics best fit your needs, you can better choose which languages will work for you.

There is a trade-off between ease of use and power, for example. Some languages emphasize power and flexibility but have a relatively steep learning curve. Other languages attempt to flatten that learning curve, but do so at the price of limited flexibility, thus shackling experienced users. It's like the difference between menus and keyboard shortcuts. When you're learning a program, the menus help you remember what commands are possible; after you're an experienced user, keyboard shortcuts help you work faster and more efficiently.

Whether a language is new or old is important. Old languages are more stable and have more of the bugs worked out. In addition, with an older language you have more sample code to learn from. Newer languages give you the opportunity to play a big role in their development. The developers of such languagues likely get less feedback, and thus can give you more personalized attention and can more readily incorporate your suggestions into the language.

You should also consider portability versus system-dependent bells and whistles. Languages which run on only one or two operating systems can better provide such niceties as graphics and sound support, or features such as a compass rose, automapping, or a mouse-driven interface. On the other hand, if you write a game using a language which has been ported to many operating systems, many more people will be able to play your game.

Keep these considerations in mind as you read through the short list of languages I've made. This list is by no means complete; instead, it's meant to give you a flavor of what languages are available.

The Languages

SUDS. SUDS is a Windows-only system for writing adventure games which stresses ease of use above all. Instead of editing source files with a text editor, which most other systems require, you create your game by filling in entries in dialog boxes. Unlike other languages, you do not play SUDS games by typing in commands; instead, a mouse-driven interface is used. SUDS arrived on the scene in mid-1999, and is freeware.

ADRIFT. Like SUDS, ADRIFT is a Windows-only program for creating text adventures. ADRIFT allows the addition of graphics and sound to adventures. You can play ADRIFT games for free, but the Generator, used for writing adventures, is shareware and costs $17. In the last few years ADRIFT has been gaining in popularity, and the ADRIFT community is strong and committed.

ALAN. For a long time, AGT was the beginner's language of choice; of late, that role has been played by ALAN. ALAN has been around since 1985, but is only now enjoying a surge in popularity, and source code for ALAN games is scarce. ALAN is pitched at beginners. To create your game, you edit text files, compile those files using the ALAN compiler, and then run the resulting game file to test the result. ALAN runs on a number of different operating systems, and is freeware. Similar languages: Quest, AGT.

Inform, TADS, and Hugo. I list these three languages together because they are more similar to each other than dissimilar, especially when compared with the languages above. All use the same procedure as ALAN: compose your game in text files, compile those games using a compiler, then run the compiled game. TADS is the oldest of the three, having been first developed around 1987. Inform appeared in 1993, and Hugo in 1995. Inform is the most widely-ported; Hugo and TADS are relatively well-ported. Both Hugo and TADS support graphics and sound readily, though it is possible to add graphics and sound to Inform games. All three are freeware.

Next | 1 | 2

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