The best tools to create interactive fiction, text adventures and visual novels, with or without programming knowledge

I’ve always been a fan of interactive fiction and for a long time it was a pretty small niche of people who cared about it after the initial big success of text adventures in the 80s like Infocom’s famous Zork.

7154389844_ecf548b671_z.jpg
Image credit: Marcin Wichary, licensed CC BY 2.0

With smartphones and app stores, interactive fiction is starting to get popular again. On mobile, multiple choice style interactive fiction is popular. On PC/Mac, it’s visual novels. Sadly, real text adventures like Zork where you write “get lamp” and an interpreter figures out what you meant by that, still aren’t as popular as they were back in the day. But who knows, maybe it’s just a matter of time until these classics will have their revival as well.

In this post I want to give you an overview of some of the best tools I’ve come across over the years to develop all three kinds of interactive fiction, starting with text adventures, then multiple choice interactive fiction, and ending with visual novels. I will keep the description of the tools short because this is really just meant to give you a nudge in the right direction, but I might write more in-depth posts about some of the tools in the future, with tutorials were needed, although they all come with pretty good documentation already.

All of the tools I show here can output the interactive fiction games you create with them for multiple platforms and usually also the web, but one of the tools to create the stories only works on Windows. Most however do work cross platform, on Linux, Windows and Mac and one even works in the web browser so you don’t have to install anything.

Text adventures

For creating text adventures in the style of Zork, I personally like two tools best and they both have vastly different approaches on how to create games. Both are equally good in my opinion, but some people will like the style of Adrift better while others will like the style of Inform better.

Adrift

adrift.jpg

This is a very old and mature toolkit that is already at version 5.0 and is still being developed today. It’s one of the most popular choices when it comes to creating text adventures.

On it’s website it lauds itself as the easiest solution to create interactive fiction. I guess that is arguably true. While the application is extremely complex, it is a complete graphical, GUI based approach to creating text adventures, you don’t need to write a text file in a specific format, you don’t need to write any programming code. Instead, you just click buttons to create new rooms or objects and then you change properties of those to configure them for your needs. It comes with a help file that teaches you everything you need to know, step by step it helps you create your first text adventure.

This application sadly only works on Windows, you can get it to work on Linux and Mac through WINE, but there are some issues with that.

Inform 7

inform.PNG

Inform is also a very old and mature toolkit, the last release was in 2015 but it has everything you need and works great as is. Inform version 7 was a great departure from the earlier versions of Inform, the paradigm on how you create text adventures with Inform changed completely. It used to be a compiler that takes the programming source code you wrote and compiles that into a text adventure game. Inform 7 is very different. You still write to create the text adventure, but you don’t exactly program. You write in plain English instead.

“The old wooden chest is in the attic. The chest is a container. It contains a treasure map and a compass.”

That is how you write text adventures in Inform, I kid you not. This text gets executed as if it was a programming language and then you can play the game that you just created. You can open and close the chest, because Inform knows what a container is and what you can do with it. You can take items out of the chest, you can put items in. And you can teach Inform new things too, maybe you want to be able to sit on the chest.

This sounds extremely great and easy and it is, but it also has it’s pitfalls. Some people really like this style of creating interactive fiction, others however have too much trouble keeping in mind what subset of English sentences Inform understands, because it does of course not understand everything that makes up a language as complex as English or any other human language.

I highly recommend checking it out for yourself to see if this is something that works for you or not. It comes as a graphical application with the text you write on the left and you can put the game you create while you write it on the right side of the application to test it out, or you can put the included manual there which is extremely in-depth and extremely easy to understand and comes with hundreds of small examples that help you create the text adventure of your dreams, by doing nothing else than writing plain English.

Inform is available for Windows, Linux and Mac.

Multiple-choice interactive fiction

While these games aren’t as interactive as text adventures, they are much easier to create and much easier to play, too. Having to just select a sentence as your action after reading a passage of text means these type of games work really well on smartphones and that’s why they are so popular on those devices.

Again I’ll show you two tools that go about things very differently but are both very good in what they do.

Twine

Twine.png

Twine is a graphical solution to creating multiple choice interactive fiction. The interface looks a lot like a flow chart when you have written a few passages. Before that it is an empty canvas with just a single box in the center. That box tells you to double click it to edit. A window opens that lets you change the text.

“You are standing in front of a mirror. For a moment you think you saw a face in the mirror that wasn’t your own, but it might have just been your imagination. [[Touch the mirror]] [[Back away slowly]]”

Writing that into the text box and clicking on the X in the top right to close the editing window, creates two new boxes on the canvas and arrows point from the original box to these two new ones. Now it looks like a flow chart. One of the boxes is called “Touch the mirror”, the other “Back away slowly”. Double click them in turn and edit their description, add some more text in between braces [[like this]] to create more passages.

You can do a lot more in Twine, but with this very simple and easy to understand concept you can already create great games with Twine. Out of all the application in this post, this one is by far the easiest to use. Give it a try, it even works right in the web browser if you don’t want to download the app for Linux, Windows or Mac.

Ink

inkle.png

Ink is completely different and even though Twine is much easier to use, personally I prefer Ink. Maybe just because I’m a programmer, or maybe it’s because it feels more natural to just write text when you want to write a story instead of creating a lot of boxes with arrows pointing to them like in Twine.

You don’t have to know how to program in Ink, instead you just have to write in a specific format. It’s a bit like writing a script, a play. It comes with great and easy to understand documentation that explains everything you need to know.

The same example I gave for Twine would look like this in Ink (with some additional text):

You are standing in front of a mirror. For a moment you think you saw a face in the mirror that wasn’t your own, but it might have just been your imagination.
* Touch the mirror
   Carefully, you reach for the mirror with your hand and at the touch of your index finger, you are suddenly sucked into the mirror.
* Back away slowly
  You back away slowly and stumble, land on your bottom. A figure appears in the mirror, this time you can see it clearly. It’s a woman. Her left hand presses against the mirror from the other side and her lips mouth the word “Help!”.

Ink and it’s text editor Inkle which I highly recommend using since it allows you to play the game you create while you write it, is available on Linux, Windows and Mac.

Visual novels

renpy.jpg

When it comes to visual novels, I know only one application and it has been used in hundreds of freeware and even commercial games. It’s cross platform and you do need to do some programming here, but unless you want to do something very advanced, it’s a very simplified version of the already very easy to learn Python programming language, so even programming newbies should be able to get quite far with this application without having to learn much. It’s actually a bit similar to Ink in the way you use it, since you basically just write text in a specific format to get what you want.

The program is called Ren’Py and runs on Windows, Linux and Mac. It comes with many built in transitions and animations for the characters and background graphics you import to use in your game. And if there is something Ren’Py doesn’t do, you can always write normal Python code to expand the features of your game beyond what Ren’Py provides. That way, you could even combine a visual novel with for example a Final Fantasy style battle system, or anything you can think of really.

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center