Tuesday, April 13, 2010

The Standard Set

I've played a lot of games, and one thing I notice is that the enemies are all very "samey". Regardless of the kind of game, enemies tend to fall into the same five categories: the eggshell, the heavy, the skirmisher, the sniper, and the spawner. Whether the game is a first-person shooter, an RPG, or even a CCG, these hold true.

(Similarly, there are a common set of categories for players. It used to be the D&D standard, now it's the MMORPG standard, but it's the same rut.)

Just to show you more clearly what I mean, let me describe the Dead Space enemies. In dead space you have slow zombies, which are a really weak heavy. A stronger heavy is the rhino-thing.

You have those flying bat-things that make zombies, those are spawners. Another spawner is the fat-belly thing. The exploding arm guys are eggshells, as are the tiny insect swarms. The baby things are snipers, the scorpion-men are skirmishers, etc, etc. All the enemies slot neatly into these five categories.

And Dead Space was well known for its unique enemy design!

So this popped up a question in my head. Is it that there are only five kinds of enemy that can be made, or is it that people aren't very creative?

Let's take a look at another game: Super Mario Brothers.

In SMB just about none of the enemies fall into these categories. You have to really squint if you want to even try. Technically, I guess a Goomba is an eggshell. But what's a turtle? Even if you do decide it fits into a category, the enemy is not about offering a challenge of that type. It's about being a mobile obstacle and resource (as it drops a shell when you kill it).

Ah, there's the key for me.

The five enemy types I've listed are really kinds of challenges you can offer. It turns out that game designers have created a very stable platform for challenges, a nicely modular set-up that we almost invariably follow. It can be easily adapted to suit one-character or teams of heroes, any kind of setting, any kind of power level. It offers enough complexity to make things interesting but not enough to require careful thought. It is ideal for the kind of middle-of-the-road challenge that most games like.

But most of the games I remember best don't use that standard challenge platform. Sometimes they are close to the same kind of game, such as Shadows of the Colossus. Sometimes they are completely different kinds of game with completely different challenge types, such as Katamari Damacy.

So I'm a fan of not using the standard challenge set if you're making a game that can support it. By using an unusual challenge set when everyone else uses a standard one, you can make your game stand out, whether it's a tabletop RPG or a mod for Half Life.

Coming up with an unusual challenge can be difficult because your brain has likely fallen into a rut without realizing it. The key is to create a different fight dynamic. If your fight dynamic is the normal one, you can't change the normal enemy set very easily. Instead, you've got to make your fight dynamic really weird. Shadows of the Colossus and Katamari Damacy are both decent examples, as is the original Valkyrie Profile, the early survival horror games, and many other games that stand out as being unique. Changing the dynamic even slightly can result in very different kinds of enemies, because the challenge to the player is different.

Here is an example that occurred to me. I watched an LP of the new Spider-Man game, and it has some interesting fighting-on-walls stuff. Spider-Man has the unusual ability to stick to surfaces both with web and with his extremities, which makes him one of the few superheroes who can sensically exert huge amounts of force, such as lifting a car.

The combat seemed pretty normal in the game, but it got me thinking: what if the whole point of the game was this stick-to-stuff fighting? What if the point of many of the enemies wasn't to injure you, but to try to detach you from the wall, or make the wall too slippery to grab, or similarly affect your traction?

Suddenly you can play host to a whole new kind of dynamic, where fighting is not simply about attacking and blocking. Adding this new dimension of stickiness not only increases the player's options for attacking, but also increases the number of dimensions that you can create enemies on. Even if you want to use the same "standard five" (plus terrain-effector) enemy types, you can now make an enemy skirmisher-damage or skirmisher-destick, so you suddenly have twelve kinds of enemy instead of six.

Don't underestimate the depth of play that results from this. For example, Spidey may have to choose between a strongly-tethered set of attacks relying on his web-pull abilities and three anchored extremities, a medium-tethered set relying on kicks and punches while one extremity is always gripping, or a low-tether set where he swings or slides rapidly but has no direct grip on the wall and therefore cannot exert much force aside from momentum, and is at risk of being knocked off. This is a lot more depth than the Spider-Man game I saw offered: it just offered the standard set of attack, block, charge.


The other half of the coin is that you can make up really wonky settings and combat dynamics, but use the standard set for your actual mechanics. This allows you to ground your insane idea in a strong foundation.

For reference, the "expanded" standard set is the eggshell, the heavy, the skirmisher, the sniper, the spawner, the buffer, the terrain-effector, and the puzzle-enemy. All of these are viable, although the last three are usually reserved for bosses due to their high complexity level. Obviously, this list plays fast and loose, but it should serve to help you ground your play.

So lets say you decide to make a game about school politics. The "fight" dynamic is all about social maneuvering. And you say to yourself, "I really like this idea, but I'm having a hard time figuring out how to make it interesting enough to actually play!"

Well, the answer is to start coming up with enemies that fit the standard set, and a rule set that supports them.

Maybe the eggshell enemy is a lackey, someone who follows a more popular person but isn't popular on their own. The heavy is someone who is well-respected but not very interested in politics, so they move slowly to counter you but hit very hard, socially speaking. The football captain, maybe. A skirmisher moves fast and hits hard - someone who is very socially aware but has few merits to defend with. Say, a queen bitch.

The sniper is someone who excels at hitting your weak spot and using your past failings against you. They probably aren't popular on their own, but they can reveal devastating secrets or horrifyingly brutal insults if you let them. A spawner might be someone with a seemingly limitless supply of cronies, or it might be someone who really understands how to let loose a rumor that will spread across the whole school.

And so on and so on.

The point is that, from this standard set, you can shape your recalcitrant idea into a state where it has suitable depth and complexity.

Anyway, that's my rant on the standard set.

What do you think?


Eric Poulton said...

The standard set of enemies corresponds closely to the standard set of weapons. Pistol = eggshell, submachine gun = skirmisher, sniper rifle = sniper, rocket launcher = heavy, shotgun = spawner. Which makes sense, they're obviously tied together, but looking at them from this perspective really emphasizes that.

Craig Perko said...

Yeah, while you can have different "classes" of character in a game with a party, if you're going solo your main avatar generally needs to be polymorphic.

It makes sense that weapon choices would reflect the same kind of options, although I think you may be squinting a bit too hard to fit those round weapons into square holes. I would probably think about them as a separate, similar set.

Darius Kazemi said...

I'm totally with you on this. When I was working on B6631 it started to come together the moment I realized that I could make the enemies into mobile platforms as well as just "things you kill."

I'm seeing the generic-enemy problem over and over again here at Full Sail. Every student project is, "We have three enemy types, a normal one, a fast-weak one, and a slow-heavy one." And that's supposed to be interesting to the player. Especially given their (understandably, relatively) weak AI skills. I'm trying to open their eyes to things like, "Why don't you make the enemies able to affect each other and see what that does?"

Craig Perko said...

Yeah, I really do want to write another essay that talks about the other things you can do with enemies. Even just using these standard enemy types you can do well, but you have to know what you're doing.

Darius Kazemi said...

If you do, I will make my students read it.