Twine, Inform, and Designing Interactive History Texts
This is the first in a series of posts intended to get readers thinking more about interactive text as a tool for history and how students might be enabled to design their own researched text-based historical simulation games using the interactive fiction design tool, Twine.
Why Interactive History Texts and Why Twine?
Having students design historical simulation games has been an interest of mine as an educator for at least a decade, going back to the first elective history classes in designing pen and paper simulations games over a decade ago. As the tools to design digital games have steadily become more accessible to non-coders, I have paid attention, hoping to find software that would allow students to create digital historical simulations games. When I first encountered Inform 7, a powerful design tool that enables designers to create text-based games—often termed interactive fiction—it was clearly a legitimate solution to this problem of enabling history students to create digital historical simulation games. So, about eight years ago, after experimenting with students using Inform for design projects in my survey history classes for ninth and tenth graders, I wrote an essay advancing the use of Inform 7 for students to research and design their own text-based historical simulation games and developed some rough materials on Gaming the Past to aid in the creation of such games. Nor was I the only one who connected and the creation of interactive texts in general, to history and history education (See Shawn Graham’s Posts, Writing History with Interactive Fiction and Stranger in These Parts on PlaythePast for just a couple of examples). The essay still holds up, especially the assertion that having students research and design historical simulation games is an outstanding high order thinking assignment that exercises many critical skills of the historian, especially:
- The ability to research, evaluate, and analyze evidence about the past
- The ability to combine pieces of evidence into a plausible interpretation of the past
- The ability to discriminate between the critical and trivial parts of a historical event or process
- The ability to use these skills to develop defensible, coherent, and meaningful interpretations of the past.
Effectively researching and designing even a modestly accurate interpretation of the past in the form of a text adventure, in short, requires students to engage in high order historical thinking and doing. I encourage readers interested in the role interactive text history creation can play to read my earlier essay on Gaming the Past, and I’ll avoid re-traveling that ground any more in this post
Since then I have worked with Inform on and off for years in my history classes, mostly ninth-grade ancient world history, a bit in my Roman Republic senior elective. What I have found, overall is that Inform is an amazing tool. It really is; its relative accessibility and ease of use combined with its power and sophistication is amazing. As helpful and relatively easy to learn as it is, developing anything beyond the simplest interactions with objects and NPCs tends to require devoting time to coding beyond what most history teachers can reasonably afford in their classes. Perhaps that should change: certainly, learning coding skills is a good thing for students (for anyone who has computers in their daily life) to do and Inform naturally blends coding with texts, a staple of the humanities. As a history teacher, however, my exploration of Inform—which, to be fair was pretty intensive—left me wanting something even easier for my students so that most of their attention could be devoted to historical research and the exercise of historical imagination.
Enter Twine. I had heard of Twine a while back, I think maybe from one of my students student, and I played with it a little bit. Twine is an interactive fiction tool that focuses on the design of choose-your-own-adventure style text games. Inform games are generally (though not always) parser-based. Players are given some text to flesh out an environment they are in and then a command prompt so that they may type a command, usually consisting of a verb-noun pair (take sword; go west; open chest). If the game designer has anticipated the player’s command in the design (there is often a considerable amount of trial and error in parser-based text games) the game offers new text to indicate how the game world has changed. The following example (Figure 1) is a simple illustration of an Inform game culled from my earlier essay (note that > is the command prompt where the player can type in commands):
What is missing from the example is all the unsuccessful commands a player would probably have typed that the designer did not account for. These would be met by a response from the parser to the effect of “I’m sorry; I did not understand your command in this context.”
While selecting the first option takes the player to the following passage (shown in Figure 3):
Selecting the second option in Figure 2 leads to this passage (Figure 4):
This is not the place for a serious comparison of the two interactive text development tools, but at a basic level Inform games (i.e. parser games in general) require the player to explore and experiment to find the effective actions in a text world. Twine games, on the other hand, put the very limited number effective choices starkly in front of the player, who then chooses an option and reads about the effects of that choice on the player. They are both tools that allow the creation of fantastic interactive texts, both have passionate adherents, and there are many fascinating discussions on the web comparing and analyzing both. For readers interested in an analysis of parser-based and cyoa based texts, the following posts provide some food for thought (Emily Short, a founder in the design and analysis of interactive fiction in the 21st century, wrote this post on parser-based vs CYOA interactive fiction; Carolyn Vanesel Tine wrote this post also on the tensions between the two systems).
But for a long time, Inform came out as the winner in my comparisons because it does such a good job allowing players to create text-based worlds populated with objects and characters that players almost feel like they are actually interacting with and manipulating, thanks to the parser approach that allows so many different types of actions to theoretically be performed by the player—theoretically, it should be noted, because only command combinations anticipated by the designer will work in the game, a limited set of all possible commands to be sure!
What has drawn me back to Twine as an educator is the simple fact that one can create a functioning interactive text with essentially no overhead in terms of coding knowledge, which is not the case for Inform. The basics of a Twine game are passages with links to passages. Passages are entered into the Twine Editor as straight text and links use a simple syntax in Twine 2 Harlowe:
[[Text of Link Player Sees->Name of passage link goes to]]
The following screen shot (Figure 5) shows the design screen in Twine that produced
Twine offers interactive text designers a great deal of power and functionality beyond this basic passage/link combo: variables can be created to store, track, and display information, conditional statements allow variety in the text displayed and the passages visited, and thus variety in players’ journeys and outcomes, and there are many ways to format and link text to create a variety of effects. But this basic power of passage creation and linking is enough to underpin an entire student project designing interactive text histories.
So, after exploring a bit with Twine in my ninth grade Ancient World History classes and my senior elective on the Roman Republic last year, I decided to double down this year and devote more work time to the kids designing interactive historical texts. I also decided to make my own Twine interactive history text so that I can lead from the front, as it were, and share design successes, failures, strategies, and ideas with my students as a fellow designer. My interactive history is tentatively called Cursus Honorum and it will, ideally, allow a player to explore the political and military life of a Roman aristocrat in the Republic as he moves through the different offices and posts of a successful political career, making meaningful (I hope) choices and seeing the effects of those choices. I chose the topic both because it is closely linked to my area of expertise as a historian and it would be, at least I think, a useful tool to have in both my ancient world history and Roman Republic class.
I will release drafts of it when there is something worth exploring for interested readers and post here at PlayThePast both a sort of developer’s diary and a teacher’s diary, the one on my design decisions and experiences as a Twine designer and the other on my design decisions and experiences as an educator managing classes in their use of Twine as a history tool. Hopefully it will be of interest.