How and why Spelunky makes its own levels (Game Maker’s Toolkit)

If you’re the kind of person that closely follows procedural generation you might have seen this video (or read Derek Yu’s Spelunky book). But my philosophy for this blog has always been to be comprehensive, not timely. No one can keep track of everything in the constant flood of new information that is the internet, and in a few month or years it’ll be new to people who just started to get interested.

The video is a good look at the principles that go into making Spelunky what it is (including the details of the generator’s inner workings). But it also touches on something I’ve talked about a lot here: that the procedural generation moves the player’s process of understanding from figuring out the individual levels to a process of directly figuring out the implications of the individual components.

This is, you’ll note, the exact opposite of what I was talking about yesterday with Race the Sun. There’s no one best way to use procedural generation, and what’s ideal for one game might not work in another game. In Spelunky’s case, I think the major thing that lets this work is that each chunk of content already comes with a dense network of emergent associations. Where Race the Sun’s building blocks are letters in a hyperspeed sentence, Spelunky’s are ideograms or cartouches. 

The way the levels combine the modular content also speaks to the pacing of the game. Just like Crypt of the Necrodancer’s shovel takes advantage of how its level generator works, the deliberate pacing and the way the different elements of a Spelunky level are far enough apart to encounter separately but close enough to emergently combine as you make your way past them is an intimate part of the game.

While you are unlikely to foster an intimate relationship with that one snake on level 2, you will have a relationship with the snakes as a whole. The game’s use of unique signpost content to anchor the generation also lets you develop relationships with the shopkeepers as a group, or the snake pit, or the jetpack. And the emergent results mean that you will remember that one snake that tipped that perfect run into a series of disastrous decisions.

https://www.youtube.com/watch?v=Uqk5Zf0tw3o