Text adventures, engine design on its head
I’ve been working on a text adventure engine in the back of my mind, on the back of envelopes, and after hours of wearing myself out on paying projects. It’s an interesting domain that’s already well-solved, though the Inform approach is a bit encompassing for my tastes. And I find that encompassing hints at complex, something that tends to bleed all over the people using the software in one way or another.
So I’m looking to make text adventures easier to develop, more like writing books. Well, the concept of writing a book is nearly out of date now, at least in the traditional sense. I want to make text adventures more like free-form writing, period. About the writing, about the game, about the players, and nothing else.
The Inform approach abstracts the concepts of language, and of adventure games. It knows when your grammar is inconsistent, it helps with story flow and testing. In a sense these features are really cool, but I’m not sold that they’re required to make great text adventures, at least not in richer user interfaces. Things like correct grammar and story flow are something that a large number of readers can improve just as well as clever code, except that with people involved there’s the added bonus of social context. The social interaction is good for several other things too, like ego-inflation, rating systems, collaborative play, and testing.
That balance is always interesting too, where you pivot and limit domain abstractions, user interactions, and depth of features. It’s something I’ve been thinking a lot about in other areas too, like the concept of how SQL abstracts data storage versus more concrete representations. Most problems can be considered in that way too, you just need to let yourself wander between ways of thinking about it, and be open to ways of solving problems that turn problems on their head.

RSS