My first encounter with text adventure games was back in the fall of 1980 when I got a job with a communications engineering company. The company ran a Data General Eclipse minicomputer, and one of the programs on it was the original Colossal Cave Adventure program written back in the late 1970s. Several of us in the office would stay quite late to sit in the terminal room and explore the virtual world, asking each other for help when the puzzles were particularly challenging. We all spent a fair amount of time typing one- or two-word commands at the cursor hoping we were on track to unravel the puzzles sprinkled throughout the game. Soon after that, I purchased a Texas Instruments TI-99/4A computer, and I was delighted to find a whole series of adventure games by Scott Adams.
It was late in 1981 when I acquired my first IBM PC that I also got my first game for it: Deadline by Infocom. Infocom was a company that specialized in what they termed “Interactive Fiction,” that is, text adventure environments written in sophisticated prose format. (Infocom was the company that produced the Zork series of games.) The game natural language parser was also able to “understand” short sentence input rather than simply two-word phrases. It was then that my taste for text adventures–Interactive Fiction–grew to the point where I began to write my own. The language available to me on my PC was BASIC, and I wrote thousands of lines of procedural code to build my games. Over the years I’ve used BASIC, Pascal, C, C++, Lingo, Java, and even LISP to build my games.
Several years ago, I discovered the Inform software (currently Inform 7) development system. Inform is an environment specifically design to author Interactive Fiction. The language of Inform is set up to support the conventions of Interactive Fiction, which makes it easier to program these types of game. For example, if I wanted to set up a space where there was a Kitchen and a Dining Room, with the Kitchen to the north, I would enter into the Inform 7 engine simply:
> Kitchen is a room.
> Dining Room is a room.
> Dining Room is south of the Kitchen.
At that point, when I run the program I find myself starting out in the Kitchen location. If I then type “s” (for south) at the prompt, I see that I have moved into the Dining Room–and I can type “n” to move back to the Kitchen. Of course, the Inform 7 programming environment supports much more than moving around virtual locations, but the exciting thing is that it takes care of the programming underpinnings while the author/programmer can focus on the logic of the game itself. That is very appealing. One can relatively easily create objects to be manipulated, characters with which to interact, and so on.
It is the simplicity of the Inform 7 development environment that has me thinking that the future of computer games in the teaching and learning environment is in Interactive Fiction. Currently, this is the one game format that has all the compelling benefits of play with an implementation ease that means faculty members and instructional designers would be able to create game modules in short order (and at no cost) in order to directly support course assignments. This is what will make a difference from an instructional design point of view.