post_combat_idle
post_combat_idle makes a non-zombied stalker wait briefly after combat before returning to alife, looting, or helper
behavior. It is installed by setup code and does not have a hand-authored active section.
Parameters
post_combat_idle has no scheme-specific LTX fields in the current TypeScript implementation.
The wait duration can be affected by resolved logic overrides stored on the object registry:
minPostCombatTime
Default: 5.
Minimum randomized wait time in seconds after a non-actor enemy disappears.
maxPostCombatTime
Default: 10.
Maximum randomized wait time in seconds after a non-actor enemy disappears.
These overrides are consumed by the evaluator. Their parsing is handled outside SchemePostCombatIdle.
Runtime behavior
SchemePostCombatIdle.setup() skips zombied-community stalkers. For other stalkers it:
- creates
post_combat_idlestate in the object registry; - replaces
ENEMYevaluators in the main planner and nested combat planner; - adds the
POST_COMBAT_WAITaction to the combat planner.
The evaluator returns true while a selectable best enemy exists. When the enemy disappears, it starts a timer. Actor
targets reset the timer to the current time. Other enemies use a randomized delay between minPostCombatTime and
maxPostCombatTime, or the default 5 to 10 seconds.
The wait action equips the best weapon, sets danger/crouch/stand posture, uses danger sight, starts the hide animation
when possible, and plays post_combat_wait. On finalize, it plays post_combat_relax and clears the animation state.
Example
[logic]
active = walker@guard
[walker@guard]
path_walk = guard_walk
path_look = guard_look
post_combat_idle is installed by the stalker scheme setup path. It is not selected with [logic] active.
Notes
- The action does not start the hide animation while the NPC is in a smart cover or its weapon is locked.
- If an animation is still clearing after the timer expires, the evaluator can keep returning true until the animation marker is gone.