Layers of Characterization
Character Layering is a term I use to specify attributes and actions of role-playing characters whereby each of several layer is emergent from or builds upon the previous layer(s). The purpose of such classification is to define a system from bottom-up rather than top-down as most RPGs are known. For example, choosing a class or profession would be a flavored, top-down approach to creating a character. Whereas designing a character's features, traits, and skills would be a more bottom-up approach. Both methods have their ups and down, however, that is not what this article is about. Rather, I'm more interested the technical aspects that can explain why these are so different, and in doing so, imply that these two methods are simply the most common ways to do things rather than being the only ways to do them.
Layers start from simple, atomic states or properties that eventually reach player roles as they go up. For characterization, this means we start from specific, single traits or attributes about a character or entity. Multiple objects from the same layer come together to form a more wholesome object, thus creating a new layer. Eventually, the layers reach beyond that of one character to define his role relative to his party and even the world.
I'm probably getting ahead of myself and sounding confusing, so I'll list the layers so you get a better idea of what kinds of layers I'm talking about. This list is tentative, but it should work for all RPG or characterization systems in existence. Here they go, from top to bottom:
Role
Class / Profession / Template
Specialization / Field of Study / Skill Set
Skill / Ability / Power
Effect / Event�/ Action
Access / Modification / Knowledge
Attribute / State / Property
You can see that choosing a character based on a role or class or even field of study is really a top-down approach to character design and creation. On the contrary, creating a character from his or her attributes, stats, features, knowledge, etc, is a bottom-up method. (I guess you can say that skill-based creation is middle of the road in regards to freedom and flavor.) In other words, rather than defining what a character can or cannot not do based on his or her class or profession, you define what the character is, how he or she looks, and how he or she approaches and interacts with the world. A simple example. You choose a class and say that she is a warrior. Well, the game system defines some rigid rules about what she can or cannot do (for instance, no magic or ranged attacks), what she can or cannot equip (no staffs or scrolls, only heavy armor and pointed weapons), how she fights (close range and hand to hand), etc. On the other hand, a bottom-up approach would say that she is physically strong (thus can carry a heavy load and deal more physical damage), likes to fight and to explore (learns skills based on combat and survival values), and prefers quick thrusts and light weapons (brawls with daggers). Again, this document is not necessarily addressing the benefits and faults for each method. The main purpose is to describe the technical differences from layer to layer.
Since I'm inclined to do a system in a bottom-up approach, let's start at the most-bottom layer and move up. This should actually make more sense than the other way around, I think. The first layer, Attribute / State / Property, probably sounds familiar to most or all of you. It's essentially any status, attribute, property, position, color, width, height, measurement, etc. about ANY object, entity, enchantment, buff or debuff, and even other states. Common ones are like Strength, Intellect, Dexterity, Charisma, and things like race, gender, traits, perks, etc. More detailed are like the status of a specific buff, or how many buffs does a character have currently, or is someone poisoned or sick, or how many quests have one completed, or where is the object located, or what skills have one learned, etc. These usually form the requirements for other role-playing activities, such as how one chooses a class or which weapons are more powerful or what skills does that class have access to, etc.
So an�object or entity is composed of possibly many attributes, states, and properties. For interesting things to happen, the game and the players have to know their current status and to be able to change them in some way. Thus, the next layer modifies or queries states and properties. Modify things like increasing life total or adding a buff, and inquiring about them like how much energy do I have left or can I use this skill now. This layer is mostly transparent to the players, but is essential to lead to the next layer regarding events and actions. Being that it is so transparent, it can be disputed whether this layer is necessary at all.
The next layer, however, is fundamental to every game, not just RPGs--the events and actions of the games. These should sound familiar, but this being a technical document, I'll give more insight and details to this layer. Events and actions are attempts to access, to change, or to know about an object's state or property. For instance, a healing action would be considered an attempt to increase one's life total. And for the purpose of programming, events are usually triggered when a game or an object's value or status has been modified. For instance, say a damage over time debuff has an timer that goes off every 5 seconds. So every 5 seconds, an event is triggered that attempts to decrease the target's life total by some amount.
Now we get to the part where we ask, "how does an event or action get initiated in the first place?" That is to say, how can a player or game object or game world impose actions and events? Essentially, skills enable a single or a collection of events and actions to occur. Most games would allow players to activate abilities or powers or feats or skills or magic or whatever the game designers decide to call them. Say a player calls forth a Fireball which causes damage to a target at some range for some cost after some activation duration (that is, instant or delayed), etc. As such, skills themselves consists of various states and properties, like cost, time, range, effect, requirements, etc.
Then, a set of similar or related skills form a field of study whereby characters can specialize, which can be organized however the game designer feels. They can be standalone, gridlike, schools, disciplines, trees, etc. A melee tree might have powers that enforce close range and hand-to-hand offense and defense. An illusion school of magic allows players to turn invisible, change shapes, distract other players, and so forth. Generally in a so-called skill-based game (as opposed to class-based game), the player has some degree of freedom in how they choose the powers and skill sets, in what order, how to advance up the skill tree or skill line, and even picking powers from other skill sets.
Higher up is the layer regarding classes, professions, and templates (in skill-based games). The purpose of classes is to define a character's skills so that two people who belong in the same class will have, for the most part, the same set of skills and abilities. So a warrior in one game would not be so different from a warrior in another game. In essence, a warrior favors melee combat, heavy armor, and the ability to receive or to deflect huge amounts of damage. In a class-based game, two warriors would have almost the exact same skills and powers. (Whereas in a more free-form system--so-called skill-based games--players have more choices on defining their vision of warriors. Nevertheless, players would eventually find the optimized choices of skills and specializations, called templates.)
Furthermore, two different classes can fit into the same role, which is just a generalized purpose of a character in relation to his party, the encounter, and/or the world. In the 'holy trinity' of RPGs, the three basic roles are the tank, the healer, and the damage dealer. The support role, particularly crowd control, is becoming an ever-important role in MMOs. Besides combat, there could be crafting roles, gulid and leadership roles, or even meta-game roles like event manager, quest organizers, treasurer, etc. However, in online games, these (except crafting) don't require character skills, so that's way beyond the scope of this document.
One interesting thing from looking at the characterization layers is that almost all games allow players to customize the state, skill, specialization, class, and role layers in some way. So the least common way to design a character is to let players customize events and actions. (Since I mentioned that the modification / knowledge layer is transparent, access to this layer is quite pointless except for programming purposes.) This method I'm talking about is allowing the players to combine events, actions, and effects in order to create their own powers. For single-player computer RPGs, I can only cite The Elder Scrolls--Daggerfall, Morrowind, and Oblivion--as examples (there are probably a few other games that do this.) In this series, the player can join the Magic Guild whereupon after reaching a high rank in the guild means access to the Spellmaker, which lets players create customized spells balanced on attributes like cost, range, targets, etc. A similar system is used in Ryzom, the only MMO that I can think of which lets players create their own skills based on common effects and balanced on costs, effectiveness, range, etc. In case you haven't caught on, this a more bottom-up and free-form approach than even so-called skill-based systems.
That last observation is simply a consequence on how much freedom the designers will allow the players. Focusing on roles doesn't help since roles are merely broad flavorful groupings that almost never deal directly with the play-by-play action. It's all good to say that one is a tank and another is a healer, but how does one actually go about accomplishing their goals using choices and actions? On the other extreme, a game based solely on attributes tends too have too much overhead for the average player. It feels more like a math exam and could drive away players, and tends to lack a coherent flavor. So we tend to see two major ways of designing character systems: class-based and skill-based. You will hear those terms thrown around a lot in RPG (design) forums. Their benefits are that they have enough flavor (high enough on the layers) and entail much of the details and functionality necessary to define as a game (i.e., choices and actions.)
P.S. There may be some confusion as to my use of the term 'skill' in this article. I think the confusion mostly derives from the fact that different games use skill in different ways. Usually they are equivalent to my power / ability layer, sometimes to the specialization layer, and sometimes even the class layer. By my definition, skill is a synonym for ability, power, feat, spell, etc. Thus a skill tree or skill line or school / discipline (e.g. of magic), etc. are merely renames of the specialization layer.
Even the term 'class' can be a point of confusion when discussing general game design. Usually they are equivalent to my profession / template layer, but sometimes they refer to the specialization layer, and sometimes to the role layer.
Some of this confusion can be due to the fact that not every game uses every layer, so some layers appear transparent, not unlike the biological taxonomic system. That is, some animals have the same family and genus names, which usually means that there are no other genera under that family. In other words, family and genus here can really mean the same thing. Similarly according to my layering system, if a game skips a layer, the layer above would take its place. Thus, some flexible class-based designs allow choosing and mixing classes, but according to my layers, they are really talking about mixing specializations. The reason they do that is because class is a more familiar and accepted term.
Another point of contention is that of skill and proficiency. Sometimes games would allow players to advance or choose a skill, when all it is is just a number or value. This is mostly used to separate different types of attributes and stats. For example in the computer RPG Fallout, characters have stats, traits, and skills. All of them cover various properties and attributes of a character. However, their skills don't necessarily define specific actions or effects. They only determine the success rate. In other words, they are extensions of attributes or they are better defined as specializations where the skills layer would be transparent or, more likely, is covered in other areas of the game. In the case of Fallout, the action buttons for shooting a pistol in various modes, targeting, etc, are the actual skills. Each skill has their own rate of success, range limitation, action costs, etc. But, they all fall under Small Guns specialization.
That is not to say the other game designers are wrong. They're free to use whatever terms they feel are right for their game and lore. I'm just clarifying their terminology in relations to my layering system for the sake of making comparisons easier across different games and even genres (like action games, FPS, etc.)