A bot to help you with your team-building needs in PvP games!
Report Bug
·
Request Feature
Table of Contents
Ploot will help you create breakout-sessions (that you can use for gaming for example) in your discord server. You can add, remove players or spectators, randomize two teams of 6 people and move them into designated voice channels when you start/end the match. No more using randomize websites and moving each player back and forth one by one!
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
This is an example of how to list things you need to use the software and how to install them.
- npm
npm install npm@latest -g
-
Clone the repo
git clone https://github.com/stefanleminh/ploot.git
-
Install NPM packages
npm install
-
Enter your configuration in
config.json
(refer to Configuration) -
Run with
npm run start
You have to create a config.json file in the root directory. It will need the following properties:
{
"token": "", // Bot-Token
"loggingLevel": "info", // Logging-Level
"testGuildId": "" // Server-ID to employ commands on guild-level (will deploy globally if empty)
}
- Configure the bot with
/configure
. Currently you will have to set the lobby VC, first team's VC and second team's VC. This will only have to be done once when ploot joins the server unless you want to change the configuration. - Start a new session with
/newsession
- Ploot will now create roles for spectators and the teams that are pre-configured in the config.- Any player in the lobby will be a player unless you specifically give them the spectator role, either manually or via the
/switchmode
command.
- Any player in the lobby will be a player unless you specifically give them the spectator role, either manually or via the
- You can then create your teams by using the
/randomize
command - It will ignore bots and only look at the members connected to the lobby-vc. - Then you can use
/startmatch
to move every player in the lobby to their designated voice-channel and back to the lobby with/endmatch
. - Finally, you can end the session with
/endsession
.
Arguments | Description | |
---|---|---|
/help | Shows the help message | |
/configure | Configures the bot | |
/newsession | Creates a new session and roles with the preconfigured channels. | |
/endsession | Ends the session and clears all the data. | |
/startmatch | Moves the users to the designated team channels. | |
/endmatch | Moves the users back to the lobby. | |
/list | Lists active players and spectators. | |
/switchmode | @DiscordUser | Switches the player from active player to spectator or vice versa. |
/randomize | Randomizes and shows the new teams. | |
/clear | Clears active players and spectators list. |
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.