It had really ought to come in a packet you can open when you’re old enough to read: “Welcome to life. You will experience this as a set of endless disagreements about perceptions orbiting an unobservable yet objective core set of thermodynamic rules.”

I’ve already had my fill of (and subsequent detox sessions from) radical relativism, far enough removed to be able to convince myself that there is a definitive is separate from our own perceptions (see Berkeley’s rock test), but I run almost immediately into an intractable problem when I get to work, and that is this: I don’t work in objectivity.

I’m paid, as a technical game designer, to create frameworks to support perceptions around an obfuscated set of assumptions. A game is more about trickery and flash than just about any other medium of creative expression; in fact, in handling the very real constraints of the hardware we test against, we gain a great deal of performance by removing unperceived elements (see Propaganda Village for a close physical metaphor).

Refuters will immediately seize on the fact that I work against very real hardware limitations, and this should be enough to form the Berkeley’s Rock against which I can gleefully dash my foot. Sure, if I were working in a vacuum, concerned only with technical input and output against a quantitative metric.

But I play the same games I create, and each time it grows more and more subjective as costs to performance are weighed against visual, audio, and kinetic aesthetic. Hedonics precedent usually winches one or two of these arguments mercifully out of the mud, but all too often in games the dialectic argument rings hollow against the bulletproof plate armor of gamer perception. If not historical precedent, then modern trends. If not trends, then usability and focus testing. If not those, then vaporous demographics.

Often it just feels like a Goldilocks problem – when I entrench in code, I lose sight of the game. Too low. When I fire up the Peter Copter and look down at the game from a conceptual standpoint, I lose the beacons of objectivity that give me the kind of confidence I want to make an informed decision.

Is there a way that I can quickly craft game interactions that give me both the low-level geekiness I want and the high-level conceptual exercise I need? For a while, I thought XNA Game Studio might be it, but no language thereĀ ever emerged that operated on a higher level than C#, and so I was stuck endlessly bit-twiddling.

Imagine my surprise when the answer made itself both new and old in one breath: Interactive Fiction. What it took was a new way to create an interactive fiction project; through a tool called INFORM 7.

You’ve probably already seen it, but I was absolutely blown away when I first saw the concept: create interactive fiction by using natural language sentences – definitive statements.

  • Martha is a woman in the vineyard.
  • The wind is a direction that varies.
  • If Jerry doesn’t pay his rent, beat him.

I confess, I made that last one up. But it’s interesting to see how complex things can get.

In fact, by constructing a simple fiction out of english-language rules, you can actually begin to notice how dialectic patterns emerge and grow rapidly into subjective patterns, even in the code itself, not just in the interpretation of interactive fiction’s typical flowery language.

Take a look at this example screenshot below – the code is on the left, the game it produces is on the right.

And as an added bonus, you can play it (all eight heartstopping seconds of it), special thanks to GrimJim’s BLORBFork of Russoto’s zplet:

Play “The Box” now! (Java Required)

Word is a direction that varies. Word is up.

It is indeed.