Dice Formula Tester

Type a Foundry roll formula, roll it, and see the exact odds of every result before you use it at the table.

Type it exactly as you would after /roll in Foundry's chat. In Foundry itself, add # a label at the end to describe the roll, or wrap a formula in [[ ]] inside a journal or chat message to make an inline roll.

Exact Odds

Worked out from every way the dice can land, not by simulation. Exploding dice can in theory go on forever, so the tester follows each explosion 40 times; what it leaves out is far too small to change any number shown.

Average–
Lowest–
Most likely–
Highest shown–

ResultExactlyAt leastChart

What the Tester Understands

These are the core Foundry dice terms and modifiers. Game systems and modules can add their own (a system's ability scores, for example, written as @abilities.str.mod), and the tester doesn't know your character, so replace those with plain numbers.

WriteMeaningExample
NdMRoll N dice with M sides and add them up3d6
+ βˆ’Add or subtract dice terms and plain numbers2d6+1d4-1
kh klKeep the highest or lowest dice (one, unless you give a number)2d20kh, 4d6kh3
dl dhDrop the lowest or highest dice4d6dl
r rrReroll matching dice once, or keep rerolling until they stop matching1d20r1, 1d20rr<3
x xoExplode: roll another die when a die shows its maximum (or matches what you give), again and again, or only once1d10x, 2d6xo
min maxTreat any die below (or above) a number as that number3d6min2
csCount successes: how many dice match, instead of adding them up6d10cs>=6
dfWith cs: subtract one for each die that matches a failure5d10cs>=6df=1
dFFate dice, each βˆ’1, 0 or +14df

Comparisons are written =, >, >=, < or <= followed by a number; a bare number means "equal to". Foundry also supports multiplication, division, parentheses, dice pools in braces and coin flips; the tester leaves those out. For percentile rolls, write 1d100.

Where to Go Next