1,015 Commits over 274 Days - 0.15cph!
Make fsms easier to edit by exposing them on the prefab
Reparent root motion SOs to baseScriptableObject to avoid duplicating them in bundles, remove unused animatorStateName
Allow fsm transitions to pass parameters to the destination state, use it to select different animations to play on wolf when hurt
Wrap animator into a playable, to allow playing one-shot animations without having to edit the animator every time
Allow lightweights entity components to handle RPCs
Create lightweight components that don't have the overhead of unity components
Submit navmesh display line material
Use submeshes instead of 2 separate meshes for nav triangles and nav lines
Replace calls to DDraw.Line with Graphicss.RenderMesh of a MeshTopology.Lines mesh, greatly reducing GC pressure
Reduce navmesh draw allocs again
Further optimize navmesh drawing
Optimize navmesh debug view
Complete client navmesh drawing
Make it possible for admins to see the navmesh
Add command to draw navmesh in game
Generate tiles in chunks to avoid potentialyl running out of memory on massive maps
Fix navmesh not generating properly with mesh colliders
Use more appropriate collision masks for navmesh geo gathering
Cache mesh colliders, replace lists with fpnativelists to avoid an additional copy when marshalling
Multithread filtering triangles out of tile bounds, and transforming the triangles from mesh space to world space
Fix fuel tank mesh collider not being readable
Remove some more allocations and add more profiling
Multi-thread navmesh building, making the recast side computations almost negligible
Separate navigation building steps so it's easier to multi-thread
Add option to build navmesh asynchronously, add more profile markers
Speed up navmesh generation by using arraypool instead of a massive buffer
Fix memory leak and add more profiler coverage
Add option to disable verbose log and add profiler markers, reduce gc allocs
Save and load navmesh as part of boostrap and saverestore flow, lower voxel size for tiles that only contain terrain
Display the navmesh as a mesh instead of a gizmo, remove runtime allocations
Add recast DLL with custom bindings
Make wolves more agile by making their turn radius speed independent, make the approach more interesting by adding speed and angle variations
Replace coroutine by invokes, pool the lists, also allow new montages to cancel currently playing one
Allow new wolf to deal damage and drop a corpse
Undo changes to old wolf animator
Remove debug draw and replace constants with convar
First pass on wolf combat behaviour
Placeholder logic to have wolves react to another wolf being hit nearby
Add convar to toggle fsm logging
Have wolves only fall over on headshots
Prototyope smooth path following for the wolf, hook hit anim
Add proxy tag fsm transitions, fix movement from previous states perduring in new states, proxy hurt state
Fix wolf not taking damage
Remove unecessary includes
Simplify hfsm by implementing it with a stack instead of recursion
Support state names to help debugging FSM, and fix range / speed bugs in wolf encircling