Skip to content

Discord Bot implementation of the new social deduction game, Blood on the Clocktower.

License

Notifications You must be signed in to change notification settings

Picowchew/BOTC-Bot

 
 

Repository files navigation

Blood on the Clocktower Storyteller Bot

The Blood on the Clocktower Storyteller Bot is a project designed to host text-based, automated, asynchronous games of Blood on the Clocktower (BoTC) on Discord. You can join our Discord community using this link: https://discord.gg/M6xffPn.

The copyrights to the BoTC game are owned by the Pandemonium Institute.

Authors

For other contributors, please take a look at the Contributors page.

License

This project is licensed under the AGPL-3.0 License - see the LICENSE.md file for details.

Installation

If you are on a Unix-based OS (Linux or macOS):

Install Python 3.6+.

Clone this repository. Rename config.toml.example to config.toml and preferences.toml.example to preferences.toml, and fill in the fields inside config.toml. To change gameplay-related settings, edit preferences.toml.

Rename emojis.json.example to emojis.json and botc/emojis.json.example to botc/emojis.json.

Run poetry install or pip install -r requirements.txt to install the required dependencies.

Finally, run the main.py file to start the bot. If you installed dependancies with poetry, make sure to run the file with poetry run.

If you are on Windows:

Install Python 3.9+.

Clone this repository. Rename config.toml.example to config.toml and preferences.toml.example to preferences.toml, and fill in the fields inside config.toml. To change gameplay-related settings, edit preferences.toml.

Rename emojis.json.example to emojis.json and botc/emojis.json.example to botc/emojis.json.

Run poetry install or pip install -r requirements.txt to install the required dependencies.

Set the environment variable PYTHONUTF8 to 1.

Finally, run the main.py file to start the bot. If you installed dependancies with poetry, make sure to run the file with poetry run.

Player Guidelines for Discord Games

  • Downloading, copy-pasting, or taking screenshots of any system messages from the bot is forbidden, even if you do not plan on sharing it with others. If you believe a piece of information is important to remember, write it down on paper, type it out, or use your memory.
  • Outside of the Day Phase, discussing character abilities and choice of targets, with the intention of coordinating night actions between players, is forbidden. You are however free to talk about any other aspect of the game, such as impressions from scum reading or logical deductions.
  • Privately messaging other players or contacting them about the game through a medium that is outside of the whispering function of the bot or the public gameplay channels of the server is forbidden.
  • Meta-gaming is forbidden. This includes but is not limited to using known bot bugs or features to aid your deductions, using elements irrelevant to the game (such as being AFK) to support an argument in game, and quizzing players based on the content of their private bot instructions in order to confirm their character claim.
  • Intentionally waiting for timeouts to avoid acting out your night abilities is forbidden. This however does not apply to nominations and trials during the Day Phase.
  • Before joining, it is your responsibility to make sure that your nickname consists exclusively of alphanumerical characters and does not interfere with the formatting of bot messages. Your nickname must also remain the same throughout the game.
  • The bot is only a tool to facilitate gameplay. Some parts of the game require the players to follow a code of honour even when there is not specified action that the bot will take in response to a player breaking a rule, such as the butler not voting with their master.

Acknowledgments

  • Special thanks to belungawhale#4813, Picowchew#1559, PokeSvorlds#0299, SpikedJackson#8071 for their valuable support during the development.
  • Special thanks to Mischief#3111 for designing original artworks for the project.
  • Special thanks to the team of alpha testers: Raven1207#3790, TROPICALCYCLONEALERT#9179, Halleyscomet08#5508, !<kork>!#3497, Lord_Silberfarben#3688, Mr. Turtle#8083, Nextis#5292, Harambey#6571, RNGR-08#1660, Karah#7046.
  • Special thanks to the Pandemonium Institute, creator of this wonderful new social deduction game, as well as our friends at the unofficial Blood on the Clocktower Discord server.

Contact

You can find me as Xinverse#5440 on Discord.

About

Discord Bot implementation of the new social deduction game, Blood on the Clocktower.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%