matchmaking: deterministic 15s wait before bots fill empty seats
Both the mock and the .NET server already waited then bot-filled, but used a random 12-18s window. Make it exactly 15s on both sides so the rule is clear: wait 15s for real online players to join, then replace any unfilled seats with bots and start. - client: new MATCH_QUEUE_WAIT_MS = 15000 in gamification.ts; mock beginSearch uses it instead of randInt(12000,18000). - server: GameManager QueueWaitMs = 15000 (was randomized 12-18s per ticket). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -178,6 +178,13 @@ export const SPEED_TURN_MS = 5000;
|
||||
/** Speed mode races to fewer points so a match is over fast. */
|
||||
export const SPEED_TARGET_SCORE = 5;
|
||||
|
||||
/**
|
||||
* How long matchmaking waits for real online players before filling the
|
||||
* remaining seats with bots and starting the match. (Mirror of the server's
|
||||
* QueueWaitMs in GameManager.cs — keep both in sync.)
|
||||
*/
|
||||
export const MATCH_QUEUE_WAIT_MS = 15000;
|
||||
|
||||
export function turnMsForStake(stake: number, speed = false): number {
|
||||
if (speed) return SPEED_TURN_MS;
|
||||
if (stake >= 1000) return 7000;
|
||||
|
||||
@@ -7,6 +7,7 @@ import {
|
||||
CARD_BACKS,
|
||||
CARD_FRONTS,
|
||||
CITY_REWARD,
|
||||
MATCH_QUEUE_WAIT_MS,
|
||||
REACTION_PACKS,
|
||||
STICKER_PACKS,
|
||||
TITLES,
|
||||
@@ -890,10 +891,9 @@ export class MockOnlineService implements OnlineService {
|
||||
};
|
||||
this.emitMM();
|
||||
|
||||
// Wait ~15s (randomized 12–18s) for "online" players to show up; whoever
|
||||
// hasn't joined by then is filled with a bot when the match forms. The exact
|
||||
// wait varies so it never feels robotically identical.
|
||||
const searchMs = randInt(12000, 18000);
|
||||
// Wait 15s for "online" players to show up; whoever hasn't joined by then is
|
||||
// filled with a bot when the match forms.
|
||||
const searchMs = MATCH_QUEUE_WAIT_MS;
|
||||
// 0–3 humans actually appear; the rest of the table fills with bots.
|
||||
const humansFound = randInt(0, 3);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user