Spelunky – Now in Book Form!

Welcome to the all-new “Read of the Month” section. This is where I will discuss off-topic books that explore the game dev world and that I really enjoy. My first “Read of the Month” is… Spelunky!

I started reading Spelunky while I was working on my first game. The reason I bought the book is that I enjoyed the intelligent design of Spelunky and the book promised some insight. Furthermore, the book has received a great reception. Derek Yu gives an in-depth look into his experience as an indie over the years and shares a lot of trade secrets such as how he worked in the now famous procedural generation system.

Derek Yu is descriptive in the process of creating games but also in the reasoning behind his logic. Every decision stems from a series of rules that Derek has built. In the case of the design behind Spelunky, it was all about expanding on the essence of the roguelike genre.

When I was working on Spelunky, I focused on just three attributes of roguelikes that to me held the essence of the genre:

  1. Randomized level generation.
  2. Permanent death (also known as “permadeath”), whereby the player has one life and cannot reload their game to take back mistakes.
  3. A ruleset for physical interactions that is shared by the player, non-player characters (NPCs), and items.

Procedural Generation

The idea behind procedural generation is that every play-through is different. Levels, enemies, loot… every component of Spelunky is random each time you play. Derek Yu accomplished this with a set of very intelligent rules. Not only do these rules create a new experience, but they were iteratively improved to make the game fun. Derek breaks down the overall structure of these rules and the process behind them in the book.

Interested in the actual details?


The Spelunky book shares how Derek Yu built simple procedural generated levels that manage to stay fresh.

A Good Break-Point For the Fatigued Indie

If you have ever tried to make a game, you have probably experienced a low-point. You seem to hit a brick wall. Motivation drops to zero. I was experiencing this at the time. Derek Yu talks about his experience about losing motivation after finishing Aquaria. There is some encouragement in knowing you’re not alone and that even successful developers face the same problems.

Finishing a Game

Often… very often, I see people ask online “Is my game idea good?”, or “Is my game worth finishing or should I start over?”.  Most people don’t have any idea about their next move, and typically just start a new project. Derek Yu wrote an important article on how finishing games is an essential part of growing and how to make decisions.

“The thesis of the article is that finishing is a skill as much as being able to design, draw, program, or make music, and that finished projects are more valuable than unfinished projects. Most creative people are familiar with the first part of making something, and it’s easy to mistakenly assume that the rest is just more of the same. It’s akin to repeatedly climbing the first quarter of a mountain and thinking that you’re getting the experience you need to summit. Or running a few miles and thinking that you can run a marathon. In truth, the only way to learn how to summit mountains, run marathons, and finish making games is to actually do those things.”

The article consisted of fifteen tips on how to finish a game:

  1. Choose an idea for a game that satisfies three requirements: it’s a game that you want to make, a game that you are good at making, and a game you will wish you had made.
  2. Actually start the damn game. Writing design documents and planning doesn’t count.
  3. Don’t roll your own tech if you don’t have to.
  4. Prototype.
  5. Make sure the core mechanics are fun.
  6. Choose good partners (or work alone as long as you can).
  7. Grind is normal, so factor it into your plan.
  8. Use awards, competitions, and other events as real deadlines.
  9. Push forward. Don’t get hung up on one part of the game for too long.
  10. Take care of your mental and physical health.
  11. Stop making excuses for starting over. Halfway through any project you’ll always feel like you can do a better job if you started over. This cycle will never end until you put a stop to it. Save it for the next game. Do you have a brilliant new idea that requires extensive changes or pushes back your deadline?
  12. Save it for another game.
  13. Being behind schedule is a great excuse to cut unnecessary content.
  14. If you do quit, scale down, not up.
  15. Remember that the last 10% is the last 90%. You’re never as close to being finished as you think you are.


If you’re an indie developer, or a fan of Spelunky and want to know more about its development, then I highly recommend this book.


Procedural generation (Game Maker’s Toolkit): Watch

Store Link: eBook 

Store Link: Physical