Notes
- If more dice are specified to be dropped and/or kept than there are in the pool, the excess kept dice do not contribute to the total.
- "Drop" is used for e.g. the Burst SFX and removes the highest-rolling dice before keeping among the rest. In case of a tie, the smaller die is removed.
- Remember that the roller loses ties, dice that roll a 1 (hitch) can't be used for the total or effect, and there is always the option to have a "free" d4 effect.
- Because the roller loses ties, the difference between a normal success and the first heroic success is 4 rather than 5.
- On the "exactly" plot, the effect die curves show the chance of rolling exactly a total while keeping an effect die of at least that size.
- On the "beating difficulty" plot:
- The vertical position of each effect die curve at a particular total is the chance of beating that difficulty while keeping an effect die of at least that size.
- The vertical extent of each effect die area at a particular total is the chance of beating that difficulty while keeping an effect die of exactly that size.
- The area above the d4 curve represents failure.
How does it work?
I built this using Pyodide, Chart.js,
and of course, my own Icepool Python library.
Prior work
Here is a previous calculator by
Casey Link, which uses exponential-time enumeration of all possible die results.
While my calculator needs to load pyodide, it can compute
larger pools at interactive speed due to a polynomial-time
algorithm.
Questions, comments, or suggestions? Find me on Reddit or Twitter.