branchrust_reboot/main/ai_wolf_iterationcancel
413 Commits over 123 Days - 0.14cph!
Fix wolves being able to pick "valid" but unreachable destinations when roaming
Temporary fix for projectile violation when hitting a wolf's butt
Fix wolf not circling, add flee behaviour
Fix wolf overshooting destination, adapt roaming speed to how far is destination
Start work on wolf roam state
Fix wolf getting stuck in some situations
Prevent wolves being too synchronized by adding a random delay
Fix wolf sliding during some montages
Integrate spine animator and look animator
Fix wolves going very fast
Modify AI debug code to not require the removal IClientComponent or IServerComponent
Add a custom version of the require component attribute that works with our IClient and IServerComponents
Add initshared and destroyshared to entityComponent
Use prefab attribute to avoid duplicating the anim list for every wolf
Allow wolves to reprioritize their target when fighting a group
Fix compile errors in server/client modes
Allow visualization of AI senses on the client via RPCs, fix wolves attacking dead players
Start setting up wolf senses
Stagger wolf when damaged a lot, instead of on every head shot
Add wolf bark before coordinated attack, add proper death state
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
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