Your first game made easy with Twine

Recently, I stumbled upon the great open source tool Twine. It’s a free piece of software you can use to create interactive, nonlinear stories. This is very similar to the classic Choose Your Own Adventure books which were very popular in the 80s. In those books, the reader decides how the story should continue at certain key points by turning a few pages to the indicated chapter. That structure has a strong resemblance to hypermedia (e.g. the internet) in which we also travel from link to link.

Twine though provides a small but significant improvement on that: it is possible to save certain values in variables and use those later in the story to give the interaction more agency. For example, the player might find a key he could use to open a door further into the story. Another possibility would be to change the presented text dynamically, depending on those variables. If the player has visited a place before, we can shorten the description. If he carries a special item, the description may take this into account. If he opened a door somewhere, next time he arrives at that place, the door is not shut again.

Online editor

Online editor

Twine makes it easy for you to implement a simple story based game as fast as possible and enhance it step by step. There is a downloadable client but also a very usable online editor. For someone who always thought about making a game, simple as it may be, Twine is a very nice place to start because you will get results within minutes (and I am not getting paid to make that statement). When you get comfortable with the means provided or if you are a bit more experienced, you can also use JavaScript for more advanced tasks. But using only the basic building blocks (also called macros) for complex tasks is a lot of fun and a game in itself.



Example page in the editor


More complex example page


After a bit of experimenting, I implemented a small adventure that demonstrates a few of those more complex tasks: inventory system, fighting system, simple dialogue system and multiple approaches for generating dynamic text and changing page content through user interaction. You can play and download the adventure here (for download: right click and “save link as”). It consists of a single HTML file which you can easily reimport and modify in Twine. I hope it will provide a bit of guidance for you for the first and second steps with Twine. Maybe I will continue to work and expand on it to develop a full-scale adventure. If so, I will update the file here as well.



Example screen from the game


Do you have any ideas for additional content, questions about the implementation or suggestions for improvement? Then leave me a comment or send a mail to

Helpful links:
Twine homepage
Language reference in the Twine-wiki
Book covering Twine and interactive stories
Example project: Garangoot’s Castle