diff --git a/src/server/MapPlaylist.ts b/src/server/MapPlaylist.ts index ac025a791..b76e21871 100644 --- a/src/server/MapPlaylist.ts +++ b/src/server/MapPlaylist.ts @@ -149,6 +149,8 @@ const WATER_NUKES_BOOSTED_MAPS: ReadonlySet = new Set([ GameMapType.Baikal, GameMapType.Alps, GameMapType.TheBox, + GameMapType.Luna, + GameMapType.ArchipelagoSea, ]); // Modifiers that cannot be active at the same time. @@ -243,10 +245,9 @@ export class MapPlaylist { excludedModifiers.push("isRandomSpawn"); } - // No extreme modifiers on FourIslands - Causes 3h long stalemates - if (map === GameMapType.FourIslands) { + // No gold multi on FourIslands team games - Too high chance of 3h long stalemates + if (map === GameMapType.FourIslands && mode === GameMode.Team) { excludedModifiers.push("goldMultiplier"); - excludedModifiers.push("startingGold25M"); } // Hard nations modifier only applies when nations are present (not HvN, which is always hard) @@ -529,6 +530,9 @@ export class MapPlaylist { if (map === GameMapType.FourIslands && Math.random() < 0.75) { return 4; } + if (map === GameMapType.Luna && Math.random() < 0.75) { + return 2; + } const totalWeight = TEAM_WEIGHTS.reduce((sum, w) => sum + w.weight, 0); const roll = Math.random() * totalWeight; @@ -663,7 +667,8 @@ export class MapPlaylist { if (playerTeams === HumansVsNations) return 5 * 10; if (startingGold !== undefined && startingGold >= 25_000_000) return 150 * 10; - if (startingGold) return SAM_CONSTRUCTION_TICKS + 15 * 10; + if (startingGold !== undefined && startingGold >= 5_000_000) + return SAM_CONSTRUCTION_TICKS + 15 * 10; return 5 * 10; }