I wrote a post on this over on Medium…
I wanted to set down some thoughts on writing for interactivity and the concept of leaving gaps in your writing. My contention is that there are all sorts of spaces in writing which, if you leave with content un-specified, your audience fills in. In this way the experience becomes partly authored by your audience – the story becomes theirs to a certain extent, and they are much more tightly bound into it. This sense of them being an active presence within the story serves to heighten their emotional experience of it and heightens the illusion that the world is real. This applies in computer games, live action games, and in all sorts of other media.
The usual caveats – I’m not an academic and am unfamiliar with any theoretical work in this field. These are just observations I’ve drawn from practical experience, from trying out ideas and seeing how people react to them.
I was first introduced to the power of gaps via live-action role playing – live games in which players take on character roles and act those characters in a setting someone has created for them.
Our live-roleplaying organisation Crooked House had run a series of events over the years where we very carefully and heavily briefed our supporting cast, defining their characters, relationships, aims and goals, so that they would seem to be real people within the setting and so that the player characters could have fun interacting with them. You know the drill – the town drunk, the officious police officer, the corrupt mayor, and so on and so forth. These briefs were very successful and made for good games. As we ran more and more games, those supporting cast briefs became more and more complex.
We’d left the players – rather than the supporting cast – to their own devices. We had been running games in a continuous campaign, where players created their own characters within the setting’s guidelines and then acted as those characters across a number of different events. Character depth and complexity evolved as those characters became more and more experienced within the game world and had histories and relationships of their own. So far, so good.
However, we decided to change tack and run a few one-off events with unique settings and characters that would only exist for the duration of the game. Naturally we would create briefs for the supporting cast, as we always did, but then we came to think about how we should brief the players.
It was clear that we should brief the players, as otherwise they would arrive at the event with no previous relationships and no world-knowledge. If we’d left them to their own devices they’d have spent most of the game finding out who each other were. We wanted to have them up and running from the first moment they set foot in the world; to know who they were, where they were, why they were there, their history, aims and goals and relationships with everyone else, so that they could have a chance of experiencing a character arc in the space of a single event.
At about that time I attended someone else’s event. It wasn’t a one-off – it was the fifth in the series – but it was the first of those events I’d been to. It was an event that included a lot of politics and history, and I was taking on a role that already existed in the game world.
My character brief arrived. 16 pages of rules, 11 pages on my character, 5 pages on my family, 3 pages on my geographical region, 5 pages on the organisation I belonged to, 2 pages on a voting system and 1 page of character stats. In total, 43 A4 pages. I had 43 pages to plough through, learn, and to use as a guideline while playing my character for a weekend long game that I had paid to attend.
Let me stress that there was nothing wrong with the game. It was enjoyable, many people got a kick out of it, but it was very, very writer led, and the 43 pages of brief hammered home to me that it was a style I wasn’t comfortable with. We could see that our supporting cast briefs were already heading in that direction, and so we sat down and thought about why we didn’t like this approach and how we could do something different.
To articulate the issues we saw with the 43-page brief:
That final point was the thing we wanted to address most – how could we make it so that both the players and the writers brought material to the characters? And that the player’s didn’t feel they might ‘get it wrong’?
The answer turned out to be: leave gaps.
We evolved this technique over a couple of events. The pinnacle of it from our point of view was the 1950s ghost story God Rest Ye Merry, and it worked like this:
Once it was clear who was taking part, we contacted the players and asked them for a rough suggestion for their character – where they would like them to fall in a balance between physical/mental and social aspects.
We came up with an initial concept and send it back to the player just to check that they were happy with it. For example, “A garden designer who, unknown to the rest of the family, had a child from an illicit love affair and was forced to give them up for adoption” or “An Italian ski instructor who makes his living by seducing older women” and so on. We’d have a little bit of back and forth with the player to refine the concept, or they’d just leave us to it; but even when agreed on these concepts would never be more than a couple of lines at the absolute outside.
Six months before the event, each player received an in-character invitation from the master of the house asking them to Christmas 1954. It addressed them by character name, gave the name and address of the person issuing the invitation, gave the place that they were to go to, prompted them to buy a Christmas gift for someone and had a chatty line of prose from the master of the house saying how pleased he would be to see them – this line was customised for each character. For example, to a cousin ‘It’ll be lovely to see you back at the house – Uncle Godfrey’ or to his lawyer ‘Thank you for attending, I wish to discuss the drawing up of a new will – G. Northmoor’.
Then a couple of months before the event, each player received a briefing pack. This consisted of between 20 and 50 individual documents and props, including things such as:
This pack fulfilled a number of uses for us. It gave the players a rough outline of their character, gave them crucial relationships, evidence of their character’s past, aims and goals and so forth. Without fully defining the character in any way. Providing effectively a skeleton of a character for the player to flesh out.
We left gaps. And what we found when the event was over was that the players had more of a visceral reaction to their character’s experience than we’d seen in any of the events we’d run before. I came to the conclusion that it was because they felt that the characters were theirs, not merely scripted roles handed to them.
I started noticing gaps in other areas of storytelling.
Scott McCloud’s book Understanding Comics was the first obvious connection I made. He has an excellent section on the gutter, that space around and between comic panels. Comic panels are essentially frozen moments in time; the transition between those moments is entirely in the gutter i.e. inside the reader’s head. A gap that they fill.
Alexis Kennedy, who founded Failbetter Games and created Fallen London, has a concept he calls ‘fires in the desert‘. Much of the content in Fallen London is delivered in storylets, little chains of events. An event says ‘this thing happens to your character now’. Later, perhaps, you’ll encounter another event in that chain, saying that another thing happens to your character. But it is entirely up to you, the player, how your character got from the first event to the second event. Fires in the desert – the bright points of light are well defined by the game. The journey between points of light is obscure and left to the imagination.
I had also done a lot of work with Frictional Games, notably on their title SOMA. As a result I did some analysis of horror, and realised what I’d really known years before but hadn’t articulated – the most effective monsters are the ones that aren’t fully seen, but are suggested by faint hints – visuals, sounds and so on. Think of Alien versus Aliens – the first a horror where you barely see the creature. The second an action film where you see much more of it. Thomas Grip at Frictional knows an awful lot about horror theory, and repeatedly says that the true power of horror is what you can make happen inside the player’s head, not lay out in front of them.
The human mind is tuned to take bare suggestions and flesh them out – it sees faces everywhere, it imagines what might be making noises, it builds a mental picture from the scantiest evidence as your imagination goes wild. The best horror plays with this and relies on this. The mind can always, always imagine something more horrific than the best special effects can conjure up. So the best horror simply suggests, and lets your brain do the heavy lifting.
Of course, this isn’t just about computer games and other interactive media. Comics, as above, is an obvious example medium – but I think the same is true of prose. The best prose fiction is often the sparsest. Words that only very roughly outline a character’s appearance or a scene leave much more to the reader’s own imagination and, to my mind, bring the reader more deeply into the story, making it their own.
To expand – after some Facebook discussion – on what I mean here: an awful lot of amateur fiction tries terribly hard to describe everything, putting in as many adjectives as possible. “He was 6’2″, had piercing green eyes, a scar on his temple, walked with a limp” and so on. Firstly, in my experience you simply don’t notice that level of detail unless you’re paying very close attention to a person (which they’re going to be weirded out by). It’s more like you get an impression to the person, the sort of social space they take up in the room. And secondly, consider lines like Agatha Christie’s “she was the sort of woman who wore limp dresses” or Raymond Chandler’s “It was a blonde. A blonde to make a bishop kick a hole in a stained-glass window.” How much more evocative are those? And how much more do they leave to the imagination?
Hey wait – this means written prose is interactive fiction. 🙂 (I’ve long thought this, even if it goes against conventional wisdom. I think raw prose is much more interactive than movies and the more realistic video games).
The same goes for experienced storytellers in the oral tradition – they can sketch out a scene in a few well-chosen words, and the audience fills in the blanks and are ‘there’.
19th Dec – I’ve added this after a prompt from Jacob Garbe. Something I completely forgot to mention!
The human brain is particularly good at imposing patterns and structure on unrelated material. It makes stories out of fragments, smoothes out inconsistencies, and invents spurious justifications based on observable evidence. See also myths, legends, crackpot conspiracy theories, and ‘third time lucky’. And, in fact, the stories we tell ourselves about our lives to make them feel bearable. Again, it’s all in the gaps.
This is particularly useful, as Jacob points out, for procedurally generated story content. Where fragments might not actually connect, the audience can and often will invent those connections. Again, it’s a manifestation of Alexis’s fires in the desert.
Jacob also used terms such as ‘Apophenia’ and ‘Pareidolia’. Remember what I was saying about me not being academic?
But what about computer games? Well, here’s the thing… modern mainstream computer games leave a lot less to the imagination than old text-based or crude pixel-based games. There’s no ‘gap’ with the fully realised and rendered human character. Character customisation leaves a little bit of space for the player, but the more abstract the representation, the more space for the character to exist in your head. Go back to games you loved 20 years ago and I can guarantee that the characters you remember are far richer and more detailed than what’s actually on the screen.
We’re back to sparse vs detailed prose again, only in another medium. Referencing Scott McCloud again, he has a great section on how much easier it is for the human brain to read the emotions of a simplified form (cf. emoticons) than of a realistic representation (cf. the Mona Lisa).
The human brain is a fascinating thing. When it goes into overdrive, it can take the merest suggestion of something and flesh it out into something fully formed. To go back to God Rest Ye Merry briefly, we had one player who’d encountered one of our ghosts – as fire raged through the house it burst into her darkened room, turned to look at her, and grinned evilly. At least, that was her description… but the ghost in question was a puppet, and we knew it had an inflexible neck and no way to look at her, let alone grin. The work of the moment had been done inside her own head after we’d built up a suitable atmosphere and presented her something only glimpsed in partial darkness. It’s all in the mind. That partial darkness was the gap, giving her space to add to the experience herself.
In conclusion, my experience is that by deliberately designing to leave such gaps in your storytelling – in whatever medium – you leave space for the player to bring their own imagination to your world and to make it their own. By doing so, they are much more tightly bound into the world of the story, and events will affect them much more deeply – they will feel like they were ‘there,’ and the experience will mean much more to them on many levels.
So. Be fuzzy. Be woolly. Leave spaces. Keep the gap in mind.
I wrote the following snippet on worldbuilding in answer to a question from Alexander Zacherl at Fairytale Distillery – at Talespinners we’re helping them out with their game The Exiled. It’s specifically targeting creating gameworlds for multiple players, and was written in a hurry, skipping over vast swathes of stuff, but I thought it might be of interest!
Alex: How do you approach creating massive game worlds from scratch – what is the process?
Ian: The trick with inventing worlds is to leave lots of room for different stories to flourish. Stories come from drama, and drama comes from conflict. So, once we’ve established basic mood and themes, we’ll pull together what we think are the central conflicts of a world, conflicts that will generate both gameplay and drama. This could be nation against nation, or people against a harsh world, or citizens against a corrupt regime, or a mix of many different types of struggle. Paradise is a boring place – you won’t find many stories to tell there.
For an ongoing world, it’s critical that these central conflicts can’t be easily solved – because if you fix them then the world becomes a lot duller. Instead, we’re creating a background canvas on which we’ll tell stories. So we introduce all sorts of pressures and demands.
Once that’s done, we widen out to try to create space for different play styles; ensuring there’s a good variety of character types that different players will identify with or enjoy playing. Some of this will come from gameplay and mechanics – character classes, for example. But it also applies to races, subcultures, nations, roles within society – what one player will think is a cool background might be terrible for another.
We’ll typically put together a world map early on, as it lets us look at conflicts and pressures caused by geography, and gives us an idea of the problems faced by different nations or races due to where they live. And we’ll spend a lot of time looking at the history and politics and outlook of each culture; we’ll give them language, religion, customs, speech patterns, and, critically, we’ll start to name things on the map and to generate interesting places to visit.
Then we’ll go into history. No world comes into existence in a moment. We’ll look at layers and layers of the past. Who lived in this land before the current inhabitants? What happened to them? Did they leave evidence? What about before them? Where did the current inhabitants come from – did they invade or something? Were there wars between their ancestors? We’ll bury references to that history deep into the bones of our world – in names, in lore, in phrases, in iconography and symbols, and in half-remembered stories and myths. We’ll construct historical timelines, some fictitious or heavily bent by propaganda, some accurate.
While doing this, we’ll write all of it down in a way that the people of the world will understand, for general consumption by players. And we’ll keep a second version – ‘the Truth’ – with a lot more detail. This is the World Bible, and plot writers and game creators will work with when creating stories set in the world.
That’s a very quick skim over some of our process. I should point out that this doesn’t just come from us – there is a lot of back and forth between the writers, the game design team and the art department, as the look of the world and what you can do in it is critical. Ideas will come from everyone involved.
As the world develops, we find that it will come alive. There’ll come a point where, if someone asks us a question, it won’t seem that we’re making up the answer. It’ll be more like we’re stepping into the world to have a quick look…
One of the most rewarding things about being a games writer is that you can see your worlds brought to life. You can step into something which was once in your head.
In my experience in interactive events – whether live-action or computer game – a player’s level of immersion in the game world is a direct driver of the intensity of their experience and of the amount the event affects them emotionally.
It’s my belief that a major component of engendering that immersion is in how you deal with drawing the player out of the real world and in to the world of your game or story. I call this part of the game experience ‘Crossing the Threshold’, and in this article I’ll discuss techniques our team have used in the past to achieve this. For this, I’ll cite examples from one particular event, God Rest Ye Merry, the live 1950s Christmas ghost story we ran (as Crooked House) in 2015.
My usual caveat – I’m not an academic or, particularly, a theorist. I tend to work by intuition on these things, try them out, and then when they work go back and analyse why they were effective.
It’s my belief that similar techniques to the ones I describe here can be used for many different types of interactive story – LARP, theatre, VR and even computer games.
If you’re unfamiliar with live-action role playing (or LARP), then think of this as a weekend-long murder-mystery-style event in which paying players take on characters we’ve designed for them.
In this instance, we hired a massive country mansion on Exmoor in the UK, filled it full of ghosts (using audio, video, physical tricks, props, stunt crew and all sorts of other special effects) and then threw in some players to see what would happen.
So, since this is a ghost story, all of our techniques were targeted towards achieving one basic design goal: “Scare the player, not the character.”
Before the event started the players had to fill in a booking form – as per usual, this included name, address and so on. It also included a question encouraging the player to list their phobias and potential triggers. We made it clear that we wanted this information so that we wouldn’t cause extreme distress to the players, and in fact we never intended to make use of them (and didn’t). But the mere inclusion of that question started the players thinking about what could happen to them, what experiences they could go through, and to start imagining how far our event might go.
When we sent out the briefing packs to the players – including all their character documents – we also included out-of-character rules. These were very brief (our rules are always light, as we feel they get in the way of immersion), but we did include several features entirely designed to ramp up the players’ expectations.
We gave the players a word that they could use if they ever felt they couldn’t bear what was happening to them. We never intended that they should use it – in point of fact, the design team never even discussed what would happen if someone did use the word. It was simply there to, again, put their imaginations into overdrive. This is similar to Hitchcock publicly announcing that paramedics were stationed in cinemas for showings of Psycho – the audience do half the work for you.
Most live-role playing events include rules for combat using safe weaponry. We knew from the very beginning that there would be no combat in our game, as the players were up against ghosts which would be manifested using puppetry, video, fire effects, audio and so on. There was no way that combat made any sort of sense. Still, we included combat rules (which also covered healing and death) to make the players think that their characters could be hurt – to give them another source of fear.
We made it explicit that as soon as the players stepped into our world they would not leave it for 48 hours. There would be no breaks from being their characters. No time when you could sleep and feel safe. Once you crossed the threshold, we would not relent.
Likewise, we informed the players that there would be no safe spaces. No places that they could go where they could not be subject to the story in our game. We relented slightly with privacy – we said that we wouldn’t spy on them in bathrooms – but we still made it clear that the game would be active even in those spaces.
At the end of the driveway up to the mansion itself was (appropriately, talking of thresholds) a gatehouse, the lodge. This was where the players arrived as ordinary people, and where they would get dressed in 1950s gear, put together their 1950s luggage, and leave all of their modern paraphernalia and the real world behind.
As the players – still their modern selves – entered the Lodge we had music running in the background. We could have used 1950s classics to start getting them in the right era, but instead we chose to use modern horror music from movies and games, many of which were based around deep droning background notes. This was because we felt that hooking them into the unsettled mood was far more important than time period. We borrowed this technique from the West End performances of Ghost Stories, which were excellent at setting the scene using sound while the audiences took their seats.
Once the players were suitably dressed and had their 1950s luggage ready, I took each one aside into a room for a one-on-one briefing. Ostensibly this was so I could discuss their character with them (and clarify any secrets and the like) and make sure they were familiar with the rules.
I asked them to pick a card from a deck of Arthurian tarot. They looked at the card, told me what it was, and I made a show of reacting and then writing the card name down.
I also asked them to close their eyes, and took a photograph of them, taking care to use the flash.
Then I thanked them and let them leave.
There was no reason for the card or the photo. None whatsoever. They were entirely there to set the characters off-balance, to get them puzzled, curious and on edge. It worked – after the event, we had people tell us things like ‘I thought the photograph with eyes closed meant that I would find a photograph of myself in a morgue’.
And so we sent them off in small groups into the darkness. The in-game explanation was that the main road was flooded, and so the car that was bringing them from the station couldn’t reach the house. They had to carry their own bags and struggle up to the house itself. As soon as they left the Lodge, they left behind their old selves, and walked into our game world up a road of twisting trees with a low fog generated by the special effects department.
A fair distance up the path they were met by a dark figure carrying a lantern; a servant from the house come to escort them.
When they arrived at the house they found it in complete darkness save for candles set in the parlour. The in-game excuse was that there had been a power-cut. Out-of-game this was, of course, an excuse to show the house to the players at its spookiest – unknown rambling corridors in oppressive darkness. We took advantage of this later in the evening to be able to offset the mood – switching on the lights suddenly cheered up everyone and brought in the Christmas spirit we wanted them to get in to before we plunged them into terror.
The players were offered mulled wine in the candlelit front room, creating a safe-feeling and almost festive little haven. We used festive smells such as cinnamon to enhance this. As they milled around and met each other (in most cases greeting family members they hadn’t seen for years), the servants took their suitcases up to their rooms.
When the players had settled in a little, a servant would come to each one and would tell them that their room was ready. Then, with a single candle, they would leave the comforting womb of the parlour and lead the player through the most circuitous route possible through the darkness to reach their room. There they would leave the player with the candle and vanish back downstairs, leaving the player in a house they know to be haunted in rooms full of unfamiliar furniture and unexplored nooks and crannies.
There the player would discover that their bags were empty. They had been unpacked and their possessions put away in cupboards or drawers.
This was designed to affect them on three levels:
We drowned them in the atmosphere of the house itself; we removed modern props and added our own. Many of the existing artefacts were ideal for us – for example paintings that could have been there since the 18th century – but we supplemented them with our own paintings, books, letters, magazines and other props.
On the wall in several obvious locations we put paintings of the players’ ancestors. They knew they were ancestors without us having to explain anything, because we’d used Facebook to grab photographs of the players, alter them in Photoshop and add them to much older paintings.
We included objects which were clearly safe LARP weapons designed to be wielded by the players – hatchets, knives, candlesticks, a shovel, a gun etc. As with the combat rules above, we knew perfectly well that these could have no effect on the ghosts; again they were there simply to make the players think that they could be in danger and need to wield these weapons.
A number of the rooms were haunted by specific ghosts. When the players entered those rooms – which included many of the bedrooms – they would discover props & paraphernalia from the life of that ghost. For example, one player opened the wardrobe in their room to discover that a 1930s silent movie star had created a shrine to herself, with hundreds of signed photos, posters, and old film costumes. The players knew – due to our background material – that she had committed suicide. They also knew that they now had to sleep in the same room as that wardrobe.
The final part of dragging the players emotionally kicking and screaming across the threshold was the use of our stooges. We often use stooges in these games – people who appear to be paying players but who in fact are controlled by us – as they’re a useful lever for steering the plot, and also useful when we want a body to turn up in a gruesome way.
In this game we used two stooges very specifically very early on to emotionally unbalance the players.
Many of our players, in their background material, had letters from their Aunt Sophie. A staunch protective influence for the whole family and a strong emotional support, she wrote to them in sympathy over their problems (all the player characters had deep-seated problems) offering solace, comfort, and holding out the possibility of solutions. “Let’s talk when we meet at Christmas, I’m sure we can sort it out.”
Aunt Sophie was played by someone called Rebecca South, who prior to the game was terribly enthusiastic about it on our Facebook group, swapping costuming tips and tricks and befriending the players.
On the first night of the game that player was late, ostensibly due to bad traffic, so we told the other players that she would arrive later on.
However, at around 10pm the phone rang. (An entirely 1950s phone connected to our own phone system built by a friend, allowing us to control communications in and out of the house and effectively fake an ‘outside world’.) This was a police inspector from Oxford, informing the player characters that their beloved Aunt Sophie had been in a terrible, fatal accident.
There never was a Rebecca South. We entirely invented her, created a Facebook account for her, and interacted with the players as her. She never existed.
Aunt Sophie was purely in the game so that we could rip out the emotional support from a good third of the player base. “It’ll all be all right,” many were thinking, “I just need to talk to Sophie.”
The last stooge we used was Edgar, the competent, calm and cool-headed eldest brother & head of the family. He could cope with any crisis, and led the family in, for example, dealing with the grief over Sophie’s death.
He was found crushed to death by a fallen chandelier late on Friday evening. The last emotional support ripped away, characters who had been spendthrift, shallow & irresponsible suddenly found themselves at the head of the family having to deal with murders & ghosts with no help from anyone.
The tricks and techniques above resulted in a slow but inexorable downward spiral for our players which meant that they were drawn into becoming their characters and part of our world; were drawn more and more into a cycle of fear; and were left without emotional support. We believe it added hugely to the sense of the players ‘being other people’, and magnified the rest of our effects and tricks tremendously. With immersiveness, and particularly with horror, the more you can make the player’s mind do for you, the better.
In fact this was so effective that shortly after entering the darkened house one player decided that he couldn’t cope with the stress and gave up and went home. So perhaps some times we can push it a little far. 🙂
So – obviously – a lot of these things are specific to a live event, and even more specific to horror. But they all stem from the same basic question – how can we draw the player into our world? Or how can we drown them in its atmosphere, knock them off-balance into the emotional state we want them to be in?
It’s definitely easier in live action. It’s perfectly possible in books & films, too, though expensive – see Hitchcock, or maybe J.C. Hutchins’ Personal Effects: Dark Art, which uses a lot of physical artefacts in the same way as our player briefing packs.
In computer games I’d suggest you can achieve at least some of this by simply paying careful attention to menus, title screens, music, loading screens, even the Steam artwork for the game. If you do have a physical copy, you can do a lot with art & artefacts.
And then perhaps by looking at your interfaces – would minimising UI help, or drawing them in to become more diegetic, more part of the world? (See, for example, Dead Space and Isaac Clarke’s health bar + UI being part of his suit.) Can you somehow unbalance them by connecting with their real world? (See The Secret World‘s external websites or Metal Gear Solid‘s Psycho Mantis and his reading of your save games.). Or can you tie the interface or controller to the real world somehow? (Guitar Hero, or Aaron Reed and Jacob Garbe’s Ice-Bound Concordance.)
In any case – I hope this has given you some food for thought. Feel free to ping me on my usual address with any questions!
“I believe it was the late Rosalind Russell who gave this wisdom to a young actor: “Do you know what makes a movie work? Moments. Give the audience half a dozen moments they can remember, and they’ll leave the theater happy.” I think she was right. And if you’re lucky enough to write a movie with half a dozen moments, make damn sure they belong to the star.”
(A quote I only discovered months after writing this article. D’oh!)
I’ve been mulling over this for a while, and talked a bit about it in the “Lessons from LARP” talk I gave at AdventureX. I realised that over the years I and the people I regularly collaborate with have developed a particular way of working with story, and that I’ve now used this method successfully for all sorts of different types of media; I’ve used it for video games, movies, LARP, books and all sorts of other types of story.
I’m not claiming any of this is new – a lot of the process I present below is often called breaking a story in screenplay parlance. I do find it interesting that we developed it as we were working (none of us went through formal screenwriting courses), and I think there are some interesting reasons why this works.
I’m also not claiming it’s the only way to do things – it’s simply a method we’ve developed almost accidentally that works for particular stories and games.
It starts, fundamentally, with what comes out the other end of a story. What are we in this business of storytelling for? For me, I get a kick out of the experience we put the readers/players through. My measure of that is simple. I call it “War Stories”*.
It’s something I first noticed after LARP events. For weeks, months, even years afterwards, people would be sitting in pubs recounting stories of what had happened to them. “That bit when…” “Aww, but did you see what happened where…” “And then, my god, I was running from that thing, I’ve never been so scared…”
Almost all of those stories had been provoked by moments of intense experience, of intense emotion. Fear, shock, hilarity, love, or even in one notable case extreme, hypothermic cold. These people had been put through the mill, and those were the moments that stood out to them, moments that would live on in their heads forever, and moments that they wanted to share. Having shared them, they became iconic stories, and were passed on second or third hand.
I was doing some analysis on this for a talk, and I realised that the ‘War Stories’ phenomenon is also common to watching movies, playing video games, even reading books. “When Hulk punches Thor!” “When Bruce Willis realises what’s going on.” They’re what binds people together in pubs or on forums or at book clubs. A need to share the things that really affected them, that etched those experiences into their minds.
In my experience, those moments, those highs (and extreme lows), are the things you remember, the things you take away. The most important things. You tend to blur out the connective tissue.
And then I realised that it’s how I approach shaping stories. I write them by coming up with moments that I hope they’ll talk about afterwards.
So how do we approach a story? With the collaborators I work with it’s a case of looking at the genre and setting we’re working with, the mood of the piece, and then brainstorming. In that brainstorming session we’ll throw together a collection of wild ideas about what we want the player to experience. In a live game, that could be stupid stunts or effects builds we’ve always wanted to try, or stage magic or technological tricks we can play to dumbfound a player; in a video game it could be as woolly as ‘feel intense loneliness’ or as detailed as ‘has to climb up a dark well shaft, only just clinging on by their fingertips, slipping a couple of times but ultimately triumphing’. These could be drawn from inspirational moments in movies, books, films, games, or history. Or just made up on the spot.
Often, it’s things that the other people in the room say “No, we can’t possibly do that to them. Can we?” or giggling with ‘You’re an utter bastard!’ or ‘Wow, that would be amazing!’.
These are the moments that we’ll build the rest of the story around.
There’s a temptation to say ‘oh, this is just about set pieces’. I don’t believe that’s the case. Yes, absolutely, some of these moments could be ridiculous pyrotechnic explosion-feats, car chases, whatever. But equally, these moments can be intensely private one-on-one emotional conversations. The important thing is that they are emotionally affecting. (And that they emotionally affect the player/viewer, not just the character, but that’s a whole other article…)
Nor am I talking about game cut scenes. Again, some of these moments could be cut scenes. But equally they could be gameplay sequences inextricably entwined with mechanics which try and deliver the experience you want to the player to have.
It may not even be a concrete moment at all, particularly in an interactive. It may simply be doing all you can to give the player the opportunity to experience a moment, and it might not always come off.
Edited to add: (after a great response from Harry Harrold): This doesn’t necessarily mean ‘have a cool effect on a plate’. It might equally be making sure that you provide all the conditions you can for the players to generate and experience their own memorable moment. Pile on the emotional fertiliser, as it were.
Then it’s a case of talking through the moments in greater depth, figuring out how they might be achieved, and arranging them in a rough order. At this point you’ll start to get an idea of how the story might shape up, when you see them all together like this.
And maybe – if you don’t have one already – you’ll start to spot the mood and the theme of your piece. It’ll make itself known.
It’ll become clear which moment ideas are really good fits, and which ideas just don’t work for this story – maybe they can go back into the pot for another time. Some moments will clearly be great gut-punch setups for other moments if you just shuffle the order a bit. Other moments will occur as you go through the process.
Now they’re in a vaguely chronological order. Your plot is now like a pencil sketch of something which’ll finally be inked and coloured. We’ll talk through the story a few times all together, to start to connect up the logic, spot the problems, have inspirations for how to fix it, to smooth it, to shape it.
This isn’t to eschew standard story structure. These moments tend to get placed in the places where you’d expect to find highs and lows – you’ll see the arcs appear. It also doesn’t solely apply to linear story arcs; these moments can easily be placed off on optional side branches or reordered on the fly via gameplay.
In something like a LARP, the structure can be even looser – it can become a list of things we’d love to happen, we’re set up for, but which can be rearranged or discarded. Experiences we’d love to achieve if the cards fall in our favour.
It’s a really good idea to walk away at this point and do something else. Possibly for a few days. Then come back to the story, and go through it again – talk everyone in the room through it. Suddenly you’ll spot flaws you hadn’t thought of, or you’ll hit sections where you go ‘why the hell were we going to do that?’ and everyone will talk it through until it suddenly makes sense again. Or you’ll re-arrange it all. In the intervening time new ideas will have occurred to people, new connections between the moments; something which may have started out quite disparate will start to knit together. The brain seems to be pretty good at coming up with those connections when you’re thinking about other things entirely.
What happens next really depends on the medium. I find it very valuable at this point to write out a longer treatment of the whole story as one document; that tends to show up any major issues (and treatments are always handy when you’re trying to get ideas across to other people).
However you do this, though, you’ll be firming up the connective tissue between the moments, and keep doing it again and again, and then you’ll have your story.
And then, of course, the important thing is to turn it into something that people can actually experience.
For interactive games, obviously different people will encounter different content.
When it comes to live games or theatre, it’s not the case that everyone has to see your amazing moment. It took me years to learn this – it doesn’t matter, so long as someone sees it. Because they’ll talk about that moment forever, and it’ll spread, and become legend. One day there’ll be outlandishly exaggerated stories about that thing that happened, and all sorts of people will claim to have been there who weren’t.
In video games it’s even easier – so long as a small proportion of the population encounter your content, the story will spread on forums and others will play again to try to get it. Think about the power of Easter eggs in games. It’s all about “That bit when…”
It’s my contention that if you work this way, if you concentrate on the highs and lows, on delivering war stories, you’ll have a memorable film/game/event/book. It almost doesn’t matter what goes between them, so long as it makes some sort of sense. Honestly. I know that sounds crazy, but most people have terribly fuzzy memories and the bits they didn’t enjoy or found bland fade away, leaving the bits that excited them. Sure, the quality of your whole piece will be vastly improved by good joining-of-the-dots, but to turn it on its head, if you don’t have the memorable moments, you have nothing. I’ve lost count of the number of movies I’ve seen or books I’ve read that I can’t recall anything about a couple of months later.
But people in pubs still talk about the time we had a WW1 tank**, ten years later.
*My brother reminds me that in the world of TV, these are ‘water-cooler moments’.
**We didn’t. It was two-sides of a tank faked up out of plywood + paint with a couple of pilots inside and some carefully positioned pyrotechnics, so that when a puff of smoke came out of the barrel, a piece of the ground exploded. But we still hear about ‘that game where they had a real tank’.
It’s 3am. You haven’t slept for two days now. There’re strange things happening in this mansion. You’re upstairs in your bedroom, in bed with your partner, but the lights are on; you’re both too scared to turn them off.
There’s something about this room. When you came in, you noticed the wedding pictures of the young couple, and the photos of their baby daughter. You know it’s a daughter, because the crib is still here, beside the bed; the name Gwendolyn hangs on a wooden plaque at the end of it. You turned the photos face down, because you realised who they were; the young couple who died here years ago. You’ve read the newspaper reports, and heard the family stories. You’ve found letters: receipts, bills, final demands.
And you’ve heard things. A baby crying, although you couldn’t find the source. A man and a woman arguing, muffled, through the wall; something about money. And, twice now, a gunshot, somewhere outside through the corridor. You’ve never found where it came from… although there was blood on the bathroom floor.
And now, tonight, you hear the gunshot again. And the baby starts crying outside your door. A girl screams. And the door flies open. There stands the young mother, dressed in black, the baby bundled under her arm. She’s in tears, makeup running. In her right hand she brandishes a revolver. She runs into your room and turns around, frantically warning away her pursuers. Except there aren’t any pursuers; the doorway is empty – but she can clearly see them. She runs to the window, still waving the gun; opens the window; and throws the baby out.
At this point, you, the player – because you are a player, and this is a moment in a live-action game that you’ve been taking part in for the last few days, having taken on the role of a 1950s character – might realise something. If you’ve got enough detachment from the terror of the moment, if you can draw yourself back, you can think “Ah. I get it. I understand what’s going on. The baby’s clearly not real. it’s all fine. It’s just a play, a scene, a trick. I don’t need to panic.”
At which point the young woman jumps out of the window.
When you’ve recovered yourself enough to get to the window and look out, there’s nothing below; no baby, no woman, nothing at all.
Let’s just clear up, to start with, how the disappearance was done. Very simple; the woman was a stuntwoman. Below the window, we’d built a stack of cardboard boxes (stunt people like to land on these) topped with a mattress, all built on top of a large tarpaulin, and surrounded by eight people. As soon as the baby came out of the window, we knew to be ready. As soon as the stuntwoman hit the mattress, we picked up the corners of the tarpaulin and ran, dragging the whole thing around the corner. Then we disassembled the pile and hid it. Yes, there was a bit of noise, but people were screaming, so that covered it nicely. You can see a video of the rehearsal here.
So that’s that cleared up. Let’s look more deeply at the writing of the scene. Because it’s backwards.
When we started this ghost story – one of many substories that were taking place in the haunted mansion over the weekend – we only knew one thing. We had Kiera, our stunt woman, who wanted to jump out of a window; and a suitable window that happened to be in a bedroom. So clearly our story had to involve a young woman. Where did we go from there?
A lot of writing for interactive fiction – particularly for our brand of live events, but also for computer games – is about dealing with the fact that players have choice and, ideally, shutting down a bunch of choices you don’t want them to take while still giving them the complete illusion that they have free choice. In this case, there was a choice that the players had which we definitely didn’t want them to take. We didn’t want them to leap out of bed, grab the girl, and stop her jumping, although it was perfectly possible for them to do that.
So firstly, we came up with the idea of a barrier between the bed and the window. After some discussion we decided this could be a cot; there was one in the house that we knew about. We’d just screw it to the floor so it couldn’t be moved; it wouldn’t look out of place in a family room.
Great! So our story has now expanded; the young woman has a baby.
Wait! A brainstorm moment, as someone comes up with the idea of the double-bluff gag; throw the baby first. This double-whammy nicely bolsters one of our overriding design principles, that of “scare the player, not the character” by which I mean that if we can make the player (rather than their character) unable to believe what they’ve just seen then we’ve ‘won’. If we lull them into a false sense of security with what’s clearly a dummy baby, the jump will be so much more effective.
So. Another part for our story – she throws the baby out.
But hang on, said the stunt team, that’ll make the players even more keen to leap out of bed and stop her… we need some other barrier…
So we gave her a gun. An intangible barrier, to be sure, but having a real-looking gun waved in your face is a definite psychological barrier. Particularly one that’s just been fired. Okay, so we can use audio to make the sound of a shot – so who has she just shot? So that leads to more story – who she’s just shot and why.
And when you bear in mind that this is all happening to players who’ve already had their nerves frazzled over the passage of two terrifying days, then we’ve almost certainly shut down the player choice of ‘leap out of bed’, but – and here’s the important thing – they think it’s of their own free will not to make that choice. They think it’s their failure to act through terror.
And now we have our story. A young couple fall out over money (gambling debts), the wife shoots the husband and in despair throws her baby out of the window and jumps after it. And out of that comes the rest of the piece; newspaper reports, entries in the family tree, receipts from bad debts, arguments through the wall, photographs, dried bouquet of flowers, and the rest of the environmental storytelling that fleshes it all out. There’s a lot more on what we finally came up with here.
It’s an odd back-to-front way of writing, but it definitely pays off in this sort of scenario.
Want to know more about the event? It was called God Rest Ye Merry, and ran in January 2015, organised by Crooked House, the events group I co-run. There’s a lot more about it – and the other ghosts – on the website.
This is part 3 of a series of occasional articles on procedural narrative — see part 1 for the explanation, but in short, these are some ideas I’ve been throwing about for controlling or generating the player’s narrative experience of a game procedurally. For a given value of narrative, which not everyone might agree with.
Right, I’ve mentioned this a few times so let’s get into it. Procedurally-generated quests, in roguelikes and in RPGs, have never satisfied me. They tend to fit into a few simple templates the developers have come up with e.g. fetch quests (“I need 6 phoenix feathers’), kill quests (“go kill me a dragon in such-and-such area”), escort missions (“escort this stranger from such-and-such a place to such-and-such a place”) and so on. First, it’s blatantly obvious that they’re generated — admittedly that’s a hard thing to avoid — and secondly they’re so terribly predictable. As soon as you see the introductory text, you know the ending.
So, here’re a few thoughts on creating a better templating system that’ll produce more interesting and unpredictable stories, that make you feel more involved with the world. As per usual, they’re my own waffling, and your mileage will undoubtedly vary.
Let’s take as an assumed baseline that we have a world, in which there are NPCs wandering about — probably randomly generated — and you are a player. For simplicity let’s call it a single-player game. And again, for ease of thinking, a medieval fantasy world a la Skyrim or Fable or any one of a dozen others.
Terry Pratchett has this theory that stories are living things that act as parasites, forcing the world to conform to their shape. This is actually a great way to think about a quest generation system. Rather than everything being created up front, let’s think about templates as requiring certain things to be true before they can spawn a quest. Certain situations to exist in the world.
As a simple example, say our quest is ‘Person A wants the player to kill person B’. We need the quest generator to pick a suitable person A and a suitable person B, and if it can’t find them, fail to create the quest.
That’s a really simple example, though. To extend it, we might start adding conditions for the quest to make sense. “Person A must dislike person B”, for example. This presupposes some sort of ‘feeling’ data to be generated and tracked for each NPC, but to be honest if we’re going to be dealing with stories — and stories are all about drama and conflict — then we’re going to need something like that in place. We won’t specify too deeply, but at least let’s start with the idea that NPCs can like or dislike each other and the player.
With that system in place, then ‘Person A must not dislike the player’ is also possible thing to tack on to our simple quest template. After all, it’s not that likely you’d pick someone you hated to do your dirty work. (Okay, okay, lots of counter-examples, but let’s run with it for now.)
So, our template becomes:
‘Person A wants the player to kill person B. Requirement 1: Person A dislikes Person B. Requirement 2: Person A does not dislike the player.’
And then our quest generation engine picks up this template and picks some random As and Bs and tries them out in the world. If it can’t find suitable As and Bs, this quest is put back into limbo for now, and a different one is picked.
Let’s divert slightly sideways to talk about the fetch quest. ‘I need 6 phoenix feathers’ isn’t a particularly riveting narrative. But clearly the quest-writer thinks focusing on items should be interesting — after all, items crop up all the time in stories, don’t they? Arthur’s sword, Indiana Jones’s Holy Grail, Jack’s magic beans. So surely our templating system should support items?
But if you look at them, most stories about the acquisition of items have less to do with what the item is than what the item represents. It’s normally the focus of or resolution to some sort of conflict between people. And that’s what makes it interesting. There’s an obvious bit of low-hanging fruit there – a simple instruction to quest-writers to say ‘only put in an item if it’s the focus of a dramatic conflict’, but let’s take a step back and look at what I’m really saying here: interesting stories are about people, not about things.
So why do we keep tripping over fetch quests?
Let’s throw out the fetch quest and the item system entirely, then, for story purposes and come back to it later. The important thing to note is that our preferred template generation system should probably care about people, not about things.
But which people?
Well… we’re assuming a big world with a cast of NPCs that could be limitless. They’re generated using some sort of algorithm; it’s unlikely someone has sat down and designed them all.
So, if we assume our quest template is something like ‘person A needs the player to kill person B’, then for A and B we just pick random people, right, so long as they fulfil the requirements about liking and disliking and all that?
Well… no. We’re not trying to recreate an entire world with people who have wants and needs. We’re trying to give the player an experience. So we need to pick someone who the player can encounter. So just pick the closest, then, right?
In the absence of any other information, sure. But we can gather lots of information. And as the player plays through the game, we can gather lots more – where they go, how they play, and critically, who they’ve interacted with and in many cases how they’ve treated them.
So to my mind, if we’re choosing a random person in the world to fit into our quest template, we should prefer people who the player already knows. Someone they’ve interacted with before, if possible, because it’s the player’s relationships with the other characters in the world that matters.
Sure, to start with we won’t have that info. But as the game progresses, it becomes easier and easier to work that out. We do need to leave a little wiggle room, or the player will never interact with new people. But that should take care of itself to a certain extent, as hopefully our quest’s requirements are varied enough to spread the net.
So looking back at our template:
‘Person A wants the player to kill person B. Requirement 1: Person A dislikes Person B. Requirement 2: Person A does not dislike the player.’
If our quest system hunts through the world for an A and a B that fulfil the requirements, it should be weighted to pick either an A or a B (or both) whom the player has already encountered. This makes our stories revolve around people who, as the game progresses, start to matter to the player, and becomes a much more personal story.
‘Person A wants the player to kill Person B’ is a pretty dull and motivationless bit of story. But then, most of that is up to the quest-writer. If it became ‘Person A wants the player to kill Person B because Person B married Person C, who used to be Person A’s lover’ with requirements ‘Person A hates Person B, Person A loves Person C, Person C is married to Person B’ then it’d be much more interesting, but harder to pattern match. It also adds a requirement of tracking ‘spouses’ to our game, but mapping character relationships is kinda important, so worth adding.
But there’s a limit to adding complexity, as your most complex stories will never find matches. It’s worth, at that point, considering allowing the quest generator to generate new characters that are in some way related to existing characters. After all, it works for soap operas!
So we know we’ve fulfilled our requirements above and the quest engine has found a suitable A and B to fit. Might it not spawn other quests, though, possibly diametrically opposed? Consider this:
Requirements: Person A dislikes Person B. Person A does not like the player.
Quest 1: Person A wants the player to kill Person B.
Quest 2: Person B has found out that Person A wants to kill him, and wants the player to kill Person A first.
It makes sense for those two to get added into the world at the same time, doesn’t it? And starts to give the player choices about who to side with. Hell, it could get a lot more complex: ‘Person C knows A wants to kill B, and wants the player to tell B, at which point B asks the player to kill A’ etc.
The important thing here is once we’ve successfully matched on requirements, we could spawn a bunch of related quests off the back of them, not just one.
The other way to add interest and complexity to a quest is to consider splitting it into a series of sub quests, each of which might have its own pattern-matching element.
As an example:
Step 1. Person A wants the player to get information on person B. This leads to the discovery that person B is sleeping with Person C.
Step 2. Person A wants player A to kill player B.
Now, we could have a whole bunch of different templates for the ‘get information on person B’ step. For example, ‘follow person B and see who they meet’, or ‘break into B’s house and go through their letters’ or ‘beat up person D, B’s confidante, and extract information from them’.
Similarly, we could have a whole bunch of different templates for the second step — perhaps A specifies the death must happen in a certain way, for example in public, or provides a specific poison.
So if we randomly select all the people involved, and the specific version of each subquest, then we open up a whole load of different stories. We don’t even need to pick the exact details for step 2 until step 1 is complete, so it’ll be up to date with what’s happened to the world.
And than can expand upwards and upwards. What if the major arc of the whole game is one long plot with lots of randomised sub quests, and those sub quests have their own sub quests, and so on and so forth…?
Right, let’s wrap it up there. As usual, I hope someone finds something useful in all this!
This is part 2 of a series of occasional articles on procedural narrative — see part 1 for the explanation, but in short, these are some ideas I’ve been throwing about for controlling or generating the player’s narrative experience of a game procedurally. For a given value of narrative, which not everyone might agree with.
I talked in the last article about using an Experience Director to control various things, including the stress the player is under; the ebb and flow of the game. Here’s a really simple set of ideas to illustrate what I mean.
Let’s say, for argument’s sake, that we have a thing called a stress level. Which is a number. Let’s say 0-100, where 0 is totally relaxed and 100 is panicking. Unrealistic, sure, because who knows the limits to panic, but let’s use that as a starting point.
Now let’s pretend that we can measure it. I’m not advocating sticking an ECG on a player — I’ll come on to how to measure it later — but for now let’s say we can measure what this stress level for our player is at any point.
Say we also had a target stress level for any point in the game. After 5 minutes play, we might set an arbitrary target stress level of, say, 35. There’s obviously an opportunity to write a formula like:
target stress level – player’s current stress level = stress we need to apply to make the player hit the target stress level
If our target level is 35, and we’ve measured the player’s stress is 15, we need to make stuff happen that ups the player’s stress by 20.
Well, sure, that’s pretty obvious.
Likewise, if we’d measured the player’s stress as 40, we need to cool it down by 5.
What should our target stress level be at any point? Anything, really, but let’s think of an example — in an action game, you probably want the stress to slowly rise until it hits a peak, and then drop rapidly to give the player a breathing space — but maybe not all the way to the bottom — and then rise again. Repeat until the stress is maxed out. (Or forever, if you’re feeling really nasty.) So the graph of our target stress might look like this, where x is time and y is our target stress level:
(Note for those interested: the function here is tan( fmod(x/2,1) )*32 + x*2 – which gives us this gradually rising series of curves.)
Generating it from a formula like this is probably easiest — but we could also lay down some bezier curves in an editor, or do anything, really, but let’s take as a given that we will have a number between 0 and 100 as our target for each frame.
Now let’s work out the other bits.
This entirely depends on the game, and is pretty arbitrary, but let’s have a stab at doing it for a hypothetical game.
Let’s say we have a top-down game where we control the main character and can be attacked by enemies on all sides. For simplicity, let’s call the enemies zombies. And that we can shoot them. If anyone breaks my copyright on this totally original idea, I will sue! 🙂
We need to figure out a stress level. It’s pretty arbitrary how we do that, but we could calculate it from a whole bunch of factors, including these:
Each of those things is entirely measurable by a game. Each can either have a yes/no value applied, or a number, and with some adjustment you could easily come up with a value for each line that goes from 0-100.
health stress factor = current health / ideal health * 100
ammo stress factor = current ammo / ideal ammo * 100
And then we can combine all those numbers depending on how important we think each factor is, into one big number ranging from 0-100, using the power of Maths. e.g.
stress level = (health stress factor * proportion we care about health) + (ammo stress factor * proportion we care about ammo) …
And so on, where the proportions are fractions that all add up to 1. That should give us a number between 0 – 100 for our player’s stress level. Neat!
Note that we can endlessly tweak and make any of those formulas more complex. Perhaps the relationships aren’t linear, but you need curves — if you’re very low on health, you probably are 10x more stressed than if you’re at a quarter of your health, for example. If you’re actually out of ammo, you’re probably massively stressed. Everything can be tweaked, and you can add as many more factors as you can dream up. Is the player in a dead-end corridor? Is the player’s co-op mate nearby, or far away? Does the player have a bazooka?
Fairly obviously from our measurement example above, we can see some factors we could adjust to raise or lower the level of stress we measure.
To raise the stress, we can throw in more enemies. Or we can speed them up, or direct them towards the player. Or move to surround the player. Or bring in a tougher enemy.
To lower the stress, we could drop an ammo pack if the player is low on ammo. Or the same for health. Or slow down some enemies. Or quietly remove them, if they’re off-screen. Or lower enemies’ health levels. Or all sorts, really.
That’s pretty obvious, but it’s not entirely clear how to remove stress accurately — there’s a certain amount of guesswork in doing any of those things.
Or is there?
Well, we have formula, exact formula, above, for figuring out how much adding a health pack changes our measured stress level. But it isn’t a concrete number, because it all depends on the rest of the state. But we should have a fair idea which of our factors have the biggest effect (based on the proportions above). Here’s a naïve implementation:
There are a bunch of other things you probably want to do, if running this in a real game. One is to smooth the values of the stress measurement, as it’ll change wildly from frame to frame — so average it over a bunch of frames. Another is to look into the future — dropping a health pack won’t affect the stress level now, it’ll affect it in a couple of seconds when the player has picked it up. Same with adding an enemy, the player won’t notice it for a bit. So actually we should be looking at the overall trajectory of the stress level, and working a couple of seconds behind that. But you get the general idea… with the sort of things I’m talking about above, we can put in simple rules to control the ebb and flow of the game and then play it forever without having to figure out another monster spawn.
Right, that’s enough for now. The next article will go into ramblings about creating better quests for open-world RPGs.
This is the first in an occasional series of articles about thoughts I’ve been having on procedural storytelling over the last five or six years. Most of the things I’ll rant about / speculate about are things that I’ve been thinking about for a while now, but haven’t as yet had a chance to put into practice due to a packed real life. Hopefully setting them down here will either get me off my backside to do something about them or will inspire someone else!
A quick background: I’m a console and PC games developer who’s also worked in interactive TV and film. I’m also a published author of fiction — kid’s books and pulp novellas — and a screenwriter, and have spent around 20 years creating and playing live events and tabletop roleplaying games. Mostly, I’m a storyteller and world-builder. A lot of these thoughts are the result of mashing together the things I’m interested in.
The purpose of these articles is to explore ideas about changing the experience of the player procedurally; both in the story and narrative, and in the experience that the player gets out of the game.
There are obvious procedural things you can do, such as generate quests for an RPG (but so few of those are satisfying — one of my followup articles will go into some ideas about how to improve this). There are perhaps less obvious targets; things which can be procedurally tweaked to heighten the drama of a scene or to direct the flow of the game.
This stuff is already being done (and has been done for years), in various games, in various ways, with varying levels of success. I’m not claiming to have invented anything here; I just think there’s a lot left to explore, and it all sounds fun to do.
Before we get going, I suppose there’s the age-old question “Why?”. Here’s a few thoughts, by no means exhaustive:
Note that I don’t think procedural storytelling or narrative is the be-all and end-all. To me, a good storyteller beats anything currently done by a computer. These are just incremental experiments I’ve been thinking about.
So to the first topic, which I’m calling the Experience Director. By ‘experience’, here, I’m referring to what a player experiences as they play through a game; the overall flow of the game. This isn’t about creating procedural quests — that’s for a later article. This is about procedural tricks you can play to enhance the player’s experience of a game. Adding drama, tension, pacing, and controlling the flow of the narrative. These are all the sorts of things that a good film director thinks about, or a good level designer — or perhaps a better analogy is that of a tabletop GM.
Has the player been fighting hard for the last few minutes? Find some way to give them a break. Are they hanging around in an area seemingly unable to progress? Throw signals of some sort to them to direct them on their way. Or spawn creatures right behind them to chase them along. Want to cut them off as they’re about to reach freedom? Drop a pile of rocks in the next tunnel…
These are all things that game designers and level designers put into their levels all the time. But those are static set pieces which will unfold the same way each time. Can we make these things much more dynamic, reacting to how the player is playing or to how a procedural world is formed?
When I propose an Experience Director, I mean a bit of software that constantly monitors the player’s state in the game; state being a flexible thing that might cover health, status, what they’re looking at, what speed they’re running away from something at, what items are in their inventory, what type of armour they’re wearing, how frantically they’re mashing the fire button, whether they’re nice to a particular NPC… whatever’s necessary to track, and which then alters the game based on that state. A set of feedback loops targeted specifically at heightening the game experience and making it more entertaining and dramatic.
Left4Dead 1&2 are some of the best examples I’ve seen of this so far. Left4Dead 1 has something called the AI Director:
“Instead of set spawn points for enemies, the Director places enemies in varying positions and numbers based upon each player’s current situation, status, skill, and location, creating a new experience for each playthrough. The Director also creates mood and tension with emotional cues such as visual effects, dynamic music and character communication. Moreover, the Director is responsible for spawning additional health, ammo, weapons, and Special Infected, like the Witch or the Tank.” (from Wikipedia)
Left4Dead 2’s AI Director can also block or open pathways to funnel the players into specific areas, and can turn on or off clues to point the player at specific points.
This is nothing really new — listening to state and responding is what games are all about — but it’s a great starting point for the sort of suggestions I’m making. It takes the focus away from ‘simulate a world’ (which feels so prevalent in many open world games) and puts the focus right back on ‘simulate the player’s experience of the world’. Which is all that really matters.
This sort of manipulation could be used for all sorts of things in all sorts of game genres. Running the enemy encounters for an FPS to support an authored high-level story, for example. Controlling a lot of an open-world sandbox, guiding the player to or from encounters and secrets. Controlling game dramatic flow — have we had 3 fights? Let’s generate a quieter encounter now.
So, now we want to write an Experience Director. What’s our best tactic for achieving this? How do we know what we should control with an Experience Director, what state to track, and what to do as a result?
My suggestion is to build the rudimentary mechanics of your game and start playing it. Then get someone who’s good at game design to sit down next to you, to watch a play through and make the sort of suggestions that they would if it were a static level. Listen to what they have to say, then code up behaviour to measure the current game state until it hits the same conditions that your designer has noticed and make your game respond appropriately.
Here’s a simple example. If your designer is watching a play through of a level and says ‘well, he’s really low on health at this part of the level — we shouldn’t place any more monster encounters.’ Fine; instead of not placing spawn points on that part of the level, instead write code that monitors the player’s health and decides to withhold spawning at runtime if the health is low.
That gives you massive flexibility — if the player has carefully stored up health when he gets to that section, then the game will automatically give him a challenge; if he is really badly beaten up, monsters just won’t appear. If you like, you could change the response — instead of withholding monsters, you could spawn extra health packs. Oh, hang on — this system doesn’t just apply to that section of the game, it applies to the whole of it! Well then, you could parameterise it — on some levels you could make it deadlier by having a lower health threshold… and so on, and so on.
Throw in a few of those systems, all co-operating, and I think you’ll see you could have the makings of something really interesting.
It’s also worthwhile watching lots of play throughs — or even recording them — and starting to watch for patterns. Does the player always go for the collectables in a level first, before talking to characters and moving on? How can we disrupt that pattern or make it more interesting with some reactive behaviours? It’s all about feedback loops, basically. :)
Here are some thoughts about the sorts of things an Experience Director could be programmed to handle:
The obvious one. Measure how well the player is doing at any given point, and tailor their encounters to suit. This can simply be ‘don’t put in so many attackers’, or could include throwing in extra health packs to help them out, scaling the attackers’ damage dealt or hit points and so on. The next article will go into this a bit deeper.
Where shall we spawn enemies? What type? How aggressive are they? What are their goals? Tailor them to their current environment and the player’s current situation.
Ebb and flow of tension through the game. Been fighting for ages? Give the player a break. Got a big encounter to build up to? Ramp up the difficulty level slowly; maybe pull everything back at the last minute to shock them. You can apply this to the whole game, or to individual combats: ‘have they had enough yet? no — throw another wave at them’.
Procedurally control the camera to suit the mood and the state the character is currently in. Consider borrowing from cinema — is the player currently winning? He should be looking down on his puny foe. Is the player losing? Drag the camera down, have the bad guys tower over him. Is there a particular boss coming in to a fight? Make sure it’s in the player’s eyeline. Want the player to feel lonely and isolated? Pull out until he’s in the middle of the screen.
The game says the player should be nervous right now. Spawn some creatures over there in the woods; have them make noises. Switch the music to ‘tense’. Apply a light wind to the trees. Knock out some colour saturation. Borrow cheap tricks from soap opera. 🙂
The game wants the player to go to a specific place. How can we make that happen? Lead them on by signals to draw them in that direction, or give them a character to chase. Or stick bad guys behind them to push them forward. Or rearrange a maze, or put roadblocks on a street. Or even move the encounter closer to the player, if it’s a fully procedural world, so that they definitely stumble over your set piece.
There’s nothing revolutionary about any of this, but in the days of indie game development, procedural ideas are starting to bubble up again — mostly due to budgets, if nothing else. 🙂 I hope this sparks off a few ideas for you; in the second article I’ll go deeper into reacting to the current stress level of the player.