/Tzimisce

A Discord dicebot for White Wolf's World of Darkness tabletop RPGs, such as Vampire: The Masquerade.

Primary LanguagePythonGNU General Public License v2.0GPL-2.0

Tzimisce Dicebot

Requires Python 3.9 Requires Pycord 2.0 Requires psycopg2 2.9.3 Requires dice 3.1.2

[Tzimisce] on the Discord Bot List

[Tzimisce] is a Discord dicebot for classic World of Darkness tabletop RPGs, including Vampire: The Masquerade, Werewolf: The Apocalyspe, Mage: The Ascension, and others. Combined with its user-friendly output, [Tzimisce] is far easier to use than common "universal" dice rollers. In addition, the bot possesses advanced features such as macros, Willpower use, automatic successes, initiative management, and statistical analysis.

Getting Started

Adding [Tzimisce] to Your Server

Simply click this link to add the bot to your server. Feel free to vote and leave a review while you're at it; it's greatly appreciated. Not ready to add it yet? Try out the demo server!

Usage

Base syntax is simple: /m pool difficulty specialty. The specialty is optional. If difficulty isn't supplied, it defaults to 6. If you want to add a comment, simply append a # and start typing.

Example: 7 dice at difficulty 5 with a specialty in climbing and a comment of "dex + athletics":

/m 7 5 Climbing # Dex + Athletics

But that's not all [Tzimisce] can do! It also features macro support, initiative, server-wide customization, and more. For a full command listing, check the help page.

Requried Permissions

  • Send Messages: Should be obvious, no?
  • Embed Links: Used for roll display (outside of compact mode), initiative, help display, etc.
  • Read Message History: Used for the reply feature
  • Add Reactions: Used when suggesting macro names and alerting the user that an action declaration was registered
  • Use External Emoji: For displaying individual dice throws

Troubleshooting

Unable to see the results? Make sure the bot has the permissions above. If you still have problems, you might have website previews disabled. Go into User Settings -> Text & Images and enable Show website preview info from links pasted into chat. If you still have issues, you may have antivirus software that prevents embeds from showing (certain versions of McAfee are known to cause problems).

Advanced Installation

Should you wish to run the bot locally, you will need to obtain a Discord developer key here.

Setup

[Tzimisce] requires version >=3.9 of Python and PostgreSQL with SSL support enabled (which means you need an SSL certificate). You will also need a Discord developer token and, if you intend on making your fork available on the Discord Bot List, a top.gg API token.

Finally, you will need to use PIP to install psycopg2, py-cord, dice, and topggpy. Typically, you can install these dependencies with pip -r requirements.txt, but the command may differ on your system if you have multiple Python versions installed.

Setting the Environment Variables

Store your API token in an environment variable called TZIMISCE_TOKEN. Store your PostgreSQL server address in an environment variable named DATABASE_URL. (Optional: If listing in the Discord Bot List, set TOPGG_TOKEN.) Dotenv is recommended for this.

Run the Bot

Make sure Postgres is running, then enter python masquerade.py to run the bot. Like before, this command may differ if your system has multiple Python versions installed.