What are the odds of rolling specific ability score totals in D&D?What is the statistically superior character creation method, twelve 3d6 or six 4d6?Is it better to take the array and be Joe Average, or to roll for the odds of getting on average better scores?What are the statistical implications of doubling damage on crit instead of doubling the dice rolled?What is the average benefit of this particular stats rolling scheme?Has any edition of D&D ever described specific ability score values in real-world terms?Is there a way to duplicate the range & power of rolling stats with a homebrew point buy?Help Modeling 5e Stat “Party Draft Pool” in AnydiceHow do I determine the probability of rolling various ranges of numbers on 4d10, 5d10, etc.?How can I use AnyDice to simulate rolling 6d6, and dropping the 2 lowest and 1 highest dice?How can I calculate the sum of 2 random dice out of a 3d6 pool in AnyDice?

Boss wants me to ignore a software API license

If a person claims to know anything could it be disproven by saying 'prove that we are not in a simulation'?

How does the Athlete Feat affect the Ravnica Centaur playable race?

Global BGP Routing only by only importing supernet prefixes

Co-workers with a lot of money and openly talk about it

A trip to the library

Help, I cannot decide when to start the story

Doesn't the speed of light limit imply the same electron can be annihilated twice?

How can I find an old paper when the usual methods fail?

Locked Room Murder!! How and who?

Transition to "Starvation Mode" in Survival Situations

Are there any cons in using rounded corners for bar graphs?

Graphs for which a calculus student can reasonably compute the arclength

How to prevent criminal gangs from making/buying guns?

Pokemon Go: Gym Badge Over-completed?

Are there really no countries that protect Freedom of Speech as the United States does?

Why is the result of ('b'+'a'+ + 'a' + 'a').toLowerCase() 'banana'?

Do beef farmed pastures net remove carbon emissions?

Scam? Phone call from "Department of Social Security" asking me to call back

Causal Diagrams using Wolfram?

Bringing Power Supplies on Plane?

How much can I judge a company based on a phone screening?

Is it possible to know the exact chord from the roman numerals

Why is there a large performance impact when looping over an array over 240 elements?



What are the odds of rolling specific ability score totals in D&D?


What is the statistically superior character creation method, twelve 3d6 or six 4d6?Is it better to take the array and be Joe Average, or to roll for the odds of getting on average better scores?What are the statistical implications of doubling damage on crit instead of doubling the dice rolled?What is the average benefit of this particular stats rolling scheme?Has any edition of D&D ever described specific ability score values in real-world terms?Is there a way to duplicate the range & power of rolling stats with a homebrew point buy?Help Modeling 5e Stat “Party Draft Pool” in AnydiceHow do I determine the probability of rolling various ranges of numbers on 4d10, 5d10, etc.?How can I use AnyDice to simulate rolling 6d6, and dropping the 2 lowest and 1 highest dice?How can I calculate the sum of 2 random dice out of a 3d6 pool in AnyDice?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








6












$begingroup$


I am about to start running a new game in 5e and I hate all of the ways of determining ability scores.



I have always felt that we play RPGs at least in part for the opportunity to pretend to be more than we are in real life and no one wants to play a character who's just average. So I feel like characters should have the ability to become world-class in some area.



Using either standard array or point buy, you cannot start at level 1 with greater than a 15 in any ability. This means that you can't have above a 17 with racial mods and that, in order, to achieve the highest possible level of 20, you must plan to use at least two feat opportunities to improve to 20, and you have essentially no chance of improving a secondary ability to anything significant if you want to take any non-ability feats at all.



And with rolling dice, you may have some chance of starting in a better position, but you have a significant chance of starting in a much worse position. If the consequences of such a catastrophe were a few sessions of difficulty, that would be one thing, but leaving to chance the possibility of playing, for months or a year, a character whose negative modifiers outweigh their positive ones seems unacceptable to me.



For this reason, I think, some DMs (including Matt Mercer from Critical Role) put lower caps on rolls, saying, for example, that if your total rolls for all six stats are below 70, you can roll again.



I like this idea, but I'm not sure it's sufficient for what I want (giving my players a chance to be exceptional).



I know that there are 1296 possible results for rolling 4D6, and I know that the average result of rolling 4D6 and dropping the lowest number is 12.2446, which means (I think) that the average score for doing that six times is 73.46759.



I'm thinking about making 73 the "floor" for my players (so that they are at least hero-average so to speak) but I'm not sure I have a good enough grasp of the math to know that that is the right decision.



What I'd like to know is "what is the probability of getting a total of under 70 on these rolls?" So, if you roll 4D6 and drop the lowest one six times and total the six results, what is the probability that it is below 70?



I'd also like to know that for 71, 72, etc... up to 78. And I'd like to know what the probability of getting above about 80 is, and 81, 82, etc.. up to about 90.



I'm not a mathematician and I don't know how to figure this out. I don't even really know how to phrase the question. I hope this was clear enough to get an answer.




Jesus... This is my first time asking a question here and I had no idea to expect such amazing responses so fast. I really appreciate your efforts in educating me on this issue. Thank you very much.










share|improve this question









New contributor



David Nowlin is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






$endgroup$









  • 2




    $begingroup$
    Welcome to the site! Take the tour! I'm certain folks 'round here can answer this question—it's math, and some users are really good at math—, but I'm not sure if knowing a probability will satisfy your underlying issue, It sounds like the question may be something like What should be the minimum total of a PC's ability scores so that a PC is assured of having at least somewhat heroic ability scores? Then defining what you mean by heroic. (It sounds like it could mean At least one score above 15.) Anyway, just a thought. Thank you for participating and have fun!
    $endgroup$
    – Hey I Can Chan
    8 hours ago










  • $begingroup$
    I agree with what Chan said above, but, out of curiosity, what ability score are you considering to be a heroic threshold or above average? Are you aware that, in game, 10/11 is defined to be the human average for any of the ability scores?
    $endgroup$
    – Rubiksmoose
    8 hours ago










  • $begingroup$
    Hey I Can Chan: Thanks! I didn't want to get too into the weeds on the game stuff because I knew it would be a long question and I didn't want to put people to sleep before they got to the math question. What I'm shooting for is sort of: get the player within range of a 20 in one ability and maybe a 16 in another by level 20 without having to spend ALL feat opportunities on ASIs, without making them gods at Level 1.
    $endgroup$
    – David Nowlin
    3 hours ago










  • $begingroup$
    Rubiksmoose: As I understand it a 10 is average human ability. Because of the way rolls average out, I'm thinking of a 12 as average PC or "hero" ability. When I say "exceptional" or "world class" I'm thinking of the 18 or 20. I am planning a long campaign that should get the characters to level 20. I want them to at least have the chance of getting their main class ability to 20 and a secondary ability pretty high. For example, a monk might want a DEX of 20 (for combat) and a WIS of 16 or so (for the high DC on Ki powers).
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    Seeing as you seem to have such an accurate idea of what you want, why don't you just give it to them? Say everyone's starting number for a stat is 13 and they get to roll a D6 to see how much they can add to it. I'd also suggest this focus is going to undermine the enjoyment of the game, far more than you think it will now.
    $endgroup$
    – Steve
    1 hour ago

















6












$begingroup$


I am about to start running a new game in 5e and I hate all of the ways of determining ability scores.



I have always felt that we play RPGs at least in part for the opportunity to pretend to be more than we are in real life and no one wants to play a character who's just average. So I feel like characters should have the ability to become world-class in some area.



Using either standard array or point buy, you cannot start at level 1 with greater than a 15 in any ability. This means that you can't have above a 17 with racial mods and that, in order, to achieve the highest possible level of 20, you must plan to use at least two feat opportunities to improve to 20, and you have essentially no chance of improving a secondary ability to anything significant if you want to take any non-ability feats at all.



And with rolling dice, you may have some chance of starting in a better position, but you have a significant chance of starting in a much worse position. If the consequences of such a catastrophe were a few sessions of difficulty, that would be one thing, but leaving to chance the possibility of playing, for months or a year, a character whose negative modifiers outweigh their positive ones seems unacceptable to me.



For this reason, I think, some DMs (including Matt Mercer from Critical Role) put lower caps on rolls, saying, for example, that if your total rolls for all six stats are below 70, you can roll again.



I like this idea, but I'm not sure it's sufficient for what I want (giving my players a chance to be exceptional).



I know that there are 1296 possible results for rolling 4D6, and I know that the average result of rolling 4D6 and dropping the lowest number is 12.2446, which means (I think) that the average score for doing that six times is 73.46759.



I'm thinking about making 73 the "floor" for my players (so that they are at least hero-average so to speak) but I'm not sure I have a good enough grasp of the math to know that that is the right decision.



What I'd like to know is "what is the probability of getting a total of under 70 on these rolls?" So, if you roll 4D6 and drop the lowest one six times and total the six results, what is the probability that it is below 70?



I'd also like to know that for 71, 72, etc... up to 78. And I'd like to know what the probability of getting above about 80 is, and 81, 82, etc.. up to about 90.



I'm not a mathematician and I don't know how to figure this out. I don't even really know how to phrase the question. I hope this was clear enough to get an answer.




Jesus... This is my first time asking a question here and I had no idea to expect such amazing responses so fast. I really appreciate your efforts in educating me on this issue. Thank you very much.










share|improve this question









New contributor



David Nowlin is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






$endgroup$









  • 2




    $begingroup$
    Welcome to the site! Take the tour! I'm certain folks 'round here can answer this question—it's math, and some users are really good at math—, but I'm not sure if knowing a probability will satisfy your underlying issue, It sounds like the question may be something like What should be the minimum total of a PC's ability scores so that a PC is assured of having at least somewhat heroic ability scores? Then defining what you mean by heroic. (It sounds like it could mean At least one score above 15.) Anyway, just a thought. Thank you for participating and have fun!
    $endgroup$
    – Hey I Can Chan
    8 hours ago










  • $begingroup$
    I agree with what Chan said above, but, out of curiosity, what ability score are you considering to be a heroic threshold or above average? Are you aware that, in game, 10/11 is defined to be the human average for any of the ability scores?
    $endgroup$
    – Rubiksmoose
    8 hours ago










  • $begingroup$
    Hey I Can Chan: Thanks! I didn't want to get too into the weeds on the game stuff because I knew it would be a long question and I didn't want to put people to sleep before they got to the math question. What I'm shooting for is sort of: get the player within range of a 20 in one ability and maybe a 16 in another by level 20 without having to spend ALL feat opportunities on ASIs, without making them gods at Level 1.
    $endgroup$
    – David Nowlin
    3 hours ago










  • $begingroup$
    Rubiksmoose: As I understand it a 10 is average human ability. Because of the way rolls average out, I'm thinking of a 12 as average PC or "hero" ability. When I say "exceptional" or "world class" I'm thinking of the 18 or 20. I am planning a long campaign that should get the characters to level 20. I want them to at least have the chance of getting their main class ability to 20 and a secondary ability pretty high. For example, a monk might want a DEX of 20 (for combat) and a WIS of 16 or so (for the high DC on Ki powers).
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    Seeing as you seem to have such an accurate idea of what you want, why don't you just give it to them? Say everyone's starting number for a stat is 13 and they get to roll a D6 to see how much they can add to it. I'd also suggest this focus is going to undermine the enjoyment of the game, far more than you think it will now.
    $endgroup$
    – Steve
    1 hour ago













6












6








6


1



$begingroup$


I am about to start running a new game in 5e and I hate all of the ways of determining ability scores.



I have always felt that we play RPGs at least in part for the opportunity to pretend to be more than we are in real life and no one wants to play a character who's just average. So I feel like characters should have the ability to become world-class in some area.



