Since 2010, the year I entered my Apple II horror adventure Leadlight into the Interactive Fiction Competition, I’ve got into text adventuring anew. I’ve been making new games using Inform 7, playing games, reviewing games and helping with competitions. Prior to that, there’s a big chunk of time where I had little to do with text adventures, except to occasionally replay an Apple II adventure from the 1980s. But before that, back in primary school and high school, I was busy playing lots of adventure games, failing to solve most of those I tried, and making a good number of my own.
I think that the first text adventure I ever made which included a parser was Demon-Killer. I think I did this somewhere between ages 9-12. Programming wise, it’s as simple as can be, as I’d had no guidance on how to construct this kind of game. I was just trying to reproduce in BASIC what I saw other adventure games doing. Demon-Killer has no internal database of verbs, locations or anything else. It hops around with GOTO statements, prints each room description, lets the player type something, then manually checks to see if what they typed was relevant to the location. This means, for instance, that if you find an object, you can only LOOK at it in the room you found it. At any other time, the game isn’t checking to see if you typed LOOK (thing you just found).
I only made a text adventure game this way a few times. At some point afterwards, my dad bought me the Usborne book Write Your Own Adventure Programs for Your Microcomputer. This book changed my life the way some religious tome no doubt changed the life of some person I don’t know. It imparted brilliantly the knowledge and code needed to build a parser and database-driven adventure game from scratch in BASIC. The book already catered specifically to all of the following 8-bit machines — the 48 kB Spectrum, the TRS-80, the Apple II, the Dragon, the Vic-20, the ZX81, the Oric, the BBC and the Commodore PET — and would have worked for other 8-bit systems, too, with a little code-tweaking. It was not only technical, but gave advice on plot and puzzle ideas, and had cool illustrations. I’ve seen a lot of folks online say stuff like, "Pretty much all I know about programming, I owe to those Usborne books," and that’s largely how I feel. Well, to the books and my dad.
The funniest parts of Demon-Killer when I look at it today are the instant deaths (you can die on the first move), the unhelpful instructions and the fact that I run an honesty check on the player at one point. I remember the reason I put that question in was because I thought it made it feel like you were actually doing something in the last room, instead of just arriving and winning automatically.
wade_dos33_a.zip (Contains wade_dos33_a.zip.dsk)
To start the game, type RUN DEMON-KILLER and press return. This is a DOS 3.3 disk, so use ALL CAPS or your commands will fail with SYNTAX ERRORs. The programs on the disk also interpret lowercase input as garbage.
Demon-Killer basically understands N, S, W, E, LOOK (THING), READ and GET — and not all of those all of the time. The first adventure games I played were the Sierra ones, like Mystery House (the first ever to have graphics) and Wizard and the Princess. The way you examined objects in those games was by typing LOOK (THING) so that’s how you do it in Demon-Killer. I must have already played some Scott Adams games at this point, too, because the message I put in along the lines of "IT’S DANGEROUS TO MOVE IN THE DARK!" is definitely Scott-speak.
So above I’ve mentioned all the commands needed to win Demon-Killer. Note also that nouns must be typed in full (though the game hardly knows any) and that to type in more than two words at the prompt is pointless. Also — and this point is crucial — If you have to answer a Yes/No question by typing something and pressing RETURN, only type Y or N. If you type the full word, the game won’t understand because it’s not very smart, and maybe you’ll die or be ignored or something.
Having said all this, Demon-Killer is so short and simple that I suspect that an adventurer of today, armed with the knowledge contained in the previous two paragraphs, will be able to play it three times in about six minutes, die three times in six minutes, and win the whole thing in six minutes.
N.B. When you die, you’re dumped into the Apple II’s BASIC prompt. To replay, just type RUN and press RETURN.