Originally posted November 22, 2016. Reposted March 7th, 2019.
Tanya Short, captain of Kitfox Games and lead designer on Moon Hunters, was on The Spelunky Showlike recently talking about procedural storytelling as well as a host of other really interesting topics. The episode reminded me of this blog post I'd written about Moon Hunters a while ago, and so I wanted to repost it here for posterity, and also to expand it with a few extra thoughts I couldn't fit in at the time!
In general, players are good at ignoring bits of games that don’t make sense. We don’t question why a hundred gold coins grants Mario an extra life, or what an extra life even means, it’s just partitioned away as “part of the game”. Some games take advantage of this artificiality by drawing extra attention to these elements and tying them into the narrative of the game. Dark Souls, for example, brings its death and saving systems to the foreground of the game because they play a vital role in telling the game’s story.
What happens when we do this for procedural generation? How do we explain ever-changing dungeons, or the fact that no-one in the world ever has exactly the same sword as anyone else? Broadly speaking, there’s a few very popular ways to explain procedural generation in a game. Here’s some of the top ones I’ve come across over the years...
Procedural generation is often used to regenerate a location, but if that location has a fixed role in the narrative, how do you explain its constant redesign? By a large margin, the most popular explanation is a curse of some kind. In Spelunky the tunnels beneath a mountain are constantly shifting and changing position, which keeps people trapped in there for years, while in Dead Cells and Rogue Legacy you’re trapped in a castle that is similarly cursed to alter its structure every time you die.
Cursed locations work well because the core narrative doesn’t need to change, and it provides a good motivation for whatever the player’s doing (no-one likes curses, after all). Cursed locations often affect the protagonist too – in both Spelunky and Dead Cells you are cursed with eternal life as well, which explains why you’re the one constantly assaulting the same location. I actually love this explanation for generative space, although it's running the risk of being a bit overused.
Sometimes procedural generators don’t need an explanation because the thing they’re generation explains itself by having a real-world analogue. In Heat Signature you explore a cluster of stations populated by thousands of people who fly spaceships between them along trade routes. It makes sense that every ship is different because ships naturally would have a lot of variation. Similarly, every time you die you occupy a new character’s life (the same is also true of BELOW, although the nature of the dungeon in BELOW is closer to a cursed location). This also makes sense – it’s not incongruous to have lots of different people to play as, because the world is full of varied and different people.
This also works for world generation too – No Man’s Sky is a classic example of this. While our universe isn’t quite as beautifully diverse as the one depicted in the game, we understand that universes are big, contain a lot of stuff, and that stuff is distinct from other stuff. There’s nothing too complicated to explain (although the specifics of NMS’ universe is part of the game’s mystery).
Some games take the rather extreme approach of having every run through the game exist together in a shared world. In Unexplored, for example, every dungeon represents a real dungeon in the world, and every time you play the game you’re telling the story of a single adventurer exploring it (although every dungeon contains the same amulet as its prize). This can make it harder to tell a continuous narrative, because there are very few shared elements between each run through the game, but equally it solves any and all questions about why the same things are happening, without resorting to a magical explanation.
As we mentioned in the introduction, often there's no explanation for procedural generation at all, and most players are absolutely fine with this. Occasionally, though, the explanation doesn't appear up-front but is left as something for the players to either hypothesise about, investigate or discover later. Proteus is a good example of a game with no specific explanation but a lot to reflect on. Listing games with a twist related to procedural generation might be a bit of a spoiler (click here if you want one of those spoilers)!
Today I want to talk about Moon Hunters, which is an action RPG by Kitfox Games that came out in 2016, but has stayed with me ever since, and has an explanation for its PCG that sets it apart from any other game I know of. In 2016 I wrote, "if you like procedural generation or are interested in thinking about procedural generation, I think you should get this game". It's beautiful, it sounds great, it's charming but most importantly I think it has something to say about how procedural generation can be used in a game.
In Moon Hunters you play as a heroic adventurer, and go on a journey through five days of world-changing events. Each day of the story you choose to travel to a new part of the procedurally generated world map, which generates a level full of monsters, treasure, and some unique optional encounters that might give you a reward or pose a problem. You explore this level, fighting and talking as you wish, and then camp overnight. At the end of the five days there's a big fight, and win or lose the story concludes with a summary of your choices, characterising your hero based on what you did and adding them to a pantheon of mythological heroes. You might unlock some new characters or costumes along the way, and if you're lucky you'll unlock a constellation in the night sky, revealing more of the game's story and themes.
When you play Spelunky, or Risk of Rain, or most procedurally generated games, the implication is that each time is a fresh run through the world - even if you're cursed with eternal life, you did die, and this is what happens next. This means that while the player can learn about the content of the game, there's no real connection between the first time you play the game and the tenth, or my first time playing the game. Procedural generation is a plot point at best, but it rarely factors into our understanding of the game. It's like asking whether anti-aliasing factored into your last playthrough of Breath of the Wild.
It took me a little while to realise this, but Moon Hunters takes the exact opposite tack in its use of procedural generation. Each time you play Moon Hunters you're not playing the same game in a similar place as different people - you're playing the exact same events in the exact same place as the exact same people. Every playthrough of Moon Hunters is about the same people, the same places, and the same events. What changes is the person telling it - each playthrough is the mythology being handed down to a new generation, and its variations and differences are the misremembering, embellishment, confusion and flourishes of a new storyteller. The procedural generator is a part of this - it basically exists in the game's lore, and is crucial to understanding the game and its messages.
This is wonderful just on an aesthetic level - Kitfox Games have found a metaphor that suits procedural generation perfectly, something that embraces the variation, the idiosyncracies, even the mistakes that these systems make. But having played the game many times through now, I think it goes beyond aesthetics to deeply impact the way the game is played. You'll often come across little vignettes either involving something in the scenery like an abandoned sled, or a group of people with a problem or a question. If you choose to investigate you usually get a decision to make - you can judge a beauty contest, for example, or abstain from voting. You can steal a piece of treasure and lie about it later, or come clean. These vignettes often lead to your character gaining traits, like Foolish or Cunning, and these traits all pay into the game's final assessment screen that immortalises your characters in the stars.
However, some of these events or game areas have requirements. In order to challenge the huge, hulking miner, you need to be Foolish. In order to win over the angry hunter whose opals you stole, you need to be Charming. So you start to look out for the kinds of things that might make you Foolish, or you start to remember where you last saw that event that let you demonstrate Charm (and hope that it comes up). You begin to learn the chains and the patterns that the procedural generator has stored up in it, to try and push at one far corner of its possibility space, to see what happens if you unlock these traits at this particular time and turn up in a particular place. Each time you're rewarded - either with a little bit of plot, a new unlock, or simply a hint about another chain that you haven't yet discovered or fully understood.
This brings the player into the storytelling process too, because by trying to maximise certain aspects of the game you find yourself warping the way the stories are told. If you're playing normally, your stories are simply about some heroes who fight against a cult and either win or lose. But if you're trying to maximise a particular trait or explore a subquest, then the grand final battle becomes a less important part of the story, and instead other themes emerge. Maybe the storyteller is relating a parable about helping others, and your heroes seek out the best resolution to all the problems they encounter. Maybe the storyteller is warning people about greed, and so the heroes are kind of mean and steal all the time and never share. The player's struggle against the procedural generator becomes a co-operative act of story retelling.
If you're interested in any of the stuff I talked about today, be sure to check out The Spelunky Showlike episode with Tanya on it (and the rest of the podcast!) and grab a copy of Moon Hunters for yourself. Kitfox Games' next work, the dating-sim-dungeon-crawler Boyfriend Dungeon, is also something you should be following! Thanks for reading.
Originally posted November 22, 2016. Reposted March 7th, 2019.