Using either standard array or point buy, you cannot start at level 1 with greater than a 15 in any ability. This means that you can't have above a 17 with racial mods and that, in order, to achieve the highest possible level of 20, you must plan to use at least two feat opportunities to improve to 20, and you have essentially no chance of improving a secondary ability to anything significant if you want to take any non-ability feats at all.



And with rolling dice, you may have some chance of starting in a better position, but you have a significant chance of starting in a much worse position. If the consequences of such a catastrophe were a few sessions of difficulty, that would be one thing, but leaving to chance the possibility of playing, for months or a year, a character whose negative modifiers outweigh their positive ones seems unacceptable to me.



For this reason, I think, some DMs (including Matt Mercer from Critical Role) put lower caps on rolls, saying, for example, that if your total rolls for all six stats are below 70, you can roll again.



I like this idea, but I'm not sure it's sufficient for what I want (giving my players a chance to be exceptional).



I know that there are 1296 possible results for rolling 4D6, and I know that the average result of rolling 4D6 and dropping the lowest number is 12.2446, which means (I think) that the average score for doing that six times is 73.46759.



I'm thinking about making 73 the "floor" for my players (so that they are at least hero-average so to speak) but I'm not sure I have a good enough grasp of the math to know that that is the right decision.



What I'd like to know is "what is the probability of getting a total of under 70 on these rolls?" So, if you roll 4D6 and drop the lowest one six times and total the six results, what is the probability that it is below 70?



I'd also like to know that for 71, 72, etc... up to 78. And I'd like to know what the probability of getting above about 80 is, and 81, 82, etc.. up to about 90.



I'm not a mathematician and I don't know how to figure this out. I don't even really know how to phrase the question. I hope this was clear enough to get an answer.




Jesus... This is my first time asking a question here and I had no idea to expect such amazing responses so fast. I really appreciate your efforts in educating me on this issue. Thank you very much.










share|improve this question









New contributor



David Nowlin is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






$endgroup$




I am about to start running a new game in 5e and I hate all of the ways of determining ability scores.



I have always felt that we play RPGs at least in part for the opportunity to pretend to be more than we are in real life and no one wants to play a character who's just average. So I feel like characters should have the ability to become world-class in some area.



Using either standard array or point buy, you cannot start at level 1 with greater than a 15 in any ability. This means that you can't have above a 17 with racial mods and that, in order, to achieve the highest possible level of 20, you must plan to use at least two feat opportunities to improve to 20, and you have essentially no chance of improving a secondary ability to anything significant if you want to take any non-ability feats at all.



And with rolling dice, you may have some chance of starting in a better position, but you have a significant chance of starting in a much worse position. If the consequences of such a catastrophe were a few sessions of difficulty, that would be one thing, but leaving to chance the possibility of playing, for months or a year, a character whose negative modifiers outweigh their positive ones seems unacceptable to me.



For this reason, I think, some DMs (including Matt Mercer from Critical Role) put lower caps on rolls, saying, for example, that if your total rolls for all six stats are below 70, you can roll again.



I like this idea, but I'm not sure it's sufficient for what I want (giving my players a chance to be exceptional).



I know that there are 1296 possible results for rolling 4D6, and I know that the average result of rolling 4D6 and dropping the lowest number is 12.2446, which means (I think) that the average score for doing that six times is 73.46759.



I'm thinking about making 73 the "floor" for my players (so that they are at least hero-average so to speak) but I'm not sure I have a good enough grasp of the math to know that that is the right decision.



What I'd like to know is "what is the probability of getting a total of under 70 on these rolls?" So, if you roll 4D6 and drop the lowest one six times and total the six results, what is the probability that it is below 70?



I'd also like to know that for 71, 72, etc... up to 78. And I'd like to know what the probability of getting above about 80 is, and 81, 82, etc.. up to about 90.



I'm not a mathematician and I don't know how to figure this out. I don't even really know how to phrase the question. I hope this was clear enough to get an answer.




Jesus... This is my first time asking a question here and I had no idea to expect such amazing responses so fast. I really appreciate your efforts in educating me on this issue. Thank you very much.







dnd-5e ability-scores statistics






share|improve this question









New contributor



David Nowlin is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.










share|improve this question









New contributor



David Nowlin is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.








share|improve this question




share|improve this question








edited 4 hours ago







David Nowlin













New contributor



David Nowlin is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.








asked 8 hours ago









David NowlinDavid Nowlin

364 bronze badges




364 bronze badges




New contributor



David Nowlin is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.




New contributor




David Nowlin is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.












  • 2




    $begingroup$
    Welcome to the site! Take the tour! I'm certain folks 'round here can answer this question—it's math, and some users are really good at math—, but I'm not sure if knowing a probability will satisfy your underlying issue, It sounds like the question may be something like What should be the minimum total of a PC's ability scores so that a PC is assured of having at least somewhat heroic ability scores? Then defining what you mean by heroic. (It sounds like it could mean At least one score above 15.) Anyway, just a thought. Thank you for participating and have fun!
    $endgroup$
    – Hey I Can Chan
    8 hours ago










  • $begingroup$
    I agree with what Chan said above, but, out of curiosity, what ability score are you considering to be a heroic threshold or above average? Are you aware that, in game, 10/11 is defined to be the human average for any of the ability scores?
    $endgroup$
    – Rubiksmoose
    8 hours ago










  • $begingroup$
    Hey I Can Chan: Thanks! I didn't want to get too into the weeds on the game stuff because I knew it would be a long question and I didn't want to put people to sleep before they got to the math question. What I'm shooting for is sort of: get the player within range of a 20 in one ability and maybe a 16 in another by level 20 without having to spend ALL feat opportunities on ASIs, without making them gods at Level 1.
    $endgroup$
    – David Nowlin
    3 hours ago










  • $begingroup$
    Rubiksmoose: As I understand it a 10 is average human ability. Because of the way rolls average out, I'm thinking of a 12 as average PC or "hero" ability. When I say "exceptional" or "world class" I'm thinking of the 18 or 20. I am planning a long campaign that should get the characters to level 20. I want them to at least have the chance of getting their main class ability to 20 and a secondary ability pretty high. For example, a monk might want a DEX of 20 (for combat) and a WIS of 16 or so (for the high DC on Ki powers).
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    Seeing as you seem to have such an accurate idea of what you want, why don't you just give it to them? Say everyone's starting number for a stat is 13 and they get to roll a D6 to see how much they can add to it. I'd also suggest this focus is going to undermine the enjoyment of the game, far more than you think it will now.
    $endgroup$
    – Steve
    1 hour ago












  • 2




    $begingroup$
    Welcome to the site! Take the tour! I'm certain folks 'round here can answer this question—it's math, and some users are really good at math—, but I'm not sure if knowing a probability will satisfy your underlying issue, It sounds like the question may be something like What should be the minimum total of a PC's ability scores so that a PC is assured of having at least somewhat heroic ability scores? Then defining what you mean by heroic. (It sounds like it could mean At least one score above 15.) Anyway, just a thought. Thank you for participating and have fun!
    $endgroup$
    – Hey I Can Chan
    8 hours ago










  • $begingroup$
    I agree with what Chan said above, but, out of curiosity, what ability score are you considering to be a heroic threshold or above average? Are you aware that, in game, 10/11 is defined to be the human average for any of the ability scores?
    $endgroup$
    – Rubiksmoose
    8 hours ago










  • $begingroup$
    Hey I Can Chan: Thanks! I didn't want to get too into the weeds on the game stuff because I knew it would be a long question and I didn't want to put people to sleep before they got to the math question. What I'm shooting for is sort of: get the player within range of a 20 in one ability and maybe a 16 in another by level 20 without having to spend ALL feat opportunities on ASIs, without making them gods at Level 1.
    $endgroup$
    – David Nowlin
    3 hours ago










  • $begingroup$
    Rubiksmoose: As I understand it a 10 is average human ability. Because of the way rolls average out, I'm thinking of a 12 as average PC or "hero" ability. When I say "exceptional" or "world class" I'm thinking of the 18 or 20. I am planning a long campaign that should get the characters to level 20. I want them to at least have the chance of getting their main class ability to 20 and a secondary ability pretty high. For example, a monk might want a DEX of 20 (for combat) and a WIS of 16 or so (for the high DC on Ki powers).
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    Seeing as you seem to have such an accurate idea of what you want, why don't you just give it to them? Say everyone's starting number for a stat is 13 and they get to roll a D6 to see how much they can add to it. I'd also suggest this focus is going to undermine the enjoyment of the game, far more than you think it will now.
    $endgroup$
    – Steve
    1 hour ago







2




2




$begingroup$
Welcome to the site! Take the tour! I'm certain folks 'round here can answer this question—it's math, and some users are really good at math—, but I'm not sure if knowing a probability will satisfy your underlying issue, It sounds like the question may be something like What should be the minimum total of a PC's ability scores so that a PC is assured of having at least somewhat heroic ability scores? Then defining what you mean by heroic. (It sounds like it could mean At least one score above 15.) Anyway, just a thought. Thank you for participating and have fun!
$endgroup$
– Hey I Can Chan
8 hours ago




$begingroup$
Welcome to the site! Take the tour! I'm certain folks 'round here can answer this question—it's math, and some users are really good at math—, but I'm not sure if knowing a probability will satisfy your underlying issue, It sounds like the question may be something like What should be the minimum total of a PC's ability scores so that a PC is assured of having at least somewhat heroic ability scores? Then defining what you mean by heroic. (It sounds like it could mean At least one score above 15.) Anyway, just a thought. Thank you for participating and have fun!
$endgroup$
– Hey I Can Chan
8 hours ago












$begingroup$
I agree with what Chan said above, but, out of curiosity, what ability score are you considering to be a heroic threshold or above average? Are you aware that, in game, 10/11 is defined to be the human average for any of the ability scores?
$endgroup$
– Rubiksmoose
8 hours ago




$begingroup$
I agree with what Chan said above, but, out of curiosity, what ability score are you considering to be a heroic threshold or above average? Are you aware that, in game, 10/11 is defined to be the human average for any of the ability scores?
$endgroup$
– Rubiksmoose
8 hours ago












$begingroup$
Hey I Can Chan: Thanks! I didn't want to get too into the weeds on the game stuff because I knew it would be a long question and I didn't want to put people to sleep before they got to the math question. What I'm shooting for is sort of: get the player within range of a 20 in one ability and maybe a 16 in another by level 20 without having to spend ALL feat opportunities on ASIs, without making them gods at Level 1.
$endgroup$
– David Nowlin
3 hours ago




$begingroup$
Hey I Can Chan: Thanks! I didn't want to get too into the weeds on the game stuff because I knew it would be a long question and I didn't want to put people to sleep before they got to the math question. What I'm shooting for is sort of: get the player within range of a 20 in one ability and maybe a 16 in another by level 20 without having to spend ALL feat opportunities on ASIs, without making them gods at Level 1.
$endgroup$
– David Nowlin
3 hours ago












$begingroup$
Rubiksmoose: As I understand it a 10 is average human ability. Because of the way rolls average out, I'm thinking of a 12 as average PC or "hero" ability. When I say "exceptional" or "world class" I'm thinking of the 18 or 20. I am planning a long campaign that should get the characters to level 20. I want them to at least have the chance of getting their main class ability to 20 and a secondary ability pretty high. For example, a monk might want a DEX of 20 (for combat) and a WIS of 16 or so (for the high DC on Ki powers).
$endgroup$
– David Nowlin
3 hours ago





