It's a beautiful day.
What the Heck is Interactive Fiction? A Guide for Authors.
One question we commonly get when we invite people to write things for sub-Q is some variation on:
What the heck is Interactive Fiction?
And—let’s be real—it’s a pretty good question.
Searching Google for “what is interactive fiction” brings up lots of results; people have written whole books on the question. (If you want a whole book, try Nick Montfort’s Twisty Little Passages or Jimmy Maher’s Let’s Tell a Story Together.)
But a lot of those posts are targeted at readers/players of Interactive Fiction (commonly shortened to IF), or scholars, or students, or people who want to learn about the whole history of IF. A number of others use terminology that is non-standard to authors, and which—as a result—confuse more than they clarify.
So why do we need another post to add to the mess?
Because this post is specifically for authors of fiction who want to branch out and try their hand at writing IF.
It’s part game. It’s part story. But what is it, exactly?
At sub-Q, we have a very broad definition:
Interactive Fiction is any story which cannot be told without interaction from its reader.
Since we’re an online magazine, that “interaction” takes the place of some kind of browser interaction: the reader clicks a link to make a choice; the reader types in a command which reveals some new aspect of the story.
Others in the IF community use different, or more specific definitions, but that’s ours and we’ll stick by it.
Here are some other common terms:
Comp – A game writing competition, usually just for works of Interactive Fiction. Sometimes features prizes.
Hypertext Fiction – Fiction which uses HTML or other web-based technologies for interaction.
Parser – A parser is a program which takes input from the reader/player and interprets (parses) it, making it possible for them to interact with the story. (Largely for historical reasons, some people define IF to only include works which use a parser.)
Gamebook – A printed book, where the reader makes choices that affect the story, usually by choosing which page to turn to after each section. Think the Choose Your Own Adventure series of books.
Game Jam – A game writing competition, usually hosted on itch.io. Sometimes features prizes.
Text Adventure – Sometimes used as a synonym for IF, again usually to refer to pieces written with a parser.
So how do I write IF?
Writing IF is a bit like writing any other kind of fiction, but because it’s interactive, there are also elements of game design: You need to have a plan for how the reader’s interaction will affect the game, as well as considering elements like plot, characterization, and so on.
Bruno Dias has written a whole series of essays for us that are entirely about techniques for writing IF. His 2-part series on narrative design for writers lays out the groundwork of what, exactly, you’ll need to think about when you’re writing IF. Other essays go into more detail on branching, merging, and more specific details.
Beyond the basics, a lot depends on the tool you’re using to create your piece of IF.
If you’re going to use a parser, you’ll need to think about layout of the story’s “map”; if you’re using hypertext and expect users to click on links, you’ll want to figure out how the reader moves from passage to passage; if you’re writing in choicescript you’ll need to determine whether the choices players make affect stats, and how to control what choices are available later in the game. And so on and so forth.
Here are some of the more common tools people use to write IF, in alphabetical order:
- ChoiceScript – Proprietary language used by Choice of Games, works kind of like a virtual gamebook. (sub-Q has an agreement with Choice of Games allowing authors to publish choicescript works in our magazine.)
- Inform – A parser which uses natural language for coding, instead of typical “programmer” type code. (Manuals available online.)
- Ink – The scripting language used by inkle, available as Open Source for anyone to use.
- Twine – Web-based tool for writing web-based interactive fiction. You don’t need to know any code to write in Twine. (With Twine, the theme you use will also change how you code.) Most of the games sub-Q publishes are written using Twine, so it’s a popular choice.
The huge amount of options for authoring IF is something that takes getting used to. The simplest approach might be to look through these, pick one that seems like you can handle it, and stick to that until you’re more comfortable with writing IF.
If you’re just starting out, and feel overwhelmed, Twine is probably the most accessible tool.
Emily Short has a post about the importance of choosing a tool when writing IF, which includes some other available tools.
Converting Fiction to IF
That sounds like a lot of work. Can’t you just take a piece of regular fiction and turn it into interactive fiction?
Sure. You can. And in fact, we’ve done just that with some of our published stories. (
Here are some hints, if you want to take this approach:
Pick a shorter story – Stories grow when you make them interactive.
Think about the choices your characters make – Find choices that would make the story turn out differently; these will serve as places where the narrative branches.
Think about how you display text on the page – Does all the text have to be there, in the order you’ve presented it? Can you give the reader the illusion of interactivity by pulling out extended descriptions and putting them behind links?
Think outside the page – Don’t get stuck in “X is in my story; X must be in the IF as well.” Can you pull descriptions from your story and use them as room descriptions in a piece of parser fiction, where the reader gets to direct a protagonist through the plot on their own?
A classic example of a piece of fiction adapted to IF in this way is Douglas Adams’s Hitchhiker’s Guide to the Galaxy. The IF hits many of the same plot points as the novel, but is re-told using a parser. It’s definitely still Hitchhiker’s, but it’s definitely not the same as the novel. (And it’s infamously more frustrating!)
You can also see our post, Writing Interactive Fiction in 5000 Words or Fewer, for more suggestions..
If you really want to write IF, the best thing to do is get involved with the community. (The same is true, for what it’s worth, of any kind of fiction writing!)
Here are some links to get you hooked in:
- Narrative Games Discord – A chat server to talk about all things narrative gaming.
- IntFiction forum – Online forum for the interactive fiction community.
- Choice of Games forum – Online forum for Choice of Games writers and readers.
- Twine Discord – A chat server for users of Twine
- Itch.io – Online marketplace for independent video game creators. Check out the game jams!
- IFDB – Online database of published works of IF, edited by users.
- IFComp – Annual competition for works of IF.
If you’re still not sure what the heck this IF thing is, or just want to learn more, here are some good places to do that:
- Planet IF, a blog aggregator which collects a bunch of posts from all over the place.
- Emily Short’s blog, which includes excellent analyses, news, and other information on all things related to interactive storytelling
- Nick Montfort’s Twisty Little Passages, a scholarly history/theory of IF
- Jimmy Maher’s Let’s Tell a Story Together, an online history of IF aimed at a general audience
- “What is Interactive Fiction?” by Dennis G. Jerz includes a number of other useful resources
- Learn more about IF by Andrew Plotkin has links to other resources