yxc20098 commited on
Commit
da542fa
·
1 Parent(s): 1beda20

docs(CLAUDE.md): engine-facts — attack_unit no-teleport + stance-respecting move-fire

Browse files
Files changed (1) hide show
  1. CLAUDE.md +21 -5
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** regardless
127
- of agent stance (even `stance:0` HoldFire). For perception packs
128
- with hidden enemies that must be discovered without combat, set
129
- the HIDDEN actors to `stance:0` themselves (defender side, not
130
- scout side).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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` +