$begingroup$
Rubiksmoose: As I understand it a 10 is average human ability. Because of the way rolls average out, I'm thinking of a 12 as average PC or "hero" ability. When I say "exceptional" or "world class" I'm thinking of the 18 or 20. I am planning a long campaign that should get the characters to level 20. I want them to at least have the chance of getting their main class ability to 20 and a secondary ability pretty high. For example, a monk might want a DEX of 20 (for combat) and a WIS of 16 or so (for the high DC on Ki powers).
$endgroup$
– David Nowlin
3 hours ago













$begingroup$
Seeing as you seem to have such an accurate idea of what you want, why don't you just give it to them? Say everyone's starting number for a stat is 13 and they get to roll a D6 to see how much they can add to it. I'd also suggest this focus is going to undermine the enjoyment of the game, far more than you think it will now.
$endgroup$
– Steve
1 hour ago




$begingroup$
Seeing as you seem to have such an accurate idea of what you want, why don't you just give it to them? Say everyone's starting number for a stat is 13 and they get to roll a D6 to see how much they can add to it. I'd also suggest this focus is going to undermine the enjoyment of the game, far more than you think it will now.
$endgroup$
– Steve
1 hour ago










2 Answers
2






active

oldest

votes


















10












$begingroup$

PCs are exceptional regardless of their ability scores



Answering your actual question rather than the math one first: Your hang-up is that you place too much emphasis on ability scores. A fighter is already exceptional just for being a fighter, just as a wizard, cleric or druid are already exceptional for belonging to these classes. Ability scores influence things the characters can do, but that's at best describing the relative strengths of PCs against each other - and even then it's a very inexact and misleading measure, my dwarf barbarian with 28 strength is not really more exceptional than sorcerer with their highest stat being a 17 in charisma, but with the ability to destroy castles at a whim via Earthquake.



Thus, I don't believe your problem can be solved via math, certainly not by slightly tweaking the ability scores players get; It's more a matter of framing PCs as larger than life heroes, which is very much within your purview as a DM.



The literal math question



Here are the exact (to two significant digits) probabilities of both getting the individual scores and getting a score that is at least as great as a particular score (using the 4d6 drop lowest system). But like I said earlier, I'm not sure that knowing this will improve matters much for you (note that an "average" human is assumed to have values at around 10 (see also the Commoner Statblock):



Indivial Score Probabilities



3: 0.08%
4: 0.31%
5: 0.77%
6: 1.62%
7: 2.93%
8: 4.78%
9: 7.02%
10: 9.41%
11: 11.42%
12: 12.89%
13: 13.27%
14: 12.35%
15: 10.11%
16: 7.25%
17: 4.17%
18: 1.62%


Accumulative probabilities



18: 1.62%
17: 5.79%
16: 13.04%
15: 23.15%
14: 35.49%
13: 48.77%
12: 61.65%
11: 73.07%
10: 82.48%
9: 89.51%
8: 94.29%
7: 97.22%
6: 98.84%
5: 99.61%
4: 99.92%
3: 100.00%


Expected single ability score value: 12.24



Expected total: 73.47 (as you suspected in the question)



And here are the probabilities for score totals (up to 6 significant digits). Note that there are a bunch of zeros and 100%s in here, these are mostly because the chances are just so astronomically small or big that 6 significant digits aren't enough (except for the accumulated probabilities for minimum values, since of course nothing can be smaller than the minimum).



Total score probabilites



18: 0.000000%
19: 0.000000%
20: 0.000000%
21: 0.000000%
22: 0.000000%
23: 0.000000%
24: 0.000000%
25: 0.000000%
26: 0.000000%
27: 0.000000%
28: 0.000000%
29: 0.000000%
30: 0.000000%
31: 0.000000%
32: 0.000000%
33: 0.000000%
34: 0.000001%
35: 0.000002%
36: 0.000005%
37: 0.000011%
38: 0.000024%
39: 0.000050%
40: 0.000101%
41: 0.000197%
42: 0.000375%
43: 0.000696%
44: 0.001259%
45: 0.002225%
46: 0.003842%
47: 0.006487%
48: 0.010713%
49: 0.017318%
50: 0.027414%
51: 0.042516%
52: 0.064621%
53: 0.096296%
54: 0.140730%
55: 0.201753%
56: 0.283804%
57: 0.391803%
58: 0.530938%
59: 0.706332%
60: 0.922602%
61: 1.183308%
62: 1.490344%
63: 1.843300%
64: 2.238874%
65: 2.670427%
66: 3.127736%
67: 3.597061%
68: 4.061548%
69: 4.502022%
70: 4.898120%
71: 5.229710%
72: 5.478471%
73: 5.629472%
74: 5.672574%
75: 5.603493%
76: 5.424356%
77: 5.143685%
78: 4.775768%
79: 4.339492%
80: 3.856750%
81: 3.350615%
82: 2.843496%
83: 2.355468%
84: 1.902979%
85: 1.498018%
86: 1.147820%
87: 0.855065%
88: 0.618481%
89: 0.433730%
90: 0.294415%
91: 0.193078%
92: 0.122070%
93: 0.074221%
94: 0.043277%
95: 0.024120%
96: 0.012800%
97: 0.006438%
98: 0.003053%
99: 0.001355%
100: 0.000559%
101: 0.000212%
102: 0.000073%
103: 0.000022%
104: 0.000006%
105: 0.000001%
106: 0.000000%
107: 0.000000%
108: 0.000000%


Total score accumulated probabilites



108: 0.000000%
107: 0.000000%
106: 0.000000%
105: 0.000002%
104: 0.000007%
103: 0.000030%
102: 0.000102%
101: 0.000314%
100: 0.000873%
99: 0.002228%
98: 0.005280%
97: 0.011719%
96: 0.024518%
95: 0.048638%
94: 0.091916%
93: 0.166137%
92: 0.288207%
91: 0.481284%
90: 0.775699%
89: 1.209429%
88: 1.827910%
87: 2.682974%
86: 3.830794%
85: 5.328812%
84: 7.231791%
83: 9.587259%
82: 12.430755%
81: 15.781370%
80: 19.638120%
79: 23.977612%
78: 28.753380%
77: 33.897065%
76: 39.321421%
75: 44.924914%
74: 50.597488%
73: 56.226960%
72: 61.705431%
71: 66.935141%
70: 71.833262%
69: 76.335284%
68: 80.396832%
67: 83.993893%
66: 87.121629%
65: 89.792056%
64: 92.030931%
63: 93.874230%
62: 95.364575%
61: 96.547883%
60: 97.470485%
59: 98.176817%
58: 98.707756%
57: 99.099559%
56: 99.383363%
55: 99.585116%
54: 99.725846%
53: 99.822142%
52: 99.886763%
51: 99.929279%
50: 99.956693%
49: 99.974011%
48: 99.984724%
47: 99.991211%
46: 99.995053%
45: 99.997279%
44: 99.998538%
43: 99.999233%
42: 99.999608%
41: 99.999805%
40: 99.999905%
39: 99.999956%
38: 99.999980%
37: 99.999991%
36: 99.999996%
35: 99.999998%
34: 99.999999%
33: 100.000000%
32: 100.000000%
31: 100.000000%
30: 100.000000%
29: 100.000000%
28: 100.000000%
27: 100.000000%
26: 100.000000%
25: 100.000000%
24: 100.000000%
23: 100.000000%
22: 100.000000%
21: 100.000000%
20: 100.000000%
19: 100.000000%
18: 100.000000%


Source code for generating the table (Haskell)





-# LANGUAGE Strict, TypeApplications #-
import qualified Data.Map as M
import Text.Printf
import Data.List(sortBy)
import Data.Ord(comparing)
import Control.Applicative((<|>))
import Data.Ratio

rolls :: [Int]
rolls = do
a <- dice
b <- dice
c <- dice
d <- dice
return . sum . take 3 . sortBy (comparing negate) $ [a,b,c,d] where
dice = [1..6]

frequencies :: M.Map Int Int
frequencies = foldr (v m -> M.alter (f -> fmap (+1) f <|> Just 1) v m) M.empty rolls

probabilities :: M.Map Int Rational
probabilities = fmap ((/ 6^4) . fromIntegral) frequencies

printProb :: Int -> Rational -> IO ()
printProb k v = printf "%d: %.6f%%n" k (fromRational @Double $ v*100)

totalScoreInstances :: [(Int, Rational)]
totalScoreInstances = do
(strength, pStr) <- oneScore
(constitution, pCon) <- oneScore
(dexterity, pDex) <- oneScore
(wisdom, pWis) <- oneScore
(intelligence, pInt) <- oneScore
(charisma, pCha) <- oneScore
let totalScore
= strength
+ constitution
+ dexterity
+ wisdom
+ intelligence
+ charisma
let totalProb
= pStr
* pCon
* pDex
* pWis
* pInt
* pCha
return (totalScore, totalProb)
where oneScore = M.toList probabilities

totalScoreProbabilities :: M.Map Int Rational
totalScoreProbabilities = foldl
(m (s, p) -> M.alter (tp -> fmap (+ p) tp <|> Just p) s m)
M.empty
totalScoreInstances

main = do
putStrLn "## Indivial Score Probabilities"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v ) (return ()) probabilities
putStrLn "```"
putStrLn "## Accumulative probabilities"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) probabilities
putStrLn "```"
let expected = M.foldlWithKey (t k v -> t + (fromIntegral k * v)) 0.0 probabilities
printf "Expected single ability score value: %.2fn" $ fromRational @Double expected
printf "nExpected total: %.2fn" $ fromRational @Double expected * 6
putStrLn "## Total score probabilites"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v) (return ()) totalScoreProbabilities
putStrLn "```"
putStrLn "## Total score accumulated probabilites"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) totalScoreProbabilities
putStrLn "```"


Note: if you want to run this yourself, compile with ghc -O2 and don't try to run it via the interpreter if you want to see the result before the heat death of the universe.






share|improve this answer











$endgroup$










  • 4




    $begingroup$
    It might be worth mentioning that the ability score system is set up with 10/11 being human average in that ability (which supports your argument that even with a low point-buy, PCs end up being more or less exceptional).
    $endgroup$
    – Rubiksmoose
    7 hours ago






  • 1




    $begingroup$
    Note that anydice presents this in a prettier way, but this does present an easy way to calculate these things - literally just enumerate all the possible outcomes and sum up their probabilities. I don't know how anydice works, whether it's by sampling or if they actually use some exact analysis. I'm not a statistician so I'm doing it the naive way here.
    $endgroup$
    – Cubic
    6 hours ago










  • $begingroup$
    I've never seen "accumulative" used in this context, although that may be a regional difference. Are you sure you don't mean "Cumulative probabilities"?
    $endgroup$
    – Steven Jackson
    5 hours ago







  • 1




    $begingroup$
    A more reader-friendly term, especially for the not math-inclined audience the question represents, would be “at least”, as in “odds of the [score/total/whatever] being at least this much”, or whatever nicer phrasing you can think of.
    $endgroup$
    – SevenSidedDie
    4 hours ago






  • 3




    $begingroup$
    @Cubic anydice gives you exact results, unless you exceed its limitations on recursive functions, or you deliberately hack together an anydice program which does things in a sampling way (usually only attempted because the exact way takes too long for the server to be able to compute).
    $endgroup$
    – Carcer
    2 hours ago


















13












$begingroup$

Here is an anydice program that does what you wanted



https://anydice.com/program/171e4

The code:



T: 0
loop X over 1..6

R:[highest 3 of 4d6]
T: T+R

output T


How it works:



  1. We define a variable, T to be equal to 0.

  2. Then we run the bracketed section the first time.

  3. Each time a variable, R, is the result of 4d6 drop the lowest.

  4. We add the variable R to T.

    Then we run the bracketed section another five times (increasing T by R for each new roll).

  5. Finally we have our out variable T, which is the sum of all 6 of our rolls.

