Friday, February 16, 2018

Class distribution over population size

This is an experiment I've wanted to try for a little while now. In an actual settlement populated by individuals having ability scores generated by the classic "3d6 in order" rolling method, how many would qualify for the various classes?

To obtain some data, I wrote a simple program that rolls sets of ability scores X number of times, based on the desired population size. Each "person" is evaluated based on the minimum ability requirements for the standard AD&D classes and assigned to the "best" class for which the individual qualifies.

In this context, "best" can be interpreted as "hardest," or most stringent ability requirements. The algorithm I implemented is a "fall through," such that each set of scores is "tested" for the most difficult class (paladin) first. If the scores fail to meet the requirements, they get tested for the next most difficult class (ranger), and so on.

When we get down to the four basic classes, which each require a 9 in the prime requisite and nothing else, they're ordered like this:
  • Fighter
  • Thief
  • Cleric
  • Mage
This means that, if an individual qualifies for a fighter, they're a fighter. If not, but they qualify for a thief, they're a thief. Then cleric, then mage. This allows mages, clerics, and thieves to be proportionally rare compared to fighters, even though the requirements for all four are statistically the same.

Here are the results for a hamlet with a population of 100:
*** Population: 100
Results...
   Pal: 0 (0%)
   Rgr: 0 (0%)
   Brd: 0 (0%)
   Drd: 3 (3%)
   Ftr: 73 (73%)
   Thf: 19 (19%)
   Clr: 3 (3%)
   Mge: 2 (2%)
   Nil: 0 (0%)
No paladins, rangers, or bards. Two mages, three clerics, nineteen thieves, and 73 fighters. "Nil" is for scores that qualify for no class at all (ouch).

Of course, in a "real" AD&D village, most of the population would be non-classed (i.e., 0-level villagers). So it's important to read these numbers as representing the top end of the population's potential, rather than an actual class distribution. Most of the "fighters" are likely to be simple common folk with a strength score of 9 or higher. There's also the fact that the population would be spread across different age groups: a five-year-old with a 17 charisma isn't going to be a paladin (at least, not yet).

Here's another hamlet:
*** Population: 100
Results...
   Pal: 1 (1%)
   Rgr: 1 (1%)
   Brd: 1 (1%)
   Drd: 4 (4%)
   Ftr: 72 (72%)
   Thf: 15 (15%)
   Clr: 3 (3%)
   Mge: 2 (2%)
   Nil: 1 (1%)
Similar distribution, but this village could have a paladin, a ranger, and a bard among its inhabitants. Of note, I think druid, of all the classes, feels "easier" to qualify for than it should. In terms of realism, druid should have a similar rarity to the three classes above it. The bard's requirements are clearly much harder to meet, even though both include a 15 charisma. Remember that only those that make druids but also fail to make bards are assigned to be druids.

Let's take a look at a small town of 500 residents:
*** Population: 500
Results...
   Pal: 1 (0%)
   Rgr: 0 (0%)
   Brd: 6 (1%)
   Drd: 13 (3%)
   Ftr: 354 (71%)
   Thf: 104 (21%)
   Clr: 15 (3%)
   Mge: 6 (1%)
   Nil: 1 (0%)
The percentages begin to normalize with a higher population size. (Also, the previous hamlet was fairly lucky to have both a ranger and a paladin.) Here's a city of 20,000:
*** Population: 20000
Results...
   Pal: 25 (0%)
   Rgr: 31 (0%)
   Brd: 166 (1%)
   Drd: 625 (3%)
   Ftr: 14197 (71%)
   Thf: 3606 (18%)
   Clr: 969 (5%)
   Mge: 272 (1%)
   Nil: 109 (1%)
Now the "true" percentages become clearer still. At this sample size we greatly reduce the chance of outliers.

One thing I wondered before doing this was, which class requirements between paladin and ranger are more difficult to meet? Paladins definitely feel like they should be rarer; since both classes have stringent yet different requirements, what happens when we roll the 20,000-person city but allow individuals that qualify for both classes to be rangers instead of paladins?
*** Population: 20000
Results...
   Rgr: 39 (0%)
   Pal: 26 (0%)
   Brd: 180 (1%)
   Drd: 599 (3%)
   Ftr: 14255 (71%)
   Thf: 3618 (18%)
   Clr: 972 (5%)
   Mge: 224 (1%)
   Nil: 87 (0%)
The numbers are really close, so we might want a higher sampling still to root this out. Here are results for both class orderings at population size 1,000,000:
*** Population: 1000000
Results...
   Rgr: 1804 (0%)
   Pal: 1352 (0%)
   Nil: 996844 (100%)
*** Population: 1000000
Results...
   Pal: 1380 (0%)
   Rgr: 1754 (0%)
   Nil: 996866 (100%)
Still very close, implying that characters who qualify for both classes are exceedingly rare (maybe around one in 20,000). This also shows that the paladin's requirements are statistically harder to meet than the ranger's, since we end up with fewer paladins regardless of which class is favored. Makes sense, since there's only a 1-in-54 chance of even hitting on a 17 charisma, let alone the paladin's additional requirements.

I'll go back to giving paladins the benefit of the overlap. Now let's adjust the rolling method. Here are two hamlets, the first using "3d6 in order," the second using "4d6 drop lowest" (but still in order):
*** Rolling method: 3d6 (in order) ***
*** Population: 100
Results...
   Pal: 1 (1%)
   Rgr: 0 (0%)
   Brd: 1 (1%)
   Drd: 5 (5%)
   Ftr: 60 (60%)
   Thf: 23 (23%)
   Clr: 6 (6%)
   Mge: 2 (2%)
   Nil: 2 (2%)
****************** 
*** Rolling method: 4d6 drop lowest (in order) ***
*** Population: 100
Results...
   Pal: 2 (2%)
   Rgr: 5 (5%)
   Brd: 3 (3%)
   Drd: 12 (12%)
   Ftr: 67 (67%)
   Thf: 9 (9%)
   Clr: 2 (2%)
   Mge: 0 (0%)
   Nil: 0 (0%)
******************
Those are large percentage gains in the difficult classes, and not even a single set of scores falls all the way through to mage. This effect shows me that the 4d6 method should probably be reserved for PCs and significant NPCs only, not the general populace.

Finally, let's blow this up to a 20,000-person sampling:
*** Rolling method: 4d6 drop lowest (in order) ***
*** Population: 20000
Results...
   Pal: 308 (2%)
   Rgr: 535 (3%)
   Brd: 1241 (6%)
   Drd: 1738 (9%)
   Ftr: 14395 (72%)
   Thf: 1568 (8%)
   Clr: 189 (1%)
   Mge: 21 (0%)
   Nil: 5 (0%)
Interestingly, the fighter percentage actually looks like it's preserved from the 3d6 method. Even though many more characters qualify for the classes above fighter, the 9 strength requirement is also easier to hit for anyone that falls through the upper ranks. In the end, we have fewer sets trickling down to thief, cleric, and mage (around 9% total, as opposed to 24% with the 3d6 method).

Keep in mind that the 4d6 method employed by most DMs allows the player to rearrange the ability scores, making any class much easier to qualify for compared to keeping the rolls in order. I'm sure there are more experiments I can run with this code, but I'll cut it off here for now. Interested to hear any thoughts or ideas.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.