Competition as a Service
Leagues that run themselves.
Heir runs competitive leagues from inside Discord — teams and rosters, elo and standings, weekly scheduling, live in-game stat tracking, and public player profiles. The league layer is game-independent; each title plugs in as a module.
Start here
What you get
How a league runs
- Install and activate — invite the bot, get the guild activated, run
/sync-users. - Configure once —
/configsets regions, roster size, match days, and scheduling windows. - Teams form — captains manage their own rosters and availability.
- Schedules publish weekly — generated from availability and elo bounds, with captain DMs and reminders.
- Matches record themselves — on tracked servers results and stats are captured automatically; otherwise
/report-matchtakes seconds. - Profiles update — ratings recompute and heir.gg (opens in a new tab) profiles publish on their own.
Conventions in these docs
- Commands are written as
/command subcommand. - Anything marked (Organizer) requires the Organizer role or a server admin.
- Anything marked (Captain) is limited to a team's captain.
- IDs shown in examples are Discord snowflakes.