Section 7.5 – Storycrafting

This tutorial has so far been mostly focused on the technical aspects of how to implement a story in Inform through locations with inventory. This will continue in the next installment which will deal with how Inform uses rules to implement logic programming. First we’ll take a look at how to get started with writing the actual story. There are some questions you should ask yourself when starting out:

What is your setting, and what mood and level of detail fits?

How should the player’s interest and focus be maintained during the story?

How should I start writing the story?

Let’s start with the last question first, as it’s perhaps the easiest to understand and it lays the foundation for your workflow. Every author has their own workflow so you need to find what works for you, but there are some general approaches. Implementation is the process of converting your ideas into code, and Emily Short has written a good article covering some strategies for implementing interactive fiction. I recommend you take the time to read the article, as although this text is inspired by it we’re not going to cover it in detail.

The most basic strategy (which Emily calls ‘Implement first! Design later!’) is just to start at the beginning, implementing the ideas as they come to you. This can be a great process for learning how to work with your tools, but as a storycrafting workflow it has some issues. Maintaining forward momentum in the story is hard without a properly defined flow to the story, and it’s easy to get lost in all the alternative story branches you can see. The easy fix is to decide on the ending and start working backwards, but it can still be challenging to make it back to the start. Another issue that’s common to both all linear workflows regardless of direction is that the first parts written usually have greater descriptive detail but less mechanical detail, while the opposite is true for the latter stages. This is a result of your skills improving with experience, leading to more satisfying mechanics, while at the same time your focus shifts from ‘what else can I add’ to ‘getting it done’. It’s therefore important to return to the early parts later on to ensure some consistency in details across the story.

At the other end is writing out the entire transcript for your story; what should the player type to progress and what are the responses? The major benefit of this approach is that you always have a clear idea of what the player *should* be doing to progress at any stage, but it’s easy to overlook what the player *could* be doing. The downside is that you’re basically writing the entire story before you know what mechanics you’re capable of implementing.

In practice your process would probably lie somewhere in between these two extremes, but some form of planning is essential. Personally I prefer to start by writing the walkthrough for the game, InvisiClues-style (*). This helps me focus on the player’s experience; what are the obstacles to overcome and how should the solution be hinted at, while still leaving room for misdirects and optional sub-plots. It also naturally breaks down the story into manageable chunks and puts some distance between your intentions and the implementing mechanics. This last point is important as you’re not wasting energy writing descriptions for actions you’re unable to implement or change your mind about.

(*) A form of walkthrough focused on giving hints instead of a step-by-step solution. Some examples.

If you’ve come this far into the tutorial you most likely have some ideas about the story you want to write. Before starting implementation it’s important to know what you want to achieve and what’s fitting for the story. This could be either specific characters (real or fictional) or entire settings (fan-fiction or your own), or even more abstract concepts you want to explore.

The mood of the story is one of the easier considerations which has far reaching consequences. A realistic story has to employ different techniques and effects to appear serious than a comedic story which can afford to be more loose. Regardless of the mood it’s still important for the logic to stay consistent within the context of the story. Related to this is finding the correct level of detail for your story. There are no simple and correct answers to what is correct, both in regards to rooms and contents.

Lastly we’ll try to answer the important but difficult question of how to maintain the player’s interest. Unfortunately there is no single answer as every player is different, but it’s still very important to keep the player’s motivation in mind. While some freeform exploration can be interesting, the player should always have an idea of what they are trying to achieve as well as what’s keeping that from happening. Searching for the solution to puzzles can be frustrating enough without first having to find out what the puzzle is. A good approach is to consider both what is a good puzzle with a solution that makes sense in the context of the story, as well as how the player should be clued in to discovering the solution.