Computational approaches to narrative (Schedule)

Important links: Syllabus, form for submitting homework.

Readings available in accessible format are included as hyperlinks below. Alternate methods of obtaining the readings will be discussed in class. Some required games and other playable media must be purchased; these are noted with a “$” symbol. (Total cost of materials for the class is not expected to exceed US$30.) It’s always better to play these games with friends and fellow classmates! Obviously, this semester (Fall 2020), there are limited opportunities to do this. But maybe we can get a few Twitch streams going?

Sessions are loosely grouped into the following “units”:

  • Unit 1: Hypertext and Formal theories of narrative (Sessions 01 through 04)
  • Unit 2: Worlds and world models (Sessions 05 through 08)
  • Unit 3: Narrative generation (Sessions 09 through 12)

Session 01: Formal theories of narrative

Date: 2020-09-03.

Play and reading assigned

To be discussed in session 02. Consider while playing “Her Story” the relationship between story (the underlying events of the plot) and discourse (how the story is told). How are they interrelated? Can they be separated? How is this form of discourse appropriate (or inappropriate) to the story? The Abbott reading is intended to give a more formal overview of some of the topics we discussed during the lecture in class. I encourage you to explore one or more of Abbott’s “selected secondary resources” and “additional primary texts.” The Koenitz et al. paper provides a catalogue of narrative structures from “outside the dominant canon of western print literature and cinematic works” in order to demonstrate the inadequacy of “the supposed universal model of the Monomyth/dramatic arc.”

Optional supplementary reading and play:

  • 18 Cadence by Aaron Reed. A dramatic and brilliant example of a multithreaded story manifested in free-form interactive discourse. Read Emily Short’s review to orient yourself.
  • For a more formal and academic overview of theories of narrative structure: Toolan, Michael J. “Basic Story Structure.” Narrative: A Critical Linguistic Introduction, 2nd ed, Routledge, 2001, pp. 15–37. (You may want to read Eveline by James Joyce in order to follow some of the examples in the chapter.)
  • Most readings in this class reference literary narratology. But the field of sociolinguistics is also rich in narratological research. In sociolinguistics, the focus is primarily on non-literary oral narrative. A classic reading in this field: Labov, William. “Narrative Analysis.Language of Life and Death : The Transformation of Experience in Oral Narrative, Cambridge University Press, 2013, pp. 14–43. See also Champion’s detailed sociolinguistic analysis of oral storytelling among African American children, which argues that teachers’ unequal consideration of cultural narrative structures leads to poor educational outcomes: Champion, Tempii Bridgene. Understanding Storytelling among African American Children: A Journey from Africa to America. Lawrence Erlbaum Associates, 2003.
  • On Kishōtenketsu: “The Significance of Plot without Conflict.Still Eating Oranges, Accessed 1 Sept. 2019.

Sketch #1 assigned

Due at the beginning of session 02. Create a system for generating stories. The system should be based on some kind of formalism or abstraction about narrative—maybe one that you read about in the reading, or maybe one that you’ve devised yourself. Be weird and opinionated. Your system should provide a set of instructions to follow (or an interface to interact with), and at the end produce some kind of story. The system should be expressive, i.e., following the instructions multiple times should produce noticeably different stories. This doesn’t have to be a computer program! Feel free to use non-digital tools (like dice and decks of index cards) or low-computation digital tools (spreadsheets, Google Docs, etc.).

Resources to consult:

Session 02: Hypertext

Date: 2020-09-10.

Reading assigned

To be discussed in session 03.

Read the following. The purpose of these readings is to give you a vocabulary for talking about interactive forms of narrative, and to give you a set of tools for connecting your narrative ideas to tools and techniques for implementing those ideas. “The Whys and Wherefores of Game Analysis” is a good overview of how to approach and talk about games critically. I think the basic structure can also be used to think critically about interactive experiences in general. Fernández-Vara’s “Types of Narrative Choices” describes how different kinds of narrative choice are presented to players, and demonstrates the effects that these choices have; Ashwell’s “Standard Patterns in Choice-Based” games instead focuses on the underlying hypertext structures that might result from implementing these kinds of decisions. Mason and Bernstein’s paper catalogues styles of links and discusses their effects in an experimental fashion by applying different link styles to the same passage.

Session 03: Twine

Date: 2020-09-17.

Reading and play assigned.

To be discussed in session 04.

Read/play the following. Characterize how the these works make use of the affordances of hypertext and branching narrative. How are they different, how are they similar? What kinds of decisions do these works ask of the person interacting with them? How are the hypertext structures appropriate or not appropriate to the content (to the extent that form and content can be separated)?

Session 04: Twine, continued

Date: 2020-09-24.

  • Reading/play discussion
  • Twine tutorial part 3. (Notes TK.)

Sketch #2 assigned

Due at the beginning of session 05. Use Twine to make something. A few ideas:

  • Tell a personal story or anecdote.
  • Adapt an existing game (video game, board game, card game, sport?) to Twine.
  • Adapt a traditionally “linear” story (like a fairy tale or classic novel) to Twine.
  • Pick a hypertext topology (e.g. from the Sam Kabo Ashwell reading) or a link style (from the Mason and Bernstein reading), and build a story around them.
  • Pick something interesting from the Sugarcube documentation and build a story around it.
  • Try to avoid the “Diegetic Links” style as described by Mason and Bernstein (i.e., links like “Pick up the treasure” or “Move north”).