You can click various buttons in the link to view different statistics, for example "At Most" will show you totals on the far-left and the percent chance of getting at most that total to its right.



We can see that the odds of getting at most 70 is 33.06%

The odds of getting at most 78 is 76.02%

The odds of getting at least 80 is 19.64%

The odds of getting at least 90 is .78%




An alternative code method of doing this is the following as pointed out by @Sdjz:
https://anydice.com/program/171e5



output [highest 3 of 4d6] + [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]


Their code does the same thing in an arguably easier to read way or more obvious/intuitive way, simply adding together six rolls of "4d6 drop the lowest".



graph of probabilities




Yet another equivalent method was brought up by @LouisWasserman found at this link: https://anydice.com/program/171f0



output 6d[highest 3 of 4d6]


This works because when anydice rolls dice, for example 3d6, it rolls 1d6 three times and adds the results together.

Their code has it roll six dice with "4d6 drop the lowest" sides.

It then adds together the results which is equivalent to the other two methods above.






share|improve this answer











$endgroup$














  • $begingroup$
    @Medix2 Please do.
    $endgroup$
    – Louis Wasserman
    5 hours ago










  • $begingroup$
    @LouisWasserman Do you think that explanation is understandable?
    $endgroup$
    – Medix2
    5 hours ago






  • 2




    $begingroup$
    Thank you very much for your answer. I had a little trouble following it because I am not familiar with "any dice" (thought it sounds like something I should look into). After reading both this one and the next one I had a good enough grasp on the answers to check them against each other, discover that you both arrived at the same conclusions, and understand those conclusions. So thanks!
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    @Medix2 Team win! :)
    $endgroup$
    – KorvinStarmast
    1 hour ago













Your Answer








StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "122"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);






David Nowlin is a new contributor. Be nice, and check out our Code of Conduct.









draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2frpg.stackexchange.com%2fquestions%2f153527%2fwhat-are-the-odds-of-rolling-specific-ability-score-totals-in-dd%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









10












$begingroup$

PCs are exceptional regardless of their ability scores



Answering your actual question rather than the math one first: Your hang-up is that you place too much emphasis on ability scores. A fighter is already exceptional just for being a fighter, just as a wizard, cleric or druid are already exceptional for belonging to these classes. Ability scores influence things the characters can do, but that's at best describing the relative strengths of PCs against each other - and even then it's a very inexact and misleading measure, my dwarf barbarian with 28 strength is not really more exceptional than sorcerer with their highest stat being a 17 in charisma, but with the ability to destroy castles at a whim via Earthquake.



Thus, I don't believe your problem can be solved via math, certainly not by slightly tweaking the ability scores players get; It's more a matter of framing PCs as larger than life heroes, which is very much within your purview as a DM.



The literal math question



Here are the exact (to two significant digits) probabilities of both getting the individual scores and getting a score that is at least as great as a particular score (using the 4d6 drop lowest system). But like I said earlier, I'm not sure that knowing this will improve matters much for you (note that an "average" human is assumed to have values at around 10 (see also the Commoner Statblock):



Indivial Score Probabilities



3: 0.08%
4: 0.31%
5: 0.77%
6: 1.62%
7: 2.93%
8: 4.78%
9: 7.02%
10: 9.41%
11: 11.42%
12: 12.89%
13: 13.27%
14: 12.35%
15: 10.11%
16: 7.25%
17: 4.17%
18: 1.62%


Accumulative probabilities



18: 1.62%
17: 5.79%
16: 13.04%
15: 23.15%
14: 35.49%
13: 48.77%
12: 61.65%
11: 73.07%
10: 82.48%
9: 89.51%
8: 94.29%
7: 97.22%
6: 98.84%
5: 99.61%
4: 99.92%
3: 100.00%


Expected single ability score value: 12.24



Expected total: 73.47 (as you suspected in the question)



And here are the probabilities for score totals (up to 6 significant digits). Note that there are a bunch of zeros and 100%s in here, these are mostly because the chances are just so astronomically small or big that 6 significant digits aren't enough (except for the accumulated probabilities for minimum values, since of course nothing can be smaller than the minimum).



Total score probabilites



18: 0.000000%
19: 0.000000%
20: 0.000000%
21: 0.000000%
22: 0.000000%
23: 0.000000%
24: 0.000000%
25: 0.000000%
26: 0.000000%
27: 0.000000%
28: 0.000000%
29: 0.000000%
30: 0.000000%
31: 0.000000%
32: 0.000000%
33: 0.000000%
34: 0.000001%
35: 0.000002%
36: 0.000005%
37: 0.000011%
38: 0.000024%
39: 0.000050%
40: 0.000101%
41: 0.000197%
42: 0.000375%
43: 0.000696%
44: 0.001259%
45: 0.002225%
46: 0.003842%
47: 0.006487%
48: 0.010713%
49: 0.017318%
50: 0.027414%
51: 0.042516%
52: 0.064621%
53: 0.096296%
54: 0.140730%
55: 0.201753%
56: 0.283804%
57: 0.391803%
58: 0.530938%
59: 0.706332%
60: 0.922602%
61: 1.183308%
62: 1.490344%
63: 1.843300%
64: 2.238874%
65: 2.670427%
66: 3.127736%
67: 3.597061%
68: 4.061548%
69: 4.502022%
70: 4.898120%
71: 5.229710%
72: 5.478471%
73: 5.629472%
74: 5.672574%
75: 5.603493%
76: 5.424356%
77: 5.143685%
78: 4.775768%
79: 4.339492%
80: 3.856750%
81: 3.350615%
82: 2.843496%
83: 2.355468%
84: 1.902979%
85: 1.498018%
86: 1.147820%
87: 0.855065%
88: 0.618481%
89: 0.433730%
90: 0.294415%
91: 0.193078%
92: 0.122070%
93: 0.074221%
94: 0.043277%
95: 0.024120%
96: 0.012800%
97: 0.006438%
98: 0.003053%
99: 0.001355%
100: 0.000559%
101: 0.000212%
102: 0.000073%
103: 0.000022%
104: 0.000006%
105: 0.000001%
106: 0.000000%
107: 0.000000%
108: 0.000000%


Total score accumulated probabilites



108: 0.000000%
107: 0.000000%
106: 0.000000%
105: 0.000002%
104: 0.000007%
103: 0.000030%
102: 0.000102%
101: 0.000314%
100: 0.000873%
99: 0.002228%
98: 0.005280%
97: 0.011719%
96: 0.024518%
95: 0.048638%
94: 0.091916%
93: 0.166137%
92: 0.288207%
91: 0.481284%
90: 0.775699%
89: 1.209429%
88: 1.827910%
87: 2.682974%
86: 3.830794%
85: 5.328812%
84: 7.231791%
83: 9.587259%
82: 12.430755%
81: 15.781370%
80: 19.638120%
79: 23.977612%
78: 28.753380%
77: 33.897065%
76: 39.321421%
75: 44.924914%
74: 50.597488%
73: 56.226960%
72: 61.705431%
71: 66.935141%
70: 71.833262%
69: 76.335284%
68: 80.396832%
67: 83.993893%
66: 87.121629%
65: 89.792056%
64: 92.030931%
63: 93.874230%
62: 95.364575%
61: 96.547883%
60: 97.470485%
59: 98.176817%
58: 98.707756%
57: 99.099559%
56: 99.383363%
55: 99.585116%
54: 99.725846%
53: 99.822142%
52: 99.886763%
51: 99.929279%
50: 99.956693%
49: 99.974011%
48: 99.984724%
47: 99.991211%
46: 99.995053%
45: 99.997279%
44: 99.998538%
43: 99.999233%
42: 99.999608%
41: 99.999805%
40: 99.999905%
39: 99.999956%
38: 99.999980%
37: 99.999991%
36: 99.999996%
35: 99.999998%
34: 99.999999%
33: 100.000000%
32: 100.000000%
31: 100.000000%
30: 100.000000%
29: 100.000000%
28: 100.000000%
27: 100.000000%
26: 100.000000%
25: 100.000000%
24: 100.000000%
23: 100.000000%
22: 100.000000%
21: 100.000000%
20: 100.000000%
19: 100.000000%
18: 100.000000%


Source code for generating the table (Haskell)





-# LANGUAGE Strict, TypeApplications #-
import qualified Data.Map as M
import Text.Printf
import Data.List(sortBy)
import Data.Ord(comparing)
import Control.Applicative((<|>))
import Data.Ratio

rolls :: [Int]
rolls = do
a <- dice
b <- dice
c <- dice
d <- dice
return . sum . take 3 . sortBy (comparing negate) $ [a,b,c,d] where
dice = [1..6]

frequencies :: M.Map Int Int
frequencies = foldr (v m -> M.alter (f -> fmap (+1) f <|> Just 1) v m) M.empty rolls

probabilities :: M.Map Int Rational
probabilities = fmap ((/ 6^4) . fromIntegral) frequencies

printProb :: Int -> Rational -> IO ()
printProb k v = printf "%d: %.6f%%n" k (fromRational @Double $ v*100)

totalScoreInstances :: [(Int, Rational)]
totalScoreInstances = do
(strength, pStr) <- oneScore
(constitution, pCon) <- oneScore
(dexterity, pDex) <- oneScore
(wisdom, pWis) <- oneScore
(intelligence, pInt) <- oneScore
(charisma, pCha) <- oneScore
let totalScore
= strength
+ constitution
+ dexterity
+ wisdom
+ intelligence
+ charisma
let totalProb
= pStr
* pCon
* pDex
* pWis
* pInt
* pCha
return (totalScore, totalProb)
where oneScore = M.toList probabilities

totalScoreProbabilities :: M.Map Int Rational
totalScoreProbabilities = foldl
(m (s, p) -> M.alter (tp -> fmap (+ p) tp <|> Just p) s m)
M.empty
totalScoreInstances

main = do
putStrLn "## Indivial Score Probabilities"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v ) (return ()) probabilities
putStrLn "```"
putStrLn "## Accumulative probabilities"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) probabilities
putStrLn "```"
let expected = M.foldlWithKey (t k v -> t + (fromIntegral k * v)) 0.0 probabilities
printf "Expected single ability score value: %.2fn" $ fromRational @Double expected
printf "nExpected total: %.2fn" $ fromRational @Double expected * 6
putStrLn "## Total score probabilites"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v) (return ()) totalScoreProbabilities
putStrLn "```"
putStrLn "## Total score accumulated probabilites"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) totalScoreProbabilities
putStrLn "```"


Note: if you want to run this yourself, compile with ghc -O2 and don't try to run it via the interpreter if you want to see the result before the heat death of the universe.






share|improve this answer











$endgroup$










  • 4




    $begingroup$
    It might be worth mentioning that the ability score system is set up with 10/11 being human average in that ability (which supports your argument that even with a low point-buy, PCs end up being more or less exceptional).
    $endgroup$
    – Rubiksmoose
    7 hours ago






  • 1




    $begingroup$
    Note that anydice presents this in a prettier way, but this does present an easy way to calculate these things - literally just enumerate all the possible outcomes and sum up their probabilities. I don't know how anydice works, whether it's by sampling or if they actually use some exact analysis. I'm not a statistician so I'm doing it the naive way here.
    $endgroup$
    – Cubic
    6 hours ago










  • $begingroup$
    I've never seen "accumulative" used in this context, although that may be a regional difference. Are you sure you don't mean "Cumulative probabilities"?
    $endgroup$
    – Steven Jackson
    5 hours ago







  • 1




    $begingroup$
    A more reader-friendly term, especially for the not math-inclined audience the question represents, would be “at least”, as in “odds of the [score/total/whatever] being at least this much”, or whatever nicer phrasing you can think of.
    $endgroup$
    – SevenSidedDie
    4 hours ago






  • 3




    $begingroup$
    @Cubic anydice gives you exact results, unless you exceed its limitations on recursive functions, or you deliberately hack together an anydice program which does things in a sampling way (usually only attempted because the exact way takes too long for the server to be able to compute).
    $endgroup$
    – Carcer
    2 hours ago















