Skip to main content
Documentation

Command Reference

All GotNext Bot slash commands organized by category

Player Commands

Everyone in the server can use these commands.

/register

Register for the server's ELO system. One-time setup — you'll start at the server's starting ELO (default 1200). The bot updates your nickname to show your rating (e.g., [1200] YourName). Optionally provide a custom display name for leaderboards and stats.

Command parameters
ParameterRequiredDescription
nameNoCustom display name (1-32 characters). If not provided, uses your Discord name.
/register

Register with your Discord name.

/register name:avurys

Register with a custom display name.

/set-name

Change your display name in the ELO system. Updates your leaderboard name, stats, and Discord server nickname. Once set, your name won't be overwritten by Discord name changes.

Command parameters
ParameterRequiredDescription
nameYesYour new display name (1-32 characters)
/set-name name:avurys

/join

Join the queue in the current channel. You must /register first. When enough players are in, a match is automatically created with balanced teams. If the queue has show-queue disabled, the channel only shows "A player joined" without revealing who.

Command parameters
ParameterRequiredDescription
player2NoTeammate to queue with
player3NoTeammate to queue with
player4NoTeammate to queue with
player5NoTeammate to queue with
/join player2:@friend1 player3:@friend2

All teammates must be registered and not banned. Your team must be full (e.g. 2 players in a 2v2 queue) and will only match against another team.

/leave

Leave the queue in the current channel. If you're in a team, the entire team is removed. If show-queue is disabled, the channel only shows "A player left" without revealing who.

/queue

See who is currently in the queue for the current channel.

/stats

View ELO stats for yourself or another player. Renders a stats card showing rating, rank tier, record, win/loss streaks, peak rating, and more.

Command parameters
ParameterRequiredDescription
playerNoPlayer to look up (defaults to yourself)
/stats player:@someone

/h2h

View your head-to-head record against another player. Renders a card showing:

  • Versus record — wins and losses when you played against each other, with win rate
  • Teammates record — wins and losses when you were on the same team
  • Recent matches — last 5 matches between you, showing which team each player was on and the result
  • Both players' current ELO and rank tier
Command parameters
ParameterRequiredDescription
playerYesThe player to compare against
/h2h player:@rival

/teammates

View your best (and worst) teammates by win rate. Aggregates every completed match where you shared a team with another player and shows a ranked breakdown:

  • Top pairings — up to 8 rows with wins, losses, win rate, games played, and average ELO delta when paired
  • Cursed combos — any teammate you win under 40% with, surfaced separately so the one 0-4 pairing buried in the list still gets the spotlight
Command parameters
ParameterRequiredDescription
playerNoPlayer to look up (default: yourself)
min-gamesNoMinimum games together to count a pairing. Default: 3. Range: 1-20
queueNoScope to a specific queue. Default: all queues in the server
sortNoSort order: winrate (default), games (most games together), or elo-delta (biggest ELO impact)
/teammates
/teammates player:@friend min-games:5 sort:elo-delta

Look up a friend's teammate history, require at least 5 games together, sort by who tends to boost their ELO the most.

/predict

Get a win probability prediction for an active match. Uses the match roster's average ELO to compute base odds, then layers in cross-team head-to-head history to adjust confidence. Each team's chance is shown as a Unicode progress bar.

  • Win probability — ELO-derived odds split between the two teams
  • Head-to-head matchups — per-pair history across every cross-team matchup in completed games
  • Caveat note — surfaced if the H2H record strongly disagrees with the ELO read (e.g. "Team 1 is favored on paper but has a losing H2H record against this roster")
Command parameters
ParameterRequiredDescription
matchYesMatch number (as shown in Discord match embeds). Must be an IN_PROGRESS match
/predict match:42

/leaderboard

View the server's ELO leaderboard. Shows the top players ranked by rating. Includes a link to the full web leaderboard that you can share with your community.

/top

View top players by category. Choose between Most MVPs or Longest Win Streaks to see the top 10 players in each category. Includes a link to the full web leaderboard.

Command parameters
ParameterRequiredDescription
categoryYesCategory to view: mvps or streaks
/top category:mvps

