Playing Interactive Fiction

Interactive fiction involves the reader in a way that static stories do not. Rather than reading sequentially from beginning to end, you control the actions of the main character by typing commands in the form of simple English sentences. Before setting out on your adventure there are a few concepts that must be explained in order for you to interact successfully with the virtual world created by the author.

Moving Around

The physical space that you will be exploring is divided up into discrete units called locations. Locations may be travelled between using the following commands:

CommandDirection
nNorth
sSouth
eEast
wWest
neNortheast
nwNorthwest
seSoutheast
swSouthwest
uUp
dDown
inIn
outOut

The description of each location will tell you the directions in which you can travel from it. Be aware, however, that some exits may only be available under certain circumstances such as while a door is open or a bridge lowered.

Manipulating Objects

Within these locations you will find many objects that you can interact with. These objects may be referred to by as few or as many of their names as is required to uniquely identify it. For example, if the story informs you that "There is a silver key resting here." Then it may be referred to as either silver, key or silver key. If your reference is ambiguous, such as using key when there is both a silver and a gold key in the current location then you will be prompted to be more specific.

The next thing to learn about interactive fiction is the way in which you interact with these objects.

The basic sentence structures understood by the game are:

Command StructureExample command
actionscream
action objecttake book
action object preposition objectunlock door with key

An action does not necessarily have to be a single word. For instance, "examine rock through magnifying glass", an example of the last syntax, may also be expressed as "look at rock through magnifying glass". Following is a list of some of the other actions that can be used to interact with the objects you find:

turnreadpullpusheatcut
lockunlockrubattacktastedrink
breaksmelllistenpourmovelight
playblowthrowwearopenclose
takedropinsertremove

Where an object is expected, the words it, them, him and her can be used to indicate the last appropriate object referred to in one of your commands. With some commands it is possible to supply more than one object. Multiple objects can be specified in a multitude of ways. The words all or everything will tell the interpreter that you wish to perform the action on all the objects in the appropriate scope. For example, with the command drop all, the interpreter will perform the drop action for every object you are currently carrying.

Any object reference can be qualified by using the word from. Although this can be used at any time, it is most useful in conjunction with all to construct commands such as take all from chest. This command will perform the take action for every object that is currrently inside the chest.

The word except can be used once per list of objects, with any object to the right of the word except being removed from list of objects to the left. An example of this is the command take all from chest except the gem. The important thing to be aware of with the word except is that any objects supplied after the word except are objects the action is not to be performed on. With this in mind you can see how the two commands below have very different results.

>take sword and all from chest except gem
>take all from chest except gem and sword

With the first command the sword will be taken, with the second command it will not. So in summary, any list of objects may use the word from many times, but except only once at most. Individual objects can be separated by the word and or a comma (,) while the word then or a period (.) is used to separate completely different commands. Below is a legal command that uses all of the forementioned functionality:

>take sword, shield, all from chest and all from shelf except gem then go north

When playing interactive fiction, it is important to have a general feeling for how much can be achieved with a single command. A task such as defusing a bomb would generally not be performed by typing defuse bomb. The following is a sample transcript to give you a better feel for how a task such as this might be achieved:

>examine bomb
The bomb is about a foot square and has a small panel in its upper 
surface. The panel is currently closed.
 
>listen to bomb
The bomb is making an ominous ticking sound.

>open panel
You open the panel to reveal a red wire, a green wire, a blue wire, 
a clock and some dynamite.

>i
You are carrying a bomb manual, an insurance policy and some wire 
cutters.

>read manual
Leafing through the book you come to the page on diffusing. Seems 
straight forward enough, just cut the blue wire then the red one.

>cut blue wire with cutters
Reaching carefully in to the bomb's casing you cut the blue wire. So 
far so good.

>cut red wire with cutters
Holding your breath you snip the red wire.

>listen to bomb
The bomb, thankfully, is now silent.

As you can see, each task you wish to achieve must be broken down into its component actions.

Interacting with Characters

During the course of the story you may encounter other computer controlled characters. These characters may be interacted with using the following commands:
 talk to character
 give object to character
 show object to character
 ask character for object
 ask character about object
 tell character about object

Meta Commands

There are also some special commands for interacting with the JACL interpreter rather than the game world it is currently running:

CommandAction
verboseAlways describe locations when visited.
briefOnly describe locations when being visited for the first time.
restartRestart the game from the beginning.
scriptStart recording a complete transcript of your game session.
unscriptStop recording a started transcript.
scoreDisplay your current score.
lookDisplay the description for the current location.
saveSave the current game state.
restoreRestore a saved game state.
iDisplay a horizontal list of possessions.
invDisplay a vertical list of possessions.
oops NewWordReplace the erroneous word in the last command with the supplied new word.
undoTake back the last command issued.
againRepeat the last command issued.
infoDisplay interpreter version information.
aboutDisplay game version information.

You are now ready to embark on your first adventure into the world of interactive fiction. Remember to make a map as you go and read everything carefully as vital clues may be hidden in the descriptions of the locations and objects you come across. Examining every object you can refer to is a good idea, as is saving your position often. Well, good luck, and above all have fun!

Back to Contents