DPR is a probability-weighted average, not a guaranteed output. Real play varies due to tactics, positioning, and the chaos of dice. Use these figures to compare builds and calibrate expectations. These are not per-session contracts.
Hit and crit probabilities assume independent d20 rolls with no rerolls unless advantage/disadvantage is selected. Nat-1 auto-miss is enforced via a 0.95 hit probability cap. The once-per-turn rider uses a "chance of at least one qualifying hit" model. It does not multiply by attack count. Graze (2024) is computed per-attack and scaled across all attacks; Cleave uses a user-defined adjacency rate as a per-round estimate. Agonizing Blast adds CHA modifier as a flat bonus per beam, not per attack roll. The damage multiplier is a flat global scalar applied after all other damage. It does not model partial resistance interactions. Burst DPR reflects a single nova round and replaces standard DPR in the display. It should not be read as sustainable output. Save spell DPR scales linearly with uptime percentage. Set this to reflect realistic encounter duration and concentration check frequency.
| 2d6 | two six-sided dice |
| d20+5 | d20 with modifier |
| 2d6+1d4+3 | mixed pools |
| d20 > d20 | advantage (take max) |
| d20 < d20 | disadvantage (take min) |
| 4kh3d6 | 4d6 keep highest 3 |
| hd20 | halfling d20 (reroll 1) |
| d20 reroll 1 | reroll 1s once |
| d6! | exploding d6 |