/tiers

View the ELO tier thresholds configured for this server. Shows each tier name and the ELO range needed to reach it, plus the server's starting ELO.

/help

Show all available GotNext Bot commands with descriptions.

/how-it-works

See how this channel's queue or challenge system works. Explains the current queue mode, team size, ELO rules, and any active settings configured for this channel.

/scoring-document

Generate the full ELO scoring rules document for this server. Shows how ELO is calculated, tier thresholds, wager rules, streak bonuses, and any other scoring configuration in effect.

/match

View details of a specific match by ID.

Command parameters
ParameterRequiredDescription
idYesMatch number to look up
/match id:42

/matches

See all currently active (unreported) matches in this queue channel.

/challenge

Challenge another team captain to an ELO match. Both teams must have enough players for the queue size. The challenged captain receives a button to accept or decline. Challenges can optionally include an ELO wager if the queue has wagers configured.

Command parameters
ParameterRequiredDescription
opponentYesThe team captain to challenge (User)
/challenge opponent:@rivalCaptain

Challenge mode must be enabled on this queue via /set-challenges.


Queue Management

Requires MANAGE_QUEUES permission or Discord Administrator.

/setup

Set up a solo queue in the current channel. Each channel can have one queue.

Command parameters
ParameterRequiredDescription
team-sizeYesPlayers per team, 1-10 (e.g., 4 for 4v4)
modeYesAUTO_MATCH (bot auto-balances teams) or SCHOOLYARD_PICK (captains are selected and take turns picking)
elo-modeNoELO (dynamic K-factor) or FLAT (fixed gain/loss). Default: ELO
flat-amountNoELO gained per win if using flat mode. Default: 25
flat-loss-amountNoELO lost per loss if using flat mode. Default: same as flat-amount
show-queueNoWhen true, /queue, /join, and /leave show player names. When false, the queue is fully anonymous — only player counts are shown and nobody can see who joined or left. Default: true
parties-enabledNoAllow pre-made teams to queue together using /join @teammate1 @teammate2. Teams must be full team size and only match against other teams. Default: true
cooldownNoMinutes before re-queue after a match. Default: 0 (off)
idle-timeoutNoAuto-remove players from the queue after X minutes of inactivity. Default: 0 (off)
mvp-bonusNoBonus ELO awarded to MVP each match (0 = off). Default: 0
rematch-window-hoursNo1v1 only — time window in hours for rematch limit (0-168, 0 = off). Default: 0
rematch-window-maxNo1v1 only — max rematches against same opponent within the time window (1-10). Default: 2
captain-modeNoSchoolyard Pick only — how captains are chosen: RANDOM, HIGHEST_ELO, LOWEST_ELO, VOTE, or BEST_RECORD. Default: RANDOM
/setup team-size:4 mode:AUTO_MATCH
/setup team-size:2 mode:AUTO_MATCH elo-mode:FLAT flat-amount:15
/setup team-size:4 mode:SCHOOLYARD_PICK idle-timeout:30

Creates a 4v4 queue with captains draft and 30-minute idle timeout.

Schoolyard Pick mode: When enough players join, two captains are selected based on the captain-mode setting (random by default, or highest/lowest ELO). Captains take turns picking players via buttons. Each captain has 45 seconds to pick — if they don't pick in time, the bot auto-picks the highest-rated available player. Once all players are picked, the match starts.

/clear-queue

Remove all players from the queue in the current channel.

/set-maps

Set the map pool for random map selection in the current channel's queue.

Command parameters
ParameterRequiredDescription
mapsNoComma-separated map names. Leave empty to clear the pool. Max 50 maps.
/set-maps maps:Dust 2, Mirage, Inferno, Nuke, Overpass

Clearing the map pool disables map selection. Setting maps when none exist defaults to RANDOM mode.

/set-map-mode

Set how maps are chosen for matches.

Command parameters
ParameterRequiredDescription
modeYesRANDOM (auto-select from pool) or VOTE (players vote, 30-second timer)

Requires a map pool to be set first via /set-maps.

/set-captain-mode

Set how captains are chosen in Schoolyard Pick mode.

