mirror of
https://github.com/openfrontio/OpenFrontIO.git
synced 2026-06-22 17:36:38 +00:00
20b840e658
- Make attack pacing + defender losses depend on **border engagement fraction**: - Add `defenderTotalBorderTiles` to `Config.attackTilesPerTick()` - Add `borderEngagedFraction` to `Config.attackLogic()` - In `DefaultConfig.attackTilesPerTick()`, scale tiles-per-tick by engaged fraction and enable a **full-annexation mode** when the attack engages the entire defender border (fast conquest multiplier) - In `DefaultConfig.attackLogic()`, scale defender troop losses with engagement and apply a large loss multiplier during full annexation - Remove attack speed randomness for stability: - `AttackExecution` now uses exact `attack.borderSize()` (no `+ random(0..5)`) - Compute and pass `borderEngagedFraction = attackBorder / defenderBorder` into `attackLogic()` - **Notes / behavior changes:** - Annexation is now driven by **border engagement** rather than “surrounded cluster” detection. - Attack resolution is less jittery (no random border boost) and becomes extremely fast only when the defender’s border is fully engaged.