Dice Rolling
Everything about rolling: the notation, every modifier, output styles, the ‼ reroll reaction, and the four dice-detection modes.
Dice only roll in channels that have been activated with
!setchannel active on (needs Manage Server).
The notation
[amount]d<size>[modifiers…]
- amount - how many dice, up to 999. Leave it off to roll one:
d20. - d - lowercase only.
2D6will not roll. - size - how many faces, up to 8 digits. Each die rolls 1 to size.
- modifiers - any number of them, in any order, straight after the size. See below.
Roll several sets in one message by separating them with spaces:
!2d6 3d8 d100. When you roll more than one set, Dicebot adds an
overall total.
Modifiers
| Modifier | Example | Effect |
|---|---|---|
+N | 2d6+3 |
Adds N to the set's total. Stack as many as you like: 3d6+2+1. |
-N | 2d10-1 |
Subtracts N from the set's total. |
dN | 4d6d1 |
Drops the N lowest dice from the total. Dropped dice are still
shown, struck through or listed separately. (There is no keep-highest -
4d6d1 is your stat roll.) |
s | 10d6s |
Sorts the results in ascending order. |
*N | 2d6*3 |
Repeats the whole roll N times as separate results - not
multiplication. 2d6*3 gives you three independent 2d6 results. |
! | 2d20! |
Exploding dice: every die that rolls its maximum is rolled once more, and the bonus rolls appear as an extra Bang! set. Bang dice don't explode again. |
Combine freely: 6d6d2s+1 rolls six d6, drops the two lowest,
sorts the rest, and adds 1. Division (/) and powers
(^) are not supported - a roll containing them
gets no reply.
The ‼ reroll reaction
Whenever any die in your roll lands on its maximum value, Dicebot adds a ‼ reaction to the result. Click it to reroll just the maxed dice and post the fresh result.
- Only the person who rolled can use it - everyone else's clicks are ignored.
- It expires after 30 seconds, after which the reaction is removed.
- The rerolled result can't be rerolled again - one bite of the cherry.
Output styles
By default results are spelled out in full. If your table prefers terse,
turn on compact output per channel with !setchannel shortoutput on:
Long: You rolled 2d6. Your results were:
2d6: 7 (3, 4).
Short: Total: `7` - 3, 4 [2d6]
Either way, a roll whose result message would exceed Discord's 2000-character limit is refused with a polite request to roll fewer dice.
Dice modes - how eagerly dice are detected
Per server, someone with Manage Server can choose how
Dicebot scans messages for dice, using
!setDiceMode <mode> (aliases dicemode,
sdm, dm):
| Mode | Type | Behaviour |
|---|---|---|
| OnlyPrefixed (default) | only / op |
The message must start with the prefix. Dice are read left to right
and reading stops at the first thing that isn't dice:
!2d6 3d8 for damage rolls both, then stops at "for". |
| PrefixOptional | prefix / po |
Same, but the prefix isn't required - a bare 2d6 rolls,
as long as the message starts with dice. |
| OffsetOptional | offset / oo |
Prefixed dice roll from anywhere in the sentence:
I attack for !2d6 damage. |
| CatchAll | all / ca |
Anything that looks like dice rolls, anywhere, prefix or not:
I hit for 2d6 then 1d4 more rolls both. |
Channel-wide roll behaviour
Two of the modifiers can be switched on for a whole channel, so every roll behaves as if you'd typed them:
!setchannel bang on- every roll explodes like!!setchannel sorted on- every roll is sorted likes
See the Commands page for all channel settings.
Dicebot