10












$begingroup$

PCs are exceptional regardless of their ability scores



Answering your actual question rather than the math one first: Your hang-up is that you place too much emphasis on ability scores. A fighter is already exceptional just for being a fighter, just as a wizard, cleric or druid are already exceptional for belonging to these classes. Ability scores influence things the characters can do, but that's at best describing the relative strengths of PCs against each other - and even then it's a very inexact and misleading measure, my dwarf barbarian with 28 strength is not really more exceptional than sorcerer with their highest stat being a 17 in charisma, but with the ability to destroy castles at a whim via Earthquake.



Thus, I don't believe your problem can be solved via math, certainly not by slightly tweaking the ability scores players get; It's more a matter of framing PCs as larger than life heroes, which is very much within your purview as a DM.



The literal math question



Here are the exact (to two significant digits) probabilities of both getting the individual scores and getting a score that is at least as great as a particular score (using the 4d6 drop lowest system). But like I said earlier, I'm not sure that knowing this will improve matters much for you (note that an "average" human is assumed to have values at around 10 (see also the Commoner Statblock):



Indivial Score Probabilities



3: 0.08%
4: 0.31%
5: 0.77%
6: 1.62%
7: 2.93%
8: 4.78%
9: 7.02%
10: 9.41%
11: 11.42%
12: 12.89%
13: 13.27%
14: 12.35%
15: 10.11%
16: 7.25%
17: 4.17%
18: 1.62%


Accumulative probabilities



18: 1.62%
17: 5.79%
16: 13.04%
15: 23.15%
14: 35.49%
13: 48.77%
12: 61.65%
11: 73.07%
10: 82.48%
9: 89.51%
8: 94.29%
7: 97.22%
6: 98.84%
5: 99.61%
4: 99.92%
3: 100.00%


Expected single ability score value: 12.24



Expected total: 73.47 (as you suspected in the question)



And here are the probabilities for score totals (up to 6 significant digits). Note that there are a bunch of zeros and 100%s in here, these are mostly because the chances are just so astronomically small or big that 6 significant digits aren't enough (except for the accumulated probabilities for minimum values, since of course nothing can be smaller than the minimum).



Total score probabilites



18: 0.000000%
19: 0.000000%
20: 0.000000%
21: 0.000000%
22: 0.000000%
23: 0.000000%
24: 0.000000%
25: 0.000000%
26: 0.000000%
27: 0.000000%
28: 0.000000%
29: 0.000000%
30: 0.000000%
31: 0.000000%
32: 0.000000%
33: 0.000000%
34: 0.000001%
35: 0.000002%
36: 0.000005%
37: 0.000011%
38: 0.000024%
39: 0.000050%
40: 0.000101%
41: 0.000197%
42: 0.000375%
43: 0.000696%
44: 0.001259%
45: 0.002225%
46: 0.003842%
47: 0.006487%
48: 0.010713%
49: 0.017318%
50: 0.027414%
51: 0.042516%
52: 0.064621%
53: 0.096296%
54: 0.140730%
55: 0.201753%
56: 0.283804%
57: 0.391803%
58: 0.530938%
59: 0.706332%
60: 0.922602%
61: 1.183308%
62: 1.490344%
63: 1.843300%
64: 2.238874%
65: 2.670427%
66: 3.127736%
67: 3.597061%
68: 4.061548%
69: 4.502022%
70: 4.898120%
71: 5.229710%
72: 5.478471%
73: 5.629472%
74: 5.672574%
75: 5.603493%
76: 5.424356%
77: 5.143685%
78: 4.775768%
79: 4.339492%
80: 3.856750%
81: 3.350615%
82: 2.843496%
83: 2.355468%
84: 1.902979%
85: 1.498018%
86: 1.147820%
87: 0.855065%
88: 0.618481%
89: 0.433730%
90: 0.294415%
91: 0.193078%
92: 0.122070%
93: 0.074221%
94: 0.043277%
95: 0.024120%
96: 0.012800%
97: 0.006438%
98: 0.003053%
99: 0.001355%
100: 0.000559%
101: 0.000212%
102: 0.000073%
103: 0.000022%
104: 0.000006%
105: 0.000001%
106: 0.000000%
107: 0.000000%
108: 0.000000%


Total score accumulated probabilites



108: 0.000000%
107: 0.000000%
106: 0.000000%
105: 0.000002%
104: 0.000007%
103: 0.000030%
102: 0.000102%
101: 0.000314%
100: 0.000873%
99: 0.002228%
98: 0.005280%
97: 0.011719%
96: 0.024518%
95: 0.048638%
94: 0.091916%
93: 0.166137%
92: 0.288207%
91: 0.481284%
90: 0.775699%
89: 1.209429%
88: 1.827910%
87: 2.682974%
86: 3.830794%
85: 5.328812%
84: 7.231791%
83: 9.587259%
82: 12.430755%
81: 15.781370%
80: 19.638120%
79: 23.977612%
78: 28.753380%
77: 33.897065%
76: 39.321421%
75: 44.924914%
74: 50.597488%
73: 56.226960%
72: 61.705431%
71: 66.935141%
70: 71.833262%
69: 76.335284%
68: 80.396832%
67: 83.993893%
66: 87.121629%
65: 89.792056%
64: 92.030931%
63: 93.874230%
62: 95.364575%
61: 96.547883%
60: 97.470485%
59: 98.176817%
58: 98.707756%
57: 99.099559%
56: 99.383363%
55: 99.585116%
54: 99.725846%
53: 99.822142%
52: 99.886763%
51: 99.929279%
50: 99.956693%
49: 99.974011%
48: 99.984724%
47: 99.991211%
46: 99.995053%
45: 99.997279%
44: 99.998538%
43: 99.999233%
42: 99.999608%
41: 99.999805%
40: 99.999905%
39: 99.999956%
38: 99.999980%
37: 99.999991%
36: 99.999996%
35: 99.999998%
34: 99.999999%
33: 100.000000%
32: 100.000000%
31: 100.000000%
30: 100.000000%
29: 100.000000%
28: 100.000000%
27: 100.000000%
26: 100.000000%
25: 100.000000%
24: 100.000000%
23: 100.000000%
22: 100.000000%
21: 100.000000%
20: 100.000000%
19: 100.000000%
18: 100.000000%


Source code for generating the table (Haskell)





-# LANGUAGE Strict, TypeApplications #-
import qualified Data.Map as M
import Text.Printf
import Data.List(sortBy)
import Data.Ord(comparing)
import Control.Applicative((<|>))
import Data.Ratio

rolls :: [Int]
rolls = do
a <- dice
b <- dice
c <- dice
d <- dice
return . sum . take 3 . sortBy (comparing negate) $ [a,b,c,d] where
dice = [1..6]

frequencies :: M.Map Int Int
frequencies = foldr (v m -> M.alter (f -> fmap (+1) f <|> Just 1) v m) M.empty rolls

probabilities :: M.Map Int Rational
probabilities = fmap ((/ 6^4) . fromIntegral) frequencies

printProb :: Int -> Rational -> IO ()
printProb k v = printf "%d: %.6f%%n" k (fromRational @Double $ v*100)

totalScoreInstances :: [(Int, Rational)]
totalScoreInstances = do
(strength, pStr) <- oneScore
(constitution, pCon) <- oneScore
(dexterity, pDex) <- oneScore
(wisdom, pWis) <- oneScore
(intelligence, pInt) <- oneScore
(charisma, pCha) <- oneScore
let totalScore
= strength
+ constitution
+ dexterity
+ wisdom
+ intelligence
+ charisma
let totalProb
= pStr
* pCon
* pDex
* pWis
* pInt
* pCha
return (totalScore, totalProb)
where oneScore = M.toList probabilities

totalScoreProbabilities :: M.Map Int Rational
totalScoreProbabilities = foldl
(m (s, p) -> M.alter (tp -> fmap (+ p) tp <|> Just p) s m)
M.empty
totalScoreInstances

main = do
putStrLn "## Indivial Score Probabilities"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v ) (return ()) probabilities
putStrLn "```"
putStrLn "## Accumulative probabilities"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) probabilities
putStrLn "```"
let expected = M.foldlWithKey (t k v -> t + (fromIntegral k * v)) 0.0 probabilities
printf "Expected single ability score value: %.2fn" $ fromRational @Double expected
printf "nExpected total: %.2fn" $ fromRational @Double expected * 6
putStrLn "## Total score probabilites"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v) (return ()) totalScoreProbabilities
putStrLn "```"
putStrLn "## Total score accumulated probabilites"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) totalScoreProbabilities
putStrLn "```"


Note: if you want to run this yourself, compile with ghc -O2 and don't try to run it via the interpreter if you want to see the result before the heat death of the universe.






share|improve this answer











$endgroup$










  • 4




    $begingroup$
    It might be worth mentioning that the ability score system is set up with 10/11 being human average in that ability (which supports your argument that even with a low point-buy, PCs end up being more or less exceptional).
    $endgroup$
    – Rubiksmoose
    7 hours ago






  • 1




    $begingroup$
    Note that anydice presents this in a prettier way, but this does present an easy way to calculate these things - literally just enumerate all the possible outcomes and sum up their probabilities. I don't know how anydice works, whether it's by sampling or if they actually use some exact analysis. I'm not a statistician so I'm doing it the naive way here.
    $endgroup$
    – Cubic
    6 hours ago










  • $begingroup$
    I've never seen "accumulative" used in this context, although that may be a regional difference. Are you sure you don't mean "Cumulative probabilities"?
    $endgroup$
    – Steven Jackson
    5 hours ago







  • 1




    $begingroup$
    A more reader-friendly term, especially for the not math-inclined audience the question represents, would be “at least”, as in “odds of the [score/total/whatever] being at least this much”, or whatever nicer phrasing you can think of.
    $endgroup$
    – SevenSidedDie
    4 hours ago






  • 3




    $begingroup$
    @Cubic anydice gives you exact results, unless you exceed its limitations on recursive functions, or you deliberately hack together an anydice program which does things in a sampling way (usually only attempted because the exact way takes too long for the server to be able to compute).
    $endgroup$
    – Carcer
    2 hours ago













10












10








10





$begingroup$

PCs are exceptional regardless of their ability scores



Answering your actual question rather than the math one first: Your hang-up is that you place too much emphasis on ability scores. A fighter is already exceptional just for being a fighter, just as a wizard, cleric or druid are already exceptional for belonging to these classes. Ability scores influence things the characters can do, but that's at best describing the relative strengths of PCs against each other - and even then it's a very inexact and misleading measure, my dwarf barbarian with 28 strength is not really more exceptional than sorcerer with their highest stat being a 17 in charisma, but with the ability to destroy castles at a whim via Earthquake.



Thus, I don't believe your problem can be solved via math, certainly not by slightly tweaking the ability scores players get; It's more a matter of framing PCs as larger than life heroes, which is very much within your purview as a DM.



The literal math question



Here are the exact (to two significant digits) probabilities of both getting the individual scores and getting a score that is at least as great as a particular score (using the 4d6 drop lowest system). But like I said earlier, I'm not sure that knowing this will improve matters much for you (note that an "average" human is assumed to have values at around 10 (see also the Commoner Statblock):



Indivial Score Probabilities



3: 0.08%
4: 0.31%
5: 0.77%
6: 1.62%
7: 2.93%
8: 4.78%
9: 7.02%
10: 9.41%
11: 11.42%
12: 12.89%
13: 13.27%
14: 12.35%
15: 10.11%
16: 7.25%
17: 4.17%
18: 1.62%


Accumulative probabilities



18: 1.62%
17: 5.79%
16: 13.04%
15: 23.15%
14: 35.49%
13: 48.77%
12: 61.65%
11: 73.07%
10: 82.48%
9: 89.51%
8: 94.29%
7: 97.22%
6: 98.84%
5: 99.61%
4: 99.92%
3: 100.00%


Expected single ability score value: 12.24



Expected total: 73.47 (as you suspected in the question)



And here are the probabilities for score totals (up to 6 significant digits). Note that there are a bunch of zeros and 100%s in here, these are mostly because the chances are just so astronomically small or big that 6 significant digits aren't enough (except for the accumulated probabilities for minimum values, since of course nothing can be smaller than the minimum).



Total score probabilites



18: 0.000000%
19: 0.000000%
20: 0.000000%
21: 0.000000%
22: 0.000000%
23: 0.000000%
24: 0.000000%
25: 0.000000%
26: 0.000000%
27: 0.000000%
28: 0.000000%
29: 0.000000%
30: 0.000000%
31: 0.000000%
32: 0.000000%
33: 0.000000%
34: 0.000001%
35: 0.000002%
36: 0.000005%
37: 0.000011%
38: 0.000024%
39: 0.000050%
40: 0.000101%
41: 0.000197%
42: 0.000375%
43: 0.000696%
44: 0.001259%
45: 0.002225%
46: 0.003842%
47: 0.006487%
48: 0.010713%
49: 0.017318%
50: 0.027414%
51: 0.042516%
52: 0.064621%
53: 0.096296%
54: 0.140730%
55: 0.201753%
56: 0.283804%
57: 0.391803%
58: 0.530938%
59: 0.706332%
60: 0.922602%
61: 1.183308%
62: 1.490344%
63: 1.843300%
64: 2.238874%
65: 2.670427%
66: 3.127736%
67: 3.597061%
68: 4.061548%
69: 4.502022%
70: 4.898120%
71: 5.229710%
72: 5.478471%
73: 5.629472%
74: 5.672574%
75: 5.603493%
76: 5.424356%
77: 5.143685%
78: 4.775768%
79: 4.339492%
80: 3.856750%
81: 3.350615%
82: 2.843496%
83: 2.355468%
84: 1.902979%
85: 1.498018%
86: 1.147820%
87: 0.855065%
88: 0.618481%
89: 0.433730%
90: 0.294415%
91: 0.193078%
92: 0.122070%
93: 0.074221%
94: 0.043277%
95: 0.024120%
96: 0.012800%
97: 0.006438%
98: 0.003053%
99: 0.001355%
100: 0.000559%
101: 0.000212%
102: 0.000073%
103: 0.000022%
104: 0.000006%
105: 0.000001%
106: 0.000000%
107: 0.000000%
108: 0.000000%


Total score accumulated probabilites



108: 0.000000%
107: 0.000000%
106: 0.000000%
105: 0.000002%
104: 0.000007%
103: 0.000030%
102: 0.000102%
101: 0.000314%
100: 0.000873%
99: 0.002228%
98: 0.005280%
97: 0.011719%
96: 0.024518%
95: 0.048638%
94: 0.091916%
93: 0.166137%
92: 0.288207%
91: 0.481284%
90: 0.775699%
89: 1.209429%
88: 1.827910%
87: 2.682974%
86: 3.830794%
85: 5.328812%
84: 7.231791%
83: 9.587259%
82: 12.430755%
81: 15.781370%
80: 19.638120%
79: 23.977612%
78: 28.753380%
77: 33.897065%
76: 39.321421%
75: 44.924914%
74: 50.597488%
73: 56.226960%
72: 61.705431%
71: 66.935141%
70: 71.833262%
69: 76.335284%
68: 80.396832%
67: 83.993893%
66: 87.121629%
65: 89.792056%
64: 92.030931%
63: 93.874230%
62: 95.364575%
61: 96.547883%
60: 97.470485%
59: 98.176817%
58: 98.707756%
57: 99.099559%
56: 99.383363%
55: 99.585116%
54: 99.725846%
53: 99.822142%
52: 99.886763%
51: 99.929279%
50: 99.956693%
49: 99.974011%
48: 99.984724%
47: 99.991211%
46: 99.995053%
45: 99.997279%
44: 99.998538%
43: 99.999233%
42: 99.999608%
41: 99.999805%
40: 99.999905%
39: 99.999956%
38: 99.999980%
37: 99.999991%
36: 99.999996%
35: 99.999998%
34: 99.999999%
33: 100.000000%
32: 100.000000%
31: 100.000000%
30: 100.000000%
29: 100.000000%
28: 100.000000%
27: 100.000000%
26: 100.000000%
25: 100.000000%
24: 100.000000%
23: 100.000000%
22: 100.000000%
21: 100.000000%
20: 100.000000%
19: 100.000000%
18: 100.000000%


Source code for generating the table (Haskell)





-# LANGUAGE Strict, TypeApplications #-
import qualified Data.Map as M
import Text.Printf
import Data.List(sortBy)
import Data.Ord(comparing)
import Control.Applicative((<|>))
import Data.Ratio

rolls :: [Int]
rolls = do
a <- dice
b <- dice
c <- dice
d <- dice
return . sum . take 3 . sortBy (comparing negate) $ [a,b,c,d] where
dice = [1..6]

frequencies :: M.Map Int Int
frequencies = foldr (v m -> M.alter (f -> fmap (+1) f <|> Just 1) v m) M.empty rolls

probabilities :: M.Map Int Rational
probabilities = fmap ((/ 6^4) . fromIntegral) frequencies

printProb :: Int -> Rational -> IO ()
printProb k v = printf "%d: %.6f%%n" k (fromRational @Double $ v*100)

totalScoreInstances :: [(Int, Rational)]
totalScoreInstances = do
(strength, pStr) <- oneScore
(constitution, pCon) <- oneScore
(dexterity, pDex) <- oneScore
(wisdom, pWis) <- oneScore
(intelligence, pInt) <- oneScore
(charisma, pCha) <- oneScore
let totalScore
= strength
+ constitution
+ dexterity
+ wisdom
+ intelligence
+ charisma
let totalProb
= pStr
* pCon
* pDex
* pWis
* pInt
* pCha
return (totalScore, totalProb)
where oneScore = M.toList probabilities

totalScoreProbabilities :: M.Map Int Rational
totalScoreProbabilities = foldl
(m (s, p) -> M.alter (tp -> fmap (+ p) tp <|> Just p) s m)
M.empty
totalScoreInstances

main = do
putStrLn "## Indivial Score Probabilities"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v ) (return ()) probabilities
putStrLn "```"
putStrLn "## Accumulative probabilities"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) probabilities
putStrLn "```"
let expected = M.foldlWithKey (t k v -> t + (fromIntegral k * v)) 0.0 probabilities
printf "Expected single ability score value: %.2fn" $ fromRational @Double expected
printf "nExpected total: %.2fn" $ fromRational @Double expected * 6
putStrLn "## Total score probabilites"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v) (return ()) totalScoreProbabilities
putStrLn "```"
putStrLn "## Total score accumulated probabilites"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) totalScoreProbabilities
putStrLn "```"


Note: if you want to run this yourself, compile with ghc -O2 and don't try to run it via the interpreter if you want to see the result before the heat death of the universe.






share|improve this answer











$endgroup$



PCs are exceptional regardless of their ability scores



Answering your actual question rather than the math one first: Your hang-up is that you place too much emphasis on ability scores. A fighter is already exceptional just for being a fighter, just as a wizard, cleric or druid are already exceptional for belonging to these classes. Ability scores influence things the characters can do, but that's at best describing the relative strengths of PCs against each other - and even then it's a very inexact and misleading measure, my dwarf barbarian with 28 strength is not really more exceptional than sorcerer with their highest stat being a 17 in charisma, but with the ability to destroy castles at a whim via Earthquake.



Thus, I don't believe your problem can be solved via math, certainly not by slightly tweaking the ability scores players get; It's more a matter of framing PCs as larger than life heroes, which is very much within your purview as a DM.



The literal math question



Here are the exact (to two significant digits) probabilities of both getting the individual scores and getting a score that is at least as great as a particular score (using the 4d6 drop lowest system). But like I said earlier, I'm not sure that knowing this will improve matters much for you (note that an "average" human is assumed to have values at around 10 (see also the Commoner Statblock):



Indivial Score Probabilities



3: 0.08%
4: 0.31%
5: 0.77%
6: 1.62%
7: 2.93%
8: 4.78%
9: 7.02%
10: 9.41%
11: 11.42%
12: 12.89%
13: 13.27%
14: 12.35%
15: 10.11%
16: 7.25%
17: 4.17%
18: 1.62%


Accumulative probabilities



18: 1.62%
17: 5.79%
16: 13.04%
15: 23.15%
14: 35.49%
13: 48.77%
12: 61.65%
11: 73.07%
10: 82.48%
9: 89.51%
8: 94.29%
7: 97.22%
6: 98.84%
5: 99.61%
4: 99.92%
3: 100.00%


Expected single ability score value: 12.24



Expected total: 73.47 (as you suspected in the question)



And here are the probabilities for score totals (up to 6 significant digits). Note that there are a bunch of zeros and 100%s in here, these are mostly because the chances are just so astronomically small or big that 6 significant digits aren't enough (except for the accumulated probabilities for minimum values, since of course nothing can be smaller than the minimum).



Total score probabilites



18: 0.000000%
19: 0.000000%
20: 0.000000%
21: 0.000000%
22: 0.000000%
23: 0.000000%
24: 0.000000%
25: 0.000000%
26: 0.000000%
27: 0.000000%
28: 0.000000%
29: 0.000000%
30: 0.000000%
31: 0.000000%
32: 0.000000%
33: 0.000000%
34: 0.000001%
35: 0.000002%
36: 0.000005%
37: 0.000011%
38: 0.000024%
39: 0.000050%
40: 0.000101%
41: 0.000197%
42: 0.000375%
43: 0.000696%
44: 0.001259%
45: 0.002225%
46: 0.003842%
47: 0.006487%
48: 0.010713%
49: 0.017318%
50: 0.027414%
51: 0.042516%
52: 0.064621%
53: 0.096296%
54: 0.140730%
55: 0.201753%
56: 0.283804%
57: 0.391803%
58: 0.530938%
59: 0.706332%
60: 0.922602%
61: 1.183308%
62: 1.490344%
63: 1.843300%
64: 2.238874%
65: 2.670427%
66: 3.127736%
67: 3.597061%
68: 4.061548%
69: 4.502022%
70: 4.898120%
71: 5.229710%
72: 5.478471%
73: 5.629472%
74: 5.672574%
75: 5.603493%
76: 5.424356%
77: 5.143685%
78: 4.775768%
79: 4.339492%
80: 3.856750%
81: 3.350615%
82: 2.843496%
83: 2.355468%
84: 1.902979%
85: 1.498018%
86: 1.147820%
87: 0.855065%
88: 0.618481%
89: 0.433730%
90: 0.294415%
91: 0.193078%
92: 0.122070%
93: 0.074221%
94: 0.043277%
95: 0.024120%
96: 0.012800%
97: 0.006438%
98: 0.003053%
99: 0.001355%
100: 0.000559%
101: 0.000212%
102: 0.000073%
103: 0.000022%
104: 0.000006%
105: 0.000001%
106: 0.000000%
107: 0.000000%
108: 0.000000%


