fix: supprimer le timer race timeout de 3 minutes

RACE_TIMEOUT = 180s eliminait tous les joueurs non qualifies apres 3min.
Le round se termine maintenant uniquement quand suffisamment de joueurs
se qualifient (ratio 60%).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-17 23:34:02 +02:00
parent 391c000a73
commit 83544fe3d2

View File

@@ -5,7 +5,7 @@ const Chat = require("../chat/ChatManager");
const LOBBY_TIMEOUT = 30; const LOBBY_TIMEOUT = 30;
const COUNTDOWN_DURATION = 3; const COUNTDOWN_DURATION = 3;
const ROUND_END_DURATION = 5; const ROUND_END_DURATION = 5;
const RACE_TIMEOUT = 180;
const QUALIFY_RATIO = 0.6; const QUALIFY_RATIO = 0.6;
class ArenaRoom extends Room { class ArenaRoom extends Room {
@@ -161,7 +161,6 @@ class ArenaRoom extends Room {
console.log(`[ArenaRoom] Round ${this.state.roundNumber} started (race)`); console.log(`[ArenaRoom] Round ${this.state.roundNumber} started (race)`);
this._phaseTimer = setTimeout(() => this._endRaceTimeout(), RACE_TIMEOUT * 1000);
} }
_endRound() { _endRound() {
@@ -205,17 +204,6 @@ class ArenaRoom extends Room {
console.log(`[ArenaRoom] Game over — winner: ${winner}`); console.log(`[ArenaRoom] Game over — winner: ${winner}`);
} }
// ─── Race mode ──────────────────────────────────────────────────────
_endRaceTimeout() {
this.state.players.forEach((p, id) => {
if (!p.isQualified && !p.isEliminated) {
this._eliminatePlayer(id, "timeout");
}
});
this._endRound();
}
// ─── Elimination helpers ───────────────────────────────────────────── // ─── Elimination helpers ─────────────────────────────────────────────
_eliminatePlayer(sessionId, reason) { _eliminatePlayer(sessionId, reason) {