Vko6)Ygbyp8͚dE(a0(U~a%%ٲiG0){x2!%>K&#: )H)4CiI̒yB%꛹Ҋ$(23;}HHnQ|`ITg /$\P0ngԱ:sde>?DA?/ꋳxy[,f#/Y7A#4rRчǦX,j< j/̅ ݗOgj ȿ,<24 "jD+g] HŖG\@vC }D{fiۮFײ0TQBnmpPbitҬԓ$1-kh,1]k$\mkٶ4OcD"` 3 BnQhgt9KlaIuO̗aeR>h&RiEPݲ~M9D]x4DF<뺥0xŸv۶{=ѝ>tGB4Huǀ} 8N'qY1QbPaFg7dDQ-`H.G D1n[ġܠoyP8i_]'Ab֞AK;4@uB Xeբ慾My QN)e"< "|tcџ\WvMcoS+@4 yD4̕„#U.k]sJ>aR`.""+5t }m8g"%KF7=9<Ȗ'y{V,U}"A|Ëf7^XV+.ܶZNguبL]{sX.KtQ~ Z6?;y]2e20U2zw@PȍB*F:^.7]WT%oc> {v %G{(I%~'mOdݖ+[l!fFݏ@4&M\|\a?++7!sOOӚх0,wП spM jFB0]V)Dxf'aNR>>:R/~ƩxOJV.ؔ 0gm|WiX7U, fϜv+SNw:Rwo缌isew,(nMۛ[UTaՊc=hp$*7bE'j4grgTwی%q.

Trait Curves

Sergio Mascarenhas March 28, 2000

In my last column I presented my dicing convention. I received a message from Patrick Riley suggesting that I use "penalty dice" and "bonus dice" instead of "+nd" and "+nD", respectively. I'll adopt his suggestion when referring to my dicing convention in the future. Furthermore, I'll also use the abbreviations "+nP", and "+nB".
Now, let's go to this months column. It's about...

Trait Curves


What's a Trait Curve? Simple: A Trait Curve is a graphical representation of the distribution of the members of a population among the different levels of the trait. Yes, it's that simple. Why should we discuss this curve? Because it allows us to see whether the rules model correctly a key aspect of any RPG: character creation.

For simplicity sake, let's suppose that "trait" can be anything that defines a creature or thing in game terms. This can be attributes, talents, skills, whatever a game may use. Let's also keep in mind that "population" is anything that the rules attribute traits to: Creatures, things, magic, etc. There's a restriction, though: In this context the only thing that may differentiate the members of a given population is their level in a single trait.

If by Trait we mean "Size", the given population may be "men", "ducks", "elephants", but it's not "men + ducks + elephants".

Why this restriction? Because, it's better to consider that - all else been equal - the only difference between the members of the population is their level in the trait. This restricts the complexity of the discussion of the curve. Latter we will be able to look at things when this principle doesn't hold true.

By "levels" I mean the set of different values of the trait. These are organized either by ascending or descending order. "Distribution" refers to the fact that the members of the population are separated in sub-sets according to their level in the trait. This can be presented either in absolute values (the exact number of the members of the population in each level), or in relative values (the weight of members of the population in each level when compared to the total population expressed in percentiles). For simplicity sake, I'll use a trait scale with eleven levels, and use a relative scaling of distribution.

Our basic premise when dealing with the trait curve is to consider that most of the members of the given population have an average value in the trait, and that the other members distribute evenly either above or bellow the average trait level. This gives rise to the famous "bell shaped" curve and its (approximate) normal distribution (1)(2):


The Bell Curve is well suited to represent those things that most game systems call "attributes" or "characteristics": Traits that are considered to be present in all members of a given population, and that are considered to be stable all along the life span of the members of that population. For instance, we may know that there are humans of very different heights. Yet, they distribute along the bell curve. The same applies to their weight, intelligence, etc.

Most game systems that use attributes (in the broad sense used here) try to ensure a normal distribution of the members of the population. They use two basic mechanisms for that effect: Random generation that ensures an approximation of normal distribution (like the 'Roll 3 Dice and Add their Value' introduced with D&D that was adopted by so many systems afterwards); point based systems that try to balance the cost of the levels of the attributes (like GURPS, for instance).


What about other traits? To be more specific, what about those traits that may or may not be present in all the members of the population? Traits that are not stable in time, being instead inherently subject to variability, since each member may increase their value (usually), or decrease it (less often) in the course of its life span? In other words, what about those things that are commonly called "skills", "knowledge", "know-how", etc.? Do these follow the normal distribution curve above?

Skills (in a broad sense that includes the different concepts I mentioned before) are problematic for two reasons:

First, they are not uniform: Some skills are "prevalent" in the sense that most of the members of the population have some level of performance in it. Others are "restricted" in the sense that only a sub-set of the population has some level of performance in it. For instance, athletic skills are prevalent; knowledge skills may be restricted.

Second, since they may evolve along time, there's not a single value of the skill for each member of the population. There are all the values that the given member had along the course of his like time. Suppose that someone says: "Bellicus is 5 in cooking." Is that all that we need to know about Bellicus if we want to account him in our population of cooks in order to distribute the values of "cooks" in the scale? No! We should also account for the past and future values that Bellicus had and will have in cooking. So, skills are two dimensional: they vary from person to person; they change along the life of each person. What's more, as we all know and I'll discuss in my next column about experience curves, they usually change in the sense of increasing skill which entails that usually, any member of the population will pass in the course of his life through the lowest levels of the skill, but only a decreasing fraction of the population will move up to the highest levels.

When we look at the skills of a given population in a certain moment in time, we may infer that:

  • Only a fraction of the population will achieve the highest levels of skill development, while most members of the population will pass through the lowest levels;
  • Only a fraction of the members of the population achieved their individual maximum level of development in the skill, since in any moment in time there are a lot of members of the population that are still progressing in the skill.

This implies that the resulting Skill Curve presents a deviation to the left (3):




In the above discussion we looked at populations as a whole. Yet, it's possible to distinguish different sub-sets within any given population. In other words, we may segment the population. If we do this, we may analyze the different segments independently, and draw different trait curves for each segment. Of course, this only makes sense if the different segments have different shapes of their respective trait curves. Also, when segmenting we need to find a criteria for segmentation. That's a variable independent of the trait we're analyzing that explains the different trait curves of the different segments. Let's look at some examples, the first dealing with attributes, the second dealing with skills, the last with natural selection.

Wealth and Appearance

Suppose that in our game we have a trait to represent human Appearance (measuring beauty). Suppose also that we accept that there's a normal distribution of Appearance among the members of the population. Now, suppose that there are also different levels of Wealth in the population, based on which we may identify different segments (say, Miserable, Poor, ... , Affluent, Rich). We may ask ourselves: does Appearance distribute evenly among these different segments? Probably not: the wealthy segments of the population may pay for wealth enhancing services and products; they may also avoid environmental hazards that may damage Appearance. This means that Appearance correlates to Wealth. If we draw different Appearance curves for the poor and for the wealthiest classes, we will find that the curves of the former have a deviation to the left due to the environmental hazards mentioned above, while the curves of the latter have a deviation to the right due to Appearance enhancing consumption:

Age and Skills

I already hinted at this above. Since skills increase with age, we usually find people with the highest skill levels within the more aged segments of the population. The result is that, if we draw separate skill curves to the different age segments, we find that:

  • The skill curve of the younger sub-set of the population will have a deviation to the left. After all, most of the members of this sub-set will didn't develop their skills as much as they probably will in the future. In other words, it's among the younger sub-set of the population that we find the under-skilled.
  • The skill curve of the older sub-set of the population will have a deviation to the right. It's likely that it's among these people that we'll find those that developed their skill as much as they could. It's among the older members of the population that we find the highly skilled.

The same idea applies to skill specialization in societies where we find functional specialization among different strata of the population: On average warriors deviate to the right on fighting skills, merchants on trading skills, and so on.

 What about natural selection?

Survival of the fittest. Isn't that one of the basic rules of nature, at least for "inferior creatures"? The problem with this rule is that it seems to contradict our basic trait curve, since it goes against a normal distribution. If only the fittest survive, we will find a deviation to the right, since there's where we find the fittest:

Does that mean that the basic trait curve is not useful to represent populations that are subject to natural selection? Not really. What it means is that we can segment any population subject to natural selection according to age. We find that the newborn distribute normally. As we look at older segments, we notice the effects of natural selection: Increasing levels of deviation to the right:

There are two ways to deal with this in terms of character creation rules. The first is to ensure that these rules distribute the members of the population according to a curve that deviates to the right. The second is by introducing a survivability test which works in three steps:

  • First we determine the traits of the creature in a system that ensures normal distribution.
  • Next, the values of the different traits are averaged to determine the overall rating of the creature.
  • Finally, this overall rating is subject to a survivability test where failing the test means precocious death.


Suppose that the game system represents wild cat with three stats - size, agility and constitution - and that each stat varies in a scale that goes from 1 to 10. All we have to do is to average the value of the three stats, and roll a d10. If we roll above the average of the stats our wild cat was unable to survive the harsh conditions of wilderness.

Why use this second system? Because it allows to generate creatures that are normally subject to natural selection, but that in some circumstances may avoid it. (For instance, pet animals.)



Scaling abilities among different populations

When we look deeply at ability curves, there's a question that we may raise sooner or latter: How do we deal with a game world that includes different types of populations, all sharing a certain ability, but at different average levels?

For example (4), suppose that the game world includes two populations, "men", and "dog"; suppose that it also includes the ability "perception"; suppose that both men and dogs have perception, but that on average dogs' perception his higher than men's perception; finally, suppose that dog and men have different scales of perception men: some dogs achieve levels of perception that no man can reach.

How do we deal with traits like perception in a way that ensures a correct distribution of that trait for each population according to what we discussed above; and that allows us to compare the traits of the members of the different populations among themselves? There are two ways to deal with this: Single (or Absolute) scaling, or Multiple (or Relative) scaling.

Single Scaling

Single Scaling requires that we design a single scale of values of the trait. Next, we map each population into the sub-set of those values that the members of the given population may reach. Finally, we design a character creation method for each population that ensures that there's a correct distribution of the members of each population among the sub-set of trait values they may reach.

Let's suppose a Perception Single Scale that goes from 1 to 20. We may decide that the perception of Humans may vary between 4 and 10 while the perception of Dogs may vary between 8 and 16. We may also have a random creation system where we roll 2d4+2 for men, and 2d5+6 for dogs. On average men have Perception 6-7, while dogs have 11-12.

We can represent this the next way:

The advantage of this system is that it allows for direct comparisons among the members of different species. A minor disadvantage, as the example suggests, is that it may require different distribution of the members of each population: As we can see the example above, humans distribute among seven values, while dogs distribute among nine values. This is a problem since there's no setting-related explanation to the difference in the way the system handles humans and dogs. This difference only exists because this is required by the character creation rules.

A second problem emerges when we consider that broad attributes like "perception" correspond in fact to a complex of different components (sight, smell, taste, etc.) We could separate these, and have different scales for each one of them, but it would make character creation and description all that much complex. By using a single stat we are really defaulting to an acceptable compromise between accuracy and complexity. What makes this a problem is that this compromise may represent different things for different situations.

Humans have a low average level of perception when compared with both dogs and cats, but they have a lower level for different reasons, since dogs and cats use senses in different ways. For example, both cats and dogs have more accurate vision then men, but cats are much better then dogs in the dark, since they have much better night vision.

The only way to deal with this is by using special purpose modifiers to represent the special situations the trait has to deal with.

Multiple Scaling

 Multiple scaling uses two scales to represent traits: an internal scale to distribute the members of a given population among themselves, and an external scale to compare the average degree in the trait of the different populations. The internal scale is used to distribute the members of any population within that population. It's used to distribute humans within the population of humans, and dogs within the population of dogs. This means that we can use a single scale to represent the members of any population and trait:

Suppose that we have the next internal 5-level scale: Very low, Low, Average, High, Very high. We can use this scale to distribute humans according to perception, and we can use it to distribute dogs according to perception. It tells us how a given human compares to another given human, and how a given dog compares to another given dog. What's more, we can use it to distribute the members of any population according to any trait of that population.

Of course, the internal scale is only a part of the equation. It doesn't allow us to compare the members of different populations among themselves:

Suppose we have an human with High perception and a dog with Low perception. We know how the former compares to other humans, and how the latter compares to other dogs, but we don't know how they compare to each other.

To deal with this we need a second scale, an external scale. As I said above, this scale rates the average member of each different populations among each other:

For example, our external scale orders populations in a numbered scale with values ranging from 1 to 5. We may rate the perception of the population of humans as 3 and the perception of the population dogs as 4 in the external scale.

Since the external scale rates the average value for each population, it raises a further question: how do we compare non-average members of different populations among themselves? To deal with this we need to define some conversion rules between values in the internal scale and values in the external scale. Here is an example of such rules: 1) the average value in the internal scale of a given population is equal to the value of that population in the external scale; 2) the highest value of the internal scale of any population is equal to the value in the external scale immediately above of the value at which that population is rated in the external scale. The same principle applies in reverse to the lowest value of the internal scale.

