topline: AVG is [200:750:900:1000:1100:1300:2000]. The 750 is bizarre to me as well, but I've got 8960 data points backing it up.
These seven numbers are the fenceposts for six ranges. A creature is assigned to a range, then with equal probability to any value in the range. So racial median and racial mean are different.
at ++, racial median is 1500, racial mean is 1516.66...
at +, racial median is 1250, racial mean is 1266.66...
at avg, racial median is 1000, racial mean is 1025
at -, racial median is 900, racial mean is 862.5 (!!)
In other words the patterns of equal steps are a bit of a red herring, not systematically used but used often, such as in how attributes are verbally evaluated under Thoughts and Preferences. Reference spoilered to ameliorate digression:
++ (Focus, Spatial):
0-542: -4
543-792: -3
793-1042: -2
1043-1292: -1
1293-1791: 0
1792-2041: +1
2042-2291: +2
2292-2541: +3
2542+: +4
+ (Str, Tough, Analyt, Creat, Pat, Mem):
0-250: -4
251-500: -3
501-750: -2
751-1000: -1
1001-1499: 0
1500-1749: +1
1750-1999: +2
2000-2249: +3
2250+: +4
AVG (All others except Agi):
0: -4
1-250: -3
251-500: -2
501-750: -1
751-1249: 0
1250-1499: +1
1500-1749: +2
1750-1999: +3
2000+: +4
- (Agi)
NULL: -4
0-150: -3
151-400: -2
401-650: -1
651-1149: 0
1150-1399: +1
1400-1649: +2
1650-1899: +3
1900+: +4
Open question: Why did Toady break pattern and offset his verbal evals of ++ by 42? Douglas Adams callout?
I'm not a modder as such -- I just want to understand how default dorfs work -- so this project is half-finished. This is what I did if anybody wants to see what other settings do: Dwarf Fortress instantiated by the More Embark Dwarves modified Dwarf Fortress 224 app in version 0.31.21. Runesmith 0.1.9 used while DF is on the Prepare for the journey carefully screen, and dwarf data exported to CSV and manipulated in OpenOffice Calc 3.3. For the above I did this four times for a sample size of 896. I estimated with the =percentile() function, got an idea how -,+,++ work, and applied that idea to the avg data sets.
Regrettably Runesmith exports traits verbally, so hard to work with and having no clear value for dwarves in the 40-60 range, but based on this I'll say half of dwarves gen with (e.g.) Immoderation of over 55, and half under 55. (No actual idea whether the fenceposts themselves are in one side, both, neither...)
And now the plug! I'm doing all this because I'm writing a little JavaScript/HTML script that will, hopefully, one day, understand all attributes and traits, and tell you what job a dwarf should do with them. It's just a proof of concept right now, but it does understand a handful of traits (among them Cooperation, Self-Discipline, and Straightforwardness). I call it
Dwarven Guidance Counselor, and any input is welcome.