What is Interactive Fiction?
The term “interactive fiction” (or IF) can have more than one meaning in the
context of computer-based storytelling. In this article, however, the term will be
used in the narrow sense of a turn-based program driven by textual input from the
player, responding with output that is principally or wholly textual, and involving a
parser and a world model (two terms which will explained shortly). For the sake of
brevity, the term “game” will be used to denote a work of interactive fiction,
though not all such works are equally ludic, and the reader should not rush to equate
IF “games” with the video-games more commonly associated with contemporary
recreational computing.
Such a work is
interactive fiction since it is up to the reader (or
player) to drive the story forward, usually by directing the actions of the main
protagonist (known in IF-parlance as the player character, or PC). A work of IF
typically opens with a brief textual description of the PC’s situation, perhaps also
giving some indication of the tasks the PC has to perform, or the challenges he or
she has to overcome, though these may not become apparent until the game gets under
way. In order to progress through the game the PC must explore his or her
environment, discover how things work, interact with any other characters in the game
(known in IF-parlance as non-player characters or NPCs), and often solve a number of
puzzles. The role of the player is to direct the PC in these tasks by entering
commands at the keyboard.
[1]
Part of the appeal of IF is the illusion that one has complete freedom to type
anything one likes at the game’s command prompt. It is an illusion
because, although one can indeed type anything one likes, the game will in fact
understand only a very restricted subset of English (or whatever language the game
was written in). The commands typically understood by a modern IF parser are largely
restricted to the following three formats: either a simple imperative verb (such as
LOOK, which generates a description of the PC’s current location), or an imperative
verb plus a direct object (such as TAKE THE BLUE BALL, which would cause the PC to
pick up the blue ball, assuming the action is possible), or an imperative verb plus a
direct object plus a preposition plus a second or indirect object (such as PUT THE
BLUE BALL IN THE BROWN BOX). This basic syntax can be slightly extended to allow
conversing with or giving orders to NPCs; so, for example, FRED, PUT THE BLUE BALL IN
THE BROWN BOX would be construed as a command to the PC to tell the NPC called Fred
to put the blue ball in the brown box.
The role of the parser in interactive fiction is to interpret such
commands so that the game can either respond to them appropriately, or tell the
player why it can’t. A modern IF parser is reasonably sophisticated at this task. If
there is both a red ball and a blue ball in the game, a decent parser will
nevertheless know what to do with a seemingly ambiguous command like TAKE BALL. If
only one of the balls is in sight, it will assume that this is the one the player
meant. If both balls are in sight but the PC is already holding one of them, the
parser will assume the player meant to refer to the other. Only if the parser is
unable to resolve the ambiguity in any such way will it ask the player to do so
(typically by asking a question like “Which ball do
you mean: the blue ball or the red ball?”).
A more sophisticated parser will also deal automatically with certain implicit
actions needed to carry the player’s explicit command. For example if the player
types N (the usual abbreviation for GO NORTH) when going north would take the PC
through a closed door, a good parser will assume that the player wants the PC to open
the door first, and will first attempt opening the door as an implicit action, only
carrying out the main action if the required implicit action succeeds (it may not,
since the door may be locked or jammed or inaccessible for some reason). Or if the PC
needs to be holding the blue ball before he can put it in the brown box, then a
courteous parser will carrying out an implicit TAKE BLUE BALL command when the player
types PUT BLUE BALL IN BROWN BOX, rather than complaining that the PC needs to be
holding the blue ball first. Unfortunately, not all parsers achieve this level of
user-friendliness.
A modern IF parser works first by identifying what
action the player
intends, and then by resolving the nouns involved in the action. For example, the
TADS 3 parser (written in the TADS 3 language) first matches the player’s input
against the grammatical patterns (known as “grammar productions”) contained in
the TADS 3 library and the game author’s own code: thus if the player types PUT BALL
IN BOX the parser first determines that this matches the pattern
PUT <noun
phrase> IN <noun phrase> and so decides that the current action is
of type
PutInAction.
[2] The parser then constructs lists of possible objects that could match the two
noun-phrase slots. Possible matches are restricted to those objects in the game that
(a) possess vocabulary corresponding to what the player typed and (b) are currently
in scope (roughly speaking, this means that they must be currently visible to the
player character). These lists are then sorted in order of logicality (i.e. fitness
for their role in the proposed action). For example, for a PUT IN action to succeed
its direct object (occupied by the first noun slot) must be something that the player
character can move, so that a small rubber ball will be a more “logical” target
for such a command than a large stone ball fixed to the top of an ornamental
balustrade. Likewise, for a PUT IN action to succeed, its indirect object (occupying
the second noun slot) must be a container of some sort, so that, for example, a large
cardboard box is a more “logical” target for a PUT IN command than a box girder.
If this object resolution phase results in one and only one most logical possibility
for each of the noun slots, then the parser will settle on these objects; otherwise
it will either request further clarification from the player (to select from a number
of possibilities) or complain that there is nothing in scope that matches the command
entered.
[3]
The second defining characteristic of interactive fiction is the
world
model. Most IF is set in a simulated environment representing physical
space and the objects it contains (though there may be the occasional exception).
Broadly speaking, this corresponds to the
setting of a conventional
narrative. Different IF systems and different games written with those systems will
implement this simulated environment to different depths, but there are certain
features that most if not all works of IF share. Firstly, the physical world is
generally modelled as a series of discrete locations known as
rooms.
[4] The
totality of rooms in a given work of IF is often referred to as the
map.
[5] Such rooms could correspond to
rooms in a building, but they need not and frequently do not: a “room” in the IF
sense is just as likely to be a section of path through a forest, or one corner of a
large town square, or a section of meadow-bank overlooking a lake. Conceptually, a
room is that segment of physical space that is immediately accessible to the player
character. The notional size of a room can vary greatly, but is assumed that, with
certain qualifications, the PC can see and hear everything in the room in which he or
she is located unless it is purposely hidden; and can taste, touch or smell
everything in the room unless it is deliberately placed out of reach. The standard IF
convention is that, with one exception to be dealt with below, the movement of the
characters and objects within a room is not normally modelled. It may be that I would
in fact have to cross a large study to take a book off the shelf, but this detail is
generally ignored in IF; it is assumed that the PC (and any NPCs) will move around
within a room as necessary without being explicitly commanded to, and such internal
movements will not normally be reported, unless the game author explicitly wishes to
mention them for artistic effect. Thus few games bother to implement commands such as
WALK OVER TO THE TABLE or APPROACH THE BOOKCASE, since they would generally be
superfluous.
[6]
It is perfectly possible for a complete work of IF to take place within a single
room, and some do, but it is more normal for a game to contain multiple rooms and for
the PC (and possibly the NPCs as well) to move around between them. By far the most
normal convention is for movement commands to be given in terms of the eight
principal compass directions together with UP, DOWN, IN and OUT. This should
understood as a convention of the medium, not as a pretense that the PC in fact
carries an infallible compass in his or her head; experience has shown that in
practice this is generally the most convenient way for a player to communicate
movement intentions to the parser, not least because movement commands can be
abbreviated to N, SW and the like. But other styles of movement command such as GO
THROUGH RED DOOR and ENTER THE BIG HOUSE are also common. Less common, but also
possible are commands to go to a specific location, such as GO TO THE KITCHEN.
In the normal IF world model, rooms are populated with objects. These
may be portable objects that the PC can pick up and carry around, or non-portable
objects such as trees and houses and heavy furniture that remain fixed in place. Some
objects may play an integral part in the game, while others may only be scenery.
Standard IF world models also implement a containment hierarchy for
objects. Everything currently in the game must be contained in a room, but within
rooms some objects may contain other objects. The most commonly implemented
containment relations are inside (for containers like boxes, desk
drawers, pockets and sacks) and on top of (for supporters like desks,
tables and trays). Some objects, such as chairs, beds and platforms, may also contain
the PC and other characters; these constitute the exception to the rule that movement
within rooms is not normally modelled, since movement in and out of containers like
beds and chairs normally is dealt with explicitly.
Although most objects in a game are normally inanimate (as are most objects we
commonly interact with in the real world), some may be designed to represent animate
objects such as cats and cows or even people (or quasi-animate objects such as robots
and talking computers). Clearly such objects – especially people – are a good deal
more complicated to implement well.
The earliest game of this type was principally a simulation of the Bedquilt/Flint
Mammoth cave network created by Will Crowther, originally as an amusement for his
daughters ([
Montfort 2003, 85–93]; [
Nelson 2001, 342–45]; also described
elsewhere in this issue]. It was
subsequently expanded by Don Woods with a number of additional puzzles and treasures,
and has continued to be expanded in many versions since, being readily available,
generally under the name “Adventure” but sometimes called
“Colossal Cave”, “Colossal
Adventure” or a number of other names.
[7] This may be one reason why works of IF are also known as “text
adventures” (even when the plot may involve little that resembles adventuring
in any conventional sense).
Adventure’s parser was originally written in FORTRAN, and was primitive by modern
standards: it was a “two-word” parser since the most complex commands it could
understand were in the form of an imperative verb and a single noun. The game had
little narrative plot, being mainly a treasure hunt, but the fact that, unlike many
of its successors and imitators, it was based on a real cave system by an author who
knew it well gives it a certain enduring charm.
The most significant successor and imitator of “Adventure”
was a game first called “Dungeon” and then “Zork”, originally written on a university mainframe (at MIT,
beginning in May 1977) [
Montfort 2003, 97]. Although “Zork” was arguably even more of a puzzle-driven treasure-hunt
set in a less coherent and authentic world that “Adventure”, it did achieve a more sophisticated parser capable of
two-object commands (such as PUT BALL IN BUCKET or HIT TROLL WITH SWORD). Of even
more significance is that in June 1979 the authors of the original Zork went on to
found a company called Infocom, which proved highly successful in writing and
marketing text adventures, or what it came to call interactive fiction [
Montfort 2003, 125].
[8] Not only did Infocom establish the
conventions that IF still largely follows today, it also showed that the medium was
capable of far more than cave-crawling treasure-hunts.
Infocom (and other companies like it) made a great success of interactive fiction in
the 1980s, but as home computers became more powerful and ever more capable of
displaying good graphics, text-based games fell out of favour with computer gamers
who could be offered much more visually appealing graphical video-games instead. But
while interactive fiction largely fell out of sight, it did not die, but continued to
develop in the hands of enthusiastic amateurs.
[9]
It is possible to write a work of interactive fiction from scratch in a
general-purpose programming language such as Basic, C#, or Pascal, but it is
extremely inadvisable to do so unless your primary aim is to practice programming in
one of those languages. Implementing a robust parser and world model is a decidedly
non-trivial task, and any case IF is best served by a domain-specific language.
Systems for authoring IF had been available for some time, but amateur IF received a
considerable boost in the early 1990s from the release first of Mike Roberts’s TADS
(Text Adventure Design System), and then Inform, created by Oxford mathematician
Graham Nelson.
These systems comprise special-purpose programming languages (TADS, for example, is
quite similar to C), together with a library (usually written in the same language)
providing a standard parser and world model (which can then be extended or modified
to a greater or lesser extent in the game author’s own code). They may also contain
additional tools such as an integrated development environment or a debugger. The
compilers for these languages typically output, not a native executable, but a
byte-code file designed for running in a virtual machine on a program called an
“interpreter” (similar to the way a Java compiler produces byte-code to run
on a Java Virtual Machine).
[10] This allows
games written in TADS, Inform and similar IF languages to run on any system for which
the appropriate interpreter has been written.
Inform had two great advantages when it was first released: first, it was free, at a
time when Mike Roberts still charged for TADS (though it has now been available free
for many years),
[11] and second, it compiled to the same format
(known as the Z-machine) as the much-loved Infocom games.
[12] With these tools it became
possible for amateur IF enthusiasts to write games as good as or even better than
those produced by Infocom and its competitors (which is not to say that the systems
have not also been used to produce a glut of games that are far worse). 2006 saw the
release of the latest version of both of these authoring systems: Inform 7 (still in
beta) and TADS 3 (finally out of beta after several years).
[13] Inform 7 is an experiment in a
natural-language style of programming that is proving attractive to many potential
authors who would not feel so comfortable with conventional coding.
[14] TADS 3 is more like a conventional
programming language (much of its syntax is identical to C),
[15] but incorporates the most
sophisticated parser and world model yet seen in IF, as well as providing the best
toolset to date for the implementation of NPCs. Between them, Inform 7 and TADS 3
provide the IF author with a choice of state-of-the-art development tools that take
radically different approaches.
[16]
Amateurs writing for other amateurs have perhaps felt freer to innovate and
experiment, and one trend has been an increasing appreciation and ambition for
story-driven as opposed to puzzle-driven IF. That is not to say that well-made puzzle
games do not continue to be appreciated – they clearly are
[17] – but there has
also been increasing interest in the narrative possibilities of IF. There have also
been developments in the generally accepted conventions of the medium. Back in the
1980s, and even the early 1990s, IF games often contained huge illogical mazes and
puzzles that were frequently arbitrary and unfair, as well as all too often allowing
a player to continue unknowingly with a game long after it had been put into an
un-winnable state. Such things are now usually frowned upon. The modern ideals are
that puzzles should be properly and fairly clued, and fully integrated into the
narrative structure of the game (although this can often be hard to achieve), that
the player should be given fair warning if the game gets into an un-winnable state,
and that no game should contain a maze without a very good reason for it indeed (and
even then it had better be a very original kind of maze). Again, modern standards are
much more demanding on depth of implementation. If a room description mentions
striped wallpaper then the parser had better recognize striped wallpaper if the
player tries to refer to it. It may be acceptable for the parser to respond with
“The striped wallpaper is not important” if
the wallpaper is indeed pure scenery, but it looks very clumsy if, having told the
player that the room is decorated with striped wallpaper, the game responds with
“You see no such thing” when the player
tries to examine it (as would all too often be the case in much “old-school” IF
and all too much poorly-implemented modern IF). It is better still if a description
of the wallpaper is provided in response to “X
WALLPAPER” (i.e. EXAMINE WALLPAPER), even if the “not important”
message is used in response to any other command involving the wallpaper; this kind
of detail can make the difference between immersion in the story world and the
feeling that, after all, you are merely interacting with a computer
program.
[18]
These modern expectations raise a further pair of issues, namely the roles of room
descriptions and puzzles. In conventional (or “static”) fiction a description of
a location may be used,
inter alia, to paint a picture in the eye
of the reader, or to evoke a mood, or to provide information needed to understand the
plot. All these functions apply to room descriptions in interactive fiction, but with
additional constraints. First, whereas the author of a novel or short story has
considerable latitude in choosing the length of any description (provided it is not
so long as to kill the narrative momentum), an IF author has to be economical; the
text of a room description (or any other kind of output) will appear on a scrolling
screen between one command prompt and the next, and for that reason will appear too
long if it amounts to more than half a dozen lines of text or so. Second, there are
certain pieces of information that a room description must convey to the player, not
least the direction of the available exits from the current location. Third, the
description ideally needs to be so arranged as to draw the player’s attention to
items that merit further investigation (say, the large desk in the corner, in which
resides an important letter from the PC’s husband’s lover) rather than to items that
are purely decorative (such as an ornamental vase on the mantelpiece). To achieve all
these goals while writing good prose is not always easy; one technique is to minimize
the kind of extraneous detail that might typically be used for scene-setting in
static fiction.
[19]
It is possible to write IF that is virtually puzzleless, but puzzles can play an
important part even in IF that aims to be more literary than ludic.
[20] What exactly constitutes a puzzle is a little hard to
define; in essence it is a task that the player has to perform or an obstacle he or
she has to overcome where the necessary sequence of actions is not immediately
obvious but requires some thought or experimentation to arrive at; but what may seem
immediately obvious to one player may seem more obscure to another. However defined,
puzzles have a number of important uses. First, they may simply be integral to the
plot, since the game may describe a situation in which the protagonist would
naturally have to overcome obstacles or achieve difficult tasks of this type (for
example, if the protagonist is a detective investigating a murder). Second, puzzles
are one of the main devices in IF for creating a sense of tension and opposition,
without which any narrative is liable to feel dull and slack. Third, they can help
pace and direct the plot. In static fiction, authors have complete control over the
course of events and can accordingly structure their narrative to suit their plot.
Authors of IF surrender much of this control to the player, who controls the actions
of the protagonist and thus the course of events. Putting strategically placed
obstacles in the path of the protagonist is a means of regaining a measure of
authorial control; for example certain parts of the map can be closed off until
certain tasks have been performed (paradigmatically, the PC cannot pass through the
locked door until he or she has discovered the key), or the accomplishment of certain
tasks can trigger certain key events. Third, placing obstacles in the path of the PC
can deepen the players’ involvement in the narrative by forcing them to think about
the PC’s situation and come up with a solution. Players are made to identify more
closely with the actions of the protagonist if they have directed those actions
themselves, and can feel a considerable sense of satisfaction at being able to
overcome a difficult obstacle. But puzzles can also misfire in a number of ways. If
they are too hard they can bring the narrative to a standstill as the player thrashes
about in increasing frustration trying to find a solution. If they seem arbitrary,
insufficiently well clued, or otherwise unfair they can simply provoke annoyance.
Conversely, if they seem too easy there is little satisfaction at solving them, and a
sense of tedium may set in if the player is forced to go through a series of routine
actions (find next key, unlock next door).
[21]
Puzzles are not the only way to achieve some of these effects; for example, it would
be possible to present the player with a series of choices that were not so much
puzzles as dilemmas, or to write a puzzleless simulation,
[22]
or a game that works in some other way, but this can be difficult to bring off. If a
game presents players with more or less the same linear narrative without offering
any significant challenges, it can all too easily create the feeling that one may as
well be pressing the space bar between reading chunks of text, and that the story
might better have been presented as conventional static fiction.
What drives the narrative in most static fiction is the interaction between the
(normally human) characters, but this is the hardest thing to do well in interactive
fiction, particularly when it comes to representing the subtleties of human
relationships. Many NPCs in IF turn out to be little more than elaborate puzzles or
talking robots. Examples of the first category might be someone I have to get out of
the way so I can see what’s in his desk or the bouncer who won’t let me past the
door. The second category is part of the wider reason it is so difficult to produce
lifelike NPCs in IF, namely the difficulty of producing realistic dialogue in the
medium.
Authors of static fiction have complete control over what their characters say, with
all the nuances that may imply for the relationships between them. Authors of IF
surrender control of speech as well as action to their players, but whereas a good
modern IF parser can cope very well with interpreting commands directed at physical
action, the same is not so true of speech commands. The reason is quite
straightforward: whereas there is only a fairly limited range of physical actions a
PC might sensibly attempt at any one time, there is no such limit to what he or she
might sensibly say, but the technology to make sense of any textual input and provide
a good response simply does not exist, and would in any case be a move away from
interactive fiction to artificial intelligence (at least as things are now).
Attempting fake AI in NPC responses (for example, by getting the parser to look out
for certain keywords) is nearly always a bad idea, since it is almost bound to be
given away by incongruous responses sooner or later. The only practical solution with
existing IF parser technology is to put a drastic limit on the range and syntax of
conversational commands, and to program a finite range of suitable NPC responses,
together with a range of totally non-committal “default” responses for topics
not otherwise catered for.
A number of approaches are possible within these limitations.
[23] The simplest
is to restrict conversational commands to TALK TO X, and then respond with canned
conversation; this can work well enough in certain contexts, and does retain maximum
authorial control over the course of conversations, but greatly restricts players’
freedom of choice with concomitant loss of interactivity. Another option is to have
TALK TO X respond with a menu of things the PC can say (possibly linked with a second
command to switch topic); again this can work reasonably well, but is not without its
disadvantages, the most prominent of which are first that switching to a
restricted-choice menu interface may not sit well with the open-ended command line
interface used for every other kind of player input, and second that when players are
presented with a menu interface for conversations the temptation is to try to
navigate them like a kind of conversational maze, which risks breaking immersion in
the narrative.
Perhaps the most commonly used conversation system, and that most frequently provided
as standard in many IF authoring system, is the ASK/TELL system. This allows players
to type commands of the form ASK BOB ABOUT THE LETTER or TELL JILL ABOUT JANE, where
what follows “ABOUT” is a topic to which the
NPC may have a programmed response (the ASK/TELL system usually also allows SHOW
SOMETHING TO SOMEONE and GIVE SOMETHING TO SOMEONE and often ASK SOMEONE FOR
SOMETHING). The advantages of this system is that it allows a form of user input
congruent with the user interface used for all other commands, preserves the illusion
of player freedom, but makes it reasonably possible for the author to provide
suitable responses, at least to the most significant topics (the others can then be
fielded with a non-commital response such as “Let’s
talk about that some other time” or “Bob
pretends not to hear you”). The disadvantages are first that the NPC can
all too easily end up resembling a talking robot more than a believable human being
(for example if the command ASK BOB ABOUT LETTER repeatedly provokes the response,
“
‘It’s from Jill’; he tells you, ‘she’s left me to run off with Jack!’
”), and second that the system allows little or no control over what precisely
is asked or told: if I issue the command ASK BOB ABOUT LETTER do I want to ask Bob
who the letter is from, or what it says, or when he received it? If I type the
command TELL JILL ABOUT JANE do I want to tell Jill that Jane is pregnant, or that
I’m in love with her, or that she’s emigrated to Australia? In particular, the only
dimension of human conversation it copes with is the exchange of information; it is
thus quite incapable of modelling, say, a developing relationship (whether of
affection or enmity) in any realistic way.
One of the great achievements of TADS 3 is that it extends the ASK/TELL system in a
number of ways that greatly mitigate these limitations. For example, it provides
tools for varying NPCs’ responses in accordance with what has been said before, and
for threading conversations in a more realistic manner, allowing a greater range of
possible responses that just ASK or TELL at critical points in the dialogue. It also
encourages authors to write both halves of a conversational exchange, which generally
makes the dialogue read much better.
[24] It is not that
it is impossible to do these things in other IF languages, but rather that TADS 3
provides by far the best set of tools as standard (and also makes it reasonably easy
for more ambitious authors to extend them as desired). This is one reason why TADS 3
was chosen for “All Hope Abandon” (as well as a number of
other games I have written).
The difficulty of implementing life-like NPCs is perhaps one of the major differences
between IF and conventional static fiction; it can certainly restrict the kind of
story that can be told well in the medium, since it is far harder to produce a game
involving the emotional interaction of characters (such as a love story) than one
focusing mainly on the gathering and exchange of information (a detective story or
spy story, for example). That is not to say that IF necessarily lacks emotional
impact, but this must often be achieved by other means, and it would be fair to say
that the implementation of convincing NPCs is one area in which there is currently
vast scope for experimentation. But the more fundamental difference between static
and interactive fiction is that the latter is interactive, and requires a particular
kind of input from the reader to advance the story. This is not to say that the
reader of static fiction is wholly passive, as reader-response criticism in
particular emphasizes, but IF does raise reader participation to a greater level; it
also both operates under different constraints and offers different opportunities
from static fiction.
[25]
Implementing the Player Character also presents its own challenges. In early works
such as “Adventure” and “Zork”
this was not an issue, since the PC was usually anonymous with no characteristics
beyond the ability to act as the player’s eyes and hands in the game. Once authors
became more interested in the narrative possibilities of IF this changed, however;
PCs needed to become more specific, of a determinate gender, with particular
characteristics and a history of their own, more like the protagonists of
conventional figure than the convenient puppets of the early games. This then raises
the possibility that the PC’s motivations might clash with those of the player who is
supposed to be controlling his or her actions. In such a case the game author has to
choose between allowing the action at the cost of the integrity of the character, or
disallowing the action at the cost of restricting player freedom. This potential
conflict is normally resolved by means of some kind of compromise: typically a PC
might be motivationally restricted from committing murder or suicide while being far
less scrupulous about stealing (since players of IF quickly develop the kleptomaniac
strategy of taking anything that isn’t nailed down on the assumption that it will
probably come in useful later in the game). It is in any case impossible to satisfy
all players, since some will always complain if the PC won’t do their bidding (“but Bob is such an irritating character that I
want to punch him on the jaw”, while others will complain
if they can make their PC act too obviously out of character (“my PC is meant to be a genteel elderly spinster who would
never punch anyone on the jaw, however irritating she found
him!”); nevertheless, some kind of reasonable compromise seems to satisfy
most players most of the time.
Less easy to negotiate is the discrepancy that can arise between what the player
knows and what the player character supposedly knows. This can work both ways.
Someone playing a game for the second or subsequent time almost certainly starts out
knowing more than the PC knows at the start of the game, and this can create problems
when the player wants to put that additional knowledge to use. Before the PC has been
introduced to Mrs. Prancealot he logically cannot know that she is Mrs.
Prancealot, but the player may try to refer to her as Mrs. Prancealot before the
introduction takes place and become irritated either because the parser allows the
use of the name that the PC cannot yet know or because it refuses to recognize the
name that the player knows perfectly well. Or, to take another example, if a key has
been dropped under a sofa, should second time players be forced to issue a LOOK UNDER
SOFA command in order to be allowed to refer to a key they already know to be there?
Some players may find such a restriction irksome, while others may feel it
unreasonable that the PC can pick up a key from under the sofa before he has any good
reason to suspect its presence there.
Conversely, the PC may well know things the player (especially the first time player)
does not. Such knowledge may be relatively trivial, such as the PC’s knowledge of his
or her own locality, which the player has to discover by exploration (this can
usually be handled by writing room descriptions that emphasize the PC’s familiarity
with the locations visited). But it may be something rather more complex, such as the
specialist knowledge the PC ought to possess in his or her persona as safe-cracker,
starship captain, or (as in the example about to be discussed) scholar. This can be
particularly tricky if it results in the player fumbling to perform tasks the PC
ought to be able to manage in his or her sleep, or if the PC’s specialist knowledge
is particularly relevant to understanding the puzzles and other plot elements, as
turned out to be the case in “All Hope Abandon”.
[26]
All Hope Abandon
The particular example of IF to be discussed here is one of my own works, “All Hope Abandon”. The reason this game may be of interest to
readers of Digital Humanities Quarterly is that it
combines relatively a new digital medium (interactive fiction) with a very
traditional academic discipline (Biblical Studies). I shall start by explaining what
the game is about, and then go on to discuss some of the design goals and
implementation challenges.
The game opens with the protagonist, Dr. William Fisher, listening to a particularly
dire lecture at a New Testament conference. Since our discussion of interactive
fiction has been fairly abstract up to now, it may be helpful to show a sample
transcript of the first few turns by way of illustration (lines beginning > show
player commands):
The conference organizers must have been really scraping the barrel when they
invited Professor Wortschlachter as a keynote speaker. Until you saw the
conference programme you’d never heard of him, and from what the handout has to
say about him you can see why. You’re subjecting yourself to his lecture through a
general sense of obligation (or, at least, fear of appearing less enthusiastic
than the other delegates), but your expectations are not high. So far,
Wortschlachter has triumphantly fallen short of them.
Lecture Theatre (sitting on a plain wooden chair)
Facing you is the podium, from which the wretched Professor Wortschlachter is
busily delivering his lecture. Facing the podium are row upon row of hard wooden
chairs, about a dozen in front of you, and as many again behind. Over to your left
a series of windows, partly obscured by blinds, look out on a relentlessly grey
day, while the main exit is out of sight behind you. The walls have been covered
with plain strips of pine that match the floor, but are otherwise undecorated
except for the occasional fading poster.
Professor Wortschlachter is standing on the podium, delivering his lecture.
>X ME
You’re in your early thirties, but you firmly believe that you look younger. In
your more honest moments, however, you have to admit that you’re not exactly as
fit as you might be. You are dressed quite formally for the occasion, in a dark
jacket and tie.
Professor Wortschlachter peers down at his notes, grasps the top of the lectern,
and announces, “As you all know, our pericope, Mark 16.1-8 is one that The Acts of Jesus prints in heavy black type,
indicating that the Jesus Seminar are quite clear that the account is utterly
unhistorical. We can assume that a first-century Jesus Seminar would have voted
the same way, at once recognizing the midrashic intertexture of this text and
not for a moment is taking it for a putative historical report.”
You wonder briefly at this astonishing leap of logic, but Wortschlachter ploughs
relentlessly on, leaving minimal time for critical assessment.
>I
You are carrying a conference handout, and you’re wearing a tie, a name badge, and
a dark jacket.
“Since we can assume that any literalist reading of the empty tomb story can be
instantly deconstructed”, Professor Wortschlachter drones on, “we can
progress to the correct identification of its Sitz im Leben
in the proper religionsgeschichtlichen context.”
Bullshit! you think, convinced even more than ever now that
Wortschlachter is just throwing in a random mish-mash of technical language in
order to disguise his total lack of methodological rigour.
>READ HANDOUT
It reads:
Our Special Guest Speaker, Herr Doktor Doktor Professor Karlheinz
Wortschlachter is delivering today’s keynote address on the exciting topic
of “Rolling Away the Misconceived Stone: Structural
Semiotic Signification in Mark 16:1-8”
The organizers particularly request all Conference delegates to attend this
afternoon’s plenary session at which this internationally renowned scholar
will reveal his latest thinking on this exciting and vital topic.
Dr. Wortschlachter is Professor of New Testament History and Exegesis at the
Protestant Faculty of the University of Wirrstadt. He is the author of
several important books, including the renowned Deconstructing the Deconstruction of Structurally Symbolic
Social-Scientific Semiotic Signification in Second Temple
Judaeo-Christianity. This is the first time we have been
fortunate enough to have him address a meeting of the Pan-Atlantic New
Testament Society.
“... but this must include, inter alia its thorough
demythologization in line with the Bultmannian perspective,” the professor
grinds on.
At this point your attention starts to wander as you find your eyes attracted to
the blonde woman sitting three rows ahead.
The PC’s attention now wanders as he recalls a brief encounter he had with an
attractive female delegate, Felicity Hope, at breakfast that morning. His attention
soon returns to the lecture, but not long thereafter he suffers a heart attack, and
the bulk of the game takes place in his subsequent near-death experience.
How exactly this experience is to be interpreted (for example, as an objective
depiction of an after-life, or as a purely subjective dream-like experience) is left
up to the player to decide. In creating this environment I thought of it as
mythological, and as containing both subjective and objective elements. It is closely
connected to the theme of the preceding lecture, in that the Empty Tomb story recurs
in various guises as a leitmotiv, as does the PC’s attraction to Felicity Hope. On
the other hand what the PC does in this segment of the game can have real world
consequences, in particular whether he returns to life or ends up in ultimate
frustration or oblivion.
This mythological section is structured in two main halves surrounded by a prologue
and epilogue. The prologue effectively allows players to start to get their bearings
in this strange environment. There they will discover that a great chasm separates
the PC from a distant golden glow that looks like it might be a city of the blessed.
On this side of the chasm is the gate of hell, bearing a sign saying that hell has
been closed for demythologization. A workdemon is busily chipping away at the
inscription over the gate, but has so far only manage to obliterate the final letter
of “Abandon Hope All Ye Who Enter Here”
(thereby creating a nice double entendre for those who spot it). It turns out that
the only way to progress is to go through hell, via another entrance (the debts to
Dante’s Divine Comedy will be obvious).
The first main section begins once the player has found out how to get into hell. The
PC soon arrives in a Victorian gallery with a choice of routes labelled “Via Antiqua” and “Via Moderna”. I originally intended to force the player to take the Via
Moderna, which pokes gentle (or not-so-gentle) fun at various aspects of
twentieth-century New Testament scholarship (appropriate to the PC’s profession). I
soon felt, however, that this left the Via Antiqua as a rather pointless digression,
so I decided to add an alternative route through that as well, in which the PC has to
overcome the temptations of an alluring female demoness (a sort of demonic
counterpart to Felicity Hope). Both routes eventually converge at the same barrier
(it would be too much of a spoiler to be more specific) that the PC has to overcome
to proceed to the second main section of his near-death experience.
This second section is intended to be a recapitulation of the main lines of New
Testament eschatology. Symbolically speaking the PC must past through the crucifixion
and the Empty Tomb and then play an apocalyptic game of chess against an opponent who
starts out as Pontius Pilate but is soon replaced with a composite Roman emperor
(representing an amalgam of all the emperors from Augustus to Domitian). The chess
game is played out with somewhat unconventional pieces and is meant to reflect, first
the events leading up to the Jewish war of 66-70 CE, and then aspects of the
apocalyptic scenarios of Revelation and 4 Ezra. If the PC loses the game he loses his
soul; if he wins he can pass on to the next stage. In neither case is the game played
much like an ordinary game of chess.
Thereafter the player character finds a sort of reverse Eden, in which the serpent is
helpful and in fact prevents the PC from taking the forbidden fruit (the idea is to
represent an
Urzeit – Endzeit typology
[1] and the reversal of the fall through the acts of redemption),
but realizes that this is not where he is meant to stay. Instead he must rescue
Felicity Hope from the swamp in which she is mired (and which is clearly meant to
represent Professor Wortschlachter’s lecture). Escape from this region leads to the
epilogue of the near-death experience. Between them Felicity Hope and the PC discover
a way to cross the chasm to reach the distant golden glow, but only one of them can
cross. The player must decide whether it is the PC or Felicity who crosses the chasm,
and on that decision rests the ultimate fate of the PC. If the right choice is made,
the PC wakes up in a hospital bed with the real Felicity Hope at his side; otherwise
he is eternally lost.
In the most general terms, my design goals were to combine my interest in Biblical
Studies with my interest in interactive fiction in a game that contained a
substantial surreal (or at least, non-real-world) segment that would give some sense
of what it might be like to inhabit one interpretation of the Christian
symbolic/mythological universe. I also wanted to poke fun at some aspects of New
Testament scholarship of the last hundred years, while unobtrusively informing
players about it. The game also had to be entertaining and engaging to play, given
that my target audience would be fellow IF-enthusiasts rather than fellow New
Testament scholars. It therefore had to conform to the conventions and expectations
of the medium, and it seemed advisable to include elements such as puzzles that would
hopefully prove amusing and accessible to all players, regardless of their background
knowledge, on the basis of information provided in the game. It was quite
emphatically not meant to preach to the player.
The game seems to have achieved mixed success in relation to those goals. On the
positive side “All Hope Abandon” received nominations in
six out of the ten categories for Xyzzy awards (the Oscars of IF, named after a magic
word featured in “Adventure”) for games released in 2005,
although it failed to win the prize in any of them (see
http://wurb.com/if/award/3#518). In
general it also seems to have been well received; the fact that it does not try to
preach to the player was generally appreciated, and it received a number of broadly
favourable reviews.
[2] On the other hand the overarching scholarly and
mythological structures that were intended to lend coherence to the two main
afterlife sections were clearly missed by some players, to whom these sections then
appeared to be a somewhat rag-bag collection of puzzles [
Shiovitz 2004a].
This underlines the main design challenge I faced: the huge gap between PC and player
knowledge. Although this can be an issue in any work of IF, in this case the problem
was acute: my PC was a New Testament scholar who could be expected to have a thorough
knowledge not only of the biblical text and related ancient texts, but also of the
contemporary scholarly debate surrounding them. My target audience might have none of
this knowledge, and it became apparent in the course of beta-testing and subsequent
player feedback that many players did not possess even the most elementary knowledge
of the biblical stories presupposed and alluded to in the game.
My first attempt at meeting this problem was to add footnotes to responses I thought
might be a little obscure.
[3] But I quickly
came to the conclusion that this solution was both cumbersome and obtrusive. Players
who wished to refresh their memories of what a footnote said on a particular topic
would have to remember the number of the footnote in which the topic was discussed
(or else scroll back to find it), and there were so many responses that potentially
needed further explanation that the game was beginning to resemble an article in an
academic journal; the too frequent appearance of footnote markers would make the game
look too forbidding.
I therefore decided to scrap the footnotes and employ a different approach:
implementing a THINK ABOUT command. If the game mentioned something that might be
obscure to the player, such as the Synoptic Problem or Q, or even Moses or the Empty
Tomb, the player could simply type, say, THINK ABOUT Q, to tap into the player
character’s specialist knowledge (and opinions). The advantage of this approach is
that it never thrusts itself on players’ attention; there is seldom any need to think
about anything in the game,
[4] and players can use the THINK ABOUT command when and
only when their curiosity is roused. This approach also opens up further educational
potential for the game; those players can learn quite a lot about the biblical text
and scholarly approaches to it if they are so minded, but none is compelled to do so,
though hopefully the context of the game makes it an enjoyable way to learn.
Many of the other challenges and design decisions affecting “All
Hope Abandon” were of a kind common to many works of IF, such a pacing and
puzzle design. The key decision made in the design of “All Hope
Abandon” was to link narrative progress with geographical progress; the
narrative advances through the near-death experience as the player character advances
through the map. This in turns means that most of all the puzzles are “gating”
puzzles, obstacles that need to be overcome in order to advance to the next set of
map locations. All this was part of the design from the beginning. A subsidiary
aspect of this design included making the gating puzzles irreversible at crucial
points, limiting the ability of the PC to backtrack and so driving the narrative
forwards. Linked to this were puzzles that forced the PC to part with all of his
inventory (the items carried) at various points, thus preventing an accumulation of
an ever-growing stack of objects that were no longer useful.
[5]
Apart from a number of purely technical issues, the other main design challenge was
the implementation of the NPCs. Here, the setting of the main part of the game in a
mythological landscape greatly helped; since the setting was clearly not a real-world
one, and many of the NPCs were so strange (they included a demon, a demoness, a
talking crow and a talking serpent) that it would not be particularly jarring if some
of their responses were a little odd; on the contrary, oddity is only to be expected.
“All Hope Abandon” does make full use of the
conversational tools provided by TADS 3, but its use of them is less taxing than it
would be in a game set in more realistic world. Moreover, the two real-world segments
right at the beginning and end of the game are so brief that the PC only has the
opportunity to converse with one NPC (Felicity), and then only for such a short span
of time that any unnaturalness in the conversation hardly has a chance to become
apparent.
“All Hope Abandon” breaks no new ground in the matter of
room descriptions, the constraints of supplying adequate information in limited space
remain, but it does add one related feature, the ability of the PC not simply to LOOK
at the current location, but to LOOK in particular directions (such as LOOK NORTH or
LOOK SOUTHEAST). The game then responds with a brief description of what can be seen
in that direction from where the PC is currently located. This probably turned out to
be little more than a gimmick, however, since it would have been too unwieldy to have
supplied any new information to the player by this means. If new information had been
conveyed to the player through such commands, then players would have been forced to
look in every direction in every location to be sure of not missing anything, and
this would rapidly have become intolerably tedious. It would also have gone against
the convention that a normal room description should supply players with all the
information they need (which may include calling attention to objects they need to
examine more closely). The ability to LOOK in particular directions may have created
a slightly deeper sense of immersion for some players, since the game could at least
give a reasonably appropriate response to such commands, but it is not an experiment
I have so far felt like repeating in subsequent works.
Interactive Fiction and Biblical Text
At first sight interactive fiction, which began life as a species of computer game,
would seem to be a world apart from Biblical Studies (or any other humanities
discipline). It may nevertheless be interesting to reflect on how a work such as
“All Hope Abandon” may be suggestive for relating these
seemingly disparate worlds.
The first point to make is that “All Hope Abandon” makes
no attempt to render the biblical narratives it employs in any straightforward,
realistic manner. It alludes to a number of biblical stories, and full appreciation
of the game probably requires quite a good grasp of the sweep of biblical narrative,
but nowhere does “All Hope Abandon” make a serious attempt
to retell a biblical story. This is partly a recognition of the real differences
between the media of static text and IF; attempts to render existing stories as IF
rarely come off well.
[6]Taking all or part of a
static text like Mark’s Gospel and trying to turn it into IF almost certainly would
not have worked (though a piece of IF loosely inspired by the biblical text could be
a very different matter). For one thing there is an essential mismatch between the
linearity of the narrative in a conventional static text, and the player’s apparent
freedom in a work of IF. This freedom may only be apparent; a skilled IF author can
effectively force players to a predetermined conclusion while creating the illusion
of almost total freedom, but the route to that conclusion cannot be so tightly
controlled as in static fiction (or, if it is, the resulting game will scarcely work
as a piece of IF; players generally object when the game too obviously puts them on
rails). There is no way that an IF author can successfully force a player to follow
the precise sequence of events that appears in a static text, and a well-written
piece of IF has to reckon with the possibility that a player may choose to do
something different from the protagonist of a pre-existing story.
[7]
That said, there are a number of ways in which “All Hope
Abandon” functions similarly to the biblical texts it plays off. The first
is in the employment of intertextuality. For the most part “All
Hope Abandon” uses the biblical text (and other texts) allusively,
occasionally quoting them, sometimes representing aspects of them more or less
closely. This is similar to the way in which many New Testament texts make use of the
Old Testament. Thus, for example, the opening of Luke’s gospel is written in such a
way as to resemble the opening of 1 Samuel, or the opening of Matthew’s gospel
recalls the birth of Moses and a dreaming patriarch named Joseph. Thus, too, is the
way that several of the more spectacular miracle stories operate; the Feeding of the
Five Thousand (Mark 6.30-44 and parallels) resembles a similar feeding conducted by
the prophet Elisha (2 Kings 4.42-44) and is probably meant to recall the feeding in
the wilderness (Exodus 16) as well as the promise of a Davidic shepherd who would
heal and feed his flock (Ezekiel 34). Likewise the Stilling of the Storm (Mark 4.35)
recalls both the story of the storm at sea suffered by Jonah (Jonah 1) and the song
of praise from those who go down to the sea in ships (Psalm 107.23-32). Such examples
could be multiplied almost endlessly; they are integral to the way much of the New
Testament (and also quite a bit of the Old Testament) functions.
[8] To be sure the New Testament is not only a static text but
a sacred one; its employment of intertextuality is inevitably both different in
nature and more serious in intent from that of any work of IF. Again, the
intertextual allusiveness of “All Hope Abandon” is hardly
characteristic of IF as a whole. There are nevertheless similarities in intent
insofar as both the New Testament and “All Hope Abandon”
seek to create new narratives that rely for much of their meaning on earlier sacred
texts, and neither is simply giving a new rendering of an old story.
[9]
A less incidental link between IF and biblical text lies in their common relation to
the riddle. Nick Montfort argues that the riddle is one of the main literary
precursors to interactive fiction in that it is both textual (or at least verbal) and
challenges the reader/hearer to find a solution [
Montfort 2003, 37–63]. There is also a riddling quality to some biblical texts, not least
the Gospel of Mark, which provides some of the main biblical allusions in “All Hope Abandon”. Mark 4.1-34 to some extent presents Jesus’
parables as riddles;
[10] to those outside, everything comes “in parables” so that “seeing they may see and not
perceive, and hearing they may hear and not understand”
(Mark 4.10-12, alluding to Isa. 6.9-10). The parable of the sower is thus made a parable about the reception of
parables, but just as seed is sown in the ground for the purpose of growth, so the
concealment of teaching in the guise of parables is apparently intended for the
purpose of revelation: “for nothing is
hidden except in order to be made known, nor does it become hidden but that it
might come into the open” (Mark 4.22).
[11] The Markan Jesus
continually challenges the disciples to understand, and they continually fail (Mark
4.10-13, 41; 6.52; 7.17-18; 8.14-21). Mark’s readers are challenged to do better:
“if anyone has ears to hear, let
them hear” (Mark 4.23). The careful reader of Mark’s Gospel may easily come
to the conclusion that this applies, not just to the parables in Mark, but to the
entire narrative: there is clearly much more going on in this gospel than appears on
the surface.
[12]
Hiding something in order that it may come to light is (both literally and
figuratively) a common strategy in writing IF; it is the essence of puzzles that the
player/reader is meant to solve them in order to advance the plot, and perhaps also
the player’s understanding of the work as a whole.
[13] Used well, this is
intended to deepen the player’s involvement in the narrative; to the extent players
are forced to provide their own solutions to the puzzles the story provides they tend
to find themselves taking ownership of the outcomes. The puzzling nature of the
parables (and other material) in Mark’s Gospel seems directed at a similar (though
deeper) end; in particular it seems to be part of Mark’s strategy to bring his target
audience round to the authorial viewpoint (or, at least, the point of view of the
implied author of the Gospel).
[14] Gospel and IF games remain examples of different
media, but there is here a convergence of reader responses, even though in the case
of the Gospel the reader cannot direct the actions of the protagonist. Insofar as a
work of IF is designed so that part of the challenge of the work is to understand
what is going on, that convergence becomes greater (without ever approximating to
identity).
[15]
Although a modern reader cannot affect either the course of events or even the style
of narration in a static text like a gospel, the situation may have been a little
different when the gospels were first written. Like most texts in antiquity (when
literacy was restricted to a small fraction of the population), they would have been
written as scripts for oral performance, not books for private perusal, and some
proportion of the material now incorporated in the gospels probably enjoyed oral
circulation for some time before being committed to writing. Mark’s Gospel is
particularly close to oral storytelling, both in its folksy narrative style (such as
the frequent use of the historic present, parataxis, the word “immediately”, and
otherwise non-literary Greek), and in its overall structure.
[16] Although it is now in fixed
textual form, it was very likely shaped in interaction with its first
hearers.
[17] What we have now is a
static text, and so a modern reading does not reproduce this experience of shaping
the text (as opposed to its interpretation), but there is a possible analogy between
the way many biblical texts came into being and the way the textual output of a work
of interactive fiction comes into being, by the co-operation of performer/author and
active listener/reader.
[18]
Finally, IF provides an interesting analogy in the age-old problem of divine
sovereignty and human free will. One obvious place where this surfaces in the
biblical text being used for comparison here is where the Markan Jesus declares that
his betrayer is performing a preordained role in the divine plan, but must
nevertheless bear full responsibility for his actions (Mark 14.21), but the problem
is clearly much wider than that one instance. If the universe has been made by an
omnipotent and omniscient creator, what space is left for human free will? One useful
analogy is that between the author of a novel and the characters within the novel.
Clearly the novelist has full control over the story world he or she creates and the
actions of everyone with it, yet if the characters are not to appear mere puppets,
they must have a certain authenticity and vitality of their own; from the
inner-narrative perspective of the story world they act as free agents. It would not
be appropriate, for example, for a criminal collared by Sherlock Holmes to plead,
“It wasn’t my fault, it was that scoundrel Conan
Doyle who made me do it; he’s writing this story after all.” Such an excuse
would involve a confusion of levels, since at the story-level the villain is free and
responsible for his actions.
But useful though that analogy is, it breaks down if pressed too far, for, after all,
novelists do control all the thoughts and actions of all their characters, so that
their characters enjoy no real independence. Interactive fiction provides a more
satisfactory analogy, since here the protagonist is genuinely guided by an
intelligence distinct from that of his or her creator, namely that of the player. The
story-world is still the creation of the author, but the player is genuinely free to
direct the actions of the PC. It is up to the author what difference that makes; a
work of IF can be so structured that the outcome is the same regardless, or so that
the PC’s choices make a real difference. Both design options are intriguing in this
context, the one modelling freedom of action leading to a predetermined conclusion,
and the other a created world in which the author allows choice to influence outcome.
It is true that the actions open to a player character in a work of interactive
fiction are generally circumscribed, but this is often if not mostly true of real
life as well; in practice we all operate under a number of constraints that limit our
practical options to a finite and frequently quite small number. Reflecting on the
relation of author, player and player character will not solve any age-old
theological problems, but it may provide some new insights for thinking about human
free will in relation to the powers of a creator.