Now, if the population of humans is rated as 3 in the external scale, while dogs are rated as 4, we know that a Very high perception human (the highest value in the human's internal scale) has the same level of perception that an Average dog (in the dog's internal scale). This is so because Very high in the internal scale of a population that's 3 in the external scale is equal to Average in the internal scale of a population that's 4 in the external scale.

 Multiple scaling can be represented this way:

The advantage of this system is that it is consistent in the way it handles internal scaling: for that purpose he uses the same scale with all populations and all traits. This makes for a for a simple character/creature description and creation system where all we need to state is which traits allow us to describe the character/creature's population, and how they are rated in the external scale. Furthermore, when creating an individual, we only record its values in the internal scale, since it inherits the external values of its race:

Forex, if the values of the internal scale are Very low, Low, Average, High, Very high, we may have a random d10-based character/creature creation system where: 1=Very low, 2-3=Low, 4-7=Average, 8-9=High, 10=Very high. Or we may have a points-based system like the next: Very low=+2 points, Low=+1 point, Average=+ 0 points, High=-1 point, Very high=-2 points.

What's more, it allows us to handle the problems connected with the special cases of the application of broad traits mentioned above when we compared humans, dogs and cats:

Humans are 3 in the external scale of perception, while dogs and cats are rated as 4. Yet, this applies by default to normal daylight conditions. To adjust the scale to special poor light conditions all we need is to add a mention in the description of the these creatures specifying that in those conditions they are downgraded respectively: Humans to 1, dogs to 2, and cats to 3.

