Skip to content

JWWolstenholme/ANZTBot

Repository files navigation

ANZTBot

A Discord bot made for the ANZT Discord server to assist with the running of osu! tournaments.

Features:

Tournament Registration System

See server/README.md for details about the web server and tourney-signup.py for the cog that it communicates with.

Allows users to sign up for tournaments by interacting with the bot.

This uses osu!'s OAuth2 service and is used to link each user's osu! and discord accounts.
Previously we used Google Forms but this allowed people to sign up on behalf of others, regardless of their intention to play or not. In addition, form responses often contained human error.

GIF showing the process of signing up

Match result reporting

See match-result-posting.py for implementation.

The feature is triggered by the match ID being posted in our referee's channel.
It fetches data from Google Sheets and the osu! API.

Screenshot of bot's message in discord

Qualifier lobby registration system

See qualifiers.py for implementation.

Allows users that are registered for the tournament to pick and choose their qualifier lobby using their discord account at any time. Referees can then check the messages below to know when to invite which osu! accounts.

Screenshot of bot's message in discord

Twitch channel ping

See twitch-pickem.py for implementation.

Includes a command to opt-in or out of receiving these pings by giving or removing the relevant discord role.

Screenshot of bot's message in discord

ANZT10S Amplifier Seletion

See amplifiers.py for implementation.

The tournament ANZT10S featured a custom gimmick where users could choose at least one modifier to their matches each week. This cog allowed ANZTBot to message each player their options each week, providing a dropdown for users to select their chosen amplifier(s) and persisting their choice in a database.

Screenshot of bot's message in discord

Discord Error reporting

See error-reporting.py for implementation.

Pings a set user in a set channel for uncaught errors providing a full traceback and context.

Screenshot of bot's message in discord

Requirements

See requirements.txt for specific packages.

The following can be set in the settings.py file (refer settings_template.json).

Important

If you want to use this bot, you'll have to host it yourself and adapt the code to your use-case. Some coding knowledge will be required.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published