branchrust_reboot/main/ai_test_changescancel

24 Commits over 31 Days - 0.03cph!

4 Years Ago
merge from main
4 Years Ago
merge from main
4 Years Ago
merge from main
4 Years Ago
merge from main
4 Years Ago
merge from bs_wip
4 Years Ago
Added CanEnter and CanLeave to states. Only include states that can be entered when scoring weights. Added AIStateScore with some pre-defined weight bands and increments. BaseAIBrain.Debug.
4 Years Ago
Applied GetBestRoamPosition changes
4 Years Ago
Reapply a ch47 fix from main in 54149
4 Years Ago
merge from main
4 Years Ago
merge from main
4 Years Ago
State history rendering and convars
4 Years Ago
Added setdestination_navmesh_failsafe convar, npcs will attempt to place themselves on a navmesh when setdestination is called and they're not currently bound to navmesh. Added a warning when warping to a valid navmesh location but still not binding to it (mismatching agent type) to make it more obvious what's going wrong.
4 Years Ago
Moved GetBestRoamPosition from HumanNPC to AIInformationZone, optimised the loop checks.
4 Years Ago
merge from main
4 Years Ago
Merge from main
4 Years Ago
merge from main
4 Years Ago
Simplified SetDucked
4 Years Ago
Compile fix
4 Years Ago
merge from main
4 Years Ago
StateDebugInfo now tracks state change type (enter/exit) and the world position at which the AI state changed.
4 Years Ago
Added StateDebugInfo, keep a history of the last 20 states and durations for a brain. (editor only)
4 Years Ago
Pulled HumanBrain / CH47Brain states out into partials instead of the main brain files, to make it clearer what's common and not. Removed some calculations on variables that never get used, distance checks, inverseloops etc. Some basic state cleanup.
4 Years Ago
Added AIThinkMode to base brain, all brains can set their think mode: interval or fixed update, as well as individual tick rates. Moved a bunch of ShouldThink/DoThink logic to base brain so it can be used by all brains instead of each having its own delta implementation, age tracking etc. Added "time in current state" to debug display.
4 Years Ago
Moved brain states to a new shared enum, AIState. State constructors set type. AddState no longer requires a type parameter. States are now automatically maintained, in a dictionary. Reworked current state handling to be a state ref, not using array indexes. Hooked up gizmo drawing to brain, calls it on any active state for debugging. Added basic debug rendering info to base brain (current state name for now).