Total score accumulated probabilites



108: 0.000000%
107: 0.000000%
106: 0.000000%
105: 0.000002%
104: 0.000007%
103: 0.000030%
102: 0.000102%
101: 0.000314%
100: 0.000873%
99: 0.002228%
98: 0.005280%
97: 0.011719%
96: 0.024518%
95: 0.048638%
94: 0.091916%
93: 0.166137%
92: 0.288207%
91: 0.481284%
90: 0.775699%
89: 1.209429%
88: 1.827910%
87: 2.682974%
86: 3.830794%
85: 5.328812%
84: 7.231791%
83: 9.587259%
82: 12.430755%
81: 15.781370%
80: 19.638120%
79: 23.977612%
78: 28.753380%
77: 33.897065%
76: 39.321421%
75: 44.924914%
74: 50.597488%
73: 56.226960%
72: 61.705431%
71: 66.935141%
70: 71.833262%
69: 76.335284%
68: 80.396832%
67: 83.993893%
66: 87.121629%
65: 89.792056%
64: 92.030931%
63: 93.874230%
62: 95.364575%
61: 96.547883%
60: 97.470485%
59: 98.176817%
58: 98.707756%
57: 99.099559%
56: 99.383363%
55: 99.585116%
54: 99.725846%
53: 99.822142%
52: 99.886763%
51: 99.929279%
50: 99.956693%
49: 99.974011%
48: 99.984724%
47: 99.991211%
46: 99.995053%
45: 99.997279%
44: 99.998538%
43: 99.999233%
42: 99.999608%
41: 99.999805%
40: 99.999905%
39: 99.999956%
38: 99.999980%
37: 99.999991%
36: 99.999996%
35: 99.999998%
34: 99.999999%
33: 100.000000%
32: 100.000000%
31: 100.000000%
30: 100.000000%
29: 100.000000%
28: 100.000000%
27: 100.000000%
26: 100.000000%
25: 100.000000%
24: 100.000000%
23: 100.000000%
22: 100.000000%
21: 100.000000%
20: 100.000000%
19: 100.000000%
18: 100.000000%


Source code for generating the table (Haskell)





-# LANGUAGE Strict, TypeApplications #-
import qualified Data.Map as M
import Text.Printf
import Data.List(sortBy)
import Data.Ord(comparing)
import Control.Applicative((<|>))
import Data.Ratio

rolls :: [Int]
rolls = do
a <- dice
b <- dice
c <- dice
d <- dice
return . sum . take 3 . sortBy (comparing negate) $ [a,b,c,d] where
dice = [1..6]

frequencies :: M.Map Int Int
frequencies = foldr (v m -> M.alter (f -> fmap (+1) f <|> Just 1) v m) M.empty rolls

probabilities :: M.Map Int Rational
probabilities = fmap ((/ 6^4) . fromIntegral) frequencies

printProb :: Int -> Rational -> IO ()
printProb k v = printf "%d: %.6f%%n" k (fromRational @Double $ v*100)

totalScoreInstances :: [(Int, Rational)]
totalScoreInstances = do
(strength, pStr) <- oneScore
(constitution, pCon) <- oneScore
(dexterity, pDex) <- oneScore
(wisdom, pWis) <- oneScore
(intelligence, pInt) <- oneScore
(charisma, pCha) <- oneScore
let totalScore
= strength
+ constitution
+ dexterity
+ wisdom
+ intelligence
+ charisma
let totalProb
= pStr
* pCon
* pDex
* pWis
* pInt
* pCha
return (totalScore, totalProb)
where oneScore = M.toList probabilities

totalScoreProbabilities :: M.Map Int Rational
totalScoreProbabilities = foldl
(m (s, p) -> M.alter (tp -> fmap (+ p) tp <|> Just p) s m)
M.empty
totalScoreInstances

main = do
putStrLn "## Indivial Score Probabilities"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v ) (return ()) probabilities
putStrLn "```"
putStrLn "## Accumulative probabilities"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) probabilities
putStrLn "```"
let expected = M.foldlWithKey (t k v -> t + (fromIntegral k * v)) 0.0 probabilities
printf "Expected single ability score value: %.2fn" $ fromRational @Double expected
printf "nExpected total: %.2fn" $ fromRational @Double expected * 6
putStrLn "## Total score probabilites"
putStrLn "```"
M.foldlWithKey (m k v -> m >> printProb k v) (return ()) totalScoreProbabilities
putStrLn "```"
putStrLn "## Total score accumulated probabilites"
putStrLn "```"
fst $ M.foldrWithKey (k v (m,acc) -> let acc' = acc+v in (m >> printProb k acc', acc')) (return (), 0) totalScoreProbabilities
putStrLn "```"


Note: if you want to run this yourself, compile with ghc -O2 and don't try to run it via the interpreter if you want to see the result before the heat death of the universe.







share|improve this answer














share|improve this answer



share|improve this answer








edited 6 hours ago

























answered 7 hours ago









CubicCubic

1,8505 silver badges18 bronze badges




1,8505 silver badges18 bronze badges










  • 4




    $begingroup$
    It might be worth mentioning that the ability score system is set up with 10/11 being human average in that ability (which supports your argument that even with a low point-buy, PCs end up being more or less exceptional).
    $endgroup$
    – Rubiksmoose
    7 hours ago






  • 1




    $begingroup$
    Note that anydice presents this in a prettier way, but this does present an easy way to calculate these things - literally just enumerate all the possible outcomes and sum up their probabilities. I don't know how anydice works, whether it's by sampling or if they actually use some exact analysis. I'm not a statistician so I'm doing it the naive way here.
    $endgroup$
    – Cubic
    6 hours ago










  • $begingroup$
    I've never seen "accumulative" used in this context, although that may be a regional difference. Are you sure you don't mean "Cumulative probabilities"?
    $endgroup$
    – Steven Jackson
    5 hours ago







  • 1




    $begingroup$
    A more reader-friendly term, especially for the not math-inclined audience the question represents, would be “at least”, as in “odds of the [score/total/whatever] being at least this much”, or whatever nicer phrasing you can think of.
    $endgroup$
    – SevenSidedDie
    4 hours ago






  • 3




    $begingroup$
    @Cubic anydice gives you exact results, unless you exceed its limitations on recursive functions, or you deliberately hack together an anydice program which does things in a sampling way (usually only attempted because the exact way takes too long for the server to be able to compute).
    $endgroup$
    – Carcer
    2 hours ago












  • 4




    $begingroup$
    It might be worth mentioning that the ability score system is set up with 10/11 being human average in that ability (which supports your argument that even with a low point-buy, PCs end up being more or less exceptional).
    $endgroup$
    – Rubiksmoose
    7 hours ago






  • 1




    $begingroup$
    Note that anydice presents this in a prettier way, but this does present an easy way to calculate these things - literally just enumerate all the possible outcomes and sum up their probabilities. I don't know how anydice works, whether it's by sampling or if they actually use some exact analysis. I'm not a statistician so I'm doing it the naive way here.
    $endgroup$
    – Cubic
    6 hours ago










  • $begingroup$
    I've never seen "accumulative" used in this context, although that may be a regional difference. Are you sure you don't mean "Cumulative probabilities"?
    $endgroup$
    – Steven Jackson
    5 hours ago







  • 1




    $begingroup$
    A more reader-friendly term, especially for the not math-inclined audience the question represents, would be “at least”, as in “odds of the [score/total/whatever] being at least this much”, or whatever nicer phrasing you can think of.
    $endgroup$
    – SevenSidedDie
    4 hours ago






  • 3




    $begingroup$
    @Cubic anydice gives you exact results, unless you exceed its limitations on recursive functions, or you deliberately hack together an anydice program which does things in a sampling way (usually only attempted because the exact way takes too long for the server to be able to compute).
    $endgroup$
    – Carcer
    2 hours ago







4




4




$begingroup$
It might be worth mentioning that the ability score system is set up with 10/11 being human average in that ability (which supports your argument that even with a low point-buy, PCs end up being more or less exceptional).
$endgroup$
– Rubiksmoose
7 hours ago




$begingroup$
It might be worth mentioning that the ability score system is set up with 10/11 being human average in that ability (which supports your argument that even with a low point-buy, PCs end up being more or less exceptional).
$endgroup$
– Rubiksmoose
7 hours ago




1




1




$begingroup$
Note that anydice presents this in a prettier way, but this does present an easy way to calculate these things - literally just enumerate all the possible outcomes and sum up their probabilities. I don't know how anydice works, whether it's by sampling or if they actually use some exact analysis. I'm not a statistician so I'm doing it the naive way here.
$endgroup$
– Cubic
6 hours ago




$begingroup$
Note that anydice presents this in a prettier way, but this does present an easy way to calculate these things - literally just enumerate all the possible outcomes and sum up their probabilities. I don't know how anydice works, whether it's by sampling or if they actually use some exact analysis. I'm not a statistician so I'm doing it the naive way here.
$endgroup$
– Cubic
6 hours ago












$begingroup$
I've never seen "accumulative" used in this context, although that may be a regional difference. Are you sure you don't mean "Cumulative probabilities"?
$endgroup$
– Steven Jackson
5 hours ago





$begingroup$
I've never seen "accumulative" used in this context, although that may be a regional difference. Are you sure you don't mean "Cumulative probabilities"?
$endgroup$
– Steven Jackson
5 hours ago





1




1




$begingroup$
A more reader-friendly term, especially for the not math-inclined audience the question represents, would be “at least”, as in “odds of the [score/total/whatever] being at least this much”, or whatever nicer phrasing you can think of.
$endgroup$
– SevenSidedDie
4 hours ago




$begingroup$
A more reader-friendly term, especially for the not math-inclined audience the question represents, would be “at least”, as in “odds of the [score/total/whatever] being at least this much”, or whatever nicer phrasing you can think of.
$endgroup$
– SevenSidedDie
4 hours ago




3




3




$begingroup$
@Cubic anydice gives you exact results, unless you exceed its limitations on recursive functions, or you deliberately hack together an anydice program which does things in a sampling way (usually only attempted because the exact way takes too long for the server to be able to compute).
$endgroup$
– Carcer
2 hours ago




$begingroup$
@Cubic anydice gives you exact results, unless you exceed its limitations on recursive functions, or you deliberately hack together an anydice program which does things in a sampling way (usually only attempted because the exact way takes too long for the server to be able to compute).
$endgroup$
– Carcer
2 hours ago













13












$begingroup$

Here is an anydice program that does what you wanted



https://anydice.com/program/171e4

The code:



T: 0
loop X over 1..6

R:[highest 3 of 4d6]
T: T+R

output T


How it works:



  1. We define a variable, T to be equal to 0.

  2. Then we run the bracketed section the first time.

  3. Each time a variable, R, is the result of 4d6 drop the lowest.

  4. We add the variable R to T.

    Then we run the bracketed section another five times (increasing T by R for each new roll).

  5. Finally we have our out variable T, which is the sum of all 6 of our rolls.

You can click various buttons in the link to view different statistics, for example "At Most" will show you totals on the far-left and the percent chance of getting at most that total to its right.



We can see that the odds of getting at most 70 is 33.06%

The odds of getting at most 78 is 76.02%

The odds of getting at least 80 is 19.64%

The odds of getting at least 90 is .78%




An alternative code method of doing this is the following as pointed out by @Sdjz:
https://anydice.com/program/171e5



output [highest 3 of 4d6] + [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]


Their code does the same thing in an arguably easier to read way or more obvious/intuitive way, simply adding together six rolls of "4d6 drop the lowest".



graph of probabilities




Yet another equivalent method was brought up by @LouisWasserman found at this link: https://anydice.com/program/171f0



output 6d[highest 3 of 4d6]


This works because when anydice rolls dice, for example 3d6, it rolls 1d6 three times and adds the results together.

Their code has it roll six dice with "4d6 drop the lowest" sides.

It then adds together the results which is equivalent to the other two methods above.






share|improve this answer











$endgroup$














  • $begingroup$
    @Medix2 Please do.
    $endgroup$
    – Louis Wasserman
    5 hours ago










  • $begingroup$
    @LouisWasserman Do you think that explanation is understandable?
    $endgroup$
    – Medix2
    5 hours ago






  • 2




    $begingroup$
    Thank you very much for your answer. I had a little trouble following it because I am not familiar with "any dice" (thought it sounds like something I should look into). After reading both this one and the next one I had a good enough grasp on the answers to check them against each other, discover that you both arrived at the same conclusions, and understand those conclusions. So thanks!
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    @Medix2 Team win! :)
    $endgroup$
    – KorvinStarmast
    1 hour ago















