Basic Usage
Once your league is live you can run it from the web (heir.gg/<league>),
from Discord (slash commands), or both — they act on the same league. This
page shows the common flows both ways.
Organizer setup
After installation, finish configuring the league:
- Web — open
heir.gg/<league>/manage. Set regions, roster size, match nights, and series format under League → Competition, and stat tracking under Play → Stat tracking. The save bar tracks unsaved changes and blocks navigation until you save or discard. - Discord — run
/sync-users, then/configto set the same options.
Player flow
To join a team:
- You need the Free Agent role (Discord leagues grab it from
#get-roles). - A captain adds you —
/roster addin Discord, or the Roster card on the team page on the web.
To leave a team, use /leave-team (or the web team page). The command shows you
what will happen before it does anything — a leaving captain hands captaincy to a
random remaining member, and the last player leaving disbands the team — and asks
you to confirm.
Captain flow
Captains manage one team, from either surface:
- Roster — add, kick, and set captain
- Team identity — name, region, and a two-color gradient team color
- Availability — the web availability grid is the primary way to set when your
team can play (it shows your region's real slot times and edits the whole week
at once);
/team-availability viewandvacationremain in Discord - Locations — preferred server locations for matchmaking
- Tournaments — enter open cups with one click from the team page
Weekly matchmaking flow
The weekly schedule uses team availability, region, elo bounds, a per-team weekly match cap, and recent-history penalties to reduce back-to-back repeats.
- Captains set availability (web grid).
- An Organizer configures matchmaking (web Competition card or
/config). - Schedules generate automatically each week, or an Organizer builds them in the
schedule editor on the web (or
/schedule generate/draftin Discord). - Published schedules post to the league and DM both captains of every fixture.
See /schedule for the full scheduling model.
Reporting results
Results can be recorded three ways:
- Tracked servers — competitive matches record and score themselves.
/report-match— the winning captain reports in Discord./elo matchor the schedule's Report result button — organizer entry.
If a result must be undone, void the match (/admin match-void — it shows the
score and the elo it will reverse, then asks for confirmation).
Running without Discord
A web-native league (created without a Discord server) runs entirely from the browser — the flows above apply, minus the Discord commands. Teams are records rather than roles, and there's no bot to invite. See Installation.