Spaces:
Running
Running
docs(CLAUDE.md): engine-facts — attack_unit no-teleport + stance-respecting move-fire
Browse files
CLAUDE.md
CHANGED
|
@@ -123,11 +123,27 @@ A scenario is defective if any of the following hold:
|
|
| 123 |
`after_ticks` window opens, collapsing the run to DRAW. `after_ticks`
|
| 124 |
belongs in `fail_condition`. Encode timed-arrival semantics via
|
| 125 |
distance/landmark positioning instead.
|
| 126 |
-
- **`move_units` auto-fires opportunistically en route
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 131 |
- **Stance semantics are now four behaviourally-distinct gates**
|
| 132 |
(engine fix, pinned by
|
| 133 |
`OpenRA-Rust/openra-sim/tests/test_stance_semantics.rs` +
|
|
|
|
| 123 |
`after_ticks` window opens, collapsing the run to DRAW. `after_ticks`
|
| 124 |
belongs in `fail_condition`. Encode timed-arrival semantics via
|
| 125 |
distance/landmark positioning instead.
|
| 126 |
+
- **`move_units` auto-fires opportunistically en route, and a
|
| 127 |
+
moving unit is a normal target** (engine fix, pinned by
|
| 128 |
+
`OpenRA-Rust/openra-sim/tests/test_moving_unit_takes_fire.rs`).
|
| 129 |
+
A unit executing a `Move` activity now shoots in-range hostiles in
|
| 130 |
+
passing WITHOUT abandoning its move, and is itself hittable by
|
| 131 |
+
in-range enemies — there is no "sprint-invincibility" any more (a
|
| 132 |
+
unit can no longer cross a kill zone untouched on a long move
|
| 133 |
+
order). The opportunistic move-fire RESPECTS stance: `stance:0`
|
| 134 |
+
HoldFire never fires while moving; `stance:1` ReturnFire fires
|
| 135 |
+
only after taking recent hostile fire; `stance:2`/`stance:3` fire
|
| 136 |
+
on the nearest in-range enemy. For perception packs with hidden
|
| 137 |
+
enemies that must be discovered without combat, set the HIDDEN
|
| 138 |
+
actors to `stance:0` themselves (defender side, not scout side).
|
| 139 |
+
- **`attack_unit` on an out-of-sight target paths normally** (engine
|
| 140 |
+
fix, pinned by
|
| 141 |
+
`OpenRA-Rust/openra-sim/tests/test_attack_unit_no_teleport.rs`).
|
| 142 |
+
An explicit `Attack` order against an enemy beyond weapon range
|
| 143 |
+
now closes distance at the attacker's real `Mobile` speed
|
| 144 |
+
(identical to a plain `move`); the chase used to warp a full cell
|
| 145 |
+
per tick (~24x for infantry), teleporting the unit dozens of
|
| 146 |
+
cells in one decision frame.
|
| 147 |
- **Stance semantics are now four behaviourally-distinct gates**
|
| 148 |
(engine fix, pinned by
|
| 149 |
`OpenRA-Rust/openra-sim/tests/test_stance_semantics.rs` +
|