13












$begingroup$

Here is an anydice program that does what you wanted



https://anydice.com/program/171e4

The code:



T: 0
loop X over 1..6

R:[highest 3 of 4d6]
T: T+R

output T


How it works:



  1. We define a variable, T to be equal to 0.

  2. Then we run the bracketed section the first time.

  3. Each time a variable, R, is the result of 4d6 drop the lowest.

  4. We add the variable R to T.

    Then we run the bracketed section another five times (increasing T by R for each new roll).

  5. Finally we have our out variable T, which is the sum of all 6 of our rolls.

You can click various buttons in the link to view different statistics, for example "At Most" will show you totals on the far-left and the percent chance of getting at most that total to its right.



We can see that the odds of getting at most 70 is 33.06%

The odds of getting at most 78 is 76.02%

The odds of getting at least 80 is 19.64%

The odds of getting at least 90 is .78%




An alternative code method of doing this is the following as pointed out by @Sdjz:
https://anydice.com/program/171e5



output [highest 3 of 4d6] + [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]


Their code does the same thing in an arguably easier to read way or more obvious/intuitive way, simply adding together six rolls of "4d6 drop the lowest".



graph of probabilities




Yet another equivalent method was brought up by @LouisWasserman found at this link: https://anydice.com/program/171f0



output 6d[highest 3 of 4d6]


This works because when anydice rolls dice, for example 3d6, it rolls 1d6 three times and adds the results together.

Their code has it roll six dice with "4d6 drop the lowest" sides.

It then adds together the results which is equivalent to the other two methods above.






share|improve this answer











$endgroup$














  • $begingroup$
    @Medix2 Please do.
    $endgroup$
    – Louis Wasserman
    5 hours ago










  • $begingroup$
    @LouisWasserman Do you think that explanation is understandable?
    $endgroup$
    – Medix2
    5 hours ago






  • 2




    $begingroup$
    Thank you very much for your answer. I had a little trouble following it because I am not familiar with "any dice" (thought it sounds like something I should look into). After reading both this one and the next one I had a good enough grasp on the answers to check them against each other, discover that you both arrived at the same conclusions, and understand those conclusions. So thanks!
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    @Medix2 Team win! :)
    $endgroup$
    – KorvinStarmast
    1 hour ago













13












13








13





$begingroup$

Here is an anydice program that does what you wanted



https://anydice.com/program/171e4

The code:



T: 0
loop X over 1..6

R:[highest 3 of 4d6]
T: T+R

output T


How it works:



  1. We define a variable, T to be equal to 0.

  2. Then we run the bracketed section the first time.

  3. Each time a variable, R, is the result of 4d6 drop the lowest.

  4. We add the variable R to T.

    Then we run the bracketed section another five times (increasing T by R for each new roll).

  5. Finally we have our out variable T, which is the sum of all 6 of our rolls.

You can click various buttons in the link to view different statistics, for example "At Most" will show you totals on the far-left and the percent chance of getting at most that total to its right.



We can see that the odds of getting at most 70 is 33.06%

The odds of getting at most 78 is 76.02%

The odds of getting at least 80 is 19.64%

The odds of getting at least 90 is .78%




An alternative code method of doing this is the following as pointed out by @Sdjz:
https://anydice.com/program/171e5



output [highest 3 of 4d6] + [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]


Their code does the same thing in an arguably easier to read way or more obvious/intuitive way, simply adding together six rolls of "4d6 drop the lowest".



graph of probabilities




Yet another equivalent method was brought up by @LouisWasserman found at this link: https://anydice.com/program/171f0



output 6d[highest 3 of 4d6]


This works because when anydice rolls dice, for example 3d6, it rolls 1d6 three times and adds the results together.

Their code has it roll six dice with "4d6 drop the lowest" sides.

It then adds together the results which is equivalent to the other two methods above.






share|improve this answer











$endgroup$



Here is an anydice program that does what you wanted



https://anydice.com/program/171e4

The code:



T: 0
loop X over 1..6

R:[highest 3 of 4d6]
T: T+R

output T


How it works:



  1. We define a variable, T to be equal to 0.

  2. Then we run the bracketed section the first time.

  3. Each time a variable, R, is the result of 4d6 drop the lowest.

  4. We add the variable R to T.

    Then we run the bracketed section another five times (increasing T by R for each new roll).

  5. Finally we have our out variable T, which is the sum of all 6 of our rolls.

You can click various buttons in the link to view different statistics, for example "At Most" will show you totals on the far-left and the percent chance of getting at most that total to its right.



We can see that the odds of getting at most 70 is 33.06%

The odds of getting at most 78 is 76.02%

The odds of getting at least 80 is 19.64%

The odds of getting at least 90 is .78%




An alternative code method of doing this is the following as pointed out by @Sdjz:
https://anydice.com/program/171e5



output [highest 3 of 4d6] + [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]+ [highest 3 of 4d6]


Their code does the same thing in an arguably easier to read way or more obvious/intuitive way, simply adding together six rolls of "4d6 drop the lowest".



graph of probabilities




Yet another equivalent method was brought up by @LouisWasserman found at this link: https://anydice.com/program/171f0



output 6d[highest 3 of 4d6]


This works because when anydice rolls dice, for example 3d6, it rolls 1d6 three times and adds the results together.

Their code has it roll six dice with "4d6 drop the lowest" sides.

It then adds together the results which is equivalent to the other two methods above.







share|improve this answer














share|improve this answer



share|improve this answer








edited 1 hour ago









KorvinStarmast

93.6k23 gold badges312 silver badges503 bronze badges




93.6k23 gold badges312 silver badges503 bronze badges










answered 8 hours ago









Medix2Medix2

4,9792 gold badges12 silver badges61 bronze badges




4,9792 gold badges12 silver badges61 bronze badges














  • $begingroup$
    @Medix2 Please do.
    $endgroup$
    – Louis Wasserman
    5 hours ago










  • $begingroup$
    @LouisWasserman Do you think that explanation is understandable?
    $endgroup$
    – Medix2
    5 hours ago






  • 2




    $begingroup$
    Thank you very much for your answer. I had a little trouble following it because I am not familiar with "any dice" (thought it sounds like something I should look into). After reading both this one and the next one I had a good enough grasp on the answers to check them against each other, discover that you both arrived at the same conclusions, and understand those conclusions. So thanks!
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    @Medix2 Team win! :)
    $endgroup$
    – KorvinStarmast
    1 hour ago
















  • $begingroup$
    @Medix2 Please do.
    $endgroup$
    – Louis Wasserman
    5 hours ago










  • $begingroup$
    @LouisWasserman Do you think that explanation is understandable?
    $endgroup$
    – Medix2
    5 hours ago






  • 2




    $begingroup$
    Thank you very much for your answer. I had a little trouble following it because I am not familiar with "any dice" (thought it sounds like something I should look into). After reading both this one and the next one I had a good enough grasp on the answers to check them against each other, discover that you both arrived at the same conclusions, and understand those conclusions. So thanks!
    $endgroup$
    – David Nowlin
    3 hours ago











  • $begingroup$
    @Medix2 Team win! :)
    $endgroup$
    – KorvinStarmast
    1 hour ago















$begingroup$
@Medix2 Please do.
$endgroup$
– Louis Wasserman
5 hours ago




$begingroup$
@Medix2 Please do.
$endgroup$
– Louis Wasserman
5 hours ago












$begingroup$
@LouisWasserman Do you think that explanation is understandable?
$endgroup$
– Medix2
5 hours ago




$begingroup$
@LouisWasserman Do you think that explanation is understandable?
$endgroup$
– Medix2
5 hours ago




2




2




$begingroup$
Thank you very much for your answer. I had a little trouble following it because I am not familiar with "any dice" (thought it sounds like something I should look into). After reading both this one and the next one I had a good enough grasp on the answers to check them against each other, discover that you both arrived at the same conclusions, and understand those conclusions. So thanks!
$endgroup$
– David Nowlin
3 hours ago





$begingroup$
Thank you very much for your answer. I had a little trouble following it because I am not familiar with "any dice" (thought it sounds like something I should look into). After reading both this one and the next one I had a good enough grasp on the answers to check them against each other, discover that you both arrived at the same conclusions, and understand those conclusions. So thanks!
$endgroup$
– David Nowlin
3 hours ago













$begingroup$
@Medix2 Team win! :)
$endgroup$
– KorvinStarmast
1 hour ago




$begingroup$
@Medix2 Team win! :)
$endgroup$
– KorvinStarmast
1 hour ago










David Nowlin is a new contributor. Be nice, and check out our Code of Conduct.









draft saved

draft discarded


















David Nowlin is a new contributor. Be nice, and check out our Code of Conduct.












David Nowlin is a new contributor. Be nice, and check out our Code of Conduct.











David Nowlin is a new contributor. Be nice, and check out our Code of Conduct.














Thanks for contributing an answer to Role-playing Games Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

Use MathJax to format equations. MathJax reference.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2frpg.stackexchange.com%2fquestions%2f153527%2fwhat-are-the-odds-of-rolling-specific-ability-score-totals-in-dd%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Invision Community Contents History See also References External links Navigation menuProprietaryinvisioncommunity.comIPS Community ForumsIPS Community Forumsthis blog entry"License Changes, IP.Board 3.4, and the Future""Interview -- Matt Mecham of Ibforums""CEO Invision Power Board, Matt Mecham Is a Liar, Thief!"IPB License Explanation 1.3, 1.3.1, 2.0, and 2.1ArchivedSecurity Fixes, Updates And Enhancements For IPB 1.3.1Archived"New Demo Accounts - Invision Power Services"the original"New Default Skin"the original"Invision Power Board 3.0.0 and Applications Released"the original"Archived copy"the original"Perpetual licenses being done away with""Release Notes - Invision Power Services""Introducing: IPS Community Suite 4!"Invision Community Release Notes

Canceling a color specificationRandomly assigning color to Graphics3D objects?Default color for Filling in Mathematica 9Coloring specific elements of sets with a prime modified order in an array plotHow to pick a color differing significantly from the colors already in a given color list?Detection of the text colorColor numbers based on their valueCan color schemes for use with ColorData include opacity specification?My dynamic color schemes

Ласкавець круглолистий Зміст Опис | Поширення | Галерея | Примітки | Посилання | Навігаційне меню58171138361-22960890446Bupleurum rotundifoliumEuro+Med PlantbasePlants of the World Online — Kew ScienceGermplasm Resources Information Network (GRIN)Ласкавецькн. VI : Літери Ком — Левиправивши або дописавши її