The disadvantage of the system is that it makes comparisons between the members of different populations more complex since it requires a combination of two scales for this purpose.



On this column I discussed the concept of Trait Curves. We saw that there are three basic curves according to the way they represent the distribution of the members of any given population: A normal distribution curve, a curve that deviates to the left, and a curve that deviates to the right.

We saw that we may safely represent Attributes in a normal distribution curve. And that when we deal with skills we usually need a system that generates a deviation to the left. We also saw that by segmenting the populations we may adjust the distribution according to several important aspects of the game world, and that this will result in different shapes of distribution curves to the different segments of the population.

We moved the discussion to deal with the problem of how to handle different populations which share the same trait but at different levels of performance. The objective was to find a system where we could keep both a consistent representation of the internal scaling of traits of the members of a population, and a consistent representation of the external scaling of the populations.

What about rules to handle these differently shaped curves? I already hinted at this, but let's sum it up:

Random generation systems

  • Normal distribution: All we need is to have a system that requires us to roll several dice of the same type, and next to either add or average their values.
  • Deviation to the left: In this case we just need to roll twice the same combination of dice, and subtract the lowest value from the highest value rolled.
  • Deviation to the right: the simplest way is to proceed like above, and just reverse the scale of values.

Point-based, non-random generation systems

  • Normal distribution: The simplest way is to assign an increasing price to be paid for trait levels above or below the average value.
  • Deviation to the left and deviation to the right: this can be generated by assigning a variable cost in points to the different values in the scale.


