A Discord dice bot for tabletop RPGs using the Director's Cut system, such as Outgunned and Household.
Invite the bot to your Discord server by clicking on this link.
Once added, the bot exposes several slash commands:
Shows a brief help text.
Rolls the specified number of dice.
The resulting messages shows the raw dice roll results (sorted so it's easier to visually identify matches). In addition, all successes are listed below in order of decreasing magnitude (e.g. extreme, critical, basic).
Below, buttons to perform a Re-roll, Free Re-roll, or to go All In are shown if applicable, as per the Director System rules. Note that a Free Re-roll is typically only allowed if the character possesses a Feat (or equivalent, depending on the specific game) that allows a free re-roll in the specific circumstance.
After performing a Re-roll, Free Re-roll, All In, the message is updated to show the new result, as well as the updated successes. A thumbs-up indicates that the re-roll improved the result. A thumbs-down indicates that the roll did not improve the result, which means that either a single success (in case of a Re-roll) or all successes (in case of going All In) were lost. The lost successes are shown below.
Flips a coin. This can be used for Outgunned's spotlight coins, for example.
Rolls a single d6. This can be used for Outgunned's death roulette, for example.
Sets the dice set to use for the current channel. The following dice sets are currently supported:
- Outgunned (default)
- Outgunned Adventure
- Household
- Numbers
The changes are purely visual, in the form of different dice emojis. There are no mechnical differences between the dice sets.
None currently planned. Please feel free to submit an issue with your feature request.
These instructions are mainly relevant if you want to tweak or extend the bot.
The bot is written in Python 3 and uses Poetry for package management.
- Clone the repository
- Create a new Discord Application in the Discord Developer Portal. Create a token for your application and note this down somewhere safe.
- Create a
.env
file by copying.env.example
and filling in the fields. Only the token is required. You can optionally enter your own Discord server's id as the developer guild id. This will ensure any new commands are immediately registered on the server, without the normal up to one hour delay. - Install Python 3 and Poetry according to the setup instructions for your respective system
- Run
poetry install
to install all dependencies - Run
poetry run python -m bot.bot
to start the bot - Generate an OAuth2 invite URL using the developer portal. Ensure that the
bot
scope and theSend Messages
andManage Messages
bot permissions are checked. - Open the URL in a browser and select a Discord server to invite the bot to it.
Version | Description |
---|---|
v0.1.0 | Initial release |
v0.2.0 | Added /settings command to change dice sets |