May 21, 2003

The Space of Interactive Narrative

by Michael Mateas · , 10:35 am

Last semester I taught a course on interactive narrative. One of the challenges in teaching such a course is presenting a unifying framework within which the many computer-based “story-like things” that people have made can be understood as a unity, as all being instances of interactive narrative. (The alternative is to present a hodge-podge of approaches to interactive narrative, but this isn’t nearly as much fun.) My approach was to present a design space organized around four degrees of freedom:

While in principle the choices along these dimensions can be made independently, historically the choices are organized by technical genres. A technical genre is a specific computational narrative tradition, with a history of work and criticism, that tends to make a coordinated set of specific design commitments along these dimensions. This can be made clear with some examples.

Interactive fiction (“Zork-like” text-based interactive experiences in which the player types commands and moves around a world) is a technical genre. As a genre of interactive narrative, IF makes the following design commitments:

The “technical” part of technical genre means that the design commitments are embodied in a specific ways of relating to computation, that is, specific technical practices. For example, IF languages such as Inform and TADS make it easy to create places and objects, and to write many snippets of descriptive prose that are appropriately displayed as the player moves around in the world and changes the state of objects.

The IF design commitments above are the canonical commitments – many modern IF works explicitly push against one or more of these canonical commitments, by, for example, changing the role of the player character (making it more than a puppet manipulated by the player), or making the experience feel more story-like during play rather than the storyness being purely a property of the retelling. But the canonical commitments of the technical genre shape what experiments will be tried within the genre precisely by providing a position to push against.

As another example, offered without comment, the technical genre of hypertext makes the following canonical commitments:

Segmentation is the dimension where authorial considerations (narrative design – what are the pieces of my story) most intimately intersects with implementation considerations (code design – what are the pieces of my code). Authoring tools, such as Inform or StorySpace, tend to freeze this relationship by offering a language/tool that makes a specific kind of story piece (e.g. a physical object, a text node) have a clean, one-to-one relationship with code structures (e.g. the object-oriented representation of a physical object in Inform). This is powerful in that the authoring tool itself embodies the design wisdom of a technical genre, but limiting in that the tool inhibits radical movement into other parts of the design space. Different points in the design space require novel architectural elaborations; the process of conceiving of novel story segmentations requires a simultaneous concern with authorial and implementation considerations.

When thinking about the entire space of things that might be called interactive narrative, what approaches have other people found useful?

