Links
Summary
This is a discord bot that allows for easier tournament managment of the rythm game osu! The bot interfaces with the osu! api, as well as with google sheets to automatically log matches. When a match is complete in game, the referee of the match can type in a command within the discord (that includes the match id), and the bot will automatically retrieve all information about that match, and report statistics to the server, as well as a google spreadsheet. The spreadsheet data is sent through a POST request, so there needs to be a script which handles this data and populates the tables.
Languages Used: Javascript
Technologies Used: Discord.js
Takeaways
While this project offered me a few different technical takeaways (authenticating with the discord API, retrieving and parsing api data, managing chat commands) the largest takeaway was in software usability.
This bot was developed and used for a tournament I held, which had 60+ players and 10+ staff members. Initially, there were many edge cases which were not handled, and the commands had to be entered in a very specific way in order for things to work. As time went on, I worked on improving the usability of the bot. At the end, the bot ended up being much more usable than it was in the beginning, handling multiple edge cases and being much more flexible with user input.