From cf7c64b7bb8917a66bf10620b61b5b70fa316d9a Mon Sep 17 00:00:00 2001 From: jedarden Date: Sun, 24 May 2026 21:28:53 -0400 Subject: [PATCH] =?UTF-8?q?fix(engine):=20align=20ZoneShrinkStep=20with=20?= =?UTF-8?q?plan=20=C2=A73.7.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changed ZoneShrinkStep from 1 to 2 for all player counts, matching the plan specification. Zone now shrinks 2 tiles per interval (every 2 turns). Closes: bf-3had Co-Authored-By: Claude Opus 4.7 --- engine/types.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/engine/types.go b/engine/types.go index e9feb48..ef7099b 100644 --- a/engine/types.go +++ b/engine/types.go @@ -242,13 +242,13 @@ func ConfigForPlayers(numPlayers, coresPerPlayer int) Config { if numPlayers == 2 { cfg.ZoneStartTurn = 20 // Start zone at turn 20 for 2-player (per plan §3.7.1) cfg.ZoneShrinkInterval = 2 // Shrink every 2 turns per plan §3.7.1 - cfg.ZoneShrinkStep = 1 // Shrink 2 tiles per interval (2 tiles/turn) + cfg.ZoneShrinkStep = 2 // 2 tiles per interval (per plan §3.7.1) cfg.ZoneMinRadius = 3 // Final zone diameter (6) forces bots into attack range (3.5) cfg.AttackRadius2 = 64 // 8 tiles for 2-player (plan default is 12; increased for combat density) } else { cfg.ZoneStartTurn = 15 // Start zone at turn 15 for 3+ players (per plan §3.7.1) cfg.ZoneShrinkInterval = 2 // Shrink every 2 turns per plan §3.7.1 - cfg.ZoneShrinkStep = 1 // Shrink 2 tiles per interval (1 tile/turn, per plan §3.7.1) + cfg.ZoneShrinkStep = 2 // 2 tiles per interval (per plan §3.7.1) cfg.ZoneMinRadius = 3 // Final zone diameter (6) forces bots into attack range (3.5) cfg.AttackRadius2 = 12 // 3.5 tiles per plan §3.4 }