Command parameters
ParameterRequiredDescription
modeYesRANDOM (shuffled), HIGHEST_ELO (top 2 rated), LOWEST_ELO (bottom 2 rated), VOTE (players vote), or BEST_RECORD (highest win rate)
min-gamesNoBest Record only — minimum games to qualify as captain (default: 5)
/set-captain-mode mode:BEST_RECORD min-games:5

Only applies to queues using Schoolyard Pick mode.

/set-mvp-bonus

Set the bonus ELO awarded when a player receives an MVP.

Command parameters
ParameterRequiredDescription
amountYesBonus ELO per MVP. 0 to disable, max 100.
/set-mvp-bonus amount:10

/cancel-draft

Cancel an active captain draft in the current queue channel. Use this if a draft is stuck or needs to be restarted. All players are returned to the queue.

/remove-from-queue

Remove a specific player from the queue in the current channel. If the player is part of a team (party), only that player is removed — not the whole team.

Command parameters
ParameterRequiredDescription
playerYesThe player to remove from the queue (User)
/remove-from-queue player:@afkPlayer

/freeze-queue

Toggle a freeze on the current channel's queue. When frozen, new players cannot join via /join until the queue is unfrozen. Players already in the queue are unaffected. Run the command again to unfreeze.

/set-wager

Set the ELO wager amount for this queue. When a wager is active, the winning team gains the wager amount from the losing team on top of normal ELO changes. Set to 0 to disable wagers.

Command parameters
ParameterRequiredDescription
amountYesWager amount in ELO (0 to disable)
/set-wager amount:25
/set-wager amount:0

Disables wagers for this queue.

/set-challenges

Configure challenge mode for this queue. When enabled, players can use /challenge to directly challenge another team captain to an ELO match instead of waiting in the queue. Optionally set a max wager to cap how much ELO can be wagered on challenges.

Command parameters
ParameterRequiredDescription
enabledYesEnable or disable challenge mode (Boolean)
max-wagerNoMaximum ELO wager allowed on challenges (Integer)
/set-challenges enabled:true
/set-challenges enabled:true max-wager:50

Reporting Results

Requires REPORT_RESULTS permission or Discord Administrator.

/win

Report the winning team for a match. You can optionally award MVPs at the same time instead of using a separate /mvp command.

Command parameters
ParameterRequiredDescription
matchYesMatch ID (shown in the match embed)
teamYesWinning team number (1 or 2)
mvpNoAward MVP to this player
mvp2NoSecond MVP (optional)
mvp3NoThird MVP (optional)
/win match:42 team:1 mvp:@clutchPlayer

/sub

Swap a player in an active match for another registered player. The match must not have been reported yet.

Command parameters
ParameterRequiredDescription
matchYesMatch number
outYesPlayer to remove from match
inYesPlayer to add to match
/sub match:5 out:@disconnectedPlayer in:@substitutePlayer

/cancel-match

Cancel an active match. No ELO changes are applied.

Command parameters
ParameterRequiredDescription
matchYesMatch ID

/void-match

Void a completed match and reverse all ELO changes. Use this if a result was reported incorrectly and you want to undo it entirely. Can be reversed with /unvoid-match.

Command parameters
ParameterRequiredDescription
matchYesMatch ID

/overturn-match

Flip the winner of a completed match. The original winner's ELO gains are reversed and applied to the other team.

Command parameters
ParameterRequiredDescription
matchYesMatch ID

/unvoid-match

Restore a voided match and reapply ELO changes. Use this if a match was voided by mistake. ELO will be recalculated based on current ratings.

Command parameters
ParameterRequiredDescription
matchYesMatch ID

/mvp

Award MVP to one or more players in a completed match. Grants bonus ELO if configured via /set-mvp-bonus. You can also award MVPs directly in the /win command.

Command parameters
ParameterRequiredDescription
matchYesMatch ID
playerYesThe MVP player
player2NoSecond MVP (optional)
player3NoThird MVP (optional)
player4NoFourth MVP (optional)
/mvp match:42 player:@clutchPlayer player2:@anotherPlayer

