Diceplots computes exact probability distributions for dice expressions
and answers the questions every TTRPG and ARPG player has at the table:
- "Will my 2d6+5 actually drop a 14-HP target?" → 13/18, or 72.22%.
- "Greataxe (1d12+5) or greatsword (2d6+5)? Same mean — different shape."
See exactly where the curves cross.
- "How much does advantage on a d20 actually help?" Closed-form skew,
not vibes.
- "How many strikes until I finish 80 HP?" Expected strikes plus the
full per-strike kill curve.
The engine convolves exact rationals — no Monte Carlo, no "I ran 100,000
simulations" approximations. Every number is computable on paper; we
just do it in microseconds.
EXPRESSION SYNTAX
The full notation, at a glance:
2d6 roll two six-sided dice, sum the faces
2d6+5 add a constant
1d8 + 1d6 + 3 mix any number of terms
1d6! exploding dice — max face rolls again, sums in
2d6r1+5 reroll once on a 1 (Great Weapon Fighting)
2d20kh1 keep highest of 2d20 (advantage)
2d20kl1 keep lowest of 2d20 (disadvantage)
WHAT YOU GET
For every expression:
- Exact rational mean, variance, and skewness — closed-form when
available, hovered tooltips on every percentage.
- Per-outcome bar chart with the exact rational on tap.
- Kill probability vs any HP target.
- Strikes-to-kill chain — expected strikes plus the cumulative
probability per strike.
Compare side-by-side:
- Split mode — two panels, perfectly aligned outcome rows.
- Overlay mode — one curve with the dominant tip in red/green per
outcome, so you can see who wins at every value.
- Difference mode — diverging bars showing exactly which outcomes
shifted, plus a kill-probability lead callout.
SYSTEMS COVERED
Built for and tested with:
- D&D 5e (and OneD&D)
- Baldur's Gate 3
- Pathfinder
- Diablo, Path of Exile, Last Epoch (multiplicative resistance, mixed
damage types)
- Anywhere weighted-RNG is the substrate.
ZERO TRACKING
The app collects no personal data on-device. No accounts, no cookies,
no third-party trackers, no advertising, no analytics SDKs. The
embedded reference content (Concepts and Games) loads from
diceplots.com, which keeps aggregate-only event logs — no IP, no
user-agent, no fingerprinting. Full policy in-app under More →
Privacy, or at diceplots.com/privacy.
OFFLINE BY DEFAULT
The dice engine runs entirely on-device. Network access is only used
to load the optional reference articles. You can compute
distributions, compare rolls, and simulate dice without touching the
network.
OPEN ABOUT THE MATH
Diceplots ships the same engine that powers diceplots.com. The Rust
core is identical, the bindings are generated from one interface
definition, and every probability is verified against a cross-platform
corpus before each release. The numbers you see on Android, iOS, and
the web are bit-identical because they come from the same library.
The Concepts section walks through the math behind every readout —
variance, kill probability, expected strikes — without simulation
hand-waving.
— Defensible Logic, Inc.