3 Responses to “The Space of Interactive Narrative”

  1. magy Says:

    Re: other techniques.

    In my interactive narrative class, we defined the space of interactive narrative along two dimensions: interactivity and narrative. The interactivity dimention was further defined along the following dimensions (most interactive narratives will have one or more of these interactivity modes):

    – psychological space connection:

    interactor is observer, does not affect action; click on character to get psychological state revealed in text. e.g. John Laird et al.’s Hunted: interactor as ghost/dybyck with limited affective power-can act as direct agent once they’ve taken over the host.

    – Spatial Connection

    (e.g Myst, Exile)

    first or third person interactor has control of movement, uses movement through space as primary mode of exploration or experience.

    – Titillation

    (e.g. games-Silent Hill 1, Silent Hill 2, Dracula)

    first or third person interactor with direct agency; driven by and rewarded with sensual stimulation (i.e. breathing and other sounds, visuals with high color content.

    – Problem Solving

    (games/quests –RPG’s, Myst, Silent Hill)

    first or third person interactor with direct agency; puzzling, strategizing hunts, fights, competitions; rewarded with winning.

    – Relational

    (e.g. Living Letters , Woogles, Cats & Dogs, Fallout 2)

    first or third person interactor with direct agency of a primarily reactive type; major task is building relationship with Believables (short term and limited depth with Woogles vs. true give and take with the Cats & Dogs.) NB programmers: representing relationships in programs.

    – voyeur, playwright, god

    (e.g. Sims, Black and White, Dune, Warcraft)

    interactor dictates action/ decisions to characters; Sims and Black and White utilize Believeables.

    – Relational Intra and Interpersonal

    (e.g. Mirage, Facade)

    first or third person interactor with direct agency of both reactive and proactive dynamic

    – Customizing

    (e.g. most RPGs, Summoner, Sims)

    pre-game choices about personality and or appearances of avatars or characters; descriptions range from shallow to in-depth;

    reward adds investement

    We described the narrative in terms of:


    (e.g. Revenant)

    not interactive in a narrative sense, but appears in games where interaction is limited to puzzle solving.


    (e.g. Silent Hill 1, Silent Hill 2)

    branching, accumulating or planning engine

    -closed set

    describing the possibility of change as closed set instead of open-ended

    -open set

    (e.g. Sims)

    no narrative represented in program, only dictionary of behaviors

    This seemed to work well for critiquing interactive narrative experiences…

    Re: tools/languages point

    I TAed a class on game design class and taught my own interactive narrative class. In the game design class, we used Inform, and game engines such as Unreal, and others. As, Michael pointed out, I found them very restrictive and inflexible, they are very good for producing similar games to the games the engine was designed for, but that was too restrictive to produce anything different from the games/interactive narratives that we see today. So for my interactive narrative class, I used Wildtangent/ and a story language. These were libraries that the students can use or ignore. Even though they were more flexible than game engines, they were too flexible and require too much content generation to be used for a class project. Although the students were able to build some interesting forms of interactive narratives, it took them far too long to accomplish and some of them stayed the summer to finish their projects.

    I was wondering if anyone has any comment or can suggest an engine or a system for that purpose?

  2. Michael Says:

    Sounds like you’ve identified some interesting descriptive categories, particularly along the interactivity dimension.

    Regarding tools, I just want to clarify that when I described tools such as StorySpace and Inform as encoding a specific design tradition, I didn’t mean to say that they were “very restrictive and inflexible”. Yes, since they encode a design tradition, they do make certain kinds of experiences easier to build, while other kinds of experiences are difficult or impossible to build. But to focus on the “restrictive” part is to ignore the power of a design framework and tradition, the way it gives the author a conceptual space to develop their work. For example, in Inform in just a few lines of code one can implement a small set of locations and objects with a large number of default verbs – the ability to move between locations, open and close doors, pickup and drop objects, etc. is all built into the framework (technically, implemented in standard library code). Now in building a specific IF, the author will probably not want the default actions and responses on objects, and, conveniently, the default framework has already identified many things (verbs) that the author can customize. And these customization points encode the collective design wisdom of years of IF authoring experience. This is powerful as well as “restrictive”. I think the answer is that there are no general purpose tools for interactive narrative, if, by general purpose, one means you can build any story-like thing you want. I suppose compilers for general purpose programming languages (e.g. C++, lisp, Java) might be considered such tools, but their very generality makes them of limited use for thinking about interactive experiences (the design traditions they encode aren’t about interactive experience, but about objects, functional abstraction, closures and so forth). In order to move into radically different points in design space, you have to build your own tools which define the new point in the design space.

    As far as what tools to teach in an IF class, so far my approach has been to let students use what they want. During the class I present examples of work from many interactive narrative traditions – what tools a student may use for design projects depends on what work resonated with them. For example, Danny Muller, a student with a screenwriting background, decided to do a final project using Inform. He wanted to think about how to turn a screenplay he’s been working on into an interactive experience. He also likes working with words. He’s never really programmed before – he gave himself a crash course in Inform programming (with some help from me over some sticky spots), developed a nice final project, and learned a lot about what it means to segment bits of writing among collections of locations and objects in such a way as to create a world with story potential. Brian Hochhalter, a student with a background in film studies, modified Tale-Spin, an early AI story generator, to generate stories in the Anime high-school love drama genre. Heather Logas, a student with a BFA background, used Director (and did a lot of lingo programming) to build a solitaire card game that generates simple fables as you play the game (cards represent characters, events, and so forth).

  3. noah Says:

    First, Michael and Magy, would you be willing to post links to your syllabi here?

    Second, Michael, does it seem possible to you that something like Facade might become a technical genre? (Encoded in a tool like Inform, Storyspace, the Quake engine, etc.) Or is it always going to be more on the gcc end of things?

Powered by WordPress