/revoke-mvp

Revoke an MVP award from a player. Removes the MVP and reverses any bonus ELO that was awarded. Use this if an MVP was given by mistake.

Command parameters
ParameterRequiredDescription
playerYesPlayer to revoke MVP from
matchYesMatch ID
/revoke-mvp player:@wrongPick match:42

Player Management

Requires MANAGE_PLAYERS permission or Discord Administrator.

/set-elo

Manually set a player's ELO rating.

Command parameters
ParameterRequiredDescription
playerYesPlayer to update
eloYesNew ELO rating (0-5000)
/set-elo player:@someone elo:1500

/rename-player

Rename another player in the ELO system and update their Discord server nickname. Players can rename themselves with /set-name — this command is for admins to rename other players.

Command parameters
ParameterRequiredDescription
playerYesPlayer to rename
nameYesNew display name (1-32 characters)
/rename-player player:@someone name:avurys

/remove-player

Unregister a player from the ELO system. Removes their ELO prefix from their nickname.

Command parameters
ParameterRequiredDescription
playerYesPlayer to remove

/ban-player

Ban a player from all queues on the server.

Command parameters
ParameterRequiredDescription
playerYesPlayer to ban
durationNoBan duration in hours. Omit for permanent. Max: 8760 (1 year).
reasonNoReason for the ban (max 500 characters)
/ban-player player:@troll duration:24 reason:Leaving matches early

/unban-player

Remove a player's ban.

Command parameters
ParameterRequiredDescription
playerYesPlayer to unban

/ban-status

Check if a player is currently banned and view ban details.

Command parameters
ParameterRequiredDescription
playerYesPlayer to check

Server Settings

/set-starting-elo

Set the starting ELO for new players who register on this server. This is a server-wide default — individual queues inherit it unless overridden. Also configurable from the web dashboard Settings tab.

Permission: MANAGE_SERVER or Discord Administrator.

Command parameters
ParameterRequiredDescription
amountYesStarting ELO rating (100-3000)
/set-starting-elo amount:1200

/set-provisional-threshold

Set the number of games a player must complete before they are considered “established” (no longer provisional). Provisional players may have different K-factors or flat ELO amounts depending on queue configuration.

Permission: MANAGE_SERVER or Discord Administrator.

Command parameters
ParameterRequiredDescription
gamesYesNumber of games (1-50)
/set-provisional-threshold games:5

/set-scores-channel

Designate a channel where match scores are automatically posted after each game. Leave the channel option empty to clear the setting and stop posting scores.

Permission: MANAGE_SERVER or Discord Administrator.

Command parameters
ParameterRequiredDescription
channelNoChannel for score reports (omit to clear)
/set-scores-channel channel:#match-results

/set-tier-announcements

Toggle tier promotion announcements. When enabled, the bot posts a message whenever a player ranks up to a new ELO tier.

Permission: MANAGE_SERVER or Discord Administrator.

Command parameters
ParameterRequiredDescription
enabledYestrue to enable, false to disable
/set-tier-announcements enabled:true

/season-config

Configure season settings including reset type, duration, ELO decay, and the summary channel. All options are optional — only the ones you provide will be updated. This is the slash command equivalent of the Season section in the web dashboard Settings tab.

Permission: MANAGE_SERVER or Discord Administrator. ELO Decay requires a Pro subscription.

Command parameters
ParameterRequiredDescription
reset-typeNoHARD (reset to starting ELO) or SOFT (partial reset)
soft-reset-factorNoFactor for soft reset, 0.00-1.00 (e.g. 0.75 = keep 75%)
duration-weeksNoSeason length in weeks (1-52)
summary-channelNoChannel for end-of-season summary
decay-enabledNoEnable/disable ELO decay (Pro)
decay-hoursNoHours of inactivity before decay starts
decay-pointsNoPoints deducted per decay period
decay-min-eloNoMinimum ELO floor (decay stops here)
/season-config reset-type:SOFT soft-reset-factor:0.75 duration-weeks:4

Season Commands

/season-info

View the current season number, time remaining, and reset type. Available to everyone.

/season-leaderboard

