Sunday, September 19, 2010

gamedesign.dev: Element systems

So uh, I have a blog.

I may as well post about stuff, right? So, I figure I'll post about game design, since I find myself venting a lot on this subject as of late.

Today's venting point: element systems. To clarify, this is something you usually find in RPGs, most notably implemented in Pokémon. Each attack has an attribute, like fire or ice or whatever, and each opponent has a specific resistance or weakness to each attribute. For example, rock-paper-scissors: each person involved chooses one of these, and depending on their choice, they win or lose against the other players. Rock is strong against scissors but weak to paper, and scissors beats paper.

In RPGs, what you usually find is a four element system, using the Aristotelian elements of fire, earth, air, and water. Fire and water oppose each other, doing more damage to the opposing element, only some to unrelated elements, and negligible or worse damage to themselves. Same deal with air and earth. So what's the problem?

Well, first things first: as time goes on in an RPG, having an easily exploitable weakness can turn a challenging battle into a trivial one. For example, in Persona 4, being hit by an attack you're weak to knocks you down and grants the aggressor an extra turn. Late game enemies in RPGs tend to have no elemental weaknesses at all, and may resist or ignore or even heal from a given element attack. Therefore, people who focus on one type of attack (usually casters) lose out to characters with attacks not tied in to an element (namely, physical characters).

Secondly, part of the interest in having an element system is in exploiting these weaknesses, but these weaknesses may not be intuitive. In the aforementioned fire/earth/air/water system, where fire and water both do heavy damage to each other, it's easy to see how water does that, since it would douse fire. The reverse is less obvious, since while fire can heat water into steam, it takes a significant amount of fire to do so.

So we have two problems: in a given system, weaknesses may be unintuitive, and they might become obsolete, rendering the system as a whole an overall weakness for the player. This isn't to say that element systems are bad, just that they need to be built to accommodate such problems.

I can think of two good examples of element systems that are well implemented. The first of these is the Pokémon games. It has a slew of element types, each with strengths and weaknesses. While attacks have an element to them as normal, actual Pokémon may have one or two elements, which cause their weaknesses and resistances to overlap. What's more, almost every weakness or resistance is intuitive. So, with a fire move, it's strong against grass, bug, ice, and steel, but fire-type Pokémon are weak to water, ground, and rock moves. If you had a fire-type that had some additional type to it, like Flying, that would change its resistances further (in this case, negating the ground weakness, but increasing the weakness to rock and adding a weakness to electric moves). As an added bonus, while there are two types largely unaffected by the elements (normal and dragon) these still have some weight in the system, and even if they didn't, weaknesses and resistances are fairly balanced throughout.

The second example is Battle for Wesnoth. This one is noteworthy because most units in the game are non-elemental with regards to resistances, of which there are six types. The real times when it comes into play are with special kinds of units, the most notable of which is the Undead faction. While there are a handful of units with roughly normal resistances, skeletal and ghostly units have sharply different resistances, with skeletons being tough against most attacks except for arcane and blunt attacks, and ghosts being almost immune to everything but arcane and fire. This leads to using different kinds of units than you normally would against them, although you could fight with conventional units if you wanted or needed to. It's very rare that a unit is flat-out useless with its attack against an enemy, and when they are, it's only when you're playing very badly that you have no way of countering that situation. This system rewards strategic play without stonewalling players who just want to brute-force their way through.

I'll likely use this blog for more posts on game design, but by all means, comment on this. I'm interested in seeing what other people think about established game design.

1 comment:

  1. A big problem, I think, that many games have is that exploiting an enemy's weakness just isn't critical in most cases. There are games that make it a large tactical advantage (multiplayer Pokemon -- in singleplayer Pokemon, I can steamroll most enemies without worrying about the elemental affinity system for the most part), or at least a time saver (Persona 4 in random encounters, Strange Journey with a proper party), but many others make it wholly unnecessary to use the system (games that provide no weaknesses for boss enemies; late game MegaTen where Almighty damage comes out in full force; games where enemies simply don't have enough hit points to make it count; games where magic points or other resources are too scarce to waste on weaknesses; the list goes on). And many games that do give enemies weaknesses often cheat around it or make it meaningless -- in Persona 3: The Answer, enemies with weaknesses almost universally have "Evade X" skills that give them a high chance of outright avoiding a hit against weakness, and in some games the bonus from hitting a weakness is so minor (there are games with gradient elemental scales that give fire attacks 10% more damage against enemy X or Y -- seriously?) that nobody cares.

    It's a great asset to designing a game that nobody really takes advantage of.

    ReplyDelete