Procedurally Ruined

Lots of devs seem to have fallen in love with procedural generation lately, but do infinite level possibilities trump solid level design?

Procedurally-generated. I swear, if I’d heard the term even one more time while talking to devs about their games at PAX East 2014, I was going to scream. It’s the new buzz word of the day, one that promises infinite replayability as the game constructs level after level of unique content. Why am I so upset, anyway? What’s wrong with games that can build their own levels from scratch, ensuring a new experience for me every time I play? Who wouldn’t want that?

Well, I wouldn’t, and I’ll use good old Resident Evil 4 to explain why. Now, I’ve played this game a few dozen times, and no matter how many times I boot it up, I still hold my head in my hands every time I’m about to run into a hard part. “God, I hate this room.” I’d say every time one of those areas came up. I actually paid attention to myself the last time I played through it, noting that I uttered that phrase on every single area except the very first one in the game. There are no easy rooms in Resident Evil 4; no cakewalks meant to give you a break from the unrelenting assault of los ganados.

This challenge comes from the game’s ironclad level design. Each and every area in Resident Evil 4 has been carefully constructed to maximize challenge and use each enemy to the best of their abilities. There are no rooms where the enemies are just tossed together or the layout is random crap. There’s no easy room filled with softball enemies to help you build your ammo stockpile up. You’re tossed into hard rooms all the time, and will be pushed to the breaking point in every level in the game. They have been designed to push you, after all, with smart enemy placement, relentless foes, and cruel trap setups. There are no accidents of design here – just purposeful setups gleefully built by men and women who want you to die.

Procedurally Ruined

This is not what happens in a game that procedurally generates it levels. It literally cannot happen by virtue of how the game is put together. In a procedurally generated game, the level is cobbled together by a program, pulling bits and pieces or chunks of whole levels together at random to create a functional stage. Poorly-made ones might not even be able to perform the latter, but for the most part, this is what these games do to construct their play spaces. It’s in the best interest of variety to keep this process as random as possible, as putting together levels in chunks means that there are fewer variations the game can make while creating its stages. So, the best possible outcome that gives the game the most variety is one that puts the level together almost completely at random.

This is a complete movement away from level design. Yes, you can create parts of the level that are well-made and have the program pull from those, but does it know the best order to pull them in? Does it know not to stick certain encounters together or that some work better in tandem than others? If it does know that, how much of your randomness is going out the window, and how much closer are you getting to carefully designing your levels? The closer a game gets to the spirit of procedural generation, of achieving a ton of variants to provide endless replay, the further it moves from careful level design. The more you plan a stage or even parts of a stage, the further you get from the goal you set out to achieve with procedural generation.

It’s not necessarily a bad goal to aim for. It’s very rare for people to play through a game more than once, and most devs seem to think that’s because the game isn’t any different the second time through. Why would someone want to go through the same experience twice? So, to keep the disc in the tray and have players continue to engage with their games, it only makes sense to head in the direction of procedural generation. With a game pulling content together to provide an endless variety of maps, players are bound to keep playing the game. It’s only the lack of variety that’s keeping people from continuing to play.

Procedurally Ruined

As I’ve said, I’ve played Resident Evil 4 about a dozen times, and that game literally never changes. Sure, I unlocked a couple of new weapons after playing through it a few times, but overall, the enemy layout has not changed one bit, nor has the level design. It’s the same thing, over and over again. It makes me wonder if I’m just the type of boring person who can go through the same thing ad nauseam, but I don’t think the answer is that simple. I think that in a tight, well-designed level, there can be variance and challenge enough to keep the game new every single time.

For example, one of the very first areas of the game, La Pueblo, hits me in new ways on each playthrough. In it, you’re expected to survive an attack from a dozen or more of the game’s basic enemies. The trouble is that your character doesn’t have a lot of health, and the enemies work well in packs. These guys aren’t going to wait their turns. So, staying out in the open area you start off in isn’t a great idea. The game gives the player a couple of options to deal with this, leaving several small houses in the area to hide in as well as a tower. Which do you pick?

Most of the side locations bring up their own trouble. Going into one of the houses, one that contains a shotgun that will make your life a lot easier, triggers the appearance of a chainsaw maniac into the area (a character with a ton of health who will kill you in one hit if he reaches you). You can always run to one of the other houses, but the enemies will eventually break in through all the windows and doors, so without the stopping power of the shotgun you’ll have a hard time keeping them at bay in an enclosed area. You could climb the tower since the enemies have to scale a single ladder to get in, but they’ll start throwing molotovs you can’t avoid if you stay out of their range for too long. It’s also early enough in the game that you might be silly enough to try to make a run for it, heading for the area exit. That triggers another chainsaw maniac on top of not actually letting you out at all, which is a fun discovery the first time you do it. Then again, chainsaw maniacs are worth a lot of the game’s currency if you kill them, and would give you a great boost right at the start. What’s a guy to do?

Start at 2:38 to see what I mean.