View the final standings from a past season. Available to everyone.

Command parameters
ParameterRequiredDescription
seasonYesSeason number to view
/season-leaderboard season:3

/season-reset

Immediately end the current season, archive all player stats, and reset ELOs. Requires MANAGE_QUEUES permission.

Command parameters
ParameterRequiredDescription
confirmYesMust be true to confirm the reset
/season-reset confirm:true

/streak-bonus

Configure bonus ELO awarded when a player reaches a specific win streak milestone. The bonus fires once at the exact streak count. Requires MANAGE_QUEUES permission.

Command parameters
ParameterRequiredDescription
streakYesWin streak milestone (2-50)
bonusYesBonus ELO to award (0 to remove this milestone)
/streak-bonus streak:5 bonus:10

/matchmaking

Set how players are selected when the queue fills. Requires MANAGE_QUEUES permission. Must be run in a queue channel.

Command parameters
ParameterRequiredDescription
modeYesstandard (first available, balanced teams) or skill-range (similar skill levels, Pro)
elo-rangeNoBase max ELO spread for skill-range mode (50-1000, default 200)
expansionNoRange expansion per minute of wait (10-200, default 50)
/matchmaking mode:standard

First available players, teams balanced via snake draft.

/matchmaking mode:skill-range

Uses default values: 200 ELO range, +50/min expansion.

/matchmaking mode:skill-range elo-range:150 expansion:75

Custom range and expansion.

/elo-gate

Set ELO requirements to join this queue. Only players within the specified rating range can use /join. Requires MANAGE_QUEUES permission. Must be run in a queue channel.

Command parameters
ParameterRequiredDescription
minNoMinimum ELO to join (0-3000)
maxNoMaximum ELO to join (0-3000)
offNoRemove all ELO restrictions
/elo-gate min:1300

Only players rated 1300+ can join.

/elo-gate max:1100

Only players rated 1100 or below can join.

/elo-gate min:800 max:1400

Only players rated 800–1400 can join.

/elo-gate off

Removes all ELO restrictions.


Tournament Commands

Mini-tournaments are single-elimination brackets run entirely in Discord. Use /tournament create to start one, have players join via button, then /tournament start to generate the bracket. Create and cancel commands require MANAGE_TOURNAMENTS permission. Viewing bracket and status is open to everyone.

/tournament create

Start a new mini-tournament in the current channel. Players join via a button on the tournament embed. ELO bonuses are awarded to the winner and runner-up when the tournament concludes.

Command parameters
ParameterRequiredDescription
nameNoTournament name (default: auto-generated)
team-sizeNoPlayers per team (default: 1 for solo)
max-playersNoMaximum number of participants (default: 8)
seedingNoHow participants are seeded into the bracket — ELO (highest seed first) or Random (default: ELO)
winner-bonusNoBonus ELO awarded to the tournament winner (default: 50)
runner-up-bonusNoBonus ELO awarded to the runner-up (default: 0)
/tournament create

Starts an 8-player solo tournament with default settings.

/tournament create name:Spring Invitational team-size:2 max-players:16 seeding:ELO winner-bonus:100 runner-up-bonus:25

16-player 2v2 tournament seeded by ELO with prizes.

/tournament start

Close registration and generate the bracket for the active tournament in this channel. The bracket is posted as an embed and match channels (or threads) are created for each first-round matchup.

/tournament cancel

Cancel the current active tournament in this channel. No ELO changes are applied. Use this if the tournament needs to be abandoned before or after it starts.

/tournament bracket

Show the tournament bracket. Displays current match results and advancement. If no ID is given, shows the currently active tournament.

Command parameters
ParameterRequiredDescription
idNoTournament number to view (default: current active tournament)
/tournament bracket
/tournament bracket id:3

/tournament status

Show the tournament status and participant list. Displays registration count, max players, team size, and whether the tournament has started.

Command parameters
ParameterRequiredDescription
idNoTournament number to view (default: current active tournament)
/tournament status

/tournament invite

Invite teammates to your tournament team. You must already be registered as a participant. Invited players receive a button to accept or decline. The team is locked once all spots are filled.

