Dicebot logoDicebot

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…]

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

ModifierExampleEffect
+N2d6+3 Adds N to the set's total. Stack as many as you like: 3d6+2+1.
-N2d10-1 Subtracts N from the set's total.
dN4d6d1 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.)
s10d6s Sorts the results in ascending order.
*N2d6*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.

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):

ModeTypeBehaviour
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:

See the Commands page for all channel settings.