Requirements Specifications for Interactive Storytelling
Ernest W. Adams
version 1.0, 13 February 2013
This document is released to the public domain without limitation whatsoever.
This document implements gender-neutral language by alternating (irregularly) between male and female pronouns.
This document offers a template for writing a requirements specification for an interactive story. It does not suggest a specific method for creating an interactive story, because no single method is suitable for all types of interactive entertainment experiences. Rather, it helps you to define your design goals for your interactive story, and suggests a number of important issues to consider before starting.
Important: This is not a template for designing the interactive story itself. It is a template for defining what kind of interactive story-like experience you want to offer.
Why Write a Requirements Specification?
“The only coherent story-creation processes I’ve encountered have been those that my own team brought into a game project. Most developers still treat story as a minor subsystem that will take care of itself through some magical unspecified process.”
— Chris Bateman, editor of Game Writing: Narrative Skills for Videogames
Chris Bateman is exaggerating for humorous effect, but his point is right: too many game developers don’t know enough about interactive storytelling, and too many of them dive into design without stopping to think about what they really want to achieve. To make it worse, there’s a lot of loud debate in the game industry about the right way to do interactive storytelling that sheds more heat than light on the subject.
There is no one right way to do interactive storytelling. Each approach has its strengths and its weaknesses. But the first thing you must do is decide what you want to do, and make informed choices about what kind of story you plan to offer. Ask yourself what you want an interactive story to do for you and for your player. Then select an approach that meets your needs.
The point of writing a requirements specification is to define your design goals for the player’s experience of the story before you actually start to build the story. It is not meant to tie you down to a particular approach, or set a standard which you must meet. It doesn’t have to read like engineering specifications for a jet engine. It’s just a way of thinking through the options and recording your intentions.
If you don’t understand why design documents are necessary at all, please see my article “Why Design Documents Matter,” which is available at:
Each heading in the template represents a subject that you should address in a requirements specification. The text below the heading suggests issues to consider in deciding what to specify, and often includes a number of questions to ask yourself. Sometimes it offers lists of options to consider. These lists are not exhaustive; if you would like to see more options, please buy a good book on interactive storytelling. In many cases, these options are not mutually exclusive, but may be combined to create a hybrid approach to the issue.
Think the questions over and debate them with your design team, if you have one. Then write your answers or decisions under the heading.
Important: Read all the way through the template before making any decisions or beginning to fill it in!
Also important: It is not necessary, or even desirable, to work on this template in a linear fashion from the beginning to the end. Many questions in the template are interrelated, and your decisions about one issue will influence your decisions about another. Think through the issues first before you start to make firm decisions.
In order to use this template efficiently, you must be familiar with the terms it uses.
Narrative. Narrative consists of that which is narrated, i.e. non-interactive, presentational content. This can mean cinematics, voice-over narration, scrolling text, or any other story-presentation content that the player cannot change or add to. This is an intentionally naïve definition which avoids the mountain of debate about narrative in the academic literature. This means interactive narrative is an oxymoron. I prefer interactive storytelling.
Narrative immersion. The player’s feeling that he is deeply involved in a story, as distinct from being deeply involved in strategic or tactical gameplay.
Events. When a player plays a video game, she experiences three types of events: those that are narrated to her (and cannot change); those that are the result of computation (and might be different on another playing); and the player’s own actions, initiated through the user interface. These are narrative events, computed events, and player events, respectively.
Plot. Plot consists of all the events in the story that are both dramatically significant (they either raiser or lower dramatic tension) and related, either by causality or subject matter to the majority of the other plot events. (Red herrings in detective fiction are not causally related to the other plot events, but related by subject matter—the reader thinks they are causal.)
In interactive storytelling, the plot is the entire web of possible plot events that the player may experience in the course of play. This web may be predetermined by the designer, computed by an algorithm, or a hybrid. Different plot structures create different storytelling experiences, especially if the player plays the game more than once. The structure of the plot also determines the number of beginnings and endings that the story may have.
Not all player events are plot events because not all player’s actions raise or lower dramatic tension.
Linear plot. A plot that the player can only take one path through, in which events that the player experiences in the future are not changed by anything the player does (or any computational process either).
Manifold plot. A plot that the player can experience in different ways on different replayings. Manifold plots can be predetermined by the designer (branching and foldback/parallel/multilinear plots), procedurally generated by the computer, or a hybrid of both methods.
Plot line. The course of events that the player actually experiences while traversing the plot.
Interactive range or freedom. The total variety of actions available to the player, as provided by the user interface. Note that a large interactive range does not necessarily imply that the player can influence the plot of the story. A player might be able to do a million things in a game universe and still be unable to affect future events in the story.
Agency. In general, this means the capacity to effect change; in this document, it means the player’s ability to influence or change future events in the plot, or to modify the plot line in a predetermined plot.
Interactive storytelling. A systematic process that makes a player feel as if she is immersed in and contributing to a story. A story that the player interacts with by contributing actions to it. This applies even if those actions do not affect the plot line.Linear plots are still interactive because the player still interacts with them by contributing actions to them, possibly by causing the plot to advance, and by experiencing events as they unfold.
Well-formed story. This term refers to the audience’s general feeling that a story is making sense and not absurd or boring. A well-formed story possesses some or all of the following important qualities:
The author’s, or designer’s, contribution to the story is coherent. If the designer (or the computer program) creates nonsense or absurdities, the story is not well-formed.
The experience preserves credibility within its own inner laws. Even science fiction and fantasy stories have some limits on their credibility.
Plot events occur at a rate sufficient to sustain dramatic tension.
The story contains few or no random, arbitrary, or repetitive events. (Arbitrariness violates the need for a sense of causality in a plot. Repetition destroys dramatic tension.)
An interactive well-formed story exhibits additional properties:
The player derives entertainment through contributing to the plot. In most interactive stories the player enacts a character in the story, normally the protagonist.
Dialogue and character interactions usually play a significant role.
Note that an interactive storyteller is not required to provide all of these qualities. Players’ demands and expectations about their interactive stories vary considerably, and it is up to you as a designer to choose which of these you want to implement. However, the more of them that you abandon, the more you risk the player feeling that your story is not well-formed.
Ideally, in a well-formed interactive story, the player’s actions are coherent with the plot, the story’s world, and the definition of the character she is enacting. If the player has a lot of freedom, she might be able to destroy the well-formedness of an interactive story. Whether you choose to allow this is up to you.
Procedural rhetoric. A term devised by Ian Bogost for a message that is communicated to the player through algorithmic processes rather than explicit narration.
How Your Design Decisions Affect Your Story Design Goals
The diagram on the following page illustrates the various design decisions described in the template, and how these decisions influence one another and your overall goals for the experience. This section describes and explains the diagram, with reference to the sections of the template where you can find more details.
Boxes represent the major and minor design decisions and tasks that you will undertake, perceptions that you may hope to create in the player, and activities that the player may perform. They are colour-coded as follows:
Light blue boxes represent player perceptions that you may seek to achieve as a design goal of the experience. Some of these are affected by the player’s own activity
Gold boxes represent major design decisions and design tasks that you will have to complete to design your story.
Green boxes represent smaller, supporting design decisions that either influence, or form a part of, other elements in the diagram.
Red boxes represent player contributions which may affect her experience of the interactive story. As the designer, you must decide what options will be available to the player.
Four boxes near the centre of the diagram have heavy outlines. These are the most important design goals and should be established first. They are discussed in section 8 of the template.
Arrows connect the boxes to show a relationship between them. There are two types of arrows:
Solid arrows from one box to another indicate that decision, task, or activity in the first box influences the second one. The thickness of a solid arrow is intended to roughly represent the degree of influence exerted by the decisions in the first box on the second one. For example, the overall design of the plot has a strong influence on the plot line that the player experiences.
Dashed arrows indicate that the first box actually forms a part of the second. At the lower right, for example, the endings and beginnings of the story form a part of the plot’s structure, and the structure forms a part of the plot itself. Dashed arrows are all the same thickness.
Relationships Among Design Decisions and Goals
Key Design Goals
Just above the centre of the diagram are four boxes with heavy outlines that represent the most important design goals that you must define for yourself at the beginning of the process. They are:
Overall Importance of the Story (as a part of the interactive experience). This is not normally a difficult decision, but it determines the attitude you will take to every other decision you make. It is discussed in section 8 of the template. It has an immediate influence on the next key decision, Function of the Story in the Experience.
Function of the Story in the Experience. Discussed in section 8, this influences the plot itself and your goals for the player’s emotional perceptions, shown in the box Emotional Goals for the Story.
Degree of Well-Formedness. Is it important to you that the player perceives your story as well-formed? How well-formed the story is will affect his narrative immersion, which in turn will effect his emotional response to the story. As described in section 9, the player’s perception of well-formedness comprises several factors: pacing, repetitiveness, credibility, arbitrariness (or randomness), and coherence.
Emotional Goals for the Story. This represents your plans, or intentions, for the player’s emotional perception of the story. It is influenced by four factors: The design of the avatar, the player’s degree of narrative immersion, the overall function of the story, and especially the ending or endings. I discuss this aspect in section 9.
You should make these decisions about the story first, and bear them in mind when you make later design decisions. If a later design decision conflicts with one of these key goals for the story, your risk undermining your basic intentions for the story, and you should re-evaluate the decision. It is generally unwise (and expensive) to change a key goal later in the process.
Other Design Tasks
When you have established the four keys goals for your interactive story, you can begin the work of designing other aspects of the experience, which include the other decisions and design tasks in the diagram.
Avatar Design (section 13 of the template). Along with all the various other aspects of the avatar (appearance, animations, and so on), two important decisions form a part of the avatar design for storytelling purposes: the degree to which the avatar will be specified (discussed in section 13), and the avatar’s relationship to the player (discussed in section 14). In addition, you may offer the player the opportunity to customize the avatar in various ways; these options also influence the avatar’s design.
Player Actions. All the player’s actions have a powerful influence on her perception of the game’s well-formedness, because the player can act in ways that affect the story’s repetitiveness, credibility, arbitrariness, and coherence. If you want the player to perceive the story as well-formed, you have to keep this in mind as you define what actions are available to the player. Two key design decisions form part of defining the available actions: the degree of interactive range the player will have (see section 10), and the degree of agency she will have over the plot line (section 10). Player agency determines what plot line the player will experience in a given play-through.
Plot (section 11 of the template). At this point you should not be trying to define what the plot of your story is, but the kind of plot that you want. Your earlier decision about what function the story will have in the player’s overall experience will influence your choices about the plot. The form of the story (section 10) describes its nature on a large scale, typically by analogy with other media—a three-act play versus an unlimited series, for example—which influences the plot. Choosing a structure (section 11) for your plot determines whether the plot will be linear or manifold and predefined or computed (or a hybrid). Other aspects of the structure include the number of beginnings and endings that the plot will have (sections 11 and 12). The ending or endings will have a strong effect on the player’s emotional perceptions. You will also have to find a way to introduce the player to the game world, and your choice of means will influence the way that the plot begins (section 11). Finally, if you want your story to have a theme (section 8), it may influence the plot.
Plot Advancement Mechanism (section 13 of the template). Your choice of mechanism (time, avatar movement, completion of tasks, etc.) will influence the plot line that the player perceives, and strongly influence his perception of the story’s pacing.
The Introduction section of your specification document should consist of a highly condensed high-concept statement for the game itself, as well as fundamentals such as platform, genre, aesthetic or literary style, and target audience. If you’re creating a serious game, you should also state what the game is trying to accomplish apart from entertainment.
1.2Goals for the Story’s Role in the Entertainment Experience
In this section, document your most fundamental reasons for including a story in your interactive entertainment experience. Why do you want a story? What do you expect it to do for the player? What do you want it to accomplish? You should make these decisions before any others about the story.
1.2.1Overall Importance of the Story to the Experience
On a scale from minimal to critical, how important is the story as part of the player’s experience?
Background: A video game offers many sources of entertainment, including overcoming challenges, exploring, creation or construction, social interaction, appreciating the aesthetics of the game, progression/growth, learning new skills, and of course the story. If you were to analyse the player’s entertainment experience in terms of these entertainment sources, what percentage of the player’s entertainment would come from the story?
How important is it to maintain the player’s sense of narrative immersion in the game? Does it matter if parts of the game do not feel story-like? State your expectations here.
Do you want your story to have a theme or underlying message? What means do you expect to use to convey it to the player? Some options include direct narration, experience of plot events, and procedural rhetoric.
Background: Theme refers to the general idea, message, or moral of a story. It can normally be summed up in a declarative sentence. For example, the theme of Kurt Vonnegut’s Slaughterhouse-Five might be, “The world is absurd and horrible.” The Harry Potter books have many themes about the value of friendship, integrity, and courage.
1.2.2Function of the Story
What is the function of the story in the context of your game? A non-exhaustive list of options includes:
Framing narrative only, no storytelling during gameplay
Linking episodes of gameplay (level transitions)
Providing background or context during play
Story events interwoven with gameplay, but the story events are not caused or changed by gameplay events (loose integration).
Story events interwoven with gameplay, and the story events are caused or changed by gameplay events (tight integration).
Central—the game is the story, and other considerations are subordinated
How important is the well-formedness of the story experience to you (and to your player)? Are some aspects of well-formedness more important than others? Well-formedness will have an effect on the player’s sense of narrative immersion. State which you especially want to preserve:
Coherence or consistency
Player coherently enacting a character (role-playing)
Player contributing to the plot (actions are part of the story, not ancillary)
Few random, arbitrary events
Few repetitious events
Sufficient pace to maintain dramatic tension
Do you care whether the story is believable? (If it is a comedy, you may not.) Does it matter to you if the player does things that are simply not credible? If so, how will you prevent it? (Given that games often limit the player’s ability to perform non-credible actions.)
If you plan to use a procedurally-generated plot and you want the story to be credible, how will you guarantee that it always generates credible plot lines, and always generates credible responses to player inputs?
How much does it matter to you that the plot maintain coherence? Coherence is usually guaranteed by placing limits on player freedom. Ask yourself the following questions:
Can the player violate the game world, by introducing elements that do not belong there (e.g. a gun into a car race). As regards physical objects, this is easily prevented by not including such objects in the game. With respect to speech, however, do you care if the player can speak of concepts not included in the game world, and if so, how do you propose to prevent it?
Can the player violate his avatar’s character, that is, behave out of character? If the avatar is unspecified or player-specified this is not an issue. If you do not want the player to behave out of character, how will you prevent it? (Avatars in point-and-click adventures usually refuse to perform out-of-character actions even if those actions are available in the user interface.)
Can the player violate the plot, i.e. perform actions that produce plot absurdities, such as killing a character who later reappears in the game? If not, how will you prevent it? Some options include limiting the player’s freedom to perform such actions, use of manifold plotting, or preventing the player from finding or from interacting with plot-critical characters or objects.
1.2.4Emotional Goals for the Story
Will the story contribute significantly to the player’s emotional experience of the game? What will the overall emotional tone of the story/game be? What emotions do you want the story to elicit? A non-exhaustive list of options includes:
Multiple independent stories in common universe, no overarching story arc (for example, Star Trek: The Original Series)
Multiple interrelated stories in common universe, one overarching story arc (for example, Babylon-5)
Soap opera (endless continuing story in common universe, with multiple overlapping plot lines)
1.4Player Freedom (Interactive Range)
Define in general terms (do not specify the entire user interface or action set) how the player can affect the game world. Define the mechanisms of manipulation, including ways the player can interact with NPCs. These might include physical, economic, social, or creative activities.
Define the mechanisms by which the player can express their avatar’s character or personality. Some options include a player-defined/customized avatar; conversation; mood icons; moral choices.
Do any available player actions tend to make the story feel less well-formed and coherent? How can you ameliorate the effect of this on the player’s perception of the story?
Background: Choosing the actions that we give the player to perform is one of the most profoundly important design decisions in interactive storytelling, because those actions become part of the story. At this point in the design process it’s too early to define the action set precisely, but you should think about what broad categories of things you want the player to do, and how actions of those types contribute to the player’s sense of immersion in a story.
You also need to think about how you will enable the player to role-play their avatar in such a way as to enhance the story. Remember that stories are not only plot. Some material exists to illustrate character, and giving the player choices in how his avatar acts lets the player convey the character of the avatar.
Do you want the player to have agency? How much? (High levels of agency will require procedurally generated plot structures, which are more complicated to implement and much more complicated to debug.) Your answers to the following questions will have implications for the game’s replayability.
What general categories of actions do you plan to allow to change the player’s plot line? The answer to this will depend considerably on your game’s genre and setting.
Do you want the plot line to vary based on the player’s ability to meet challenges, so the story changes if she does well or badly?
Do you want the plot line to vary based on the player’s choices?
When do the effects of the player’s activities on the plot line become noticeable? Immediately? Or are they deferred? Or are the effects of the player’s actions cumulative, so no one action changes the plot line, but they build up over time?
Background: Agency refers to the player’s ability to influence his plot line through the story by making choices or taking actions.
Be sure that you understand the definition of plot and plot line provided in the Guide above.
What structure do you want for your plot? This is a profoundly important question that will influence many other decisions you must make. The structure of your plot is closely related to the question of agency. If you want your player to feel a sense of agency, you must provide a manifold plot structure. There are many ways to organize a plot and the underlying technology is substantially different. A non-exhaustive list of options includes:
Linear plot. This is the classic storytelling form. The player can contribute actions to the plot, but cannot alter the content of the plot or future events (the player has no agency). Often the player’s actions serve to advance the plot; it stalls or ends prematurely if he fails at a challenge. If your story is linear, the plot line and the plot are one.
Manifold plot (predetermined). Branching and foldback (multilinear) plots are predetermined manifold plots, typically implemented as directed acyclic graphs. If you choose this approach you will have to define the structure of the graph and decide what causes the player’s plot line to branch at various points in the graph. The player’s agency consists of making choices that cause the plot line to take one direction or another.
Manifold plot (computed). A computed plot is not predetermined by the designer, but arises out of the internal mechanics of the game. As the designer you must create a story-generation system that produces well-formed stories algorithmically. This will require heuristics or other mechanisms that prevent the system from generating absurdities. These systems offer the player maximum agency, but it is difficult to ensure that they generate a coherent, well-paced experience.
Hybrids. It is not necessary to confine yourself to one of these structures. It is possible to build an interactive storytelling system that combines them.
1.6.2Beginnings (Initial Conditions)
The beginning of the story sets the scene, establishes the character of the protagonist and others, and establishes dramatic tension for the first time.
184.108.40.206Means of Introducing the Player to the World and Characters
How will you introduce the world and characters to the player? A non-exhaustive list of options includes:
Introductory narration. Non-interactive material that sets the scene, sometimes in the form of cinematics, voice-over narration, or scrolling text.
Introductory clues. Introductory material is built into the environment, such as a journal, newspaper, etc., so that the player’s initial explorations reveal the basics of the game world.
Mentor character. The player begins the game without much introduction, but soon meets a mentor character who explains the world to him.
Tutorial level. The player must play through an explicit tutorial which introduces her to the world.
Amnesia device/Sink or swim approach. A tired but workable device, the player plays a character who is said to have amnesia and so gets no introduction at all. The player’s unfamiliarity with the world is the avatar’s unfamiliarity too. You need not use actual amnesia; in broader terms, any time the world is as new to the avatar character as it is to the player—the avatar is a new recruit in an organization, is kidnapped into a different world, falls down a rabbit hole into Wonderland like Alice—as long as the first encounters in the game world can't kill the avatar, the player can learn by doing.
Background: In approaching the game for the first time, the player knows very little about the interactive story’s world and characters, just as a reader doesn’t know about a book before opening the cover, or a movie-goer doesn’t know what's in a film until the titles roll. But unlike readers and movie-goers, who are passive, the player must begin to act in the fictional world.
220.127.116.11Number of Beginnings
Do you want your story to have multiple possible beginnings? If so, how will the software choose among them? By random chance, some other computed method, or can the player make some decision that influences how the story begins for him?
Relatively few games bother with multiple beginnings because they do not have much emotional significance; the player is not yet invested in the story. However, there are various options:
Single beginning. (Traditional)
Dual beginnings. Can be characterized as “Choose a side to play” in games about conflict.
Indefinite number of beginnings. Seen when players start with a randomized universe and situation within it.
How many possible endings do you want your story to have? Note: any time you have more than one ending, because of the game context (the idea of winning and losing) and the history of computer games, players are likely to feel that one of them is the “right” or “best” ending.
Single ending. The classic storytelling approach; packs the most emotional punch.
Dual endings. Can be characterized as winning or losing, or as the result of player decision-making during play.
Plural endings. Can reflect a more complex story in which the player makes several meaningful choices in the course of play, where meaningful indicates a choice that will direct the plot line to a different ending, or makes one choice with multiple options, which determines which of one of multiple endings the game will supply.
Indefinite number of endings. These endings must be computed from the game’s mechanics. For example, the rank to which the player’s avatar is promoted at the end of a game might be determined by a numeric score of some kind. Packs the least emotional power as one ending is very like another.
1.7Plot Advancement Mechanisms
The player experiences the story in linear real time. You must define the rate at which the player experiences events in the plot line, and the triggers that cause the player to experience these events. In this section, define how you want the plot to advance.
Is it important that the plot advance in a smooth, uninterrupted fashion, or is it acceptable for it to stall temporarily or indefinitely? What will cause the player to experience new plot events? Below are some options for advancing the plot, each of which has consequences and tradeoffs.
The passage of real time controls advancement. In this case the plot advances continuously in real time and the player must keep up. This creates a powerful sense of urgency in the player. In a less aggressive form, the plot advances when internal timers expire.
Avatar movement controls advancement (the story as a journey). The player’s control over avatar movement determines the pace of advancement; if the avatar stops moving, the plot stops advancing.
Overcoming challenges controls advancement. The plot advances when the player achieves things in the game, and remains stalled so long as the player fails to achieve.
Player choices and other interactions control advancement. Generally seen in social simulations or dramas, the player’s interactions with the other characters (often conversations) control advancement. If the player does not interact, the plot stalls.
Note that these may all be combined; it is not necessary to use only one, but to understand what each offers. Think about the kind of game and story you want to create and decide which of these will be most appropriate.
You should not design the avatar character here, but should think about how you want the player to perceive the avatar, as this will have an impact on her emotional experience of the story.
1.8.1Degree of Avatar Specificity
To what degree do you want to specify the avatar? Avatar specifications include such things as appearance, temperament, vocabulary, intelligence, attitudes about the world, and background, as well as an animation move set that is determined by the variety of activities he may undertake and events that may befall him.
Avatar specificity runs along a continuum:
Unspecified avatar (Gordon Freeman from the Half-Life games). The avatar is never seen and never speaks. The player is the avatar.
Partially specified avatar (Lara Croft from the Tomb Raider games). You will specify the avatar to a limited extent. Lara Croft has an appearance, but little emotional life or personality.
Richly-specified avatar (April Ryan from The Longest Journey). Mostly found in adventure games, richly-specified avatars are fully-fleshed-out characters with appearances, personalities, vocabularies, and so forth of their own.
Player-specified avatar. The player may build her own avatar to whatever extent you choose to offer; it usually consists of choices about appearance and game statistics. This approach will require you to include a character creation feature in the game.
Note that if the player’s avatar is unspecified or player-specified, the player can never do anything in the game that seems to be “out of character”—the character is his to define.
1.8.2Desired Relationship to the Player
How do you want the player to feel about and to treat the avatar? A non-exhaustive list of options includes:
The avatar is a role to be enacted. The player inhabits the character and brings it to life. The avatar says what the player says.
The avatar is a tool for influencing the game world and/or plot. The player has little emotional connection to the avatar as a person; it is merely an appendage of the player in the game world. The user interface affords few opportunities to role-play the avatar as a character.
The avatar is a character separate from, but guided and influenced by the player. The player’s control over the avatar may be indirect rather than direct. The avatar may speak to the player as if the player were another person present, or as if the avatar were talking to herself. This approach is commonly found in point-and-click adventure games.
If you have any special notes about your storytelling goals, write them in here. This is especially important if you plan to do something unusual, such as to tell a very surreal story, or to allow the player to enact more than one character in the story.