Command parameters
ParameterRequiredDescription
player1YesFirst teammate to invite (User)
player2NoSecond teammate to invite (User)
player3NoThird teammate to invite (User)
player4NoFourth teammate to invite (User)
/tournament invite player1:@teammate1 player2:@teammate2

Only available to registered tournament participants.


LFG Commands

/lfg

Create a Looking for Group post. Other players can click "Join" to fill the group. When the group is full, everyone gets pinged. Available to everyone.

Command parameters
ParameterRequiredDescription
gameYesGame name (autocomplete from the server's allowed games list)
descriptionNoWhat you're looking for (max 500 characters)
playersNoTotal players needed including you (default: 5, min: 2)
/lfg game:Gears 5 description:Ranked KOTH, need 4 more players:5

/lfg-setup

Configure LFG settings for the server. Requires MANAGE_QUEUES permission.

Command parameters
ParameterRequiredDescription
enabledNoEnable or disable LFG
expiryNoDefault post expiry in minutes (1-1440). Default: 120
max-sizeNoMaximum group size (2-50). Default: 20
gamesNoComma-separated list of allowed games (empty to allow all)
/lfg-setup enabled:true expiry:60 max-size:10 games:Gears 5, Valorant, League

Summary

All commands summary
CommandCategoryPermission
/registerPlayerEveryone
/set-namePlayerEveryone
/joinPlayerEveryone
/leavePlayerEveryone
/queuePlayerEveryone
/statsPlayerEveryone
/h2hPlayerEveryone
/leaderboardPlayerEveryone
/topPlayerEveryone
/tiersPlayerEveryone
/how-it-worksPlayerEveryone
/scoring-documentPlayerEveryone
/matchPlayerEveryone
/matchesPlayerEveryone
/challengePlayerEveryone
/helpUtilityEveryone
/season-infoSeasonEveryone
/season-leaderboardSeasonEveryone
/tournament bracketTournamentEveryone
/tournament statusTournamentEveryone
/tournament inviteTournamentEveryone
/lfgLFGEveryone
/setupAdminMANAGE_QUEUES
/clear-queueAdminMANAGE_QUEUES
/set-mapsAdminMANAGE_QUEUES
/set-map-modeAdminMANAGE_QUEUES
/set-captain-modeAdminMANAGE_QUEUES
/set-mvp-bonusAdminMANAGE_QUEUES
/cancel-draftAdminMANAGE_QUEUES
/remove-from-queueAdminMANAGE_QUEUES
/freeze-queueAdminMANAGE_QUEUES
/set-wagerAdminMANAGE_QUEUES
/set-challengesAdminMANAGE_QUEUES
/streak-bonusAdminMANAGE_QUEUES
/matchmakingAdminMANAGE_QUEUES
/elo-gateAdminMANAGE_QUEUES
/season-resetAdminMANAGE_QUEUES
/lfg-setupAdminMANAGE_QUEUES
/set-starting-eloServerMANAGE_SERVER
/set-provisional-thresholdServerMANAGE_SERVER
/set-scores-channelServerMANAGE_SERVER
/set-tier-announcementsServerMANAGE_SERVER
/season-configSeasonMANAGE_SERVER
/tournament createTournamentMANAGE_TOURNAMENTS
/tournament startTournamentMANAGE_TOURNAMENTS
/tournament cancelTournamentMANAGE_TOURNAMENTS
/winAdminREPORT_RESULTS
/subAdminREPORT_RESULTS
/cancel-matchAdminREPORT_RESULTS
/void-matchAdminREPORT_RESULTS
/overturn-matchAdminREPORT_RESULTS
/unvoid-matchAdminREPORT_RESULTS
/mvpAdminREPORT_RESULTS
/revoke-mvpAdminREPORT_RESULTS
/set-eloAdminMANAGE_PLAYERS
/rename-playerAdminMANAGE_PLAYERS
/remove-playerAdminMANAGE_PLAYERS
/ban-playerAdminMANAGE_PLAYERS
/unban-playerAdminMANAGE_PLAYERS
/ban-statusAdminMANAGE_PLAYERS