#52Tech Week 47 – Writing Interactive Fiction

For my current WIP, being written through NaNoWriMo as you read this (cross fingers) I am toying around with multi-media inclusions to tell parts of the story. What it won’t be is fully interactive, but nowadays there is a renaissance of interactive stories going on, especially around the Role Play universe.

IF is the acronym given to the text-based reader-choice genre of interactive fiction.  The genre is sometimes referred to as choice-based narratives, and in gaming terms, as an MCG (multiple choice game). Today I’m taking a precursory look at a couple of environments which allow a writer to create IF storylines.

IF ExampleThe most I knew of interactive or branching stories comes from those Choose Your Own Adventure type hardcovers I used to borrow from the library back in my childhood. Apparently those have also undergone a renaissance, as I found two different Choose Your Own type series on the Young Adult bookshelves here in Sydney not long ago.

With the advent of computers (yes, I am that old…) choose your own story streams eased into text-based and then roleplay games where choices of action take you down multiple levels to game end. Writing such games nowadays seems a very creative way of using writing talents to me, but not something I ever considered as a novel writer.

But interactive text based games are something that is now undergoing a renaissance, and offer writers without massive programming skills another format to get their work and stories out there.

Out of that environment, comes two programs designed to help writers create fully interactive or reader choice story streams.



Twine is an open-source tool for the creation of interactive non-linear stories. You don’t need to know code to use it, but can include variables and conditional logic to extend your story with images, CSS or javascript.

Twine uses hyperlinked text-based story boxes on a story map, and publishes directly to html. Twine stories can be shared and read through any browser with javascript.

As the story owner, you may use the Twine produced stories anyway you please, including commercially.

Available for Windows and OSX, Twine is maintained by several people working on it. Being Opensource, Twine is extensible. Here a Twine user has created a map which scrolls around as the user moves through the story.

The simple beauty of Twine is this: if you can type words and occasionally put brackets around some of those words, you can make a Twine game. – Kitty Horrorshow

Want to experience some of the top Twine “games”? Leigh Alexander’s Guardian article on Interactive Fiction lists and links to several Twine creations entered into a 2015 competition.

Link: Twine



Inklestudios is a group of writers and artists who create some beautiful interactive stories. Inkle provides the free Inklewriter environment. The Inklewriter user interface looks more sophisticated than Twine, but like Twine, publishes to html webpage, which is easily sharable.

Inklewriter supports writers with an interactive tutorial, and an automated Export to Kindle Book function. The Kindle formatting is done for a small fee – $10 approx.

The Library onsite shares Inklewriter written stories, as well as the Kindle ebooks created through the app. Eleven stories selected in a competition can also be read through a free iOS app, Future Voices.

And it’s not just for short forms either. Sorcery by Steve Jackson is a complicated four part fantasy adventure containing 1000’s of choices for the reader, and the first two parts are now published into iOS apps. In fact, a lot of Inklewriter stories have made the transition to mobile app formats.

Inklewriter not only looks sophisticated, but provides some simple to use dynamic features. Story maps are auto-generated for you. Unfinished paths are tracked. And you can provide loops and ifs through the story itself. For instance, a decision thread early on in the story (example – choose where a character travels to from Europe or America) can trigger a reliant statement later on (in this example, if the reader chose Europe, the character’s wallet would have Euros in it, rather than USD).

Compare: Inklewriter wants you to add choices at the end of a text snippet, so directs the story route as a decision. Twine, on the other hand, allows the insertion of hyperlink choices inside of text, which allows the user to read on in the same text area before selecting options within the passage.

Although you could do all this manually – plot out the story routes via spreadsheet etc, then work the html yourself, Inklewriter makes it much easier, and pun intended, interactive – you can create on-the-fly.

As the creatives we are, I’m sure you’ll come up with many ideas on how to use Inklewriter to produce dynamic or supplementary ebooks for your stories.

Link: Inklewriter


Playfic was begun as an online community for creating and sharing interactive stories. The inbuilt IF creator module uses the natural language coding through Inform 7 (listed as an alternative below).

What Playfic does well is provide an understandable example in the Playfic interactive tutorial. However the community side of things seems lagged, and I found trying to find an acceptable and recognised verb as an input through a game overly off-putting.

Each shared story can be viewed in text form, or as game source, and it’s all on the web, so the site can provide some learning if you want to get into more pseudo coding or learning what is possible with objects and rooms in IF.

Link: Playfic


  • Inform 7 uses a “natural” language for writing interactive fiction, and has been out since 2006. It’s for the slightly more geeky, but once grasped (and you can read other’s examples) it’s understandable. Inform is  downloadable for most systems.
  • Quest is a browser-based or Windows app by textadventures.co.uk. Quest uses forms to form the story through.
  • Adrift is a Windows app with a completely GUI driven application. Although you create IF via Windows, the Adrift Runner can be installed across most platforms to allow the text adventures to be read.
  • Ren’Py is a visual novel engine, more for game creation, and people happy with using Python.
  • Going more into the realms of graphic novels, we also have the newer Kindle Comic Creator and several authors have used iBooks Author for comic creations.
  • StoryNexus provides an online creator and text-gamer platform where a lot of worlds are cocreated. Although primarily text-based, there are reusable graphics to add in for atmosphere, and reusable plugins of small events or decisions assigned onto cards which can be randomly generated through a game.
  • TADs provides a programmer’s tool for IF – for those who can work in Javascript of C++,but hasn’t been updated since early 2013. TADS does hold the IF ID generator and overall database (IFDB) of IF works, however.
  • Varytale is an IF retailer where you can go to read some interactive fiction online. It also provides registered writers with tools for creating these books.
  • Axma Storymaker is a little like Twine, but comes in a pro version which allows you to edit and download the html generated, whilst the web free tool doesn’t allow this.
  • Choicescript to a Github downloadable app which runs through the browser, using simple language for the creation of MCGs.


#52Tech: This was Week 47 post in the #52tech goal – to investigate and share one technology post once a week for 2014. You can find all the posts indexed via the #52tech tag, or top menu option at hunterswritings.com

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s