1,792 Commits over 700 Days - 0.11cph!
Fix scientist chasing into water
Fix animals attacking through walls, or getting stuck when player is on foundation, also fix some "can't move / resetPath when not on navmesh" errors
Fix "can't move / resetpath on agent outside on navmesh" error when wolf or tiger jumps at player on foundation
Fix wolf tiger etc not fleeing / jumping on unreachable players, instead just charging and getting stuck / attacking throw walls
Fix SenseComponent.Tick InvalidOperationException
Fix ai sense adding to a dictionnary while iterating on it
Merge from new_navmesh_fixes, fix wolves eating corpses using telepathy, fix look rotation error spam
FIx ternary operator precedence oversight causing ai stopping distance being incorrect, remove unused string creation in -useNewNavmeshPath, fix ais not taking into account stopping distance properly
Merge from new_navmesh_fixes, fix crash on linux, fix error when no saved navmesh yet on disk
Log warning instead of error when no save file for navmesh is found
Fix scientists appearing on roofs
Fix old scientists and animals ending up on roofs
Integrate recast corridor, need to fix potential stale navmesh ptr cached by corridor, and investigate remaining path length
Merge from ai_recast_integration_post_subtract, add new navmesh, defaults to disabled
Remove "rustnav warp" log
Fix merge conflict with Jarryd's fix on AI not being able to be spawned inside of WakeAI zones if in an editor scene
Cherry picking commits from ai_recast_integration
Subtract navmesh subtraction
FIx old animals always fleeing, SetNavMeshEnabled was turning RustNavmeshAgent on but not the internal NavmeshAgent which defaults to disabled
Disable navmesh agent until it's used, this prevents unity complaining they are not on navmesh on spawn (which can happen with ai.move)
Add ai.abortNavEnabledWhenOutOfNav convar, disabled by default, use in combination with ai.logIssues to help isolating npcs causing the log spam
Disable avoidance on navmeshagents, potential fix for scientists stuck in barrels
Merge from subtract_new_navmesh
Gate ghostship unity nav gen behind ConVar.AI.useUnityNavmesh
Make entityComponent.baseEntity work in OnEnable
Fix ghostship scientists not moving (after fixing agent too far from navmesh spam)
Readd navmesh agent to realmed remove
Make TryGetAgent return null if agent is not on navmesh to prevent unity warnings
Add a unity NavmeshAgent component to all prefabs with RustNavmeshAgent and copy its settings, this is because AddComponent on NavmeshAgent causes it to use default params and log warnings
Fix race condition in editor causing WakeAIZ to try to use BaseEntity.Query.Server before it's set (use InitShared callback instead of Awake)
Fix new scientists hovering slightly above ghostship floor
Potential fix for "Failed to create agent because it is not close enough to the navmesh" spam
Fix NRE in NPCNetworking (subscribers count)
Fix typo that would cause scientists to not rotate properly towards their target
Handles cases in NPCNetowkring where SendNetworkUpdate could be sent multiple times a frame, make sure SendNetworkUpdate is only called once
Add more profile markers to NPCAnimController.Update to narrow down allocations when we repro
Budget NPCNetworking with fsm, senses etc
Only send entity update when new state is different from old state in NPCNetworking
Cache agent from TryGetAgent