Consider how the hypertext structure of your game reflects and enforces the kinds of decisions you want the reader/player to make, and the experiences you hope to evoke. Consider also how Twine’s scripting capabilities augment (or detract from) the node/edge structure of the game.


Here are some good and helpful Twines. Think about how each works (structurally) as a hypertext, and how each makes use of Twine’s capabilities.

Optional additional readings:

You may also be interested in “storylets” (or “quality-based narratives”), in which hypertext is presented not as a sequence of nodes and edges, but as a database of lexia that are presented to the player when those passages match the current game state. Read more about storylets on Emily Short’s blog. The highest profile games that make use of storylets are Failbetter’s games (e.g., Fallen London and Sunless Skies). Bruno Dias’ Voyageur is another fantastic storylet-based game. There is an implementation of storylets for Twine. Watch the creators’ talk about it at NarraScope 2020.

Session 05: Environmental storytelling with Bitsy

Date: 2020-10-01.

Bitsy resources:

A few of my favorite Bitsy games:

Sketch #3 assigned

Due at the beginning of session 06.

Bitsy is a minimalist authoring system that affords the creation of interactive experiences focused on environmental storytelling. Make a short Bitsy game that takes advantage of this affordance. Consider: what actions can be undertaken in a Bitsy game? (What are the “verbs”?) Bitsy enforces a certain kind of visual style. What effect does this have on games that are made with the system?

Session 06: Interactive fiction and world models

Date: 2020-10-08.

Reading/play assigned

To be discussed in session 07. These works simulate space and objects in space in different ways. Characterize the benefits and shortcomings of their approaches.

  • Adventure by William Crowther and Donald Woods (You don’t need to complete this, but spend some time with it. Draw a map and use the walkthrough as needed.)
  • The Fire Tower by Jacqueline A. Lott
  • 9:05 by Adam Cadre (Content warning: Violence. Don’t play this until after you’ve played the other two interactive fiction games listed above.)
  • The Graveyard by Tale of Tales ($) (Optional: read the fascinating and detailed post-mortem)

Optional but recommended:

  • Bronze by Emily Short. There are hundreds and hundreds of interactive fiction games worth playing. I recommend Bronze as a next step beyond the games assigned above because it’s short, beautifully written, and has a number of interesting extensions to Inform’s world model. Also the source code for Bronze. is available, so you can peek inside to see what’s up.
  • Gone Home ($) is the canonical “walking simulator,” often discussed in popular culture and games criticism. Very much worth playing and it will be referenced in a reading next week.

Session 07: Inform

Date: 2020-10-15.

Reading assigned

Mark Sample’s essay claims that the conventional of cardinal directions in interactive fiction, in concert with the trope of mazes (“twisty little passages”) in the genre, shows an Orientalist bias. Do you agree? Are there other conventions in IF (or other forms of computational narrative) that show similar biases? How would you design systems for narrative that are intentional and expressive in their biases? (Descriptions for Evans and Ruberg TK.)

Optional reading:

The Jerz reading is a deep, detailed paper on Crowther’s “Adventure,” including its social, physical, cultural context and its source code (!). Along the way, it discusses interactive fiction’s history and legacy. While reading, consider: Is it important that “Adventure” is made out of text (and not, e.g., a 3D environment)? Is “Adventure” “literary”? How does the software implementation of “Adventure” affect its form and its interactive affordances?

Session 08: Inform continued

Date: 2020-10-22.

  • Reading discussion
  • Inform 7 tutorial part three (notes TK).

Sketch #4 assigned

Due at the beginning of session 09. Pick a location or scene from an existing story (say, any variant of Cinderella) and “implement” it in Inform 7 by e.g. creating rooms with descriptions, objects to populate the rooms, and/or characters to talk to. Bonus: Implement a custom command/action in your story. Bonus 2: Make it possible to “win” your game (by, e.g., solving a puzzle, gaining a certain number of points, etc.).

Session 09: Grammar-based text generation

Date: 2020-10-29.

Play/reading assigned

To be discussed in session 10. These works make use of data, simulation and text generation to produce narrative artifacts. Compare and contrast their approaches.

To play/review:

Session 10: Corpus-driven narrative generation

Date: 2020-11-05.

Reading assigned

(More TK potentially)

Session 11: Simulation and narrative

Date: 2020-11-12.


Have a “rough draft” of your NaNoGenMo project ready for next week (session 12).

Session 12: Workshop

Date: 2020-11-19.

  • NaNoGenMo workshop
  • Selected topics

Session 13: Presentations

Date: 2020-12-03.

  • Final project presentations

Session 14: Presentations

Date: 2020-12-10.

  • Final project presentations

Graveyard 👻

Previous iterations of this class had a unit on character and dialogue. For posterity’s sake, here are links to that content:

Suggested games and readings:

Ren’Py resources: