diff options
| -rw-r--r-- | README.md | 8 | 
1 files changed, 7 insertions, 1 deletions
| @@ -85,6 +85,7 @@ The parser recognizes the following grammar:            | Die 'E' Die            | Die 'K' Die            | Die 'k' Die +          | Die 'A' Die  Semantics are defined in terms of the `pool` function. @@ -115,13 +116,18 @@ Semantics are defined in terms of the `pool` function.    rolling `D`.  * `DkE` is the "keep lowest" mechanic. Like `K`, but selects the lowest rolling    dice. +* `DAE` might roll some of `E`'s pool again. First `D` is rolled. Now each die +  in the dice pool generated by `E` is rolled repeatedly until it rolls +  something less than the value rolled on `D`. Each such roll is treated as a +  separate die, the results for each die are not accumulated like with exploding +  die.  Additionally:  * The binary arithmetic operations (` + `, ` - `) are left associative.  * The bonus operations (`+`, `-`) are left associative. They bind stronger than    arithmetic operations. -* The die operations (`d`, `E`, `K`, `k`) are right associative (`1d2d3` is +* The die operations (`d`, `E`, `K`, etc.) are right associative (`1d2d3` is    equivalent to `1d(2d3)`, use explicit parentheses if you need `(1d2)d3`).  * Die operations bind stronger than the binary arithmetic operations    (`1d6 + 1d4` is equivalent to `(1d6) + (1d4)`) and the bonus operations. |