Page 1 of 1

Calculating Dice Odds

Posted: Fri Dec 05, 2025 9:19 pm
by deaddmwalking
As much as possible, I like a method of generating random numbers to be as transparent as possible - Game Designers should know how probable results are when creating challenges so they're appropriately challenging. Likewise, it's good to evaluate whether success rates are appropriate for the variety of situations you face.

There are lots of different dice systems, and most of them are fairly straightforward to, if nothing else, build a table of results using AnyDice or other tools.

I'm having trouble making those tools work for me.

In Savage Worlds, you have a Skill die that can be represented by any size die (d4, d6, d8, etc). You also have a Wild die (always a d6). These dice also explode.

It's easy enough to determine expected values by determining each die individually against a target number. For example, if you roll 1d6 your odds of getting a 5+ (5 or 6) are 33.33%. Your odds of getting a 5+ when rolling TWO dice are 100% minus your chance of failing on both dice. Your chance of failure on the first die times your chance of failure on the second die (67.66% x 67.66% = 45%). Thus your chance of succeeding at least once is 55%.

I've expanded 'the Wild Die' to see what would happen with every combination from d4+d4 to d12+d12 - all relatively straightforward with exploding dice.

Where I'm running into trouble is I want to look at an Advantage/Disadvantage mechanic. Normally if you use '2d6' as an expression, those numbers are combined. You could potentially use 'count' for successes (but it would be more useful for me to see the odds of 'at least' on every number). There's also not an easy way to take three different sized dice and take the lowest two.

For Example, I want: Lowest 2 results (not added) of [Exploding] 1d8, 1d8, and 1d12.

Ideally I would take the formula for that and then run it for the other variations like 1d10, 1d8, 1d4.

Anyone have ideas on how to crunch those numbers quickly?

Thanks!

Re: Calculating Dice Odds

Posted: Sun Dec 07, 2025 6:38 am
by angelfromanotherpin
I use anydice.com for my odds calculator, and they have a lot of functions you can mix and match and customizable graph output.

Re: Calculating Dice Odds

Posted: Mon Dec 08, 2025 2:05 pm
by deaddmwalking
They do indeed!

I sent the question in through their intake and I've had a couple of e-mails from the site owner (Jasper). He provided the following code:
TN: 4

DFOUR: [explode d4] >= TN
DSIX: [explode d6] >= TN
DEIGHT: [explode d8] >= TN
DTEN: [explode d10] >= TN
DTWELVE: [explode d12] >= TN

A: DTEN
B: DEIGHT
C: DSIX

output [lowest 2 of A and B and C] named "disadvantage"
output [highest 2 of A and B and C] named "advantage"
This let's you count success on two dice. You can modify the formula to change the TN or edit which dice are rolled (ie, you could replace A: DTEN with A: DSIX).

In Savage Worlds, you also get a Raise for hitting 4+ the TN (effectively an additional success). I have a question in to Anydice to see how that can be handled.

Re: Calculating Dice Odds

Posted: Mon Dec 08, 2025 4:57 pm
by deaddmwalking
Jasper got me taken care of:
TN: 5
RAISE: 4

function: score N:n {
if N < TN {
result: 0
}
result: 1 + (N - TN) / RAISE
}

DFOUR: [score [explode d4]]
DSIX: [score [explode d6]]
DEIGHT: [score [explode d8]]
DTEN: [score [explode d10]]
DTWELVE: [score [explode d12]]

A: DTEN
B: DEIGHT
C: DSIX

output [lowest 2 of A and B and C] named "disadvantage"
output [highest 2 of A and B and C] named "advantage"
In Savage Worlds the TN is usually a 4, but it could be higher (especially with attacks against an enemy). The TN above is adjustable - it's set to 5, but it could be 4, or 6. In Savage Worlds you get a Raise for every 4+; that's adjustable in the equation, too. Any of the dice can be added to the mix by adjusting the names of A:, B:, and C:. The end result is total number of successes.

Now to play around!

Re: Calculating Dice Odds

Posted: Tue Feb 24, 2026 2:15 pm
by Louiseravot
At some point, it's safe to say that the analytical solution becomes less useful than sampling. Simulation is often cleaner and more transparent than trying to brute-force closed-form math in my opinion.