1,607 Commits over 608 Days - 0.11cph!
FIx isStopped incorrectly clearing path, path is cleared on disable instead
Fix potential nullref in SetDestination
Fix updateRotation not being used properly
Use private members instead of getters internally, to avoid unwanted redirection
Fixe Move not using correct navarea for raycast and sample
Better keep state of unity navmesh agent and custom navmesh agent in sync, fix offset being applied twice
Fix set path earlying out incorrectly when called from SetDestination
Use cleaner getter for agent
Fix path follower ticking twice per frame in editor
Prevent path leaking when agent is destroyed
Port tiger, panther, croc and naval scientists
Will need thorough testing
Remove GetCornersNonAlloc helpers and intermediate buffers
Revert recent changes to new NPCs pathfinding component, they don't need it with the new abstraction around NavMeshAgent and NavMeshPath
Port the new wolf as a test, works fine but unlike old NPCs does not support switching at runtime without throwing errors, to investigate
Port old oilrig scientists, just to check that monuments properly support switching navmesh back and forth, will port all other old scientists later
Port polar bear, boar, chicken and stag
Properly take into account "base offset" property use on chicken and stag
Route all references to unity navmesh to class with same API, to easily intercept and route requests to the correct navmesh depending on the convar
Converted bear to be able to switch between unity and custom navmesh at will, has yet to port other old and new animals as well as all humanoids
Budget the main thread part of navmesh building
Fix binary saving overwriting the beginning of the previous save but leaving without truncating the end
Fix incorrect cleanup on load fail
Better logs, fix out of bounds tile index, fix incorrect warning when loading a navmesh from a save
Fix tilesLoaded never being incremented, causing loading to fail
Finish refactor to have individual navmesh instances instead of a singleton, todo fix crash on destroy
Prepare refactor to have multiple navmeshes in same world
* new namespace for all new nav stuff to avoid confusion with old
* separate global methods
* navmesh instance methods
* C++ wrapper methods
* path helper methods
* geometry helper methods
Prepare work on moving navmesh
Update rust native lib for all platforms to contains the new recast code
Cherry pick to compensate scientist dmg lowered by armor buff, should now be on par previous patch (fullmetal is same ttk, hazmat will take less dmg, naked will take more dmg)
Rebalance scientist damage to compensate armor buff, should kill fullmetal when landing every shot in one full mp5 mag
Potential fix for red card room scientist turning invisible
Potential fix for scientists weapon leak
Fix animals and naval scientists only fleeing or being passive
Fix path not logging to vddraw, fix animals always fleeing
Fix animals running in circles
Fix compile errors from merge
Fix scientist weapons floating at world origin on server
Fix naval scientists new entity weapons leak, make sure new scientist weapon are not saved if the scientists themselves are not saved
Add convar to tweak radius of the vision occluding ball generated by smokes for NPCs
Fix naval scientist laser sight not being on during the day
Fix FSMTransitionBase.get_Senses NRE
Fix "SwitchParent Missed scientist2.corpse" log when naval scientist dies
Add option to debug traces to ai debug prefab, to test bushes / smoke in editor
Fix scientists not repositionning when a sniper flanks them, even if the shots land near them
Potential fix for scientists rendering while sleeping, then being shot without reacting, and dying only if the player gets close again
Fix scientists bypassing a big part of player armor, eg hazmat only blocking 5% of scientist damage, and fullmetal only blocking 25%. Most clothing will now block damage as you'd expect (eg hazmat blocks 30% and fullmetal around 50%).
Fix "navmesh ready" log spam
Merge from naval_cleanup_scientist_fixes
Refine fix for scientists going to the floor above when player stands on something like a desk, better but not ideal, need our recast integration sadly to properly fix this
Go through the SetHeld flow for weapon scientists to allow the lights to be turned on by SetLightsOn