Saturday, February 17, 2018

More on class ability score requirements

Building off the previous post, let's look at the numbers from a different angle. The algorithm I created was designed to simulate the class eligibility of an actual D&D population. If the results given by the model feel too generous, you can divide by a factor that represents the percentage of inhabitants that even get a crack at having ability scores assigned. This could account for age distribution across the populace and enforce the notion that only a subset of people are worthy of becoming adventurers. Even at less than 1% of total, 26 individuals with paladin-eligible ability scores in a city of 20,000 may feel like too many.

Another thing to be mindful of is that, based on the algorithm, all thieves have strength of 8 or lower, all clerics have strength and dexterity of 8 or lower, and all mages have 8 or lower in strength, dexterity, and wisdom. This is flawed, so while the algorithm can be used to derive the distribution of classes within a population, it shouldn't be used to make assumptions about the ability scores of any one individual.

Turning the page, what if the DM is less interested in simulating a population and more interested in knowing the odds of meeting class requirements using a specific rolling method? The code can be changed a little to generate these numbers. Here's a sampling of 100 individuals across the same two rolling methods. Instead of stopping when a set of scores meets the requirements for a class, we continue checking to figure out all character classes for which the scores are eligible.
*** Rolling method: 3d6 (in order) ***
*** Population: 100
Results...
   Pal: 0 (0%)
   Rgr: 0 (0%)
   Brd: 0 (0%)
   Drd: 2 (2%)
   Ftr: 71 (71%)
   Thf: 67 (67%)
   Clr: 71 (71%)
   Mge: 82 (82%)
   Nil: 100 (100%)
******************
*** Rolling method: 4d6 drop lowest (in order) ***
*** Population: 100
Results...
   Pal: 0 (0%)
   Rgr: 7 (7%)
   Brd: 4 (4%)
   Drd: 4 (4%)
   Ftr: 89 (89%)
   Thf: 85 (85%)
   Clr: 85 (85%)
   Mge: 90 (90%)
   Nil: 100 (100%)
Here are the results against a population size of 20,000:
*** Rolling method: 3d6 (in order) ***
*** Population: 20000
Results...
   Pal: 26 (0%)
   Rgr: 28 (0%)
   Brd: 183 (1%)
   Drd: 658 (3%)
   Ftr: 14884 (74%)
   Thf: 14815 (74%)
   Clr: 14751 (74%)
   Mge: 14811 (74%)
   Nil: 20000 (100%)
******************
*** Rolling method: 4d6 drop lowest (in order) ***
*** Population: 20000
Results...
   Pal: 314 (2%)
   Rgr: 608 (3%)
   Brd: 1451 (7%)
   Drd: 2896 (14%)
   Ftr: 17935 (90%)
   Thf: 18040 (90%)
   Clr: 17884 (89%)
   Mge: 17911 (90%)
   Nil: 20000 (100%)
******************
This gets us closer to the "truth"; look at how the percentages for the four core classes (which all have statistically the same requirements) begin to normalize.

Now let's change the algorithm further to arrange each set of scores optimally. It actually gets a lot easier to be a paladin when the 17 doesn't need to fall in a specific slot. Ranger proves the most difficult class when rolling 3d6 but allowing the scores to be rearranged. 4d6, however, makes the ranger's 13s and 14s easier to hit, so paladin again becomes the hardest.
*** Rolling method: 3d6 (arranged to taste) ***
*** Population: 20000
Results...
   Pal: 1127 (6%)
   Rgr: 718 (4%)
   Brd: 4535 (23%)
   Drd: 7811 (39%)
   Ftr: 19997 (100%)
   Thf: 19997 (100%)
   Clr: 19997 (100%)
   Mge: 19997 (100%)
   Nil: 20000 (100%)
******************
*** Rolling method: 4d6 drop lowest (arranged to taste) ***
*** Population: 20000
Results...
   Pal: 5476 (27%)
   Rgr: 6108 (31%)
   Brd: 13734 (69%)
   Drd: 15592 (78%)
   Ftr: 20000 (100%)
   Thf: 20000 (100%)
   Clr: 20000 (100%)
   Mge: 20000 (100%)
   Nil: 20000 (100%)
Using the 3d6 method, only three sets out of 20,000 failed to get even a single 9. No set failed to get at least one 9 using the 4d6 method.

Lastly, here's the same experiment with the population upped to one million:
*** Rolling method: 3d6 (arranged to taste) ***
*** Population: 1000000
Results...
   Pal: 57141 (6%)
   Rgr: 36272 (4%)
   Brd: 227410 (23%)
   Drd: 387935 (39%)
   Ftr: 999699 (100%)
   Thf: 999699 (100%)
   Clr: 999699 (100%)
   Mge: 999699 (100%)
   Nil: 1000000 (100%)
******************
*** Rolling method: 4d6 drop lowest (arranged to taste) ***
*** Population: 1000000
Results...
   Pal: 270407 (27%)
   Rgr: 305016 (31%)
   Brd: 689606 (69%)
   Drd: 782784 (78%)
   Ftr: 999998 (100%)
   Thf: 999998 (100%)
   Clr: 999998 (100%)
   Mge: 999998 (100%)
   Nil: 1000000 (100%)
******************
The percentages are basically unchanged, though two unlucky players failed to qualify for any class by rolling 4d6.

While this data does little to simulate a population, it might be a great tool for DMs who want to influence the likelihood of players achieving certain class requirements by choosing a specific rolling method.

No comments:

Post a Comment

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