A final note: I've discussed traits as if they were independent of each other. This is not necessarily true. Traits interact with each other: some attributes interact with other attributes (for instance, Size/Mass interacts with Adroitness /Agility); attributes interact with skills (Adroitness/Agility interacts with Dodge, Jump, etc.); and so on. Discussing how to deal with those interactions is behind the purposes of the present column, though. Let's just say that it requires fine balancing of the whole character description and creation system.

That's all for this month. Next month (more or less a couple of weeks) I'll move the discussion to a related concept: Experience Curves!

  1. This curve corresponds approximately, you guessed it, to the one we can generate by rolling 3d6. The graphic has been a little re-managed in order to produce a curving line, though.
  2. You may take a look at an alternative presentation of this curve at PTGPTB: http://ptgptb.humbug.org.au/0009/simon.html.
  3. Just for the record, this curve represents the distribution of the values generated by rolling 2d6 twice, subtracting the lowest value rolled from the highest value rolled, and adding 1.
  4. All the examples in the present column are just that: examples. They were designed for illustration purposes. They are not supposed to be accurate representations of the reality they portray.


TQo0~^DҒt< ek&Ǿ$\۵ZFȃuwݝIŃU QYir2HR2.u3MFoعq]4#A`pP5(b& )b)ⰾp7(i<[-2gL#5[f g?*rVGf8*)s'+20ϟ̑F}KB<7wSL\gbvm9WiRބYŜvd y0'p2I_Fc2>#o A )VL[Qk?3`)<У[(*W.JH ?tXCt谙 X:@ \0w ~LqĤE-rFkYœj4q 5AQ6[AxG [>w|?( fХθY䝛$c=_qNĦoǸ>O_|&/_Mi7"宥CЧk0dӷLh;TmuCGU-!Ul{ h<\bQX.~"O2*yPcz!ŠGg

What do you think?

Go to forum!\n"; $file = "http://www.rpg.net/$subdir/list2.php?f=$num"; if (readfile($file) == 0) { echo "(0 messages so far)
"; } ?>
[an error occurred while processing this directive]

Other columns at RPGnet

[ Read FAQ | Subscribe to RSS | Partner Sites | Contact Us | Advertise with Us ]

Copyright © 1996-2009 Skotos Tech, Inc. & individual authors, All Rights Reserved
Compilation copyright © 1996-2009 Skotos Tech, Inc.
RPGnet® is a registered trademark of Skotos Tech, Inc., all rights reserved.