That’s a whole lot of variety from a game that doesn’t rely on randomness to keep players engaged. Instead of having the program slap together a couple of areas, the areas in the game are filled with different ways to engage the enemies. Through weapon choice and level layout, you could easily find several different ways to tackle any one situation. You might have to if one of your plans goes sour, finding a different tactic on the fly when you run out of ammo or the spot you’re holding in gets overwhelmed. This happens by design from the devs, creating a deadly playground that might not give the player infinite possibilities, but at least gives them a bunch that are absolutely worth trying out.

In regards to challenge, another comment I hear from those who use procedural generation is that “some areas will be easy, but some others will be hard.” That’s an unusual thing to say about a game, but it reflects the random nature of this kind of level design. The game is just putting your level together at random, so it might pull together tiles filled with some of the toughest areas of the game, or instead populate the level with some of the easiest. Players could enjoy both of those, but what if you’re new and lacking the skill or weapons to get through a hard start, or if you’re about to beat the game and suddenly it turns into a cakewalk? These things don’t add much value to the experience, sabotaging enjoyment for the sake of replayability. Well, if I didn’t like your game the first time, why would I play it again?

Tight level design will (hopefully) spread out difficulty along a curve, rising steadily as the player learns the game and becomes comfortable with it. La Pueblo at the beginning of Resident Evil 4 is hard, but what if the game threw the small cabin gauntlet from later in the game at you at this point? It’s a gauntlet of forty-some enemies, one that is brutal but fair at the point it shows up in the game. It would be stupid to put something like that at the start of a game, but you might have to deal with it at the beginning of a procedurally-generated game, where this sort of bad situation is almost touted as a feature. You might lose right from the start, and that’s supposed to be a bonus? A steady curve of difficulty, one plotted out by someone who knows the game, is going to give me a lot more enjoyment than having something different pop up every time I start the game.

Procedurally Ruined

What about the veterans looking for a challenge? Procedurally generating the level at random can go the same way with them too, putting easy area after easy area in front of them, leaving them rolling their eyes and waiting for a challenge. Worse, can you ever really just randomly put together an area that will be truly challenging to someone who knows the game inside and out? I doubt that levels as devious as some of the late game encounters in Resident Evil 4 are ever going to happen by accident. At best, you can hope for some uneven challenge rather than a gauntlet that pushes you to your limits. A guided experience based on the dev’s knowledge of what you should be able to do allows for these kinds of brutal, but fair, levels at the end of Resident Evil 4 and many of my favorite games. It’s not something that a computer can do with random pieces, even ones that have been carefully designed by a dev. At best, you will end up with an uneven challenge that won’t give the satisfaction of a truly solid, hard level.

I’m not accusing these devs of being lazy, either. It might seem unfair to compare the many indie devs I spoke with to Capcom, as the budgets used to create Resident Evil 4 would probably set up an indie dev for life. I know that they are just trying to add some value to the relatively short experiences that an average indie game provides. When you can only afford to design two to four hours worth of content for your game, there’s an appeal to making it procedurally generated so that players get more for their money. It adds content to otherwise small games, making them seem more palatable to your average consumer. Getting more people to see value in your product can’t be a bad idea, right?

I would rather see a game that’s well designed on the first time, though. Being able to play through a game that’s just tossed together at random offers me the chance to play something different every time, but I don’t want that. I want to play something good each time, even if the experience is similar. The games I have replayed multiple times in my life have all been put together well, because I don’t necessarily play them again because I expect to find something different. I boot them up again because they provide challenge and solid gameplay in ways that I enjoy. Having new content might make me play again, and it does help, but only if the game was really great to begin with. That only comes with careful level design and enemy layouts.

Level design is going to trump game length for me every time, as you need to first design a game that’s worth playing in its entirety before you worry about making me want to play it again after that. Tight level design will provide players with memorable experiences, proper challenge based on their skill level, and several options with which to handle a hard situation. There is a lot of replayability in a good level by virtue of its solid design, making players want to experience it again for its challenge or variety of options. Procedural generation attempts to skip this step and offer players an uneven challenge based on random selection, and while it may offer endless variety, I don’t come to a game for variety. Variety is a feature, not a core selling point, and putting it at the forefront of your game’s design is a bad idea. Create a game filled with levels and areas that people will remember forever before worrying about whether people will play it twice. A single amazing playthrough is worth more than infinite level options any day.

Joel Couture
Joel Couture
Joel Couture

MASH Veteran

A horror-obsessed gamer, Joel is still spending his days looking for something to scare himself as much as Fatal Frame. Even so, he has ridiculous action games and obscure gems to keep him happy in the meantime. A self-proclaimed aficionado of terrible retro games, he's always looking for a rotten game he hasn't played yet, and may be willing to exchange information for candy.

The Latest from Mash

Night City Stories #6: The Heist
January 14th, 2021

We finish up Act 1 with The Heist, meet Claire, learn about Rogue, and meet T-Bug for the first time before infiltrating Konpeki Plaza.

Wondrous Tails #61: Future Speculation
January 14th, 2021

Happy New Year! We're making somewhat educated guesses about what lies ahead in 2021 for Final Fantasy XIV! Also we goof off a lot in this one. It's fun!