(The first in a series of game writing prompts and exercises I’ll be posting intermittently between larger articles)
Learning to write choices in video games and interactive fiction can often seem incredibly daunting — how do you write a story, if players can choose different dialogue options or actions, without writing millions of words to really reward every single option?
Writers new to this style of thinking often assume they need to pre-plan extensive trees with ever-expanding branches that become increasingly complicated. Choices manifest in exponentially more complicated story states and what felt like a fun exploration of this format or started as an ambition to make your first game becomes a sprawling nightmare you'll never finish.
On my workshop course, I encourage people facing this mindset to undergo a paradigm shift. If I just tell people "don't do that, this is going to create huge headaches for you", no-one will automatically listen, as why should they? The idea of offering choices to the reader and not having all of them "matter" in big ways feels counter-intuitive or even insulting/time-wasting to the player, right?
There are lots of ways we all need to evolve our thinking on this as writers, players, and as industry — and the idea of choices 'mattering' cannot be dismissed easily. On the course, we do a bunch of different exercises to help broaden these thoughts and develop our philosophies of game writing. Today’s prompt (the first of a series of gme writing prompts I’m going to be posting via this substack) is a particularly provocative example designed to engineer a paradigm shift. It presents a compromise solution between 'every choice must infinitely matter and I must spend multiple lifetimes finishing writing a short game' VS 'I will have no consequences for choices at all, I am the supreme authority on what will happen in the story and I don’t entirely know why I offered choices in the first place.'
This exercise shows how you can make choices matter to different extents in different durations, with some player decisions mattering hugely temporarily and others going further in their influence but merging with one or more separate paths down the line. For those of you already familiar with or studying game writing, there's an element of a concept called 'branch and bottleneck' at play here, which is often defined as choices leading out to alternative story states only to weave back into a specific point later so that choices are responded to without exponential unnecessary writing and variation.
PROMPT:
70,000 YEARS
Pre-requisites: to work on this prompt, you need a concept where a fictional character is talking to another character. This can be in a game you're working on or you can make up a hypothetical conversation scenario for this exercise. If you’re really stuck? Pick two fictional characters you already know from someone else’s work and do this as fanfic. We're going to be zeroing in on a specific 'node' for the start, by which I mean a particular moment of narrative with text leading up to a set of choices. Go to www.writinginteractive.com and look at my short guide to using Twine or Ink, or, alternatively, just write it on a piece of paper with a diagram.
Choose (or create) a node where you want the player's choices to involve dialogue. This node should ideally involve an interesting or charged social moment where the content and style of the player's response is likely to lead to a very different outcome.
Think of four alternative ways the player character could respond in the dialogue, expressing different emotions or leading to different results.
For example, if an NPC gets aggressive at our character, do we:
CHOICE 1: insult them?
CHOICE 2: threaten them?
CHOICE 3: joke?
CHOICE 4: apologize?
Write the alternate dialogue lines for each of these choices. Now, if choices didn't matter, any of these four options would lead to the same text. While there's value in such moments when used correctly, if you're coming from a stance of wanting choice in your games and fretting about infinite branching, this won't feel like enough for now. Let's do something more ambitious, but not infinitely ambitious.
Instead of having one endpoint for all choices or four endpoints, compromise and pick two ways the situation could go in response to the choices (e.g., the NPC escalating and getting angrier vs. backing off and calming down).
Determine which of your four dialogue options would lead to each of the two situations. This might surprise you, as we might assume certain choices would lead to specific outcomes. In our example, insulting or joking could make the NPC angrier (choices 1 and 3), while threatening or apologizing could make him calm down (choices 2 and 4). What I'm doing here is showing you some unexpected results in how the character responds to our actions, which gives the player the pleasure of figuring out more about the character based on what they do and seeing more complex humanity.
Write a dialogue line or two to acknowledge each pair of choices leading to the same outcome. For example, for the choices leading to the character in my example getting angry:
choice 1 (insult) -> node A1 where he responds to the insult (The writing here focuses on the specificity of the insult itself and mounts towards anger. Say we call him ‘as stupid as he is ugly’ - he might get aggressive and defensive, maybe insulting you back. But as the conversation goes on, will he really keep insulting you or be obsessed with this nonstop? It’s possible! But it’s equally possible the input of ‘insult’ in real life would eventually be outputted as ‘angry at you’ even beyond the insult. As you’re a writer juggling a dozen priorities, for now while doing this exercise it makes sense to choose the latter route. By the end of the passage, you don’t need to consciously or explicitly have the angry character move away from what they were talking about before. It’s more, now their focus is entirely on their expression of anger what they’re going to do about it. Leading us to node AA where he is now angry (a node that will be identical to the other route below)
choice 3 (joke) -> node A2 where he responds to that joke, and, as above, the joke itself is likely to be more important towards the start of the node until it’s less relevant by the end, considering the NPC is now angry about it. (The joke might suggest that this situation you’re facing is ridiculous, for example, and the NPC may consider this a violation of their values as they take this very seriously.) -> node AA where he is now angry
In both of the above examples, the choice did matter in nodes A1 and A2, but again, to emphasise, think about human psychology. Does every person in the world non-stop mention every choice you have made in life in the past few hours? Does another person talking to you in a real life conversation always become obsessed with every choice you make, responding only to your decisions, or do they have agency and choice and push things along themselves because they’re a human too?
Therefore - not only is it unnecessary and way too much work to make every single choice massively change every single bit of text in a game — it is not a good representation of reality or human beings. You do generally want the player to feel acknowledgement of many choices in a game, even little ones, but they do not have to lead to a quadrillion outcomes.
In the middle node A1/A2, as you transition towards that identical AA node, you should still include more than one clickable option ideally. People don’t like single choice nodes, and I advise using them rarely in specific situations. So here? Try having some internal thoughts of the player character expressed as choices. For example, in a tense moment where we might be facing a fight?
CHOICE: You know you can beat him!
CHOICE: Maybe this was a mistake - he looks tough…
You allow the player to decide a stance, but we know we’re doing this as a ‘mental thought’ and personalisation of our character rather than something that is said out loud or that other characters notice. It doesn’t ‘do’ anything — so why should it branch? There’s no unmet expectation from the player here, just a nice chance to let yourself roleplay ‘who’ you are.
And then, when you get to your 2x third node variants? You can have those two states (angry vs calming down, in our example) be two big branches in the story going forwards if you want!
This approach deals with choice and consequent without exponentially ballooning the amount of writing required.
You might still be tempted to do a huge amount of diverging and branching, one node with four choices leading to four nodes with a total of sixteen choices, and so on. How bad could it get, you might wonder?
SCARY MATHS THAT WILL PROVE MY POINT
DISCLAIMER: If any of these calculations involves a mistake, the key point of exponential growth will still remain valid. However, do message me if you spot any corrections needed in my multiplications, and I will amend! While there are obviously a lot of assumptions here about my original figures re: how long it takes to make a game node, individual work speed, length of nodes, consistency of branching and choice numbers — regardless, the following should terrify you if you still believe that every choice should matter and branch exponentially!)
Here are two structures.
STRUCTURE A (1 node → 4 nodes → 2 node outcomes with both of those final nodes representing a big split in the ongoing story so that the choice made in node 1 ‘matters’ in a big ongoing way).
STRUCTURE B (1 node → 4 nodes → 16 node outcomes with every single node choice representing big splits in the ongoing story so that every single choice ‘matters’)
Imagine that (for sake of argument) each node takes players 2 minutes to read and decide upon what they’re going to choose. For 30 minutes of gameplay, a player would need to go through 15 nodes.
Now, you might imagine that maybe you could have choices less frequently and far larger pieces of uninterrupted node text and narrative before the player clicks options, or even just have single-option screens. I’ll go more into this in a future article, but players really bounce off huge amounts of text without interaction, and while single choices can be effective at points in the right hands, if the majority of them are like that then the player will rightfully ask —- why bother offering clickable text in the first place, if there’s usually only one thing to click?
30 Minutes of Gameplay
Now, imagine that we extrapolate both STRUCTURE A and STRUCTURE B across the length of 30 minutes of gameplay and figure out how many nodes you’d need to write as a result.
For structure A - the limited-in-scope pattern you’ve been practicing above! - this means you would need to make almost 400 nodes for 30 minutes of gameplay.
And if every single choice leads to a different node?
Structure B - Almost 400 million nodes for 30 minutes of gameplay.
You literally multiply the work you have to do as a writer by one million, if every choice branches off into new nodes rather than having some branch/bottleneck + expressive flavour choices.
Imagine it takes you 30 minutes to finalise each node, adding up that time from across your whole work on the game:
If it takes you a total of 30 minutes work time per node in terms of planning, drafting, redrafting, editing, testing? That’s almost 200 hours of pure writing time for scenario A… and almost 200 million hours for scenario B. Assuming you could do this full time, 7 hours-ish a day?
For a 30 minute playtime game, that’s - at a full time pace of work, assuming it really does just take 30 minutes in full to create each finalised node:
27 days for scenario A
70,000 years for scenario B
So.
You either spend almost 1000 lifetimes creating a 30 minute text game, or one lifetime (with 999 other people also giving up their entire time on planet Earth with no days off ever).
Or… listen to this prompt, try it, absorb its logic, and experiment… and have a nice game ready somewhere between 1-6 months, depending on your free time! This isn’t all enough to fully understand and appreciate and hone your skills as to how many choices to offer at which points, how much ‘real’ branching, ways to delay branching through variables, and all the other wisdom you’ll accumulate by studying games and creating your own.
For much of that - check back soon for more prompts, mixed in with my other regular articles and labelled as such. Enjoy!