Inspiration
Being frequent visitors of the UTM Esports Club, there are a lot of things which we would like to make more convenient for us. Things like looking up certain information about characters in the games we play, organizing tournaments with large amounts of people, and making lobbies for people to play in. This bot hopes to make these situations much less of a pain to do.
What it does
This bot has three features. The main feature is the frame data feature. So far, this only works for Guilty Gear Strive (one of the main games we play). This command allows users to input a character followed by a move that they have (for example Ky 2K), and the bot will print out up-to-date information about that move sourced from Dustloop (an online wiki for the game).
The second feature is a tournament organization feature. This allows people to start and maintain tournaments through the bot. Players can report their wins to the bot, which will update the bot accordingly. Once all outstanding matches for the current round have ended (e.g. pools, semi-finals, etc.), the next round of matches can begin. This repeats until there is only one person left.
The last feature we have is a lobby system. This feature allows users to create lobbies with lobby codes, of which users can look up. This is particularly useful when there are multiple concurrent lobbies between different players, as it can be quite confusing trying to figure out which lobby to join, as well as having to repost the same lobby code many times.
How we built it
This bot was mainly built on discord.py. We used beautifulsoup4 to scrape Dustloop's HTML character page for the information on the move we wanted, which would then be neatly organized into an embed and printed. The other two features were built mainly with basic python and the aforementioned discord.py.
Challenges we ran into
Web scraping was completely foreign for most of us; even the concept of web scraping was confusing for some. Having to figure out what web scraping even was, and how to implement it into our discord bot was a major challenge we had to overcome.
Discord bots, while we were somewhat more comfortable with, we still did not know too much about how to make one at first. Figuring out how to do basic things like setting one up and even just getting it to print things was difficult at first.
Accomplishments that we're proud of
We're surprised that we even got anything to function in the first place. This is all of our first hackathons and it was pretty nerve-racking.
What we learned
How to use beautifulsoup4 and discord.py. We have also gained valuable experience working as a team.
What's next for UTM Esports Bot
Adding support for more games for the frame data feature is a major one. There are many video games on the market, after all, so we will have to scrape different websites for different games. Making it so the tournament feature actually pings people when their next-round matches begin is another, as well as making group numbers clearer when starting the tournament.
Built With
- beautiful-soup
- discord.py
- python

Log in or sign up for Devpost to join the conversation.