16 Aug 2008

Infocom games, using your voice

I have a long history with Infocom games (“text adventures” was what I called them as a kid, and “interactive fiction” is the new name). People still write these games, did you know that? There’s a big archive and an annual competition. I haven’t played any of the non-Infocom variety, though I think I ought to try one. I have copies of all the data files for all the original Infocom games from the 80s, and for years there has been an open-source program to load these files and let you play the games. It’s called Frotz. I’ve had a version of Frotz on all my computers for the last 12 years, including my various Palm PDAs. The only Infocom game I’ve ever finished in my life (making it one of like 5 games of any variety that I have ever finished) was “Enchanter”, which I played on the Palm. The latest incarnation of Frotz is for the iPhone, and so of course I downloaded it right away.

PDAs in general are not the easiest devices to type on, though, and there’s lots of typing in Infocom games. So it occurred to me that it would be really cool to speak the commands. After all, there is a limited vocabulary, which should be ideal for getting good accuracy from automatic speech recognition, and furthermore the engine should require a pretty small amount of data. On top of that, what if Frotz synthesized a (pleasant, configurable) computer voice to read you all the text in the game? Then you could set the iPhone down in front of you, close your eyes, and enjoy a nice bit of interactive fiction by having a dialog with thin air. All of a sudden the very stodgiest and oldest of technology leapfrogs three decades of competition and actually sounds futuristic! I patted myself on the back for thinking of such a great idea, and told myself I’d take a stab at it myself “one day,” since speech recognition is just a hop, skip and a jump away from machine translation.

But that’s not all, there’s a punchline to this story. It further occurred to me that I wouldn’t have been the first to think of this idea, so I did a Google search. The link I found is inside a code repository for Frotz itself, namely the iPhone version. Actually, this is just a branch of Frotz, so I checked the general Frotz SourceForge repository as well and the same file is there too. It’s a placeholder for future work on just this idea, but it’s super-vague and kind of creepy, what with the whole “commissioned by a presently undisclosed party” thing. The technology looks good, it’s all open-source stuff released by academics, which was where I figured I would start looking as well.

So who wrote this document, and when, and when do they intend to come out of the shadows with the result of their work? Who knows — but it sure is a weird end to my story.