What Dice Notation Can I Use on dice.run?
Updated
dice.run parses standard tabletop dice notation and shows the exact probability distribution — mean, range, and full odds — as you type. You can enter a dice expression, roll it with a full audit trail, and see the math behind the result. The site also ships a D&D 5e (2024) system pack with prebuilt examples for attack rolls, damage, saves, and class features, plus support for arrays and roll-mode switches like normal, advantage, and disadvantage.
Core notation
The dice expression grammar is documented in full on the site's Docs page. Based on the examples shown in the D&D 5e pack, the parser handles:
- Standard dice terms — the familiar
NdXform (for example,1d20for a d20 roll). - Modifiers — flat bonuses added to a roll, as in attack and damage expressions.
- Crit rules — the pack includes "Attack + damage with crit on a 20," so the parser recognizes a critical-hit threshold within an expression.
- Roll mode switches — normal, advantage, and disadvantage are selectable modes rather than separate notations.
The Docs page is the authoritative reference for the complete grammar; the pack examples show how those pieces combine in practice.
Multi-attack and arrays
Multi-attack is expressed as an array. The D&D 5e pack lists "Multi-attack as an array" as one of its grouped examples, meaning you can bundle several attacks into a single expression instead of rolling them one at a time. This matters for probability work: an array lets the distribution reflect the combined outcome rather than a single attack.
Roll modes: normal, advantage, disadvantage
The pack includes a "Roll mode switch — normal / advantage / disadvantage." Rather than writing advantage as two separate d20s and picking the higher, you select the mode and the roller handles it. Because dice.run computes distributions live, switching modes updates the odds immediately — useful when you want to see how much advantage actually shifts a target number.
What the D&D 5e (2024) pack groups
The pack organizes examples by what you're trying to compute, not by notation type:
| Group | What it covers |
|---|---|
| Attack + damage | Attack rolls and damage in one place, including crit on a 20 |
| Saves | Saving throw expressions |
| Class-feature one-offs | Feature-specific rolls kept separate |
| Multi-attack | Several attacks expressed as an array |
| Roll mode | Normal / advantage / disadvantage switch |
This grouping is the fastest way to find a working expression for a common task — import the pack and adapt the example rather than building notation from scratch.
Practical notes
- Live distributions. As you type an expression, the mean, range, and full distribution appear. Use this to sanity-check an expression before you roll it.
- Audit trails. Rolls keep a full audit trail, so you can verify how a result was produced.
- Studio. For custom work, Studio lets you author dice programs with live distributions — useful when the standard notation doesn't cover what you need.
- Community packs. The site lists community picks and packs (for example, the D&D 5e pack shows 7 imports), so you can browse existing expressions before writing your own.
If you need the exact grammar — every operator and modifier the parser accepts — start with the Docs page, then import the D&D 5e pack to see the notation applied to real rolls.