In my recent post on principles for RPG systems I put dice pools near the top of the list, because I think they’re fun. Unfortunately, however, I think it’s hard to make a simple dice pool that doesn’t break several of the other principles in the list, and it’s difficult to make a dice pool mechanism that is satisfying. This is because of the way in which dice pools are related to skills and attributes.
Most dice pool systems are basically constructing a binomial probability distribution, with the probability of a single success determined by the success number on the dice in the pool, and the number of trials being the size of the pool. That is, in classic binomial distribution notation, if Y is the number of successes, n is the size of the dice pool and p is the probability of a success on one die (e.g. 5 or 6 on a d6=1/3 probability of success on one die), then
Y~Binomial(n,p)
The resulting number of successes is compared to some target number, that is either set by the GM or determined by the opponent’s attributes and skills. The problem here is that for every point of target number, you need more than one die to have a good chance of getting a success. For example in Shadowrun if the target number is 1 (the easiest non-trivial task) you have a 1/3 chance of hitting it with one die, just under 50% with two dice, and so on. Also you cannot get more successes than your pool, so if the target number is equal to n you can’t succeed.
The problem here is that typically your dice pool is constructed in a similar way to your defense target number when it comes to challenged skill checks. For example, if I construct an agility+melee dice pool and try to shoot someone, it will target a difficulty set by their agility+melee dice pool (or something similar). But because each point of target number requires more than a single die to have a chance of success, your attacking pool is not going to be enough to hit, in general. The systems I have played have several ways around this problem, none of which are satisfactory in my opinion. These are listed below.
Shadowrun
Shadowrun gets around the problem of equal target numbers by having both attacker and target roll their dice pool. Because the target pool will generate less successes than a target number based on the attribute/skill combination, this will always produce a lower target number than the attribute/skill combination itself. The problem here is that you have two players constructing then rolling and calculating a dice pool, and comparing results. This has the advantage of giving the player the chance to roll to avoid an attack (which gives them agency) but makes for a lot of rolls, which with large dice pools is trouble. It also introduces a lot of variation, especially at lower levels . You could simplify this by having everyone roll their defense alongside initiative, and then requiring them to keep it, but this would be unsatisfactory to many players, I think.
World of Darkness
World of Darkness (WoD) creates a whole range of problems for itself and then somehow gets around them in a bad way. In WoD your melee attack pool will be an attribute + skill, but your defense pool is just the lowest of two attributes, so it is usually much lower than the attacking pool. This solves the problem of overly-boosted target numbers, but it is deeply unsatisfactory. John Micksen, for example (my WoD Mage) has a defense of 2 (what can I say, he’s clumsy) but he has 3 dots in weaponry, specializing in swords, and he is carrying Excalibur. Excalibur! But his defense is 2! Excalibur is a +5 Holy Sword of Legend, FFS, but he gets no benefit. This is ridiculous: when magically boosted, wielding that sword, Micksen gets 21 dice to attack! But the same Micksen gets a defense of 2, three if he boosts his dexterity above his wits.
However, all is not lost! In WoD, your armour counts on your dice pool. John Micksen’s friend gives him Forces armour 5, so he gets 7 defense. Whew. The WoD rules get around the problem of unfair target numbers by having you subtract your defense from your opponent’s attack pool, and the opponent rolls the result. This seriously reduces the variance of the roll, but it also means that the imbalance of target numbers and attack pools is removed. However, what happens if your defense is greater than your opponent’s attacking pool? In this case, they have no dice left to roll! However, WoD has a rule for this: they roll a single d10 and hit on a 10. That’s right, they have a 10% chance of hitting you with a dice pool of zero.
So let’s imagine this scenario. John Micksen has a ritual casting on himself that gives him +4 strength and dexterity; another that gives him 8s again on his attack rolls; and his friend Andrew has given him Forces 5 armour. John decides he is sick of the paper boy making a noise at the gate of his mansion, so early one sunday morning he staggers out of his faerie-wine induced reverie and, leaving his lithe elven lover entangled in the bedclothes of the master bedroom of their faerie demesne, he wanders up the stairs and into mundane Ireland, picking up Excalibur along the way. He creeps up to the door unheard – this is not difficult, his Dexterity is 6, higher than most mortals (truly Faerie has changed him!), so the stupid paper boy won’t hear him. He hauls open the door[1] and springs forward, yelling obscenities, and takes a swing at the paper boy. “I am the Winter Fucking Knight[2], I do not get woken by paper boys!” he yells, rolling his 18 dice pool (he doesn’t bother wasting a point of willpower on a mere paper boy). The paper boy, however, is a cunning little yobbo and sneaky to boot, so he has a defense of 3,+1 for his woolen jacket, 4 defense for a mere villein! Now John rolls 14 dice, which with 8s again means he should get about 5 or 6 successes. This leaves the paper boy on 1 wound (that is a well-made Irish woolen jacket, not some crappy London fashion accessory!) So, the paper boy grabs his anti-dog club, and jabs it in John Micksen’s face. John Micksen has defense 3 and armour 5, for a total of 8, and the paper boy has a dice pool of 4. Result! The kid has 0 dice! He can’t hit. There stands the Winter Knight, resplendently bare-chested, but shimmering with the power of his friend’s enchanted armour, the snow-flake tattoo that betokens his position as Faerie Champion glittering cold blue light from beneath the silken radiance of the magical armour, armour that has been crafted for him in an arcane ritual by a wizard renowned throughout several planes of existence as a master of the elemental energies that bind the world together.
Oh but wait a minute, the paper boy has rolled a 10 on his one die. His anti-dog club slides through that armour like a hot knife through butter, and jabs John in the ribs, leaving a nasty bruise. The kid pulls a stupid face, yells “‘Ave ‘at, you fuckin’ pervo!” and scarpers up the path and away [well, scarpers as best he can for a kid who has just been stabbed in the face with an Ancient Sword Out of Legend by the Winter Fucking Knight, boosted to superhuman strength and speed].
This ridiculous scenario occurs because the lowest success probability in WoD is 10%, for people with an attacking pool less than their defender’s; followed by 30% for people with at least one die left in their pool. This scenario would have been the same even if John benefited from the +5 of his Ancient Sword that Unites Kingdoms. I think that’s a pretty crap rule. But it’s an inevitable consequence of trying to find a way to give some chance to people with zero pool.
Warhammer 3
Warhammer Fantasy Roleplay 3 (WFRP3) gets around this problem by adapting the Shadowrun approach into a single roll, using a dice pool that is as complicated as possible. Basically, the target’s defense (which is calculated in an arcane and annoying way) is used to add challenge and misfortune dice to the attacker’s pool. These dice can roll failures, which are subtracted from the successes that are rolled by the good part of the pool. The challenge and misfortune dice have different probability distributions to the dice that the attacker puts in the pool (attribute and expertise dice). This system has the excellent property of giving the defender a highly variable target number, along with various side effects and it completely eliminates the problem of balancing defense target numbers against attack target numbers where both are derived from attributes and skills. It is also, as far as I know, the only RPG system I have played (except Rolemaster?) that actively incorporates training into defense (in a variety of overly complex ways, of course). It also only uses one roll. The downside is that constructing and evaluating the dice pool are both complex, requiring a lot of time and effort until you’re really familiar with the system.
Some possible simplifications
The Shadowrun system could be simplified to work in one roll by adding d6s of a different colour to the attacker’s dice roll, and having 5s and 6s on those rolls cancel the 5s or 6s on the attacker’s dice. This is basically the WFRP3 single roll, without the complex dice. Basically this is what WFRP3 needs: a simpler way of constructing and calculating dice pools. You could set up the game table with a large pool of white and red d6s in the middle of the table. The attacker grabs his or her number of whites; the defender grabs his or her number of reds and then passes them to the attacker; the dice pool is then rolled, and the result counted. Alternatively, dice pool construction in WFRP3 could be simplified by leaving the roll of challenge and misfortune dice for the GM; the player only sees the dice he or she rolled, and the GM then calculates the result.
Another possible simplification is to find a way to make attack rolls have more dice than defense targets. For example, if you could add your level to attack rolls, but not to defense target numbers; or if your defense target for any challenged skill check (including combat) was your attribute divided by 3 (round down) + skill, so that most attack pools are larger than target numbers; and also make sure there is a method for boosting attacks (e.g. Edge/Fate/Willpower) etc. Note that with larger dice pools these boosting methods tend to be a waste of time (see e.g. John Micksen), but if you are striving for more contained dice pools, then it probably would work. Of course, no one likes dividing numbers in play, but most character sheets have a place ot write defense; you could have a “defense” section after each attribute, which tells you the value it applies when being used for a defense target.
Another possible dice pool mechanism I thought of yesterday but haven’t done any calculations on, is one in which there is no target number, but the target’s skill+ attribute determine the minimum number required to hit. For example, if attributes start at 2 or 3 points, and skills at 1 or 2 points, then target numbers would range from 3-5. The attacker could then roll e.g. d10s, and get success on any die that rolls above this number. If the target were above 9, then success would only be possible on rolls of 10. So for example you have a dice pool of 5, and your opponent has a target of 5; you roll your five dice and need to get over 5, which basically means that your outcome will be Binomial(5,0.5), giving an “average” of 2.5 successes. Were your opponent’s difficulty 9, you would need to roll 10s, and the chance of getting 1 success would still be pretty good, but little chance of a big success.
I have also been thinking about a concept of what I call success pools, which incorporate post-attack damage values into a coherent framework for all skills and challenges, and could be used to fine tune some of these dice pool mechanisms. I will have more to say about that later.
I don’t think any of the systems I have described here, or their simplifications, are ideal, though the Shadowrun and WFRP3 mechanisms are pretty good (aside from their cumbersome aspects). Shadowrun is fine until you start calculating damage, I think; WFRP3 is fine if you make sure that the only complexity in it is the dice pool (i.e. you drop most of the rest of the game). But they show the difficulty of making a balanced dice pool mechanism, and how there always seems to be a compromise somewhere on the way when you try to introduce a decent random number generation system based on dice.
—
fn1: With his ritual on, John Micksen has strength 7, so he doesn’t so much haul the door open as launch it into orbit
fn2: John Micksen has some rage issues.
September 5, 2014 at 2:17 am
The biggest problem with dice pools as I see it is that you can have three variables, each of which affect the probability distribution is different ways.
1) How many dice to roll. The effect of this is easy to estimate. Twice as many dice is twice as many successes on average.
2) Target number. Once you get more than one die involved, changing the target number does not have a linear effect on probability. This makes a +1 modifier problematic because
3) Required number of successes. It is also not straightforward to estimate the effect of changing the required number of successes, especially as you approach the size of the dice pool.
Systems that use all three variables seem to break down very quickly, I suspect because keeping the math sensible is hard.
(For bonus complexity, throw in exploding dice)
September 5, 2014 at 11:07 pm
Maybe because I’m a statistician, I find dice pools fairly easy to follow. Because the average number of successes is np, you can guess the ideal minimum size of a dice pool by dividing the target number by the probability, roughly. So the minimum dice pool is target pool +1 and you know you’re doing okay on average if it is target number divided by probability.
Obviously changing target numbers is evil, though I think it would be understandable if game designers simply put a section on probability calculations in the text[1]. I think this would actually be a really good idea in all games, even the simplest ones. It’s also an argument for teaching more probability and stats in school – it’s high time people recognized that stats is now an essential skill, not a postgraduate qualification …
—
fn1: For some incomprehensible reason, this would likely have to be an Appendix.
September 6, 2014 at 8:19 pm
Exalted 1st edition had two (generally) large dice pools [1] directly opposing each other. 2nd edition moved to treating defence as a static value equal to the defence dice pool divided by 2. The forum community contains a significant number of upset people based on the assumption it materially changed the probabilities [2].
That’s mostly interesting for illuminating how people put up with overly elaborate dice rolling based on flawed understandings of probability (e.g. he rolled 18 successes on attack, but maybe I’ll get lucky on my 18 dice…).
My suggestion would be combining:
1. Success/failure driven by percentage dice. This is because all the other options ultimately can be described as percentages anyway, so using this allows A) clarity/understandability and B) open ended probability curves where the target number could be > 100 before modifiers
2. Add extra dice to the dice pool to cover various effects (e.g. boons and banes like Warhammer 3). These should be tangential to the primary goal, but could provide buffs/debuffs on repeated attempts.
3. All dice rolls should be made by the players. (*Lets face it, the DM is busy anyway and rolling the dice makes the players feel more part of the game.) The NPC could have their dice pool interpreted as purely a static value on opposed rolls and the onus is on the PC regardless of whether your attacking or defending to beat that static value.
The goal should be to have something that allows people to easily eyeball the numbers (so DMs can plan) without making it so transparent as to be pointless [3].
[1] e.g. 10+ d10, though 20+ wasn’t uncommon. Target number of 7, barring some uncommon events. 10s count as 2 successes, leading to ~5 successes when rolling 10 dice.
[2] My understanding is it decreases the extreme events where terrible defence rolls meet excellent attack rolls and the target explodes into chunky salsa. But that happens often enough anyway with the Exalted health levels anyway… Better descriptions of the probability effects is left to a statistician.
[3] D&D 4e where the target number seemed to be fixed at 10+ on a d20 based on player bonuses and suggested difficulties moving in lock step.
September 8, 2014 at 1:54 pm
Those dice pools are just cumbersome, aren’t they?
I hate percentage dice, for all the uniform distribution reasons. But you can get a perfectly good distribution adding up 2d10. I’m increasingly interested in adding other types of dice a la Warhammer 3, and my main reason for not doing so in any game I play is a misguided sense of purity.
Your idea of having all dice rolls by the players is interesting. So you would have an assumed level of attack success by a monster, and have the players roll a defense save against it? That could make monster stats very simple: just give them a level in attack, defense, magic and utility, and have the players roll saves against whatever the monster does accordingly. I wonder if many people would like that approach? I wonder how much easier it would make the GM’s life?
Your footnote [3], about D&D4e seeming to fix everything at 10+ saves, is interesting. When I think about the structure of a game’s probability system, one of my benchmark probabilities is the chance of being successful when you are performing a challenged skill check against someone with the same attributes and skills as you – should it be 50%? 30%? 10%? By means of this benchmark you can get a sense of how hard your game is at baseline. But it seems like somehow the D&D 4e designers, while thinking about this benchmark, somehow turned it into a requirement. A strange error of judgment, but I think we can all look at D&D4e as a benchmark for boring crappiness, thank the Elder Gods that it has been superceded, and move on from that dark period of D&D’s history… at least now everyone knows how bad things can get!
September 9, 2014 at 8:56 am
“I wonder if many people would like that approach?”
I suspect a significant number would object to to a percieved reduction in randomness (same as the Exalted fan base initially), so there would need to be text explaining that the product of two random number generations using the same dice pool pool still boils down to a 50% chance of the second roll being greater
“I wonder how much easier it would make the GM’s life?”
Even if the GM’s life isn’t easier, part of my goal was pushing the determination of their fates into the players hands. They should that their own poor roll lead to their character’s demise, not that the DM rolled some dice behind a curtain and stiffed them.
The downside of this approach is it does mean fudging dice rolls gets harder. So of course the DM should never explain what the target number is.
“When I think about the structure of a game’s probability system, one of my benchmark probabilities is the chance of being successful when you are performing a challenged skill check against someone with the same attributes and skills as you – should it be 50%? 30%? 10%? By means of this benchmark you can get a sense of how hard your game is at baseline.”
The benchmark is importan, but it’s the variation from that that makes the game non-trivial to predict. I agree it’s good to have that in the past. Here’s hoping that the upcoming 5e DM sourcebook doesn’t have any ridiculous advise on how to change target numbers based on levels and instead has a section on how to eyeball and adjust difficulties as you go.
May 4, 2015 at 8:00 pm
One Roll Engine
May 5, 2015 at 11:13 am
Thanks for that tip Joe, that’s an interesting system that I might have to do some analysis of. Without reading it in detail I can see the basic mechanic might have the same kinds of problems as I’ve described here. For example, you construct a dice pool from attribute+ skill, but it’s unlikely that you’d be able to roll a set of numbers that created more successes (in “height” or “width”) than a difficulty calculated as attribute+skill. So some kind of mechanism is needed to scale difficulties separately to the dice pools. I don’t know how ORE does that, but I’d be interested to see if the designer (Greg Stolze?) has come up with an answer to that question that is both elegant and practical.
Thanks for the tip!
April 27, 2016 at 7:48 am
What about The Riddle of Steel/Blade of the Iron Throne?
You have a fixed number of dice, and can allocate them between all your actions, including defense.
April 27, 2016 at 10:22 am
Thanks for commenting Gilbert. That system looks rich, detailed and interesting – I might investigate it. The dice pools look traditional but the limelight mechanism very interesting. Also d12s!? Very swords and sorcery …
October 21, 2018 at 8:10 pm
A bit late to the party but I really liked this article and it sparked a lot of ideas. Most importatnly I may have figured out a system that sufficiently mitigates the problems you described.
Your dice pool would consists of 2 types of d6. The amount is: 3 “chance dice” + (higher score – lower score) “advantage dice”.
Chance dice yield a “hit” (+1) on 5 or 6, and negates a hit on 1 or 2 (-1). If the attacker’s score is higher the “advantage dice” can only yeild hits. If it’s lower they can only negate hits. So with an attack score of 9 vs. a defense score of 6 you would roll 3 chance dice (expected value 0) and 3 advantage dice (expected value 1). In the opposite scenario (6 vs. 9) the advantage dice would have an expected value of -1.
With equal stats you have equal chances of success, failure and tie 26% of the time. There are many ways you could treat ties, perhaps favoring the attacker (63% hit chance) or use the chance dice (counting 3s and 4s) as a tie breaker. Or just add a 3rd possible outcome.
As far as I can tell this system sidesteps a lot of issues
– Doable with only d6.
– Dice pools are manageable unless difference is huge.
– Never produces 100% chance of success or failure.
– But odds can always get better or worse.
– Resolved in a single roll
– Math is the same no matter who rolls so players can roll everything.
– Fairly easy to visualize odds (a single table with advantage count on one side, hit count on the other and probability at the intersections)
And a few down sides
– The person rolling needs to know both scores.
– Constructing pools and counting results is a little bit more work.
I’m a game designer by trade but I don’t have the years of experience with roleplaying games or a deep understanding of odds, so I’d love for someone to tell me if I’m somehow off base here. Are there problems I’m not aware of?