Files
OpenFrontIO/src/core/execution
scamiv 20b840e658 Rework annexation into border-engagement scaling; drop cluster removal
- 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.
2025-12-14 02:31:54 +01:00
..
2025-10-11 19:35:11 -07:00
2025-12-11 13:57:15 -08:00
2025-12-03 16:01:05 -08:00
2025-12-09 16:12:00 -08:00
2025-10-17 17:09:10 -07:00