Rules & Configuration

Enforce activity minimums, publish rule sections on the public page, and configure per-game match settings.

Activity requirements

Activity enforcement automatically checks whether teams are meeting a minimum match cadence. The feature is opt-in — leaving minMatchesPerPeriod null disables it entirely.

Min matches per period (minMatchesPerPeriod)

Type: integer (optional)

The minimum number of matches a team must play within each enforcement period. When null the activity feature is off. When set, teams that fall short of this threshold face the configured inactivityAction at the end of each period.

Enforcement period (enforcementPeriod)

Type: WEEKLY | BIWEEKLY | MONTHLY | SEASON

How often the activity check runs:

  • WEEKLY — checked every 7 days from the competition start date
  • BIWEEKLY — checked every 14 days
  • MONTHLY — checked on the same day-of-month each calendar month
  • SEASON — checked once at season end; useful for a minimum-matches-played gate for playoff eligibility

Inactivity action (inactivityAction)

Type: WARN | SUSPEND | REMOVE_FROM_STANDINGS

What happens to a team that misses the minimum:

  • WARN — the team captain receives a notification. The team stays active and can still play.
  • SUSPEND — the team cannot accept new match challenges until they meet the minimum for the current period.
  • REMOVE_FROM_STANDINGS — the team disappears from the public standings table. They remain in the database and their historical matches count; they just don't appear on the leaderboard until they become active again.

REMOVE_FROM_STANDINGS can surprise teams who are unaware of the requirement. Communicate the activity rules clearly in your rulesSections before enabling this action.

Rules

Rules sections (rulesSections)

Type: array of { title: string, body: string }

Free-form rule blocks rendered on the public ladder page in the Rules tab. Structure your ruleset with named sections — for example:

  • Match Format — best-of count, map veto, side selection
  • Disputes — how to escalate, evidence requirements, resolution timeline
  • Roster Changes — transfer window, loan rules, mid-season additions
  • Conduct — sportsmanship expectations, penalty tiers

When rulesSections is an empty list, the platform falls back to the game's default rules (if any are defined for that game). A non-empty list fully replaces the defaults.

Keep each section focused on one topic. Competitors skim rules — shorter, named sections are read more often than a single wall of text.

Game-specific configuration

Game config (gameConfig)

Type: schema-driven map (varies by game)

Per-game match settings whose available fields depend entirely on which game the ladder is tied to. The admin form is generated from the game's schema at runtime.

Example fields for Gears of War:

  • Game mode
  • Rounds to win
  • Weapon respawn rules
  • Map pool
  • Whether players pick maps or captains veto

Validation runs server-side before the configuration is persisted — invalid values for the selected game are rejected with field-level errors.

The game on a ladder cannot be changed after creation (it would corrupt rating semantics). If you need a different game, create a new ladder. The gameConfig schema is tied to that fixed game choice.