Break leaderboard ties with Melee's tiebreakers
After total of all sessions, ties fall to OMW%, GW% and OGW% over all the league's matches (bye = 2-0 win, not an opponent; opponents floored at 1/3), then name. Verified identical to Melee's order and percentages on a real night. The leaderboard shows the three percentages. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
0e14228b8f
commit
a99997b96d
4 files changed
+66
-7
No files matched your search
@@ -19,7 +19,9 @@ add `ALTER TABLE ... IF NOT EXISTS` statements to `init` or introduce a migratio
|
||||
|
||||
## Rules and decisions
|
||||
- Scoring: match win 3, draw 1, loss 0, bye = 2-0 win. Session score = sum of that night's match points.
|
||||
Leaderboard = sum of each player's best `league.best_n` session scores; tiebreak = total of all sessions, then name.
|
||||
Leaderboard = sum of each player's best `league.best_n` session scores; tiebreak = total of all sessions, then Melee's
|
||||
tiebreakers (OMW%, GW%, OGW% over all the league's match rows; bye = 2-0 win, not an opponent; opponents floored at 1/3;
|
||||
verified identical to Melee on a real night), then name. Standings-only sessions add nothing to the tiebreakers.
|
||||
- A session with match rows is scored from them; otherwise from imported standings (`session_results`).
|
||||
Standings imports have W-D-L but no opponents, so the leaderboard shows "–" W-D-L for players with such a session.
|
||||
- Players are identified by real name (Melee `Team.Players[0].Name`, falling back to DisplayName, then Username),
|
||||
|
||||
Reference in new issue
Block a user