5 Open Source Tools to Create Interactive Fiction

Every year video game graphics become more and more realistic. Unfortunately, this often means that the story takes a back seat to the impressive graphics. On the flip side is interactive fiction, which puts the story before anything else.

While it was popular back in the early days of computing, interactive fiction has also seen a resurgence of popularity in recent years.

Here are five open-source tools that you can use to create your own interactive fiction. But before that, let me tell you what interactive fiction is.

What is Interactive Fiction?

Open Source tools to create interactive fiction

Interactive Fiction (or IF) is a term for computer games that allow players to control the game’s main character through a series of text commands. One of the most well-known text adventure games is Zork.

There is a more graphically rich version of IF called gamebooks. Gamebooks allow you to click your way through the game as well, but graphics and images still do not make up much of the game. The focus is on text and story. A good example of gamebooks is the Choose Your Own Adventure series.

You can find IF games to play here and here.

Best open source tools for creating Interactive Fiction

Earlier I showed you how to create eBooks in Linux. Today, I’ll show you some tools that you can use to create Interactive Fiction on Linux. The following programs are not listed in any particular order.

1. Twine

Twine is an easy to use program that allows you to create an IF game without knowing how to code. All you have to do is create a series of passages and connect them. Twine gives you the option to see a map of how all your passages are connected and how they flow from one to the next.

If you want to add more to your game, you can extend it “with variables, conditional logic, images, CSS, and JavaScript”. Twine exports your finished product as an HTML file. This makes it very easy to share with others.

Twine is available for Linux, Windows, and Mac OS. It is licensed under GPL v3.

Recommended Read:

2. Quest

Quest is another option that allows you to create IF without knowing how to program. This application comes with a visual script editor that allow you to pick commands from a list, so you don’t have to memorize commands. Quest allows the creation of both text adventures and gamebooks.

Just like Twine, Quest can be extended using pictures, music, and sound effects. You can even embed videos from YouTube and Vimeo, and modify the interface of your final game using HTML and Javascript.

The latest downloadable version is 5.7.0 for Windows. If you have Linux or Mac, you can use the online editor. It’s licensed under MIT and you can check out the source code here.

3. Squiffy

Squiffy is another IF creation tool from the makers of Quest. It’s marketed as “A simple way to write interactive fiction”. Squiffy is a little different than the previous application because it can output HTML and Javascript, like Twine, which can be played on your own website. You can also use PhoneGap to turn the game into an app.

The most recent release of Squiffy is 5.0. It can be run on Linux, Mac, and Windows. You can also use it in the browser. It’s licensed under MIT and you can check out the source code here.


TADS or Text Adventure Development System is a “prototype-based domain-specific programming language and a set of standard libraries” for creating IF. The most recent version of the TADS language is based on C++ and Javascript. It comes with a compiler to let you play games, as well as create them.

TADS is by far one of the most complicated entries on this list. I’m not sure what license it uses, but according to their website any IF game created with it can be distributed or sold without restriction.

Recommended Read:

5. Ren’Py

Ren’Py is a graphic novel creator. I almost didn’t include it in this article, but it looked too neat to ignore. According to its website, Ren’Py is a “free and cross-platform engine for digital storytelling. It makes it easy to combine words, images, and sounds to create visual novels and life simulation games.”

Like several of the entries on this list, Ren’Py comes with its own language but also supports the Python scripting language. Ren’Py offers support for Linux, Windows, and Mac. Games created with it can also be played on iOS or Android. You can even create a version to upload to Steam. Most of Ren’Py is licensed as MIT. You can take a look at the source code here. The most recent release of Ren’Py is 6.99.12.

Inform (not open source)

Just like the previous entry, Inform is more than a simple program for creating IF. Inform is an entire “design system for interactive fiction based on natural language.” The wide range of tools included allow you to create “adventure games, historical simulations, gripping stories or experimental digital art.” The finished source code “reads like English sentences, making it uniquely accessible to non-programmers”.

Inform has a library of user-created extensions to add features to your IF story. The creators or Inform also wrote an ebook entitled Writing with Inform to help writers get started. Inform can run on Linux, Mac, and Windows. The Linux version uses the GNOME framework. The most recent release of Inform is 7.0.

Final Thoughts

Interactive Fiction was one of the first ways that early programmers created and played games. Today, they are still quite relevant because they can be played anywhere and the tools keep improving.

When I was younger, I used to read a lot of Choose Your Own Adventure books, so I can see the attraction to these games. As a fiction author, I have played around with the idea of creating my own but was always too busy. I plan to take another crack at it soon. The nice thing is that there are so many tools and options to choose from.

Have you ever played or created Interactive Fiction? What is your favorite IF? What IF tools did I miss? Please let me know in the comments below.

If you found this article interesting, please take a minute to share it on social media.

About the author
John Paul Wohlscheid

John Paul Wohlscheid

My name is John Paul Wohlscheid. I'm an aspiring mystery writer who loves to play with technology, especially Linux. You can catch up with me at: http://johnpaulwohlscheid.work/

Become a Better Linux User

With the FOSS Weekly Newsletter, you learn useful Linux tips, discover applications, explore new distros and stay updated with the latest from Linux world


Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.