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.
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.
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 email@example.com