Some months ago I started noodling around with Inform, a “natural language” programming language for making interactive fiction. (That’s text adventures to you old timers.) My impressions of the language have gone through the following stages:
1) Bullcrap. You can’t code without writing code.
2) Hmph. Okay, so it works. Kind of an interesting novelty.
3) You know, it’s actually kind of useful and unique.
4) Unbelievable. This thing is amazingly powerful!
As a programmer, learning to code with prose is like a mathematician learning to do math with his feelings. I think I would have found it easier if I hadn’t known how to program in the first place. But even so, the complexity and functionality you can compress into a few simple sentences is boggling.
I managed to make a game with it. I’ve been sitting on this for a while, trying to get up the enthusiasm to finish the thing while at the same time worrying that I’ve wasted all the time I’ve already spent. I’ve never written puzzles before. Heck, I’ve never written interactive fiction before. Is this any good? Is it too hard? Too easy? Are there spots where the game just stops being fun?
And then I realized the best way to answer these questions is to let other people play it and ask them what they think. Genius, I know.
Below is the game. It needs some Java
script applet dealie to run. If it doesn’t work in your browser or you don’t trust it, then I can’t really do much to help. The thing is also stone-age simple. You can’t even use the up arrow to recall previous commands. Sorry. I’d fix that if I could. That’s all handled by the applet, and is out of my hands. If anyone has a better web-based Z Machine interpreter I’d be happy to use it. If you have your own Z machine interpreter, you can get the .z8 file and run it yourself.)
I want to stress that the game isn’t done. It ends at about the 90% complete mark. The game needs a good day or so of work on my part to finish it up, and what I do with it from here will depend a lot on the feedback I get. If you want to play something polished, then it’s probably best to hold off for now.
Up, Down, North, South, East, West
verbose – Gives the description to a room every time you enter.
look – Will describe the room you’re in.
inv – lists all the stuff (weapons) you’re carrying.
Things I’m looking to find out:
1) Some people will plow through, others will stop and examine every little thing. But I would like to get some sort of ballpark figure for how long the game is.
2) How were the puzzles? Where did you get stuck? Which puzzles seemed sort of insultingly easy?
3) Any situations where the parser seemed to be excessively idiotic? I usually try to set things up so that if you need to use a butterknife to turn a screw you can call it a “knife” or “butterknife” or “screwdriver” and the game will get what you’re talking about. But it’s very easy to screw this up and leave the player baffled as to how to tell the game to do a thing.
4) Occasions of tpyos, spelling errers, and bad grammar is to be reporting.
Go ahead and post spoilers or exchange puzzle solutions in the comments. A primitive map is also available, if you like.
And to be clear – you’ll know the end. There’s a little text from me saying “Thanks for playing” or somesuch.
Diablo III Retrospective
We were so upset by the server problems and real money auction that we overlooked just how terrible everything else is.
The Game That Ruined Me
Be careful what you learn with your muscle-memory, because it will be very hard to un-learn it.
Quakecon 2012 Annotated
An interesting but technically dense talk about gaming technology. I translate it for the non-coders.
Lost Laughs in Leisure Suit Larry
Why was this classic adventure game so funny in the 80's, and why did it stop being funny?
Trashing the Heap
What does it mean when a program crashes, and why does it happen?