1,291 Commits over 365 Days - 0.15cph!
Use a different syntax for HFSM declaration which results in a more compact and readable tree
Merge from ai_wolf_iteration
Fix wolf chasing its own tail
Fix a lot of the wolves state incorrectly returning base.OnStateEnter() from OnStateUpdate, causing a lot of weird behaviour
Merge from ai_wolf_iteration
Make fsm declaration syntax more compact, fix scientist death
Update scientist FSM to new system
Fix scientist spinning when coming to a stop
Fix scientist not moving (merge)
Fix compile errors from merge
Merge from ai_wolf_iteration
Merge from ai_wolf_iteration
Fix wolf slowing down before jumping on foundation
Have wolf smoothly decelerate instead of stopping dead in its tracks
Fix wolf glitching out visually when jumping on foundation when the server frame-rate is low
Expose convar for wolf max per frame budget
Merge from ai_wolf_iteration
Merge from ai_wolf_iteration
Make wolf foundation jump more consistent
Merge from analytics_add_persistent_work_queue
Add persistent object work queue to analytics in the same way as object work queue
Also makes persistent object work queue more consistent with object work queue (TimeSpan instead of double, same member names, non generic parent)
The wolf can now lie down or scratch its ears instead of just standing still
Add persistent object work queue to analytics in the same way as object work queue
Also makes persistent object work queue more consistent with object work queue (TimeSpan instead of double, same member names, non generic parent)
Merge from relationship_manager_dangling_profiler_sample_fix
Refactor wolf fsm to be easier to maintain and extend
Add solar panels to a work queue
Fix two more dangling profiler samples in relationship manager caused by early outs
▅▇▌▉▇ ▌█▅▊ ██_▊▉▄▋_▋▋▋▉▉▌▄▅▋
▊▅▅▇▍▍▍▊▉ ▄▋▌ ▌█▄ ▅▇▅█▅▋ ▌▄▇▉▅▉, █▅▇▅▍█ ▇▄▊▇ ▋▌▆▆▊ ▄▉▌▇ ▄▉█ ▆▋█▊ ▌▊▌ ▄▋▋▋█ █▉▆ ▍▋▇███▋ ▊▇ ▆▍▅, ▋▉▉ ▅▅▄▄ ▌▉▊▇▊▊ ▆▉▊▍▅▌ ▋▄▌▉ ▄▄▉'▅ ▄▉▅▄ █▍▉▄▉▅
▇▉▋▌▉ █▉▊▄ ▊▌_█▉▆▊_▊▇▋▅▉▅▌▄▆ (▇█▆ ▄▌▊▊▋▊ ▄▌▄█▉▌█▄ ▆▅▅█ ▌▍▇▆▊▇▍▍▇, ▆▉▉ ▉█▄▆▉▌█ ▄▅▌▉▇ ▉▅▋▍▋█▌▊ ▌▋ ▉▉▌▋▅ ▆▊▌▆▋▇)
- Wolves have a chance to stand their ground and start growling at the first swing, if they do this swing again to make them flee
- Make torch swing reactions less delayed
- Remove cases where a wolf is quite close to the fire, but just stares without either growling or moving away which looked odd
Fix held items on fire like torches, bows and flame throwers not being detected by wolves if the fire moves far from where it was lit
Fix fire not being detected sometimes at a specific distance
(do not forget about a fire when it leaves out perception range, remember it until it's disappears)
Refactor FSM states to return their status, instead of having it being a member field (less error prone and helps states be AI architectures agnostic)
▆▌▉▉▌ ▆▌▊▆ ██_▌█▅█_▌▋▄▄▆▇█▍▅ (▌▊▄ ▇▅▌█▆▆▌▋ ▌██▋, ▄█▊▋█▇ ▉▍▆▋▍▊▆▉ ▅▄ ▌▌█▋)
Fix wolf staring and stepping forward states not being properly reacting to fire, increase the distance wolves flee from fire
▌▊▆▆▌▄▅ ▉▊▉▋▇▌▌▄▅ ▋▉▇▅▄▅▉█▋▋▋ ▍▄▌▉▌▇, ▇▅▅ ▅▆▅ ▌▌▇▆█▊▍ ▌▆▊▋█▇▉▉▊▊▅ ▋▉ ▄▆▆▉▋ ▄▍▄▉ ▋▍▄█ ██▇▋▍ ▄▌▋▍ █▆ ▇█▆ ▇▋▋█▄▇▊ ▄▉▊ ▌▉ █▋▌ ▇▉▋▊▍▍▄▅▍ ▋▄▍▋ ▅▌▍
Fix wolves not comming to help their allies under some cirumstances
▅▆▌█▇ ▅▋█▊ ▋▆_█▌▆▊_▅▆▋█▌▌▇▅▆ (▉▅▆ ▄▅▅▋██ ▉▍▋▊█▊▊▆ █▍▌▋)
Fix wolves absolutely wrecking cars with their attacks
▄▄▄▊▉ ▊▍█▅ ▇▆_▆▄▅▌_▊▊▆▇▆▇▇█▌