Tept Cup Bot
Tept Cup Bot is a Discord bot designed to assist with running community Teamfight Tactics (TFT) tournaments inside Discord servers.
The bot helps tournament organizers manage events by supporting player registration, check-ins, automatic table assignment, match result detection, and tournament standings.
The goal of the project is simple:
make recurring community TFT tournaments easier to organize and participate in.
Intended Audience
Tept Cup Bot is designed for community organizers running TFT tournaments inside Discord servers.
It is intended for:
- small to mid-sized community tournaments
- recurring Discord server events
- casual competitive environments
The bot is not intended as a commercial tournament platform or matchmaking service.
What Problem This Bot Solves
Running community tournaments often requires significant manual work from organizers.
Typical tasks include:
- collecting player registrations
- verifying Riot IDs
- organizing players into tables
- tracking match progress
- collecting match results
- calculating rankings
These tasks are often handled through spreadsheets and manual coordination.
Tept Cup Bot supports these workflows directly inside Discord, helping organizers focus on running the event rather than managing logistics.
Tournament Flow
The bot supports the following tournament workflow.
1. Tournament Creation
An organizer creates a tournament using the bot.
The bot prepares the structure required to manage the event.
2. Player Registration
Players register their Riot ID (GameName#TagLine) through a Discord modal.
The bot resolves the Riot ID using the Riot API and associates the resulting player identifier with the player's Discord account.
3. Check-in Phase
Before the tournament begins, players check in using a Discord interaction.
Organizers can also perform manual check-ins if necessary.
4. Table Assignment
When a round begins, the bot automatically assigns checked-in players to tables.
A Discord thread is created for each table to allow players to coordinate their match.
5. Match Detection
During round progress, the bot polls Riot match data for participating players.
When a common match involving players from a table is detected, the bot extracts placement information and records the result.
6. Result Handling
Match results are primarily determined automatically using Riot match data.
If automatic detection fails or requires correction, tournament organizers can manually edit table results using administrative tools.
There is currently no player-facing placement submission form.
7. Rankings and Results
At the end of a round, the bot calculates standings and publishes the results in Discord.
At the end of the tournament, the bot publishes the final tournament standings.
Riot API Usage
Tept Cup Bot integrates with the Riot Games API to support tournament operations involving Teamfight Tactics player accounts.
The following endpoints are currently used:
riot/account/v1/accounts/by-riot-id/{gameName}/{tagLine}
tft/match/v1/matches/by-puuid/{puuid}/ids
tft/match/v1/matches/{matchId}
These endpoints are used for:
- resolving Riot IDs to player identifiers (PUUID)
- retrieving recent match identifiers for players
- retrieving match details when verifying tournament matches
Match lookups currently examine up to the most recent 20 matches per player when attempting to detect a shared match for a table.
Rate Limit Handling
If the Riot API returns a 429 response, the bot reads the Retry-After header and waits before retrying the request.
API requests are performed only when necessary for tournament operations.
Data Stored
The bot stores operational data required for tournament management.
Examples include:
- Discord user ID
- Discord display name
- Riot ID (GameName and TagLine)
- Riot player identifier (PUUID)
- tournament participation status
- table assignments
- placements and points
- tournament / round / table state information
- related Discord message and thread identifiers
This data is stored in a SQLite database used by the bot backend.
No payment-related data is collected.
Data Removal
At this time, there is no automated in-bot data deletion workflow.
Users who require removal of stored Riot ID or participation data may contact the bot maintainer.
Riot Games Notice
Tept Cup Bot is not affiliated with, endorsed by, or sponsored by Riot Games.
Riot Games, Teamfight Tactics, and related properties are trademarks or registered trademarks of Riot Games, Inc.
Contact
Example Usage
Example tournament interface inside Discord.