WingTech Bot is a Discord bot written in C# that provides a reaction tracker, karma system, games, cute inside jokes, and more to my private Discord server.
To contribute to WingTechBot, follow these steps:
- Fork this repository.
- Create a branch:
git checkout -b <branch_name>
. - Make your changes and commit them:
git commit -m '<commit_message>'
- Push to the original branch:
git push origin <project_name>/<location>
- Create the pull request.
Alternatively see the GitHub documentation on creating a pull request.
- Create a new empty Discord server (or test it on your own).
- Using a web browser, visit the Discord Developer Portal and create a new Application.
- Add a Bot to your application.
- Save the token for your Bot somewhere, we'll use that later.
- Under OAuth2, enable the "bot" scope.
- Generate an invite URL for your bot and use it to add the bot to your server.
- Fork, build, and run this repo. It should error, create a file in the project root called "config.json"
- Open "config.json"
- Replace the null value under "LoginToken" with the bot token you saved earlier.
- Replace the null value under "UserId" with the bot's Discord user ID.
- Replace the null value under "ServerId" with your Discord server ID (right-click your server icon on the left in Discord and choose "Copy ID", it should be one really big number).
- If you have a designated bot channel, replace the null value under "BotChannelID" with the ID of that channel.
- Run your fork of the repo again. WingTech Bot should deploy to your server.
- Modify your fork of the repo at your leisure.
If you're looking for how to implement a game for WingTech Bot, I'd recommend looking at the file "Counting.cs". It's a pretty simple game that shows of the basics of the WingTechBot game platform.
My code uses reflection to create the game pool. Any class deriving from the abstract class Game will be automatically added to the available games. However, to add games to the my version of WingTech Bot, you'll have to submit a pull request as explained above.