Skip to content

JustNotSebas/BuckSoul

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💛 BuckSoul

Now's your chance to get [[SHOT!]]

A chaotic implementation of Russian Roulette on Discord, with some extra twists added.

Current functionality

  • Shoot your friends! Your gun has 5 blank chambers and a loaded bullet.
  • Get an special role for your match:
    • Malevolent Sheriff - Shoot two people at once with increased chance!
    • Benevolent Sheriff - Bring someone back from the gates of death!
    • Purple Sheriff - Pull a William Afton and escape death! (With a chance of losing your perk)
    • Crazy Sheriff - Spin a fully loaded chamber and kill one of 6 people!
    • Tien Sheriff - Suicide bomb, taking up to 2 people with you! (One guaranteed and one with increased chances)
  • Per-server role system! Don't share your game with other servers; Each Discord guild saves its own data!
  • Customizable GIFs and actions! Configure your own kill/miss GIFs on the configuration file, and change the command cooldowns at will!

Commands

Game commands (/roulette)

  • /roulette shoot <user> - Shoot someone with a 1/5 chance to kill
  • /roulette bigshot <user1> <user2> - Malevolent sheriff: Shoot 2 people (1/3 chance)
  • /roulette gambit <5 users> - Crazy Sheriff: One random person dies (author can die as well)
  • /roulette chiaoutzu <user1> <user2> - Tien Sheriff: Suicide bombing (user1 dies, user2 has a 50/50 chance)
  • /roulette save <user> - Benevolent sheriff: Revive someone (45min cooldown)
  • /roulette revive - Purple Sheriff: Self-revive (with a 50% chance to lose the perk)
  • /roulette reset [clear_perks] - Manager: Reset the game

manager commands (/role)

  • /role assign <user> <role> - Assign a sheriff role to someone (Requires "Manage Server" permission or the Manager role)
  • /role remove <user> <role> - Remove a role from someone
  • /role list <role> - See who has a specific role

How to run locally

  1. Clone this repository with git clone https://www.github.com/JustNotSebas/BuckSoul.git or download and unzip the repository.

  2. Rename .env.example to .env and set your variables

variable description default
TOKEN Sets the token used by py-cord to start the bot. Required. SET_YOUR_TOKEN_HERE
TIMEZONE Sets the timezone used for time-related purposes. Uses PYTZ format. UTC
DB_URL Sets the URI for MongoDB to use. No other databases are supported out of the box. mongodb+srv://SET_YOUR_MONGODB_URI_HERE
  1. Run with python3 main.py or py main.py if you're on windows. no extra arguments required, as long as you have set all your variables correctly.

Acknowledgements

The bot is designed to run on the following scenario:

  • A database hosted on mongodb (atlas is recommended)
  • All .env variables set correctly (all are required.)
  • A single bot instance running per-server

As such, any variation might have an impact on the bot's usage. For the 'intented' experience, I recommend using the bot's public instance hosted by me, which you can find here.

No bot intents are required, and the bot runs by default with discord.Intents.default(), so you only need to create a bot application in the discord developer portal to be able to use this bot.

I don't expect contributions but I will review and appreciate any one available.

license

This program is released under the GNU General Public License v3.0 (GPL-3.0). You are free to use, modify or distribute it as long as your changes remain open source (if distributing) and licensed under GPL. Click here to read the full license hosted in this repository.

About

Now's your chance to get [[SHOT]]!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages