Commit Graph

154 Commits

Author SHA1 Message Date
Serhii Snitsaruk e1c8ce4a58
BTDecorator: Add default `_tick` implementation
The default implementation simply ticks the child task and returns its status.
2024-04-22 11:07:50 +02:00
Serhii Snitsaruk c4df916bdf
HSM: Delay state transition till update is finished 2024-04-20 21:30:26 +02:00
Serhii Snitsaruk 5048d6a485
Fix BT being ticked after transition happened and state is no longer active 2024-04-20 20:19:07 +02:00
Serhii Snitsaruk 3918272227
BehaviorTree: New signal for when BB plan changes
Utilize `plan_changed` signal in `BTPlayer` and `BTState`.
2024-04-01 16:34:36 +02:00
Serhii Snitsaruk 302de87e32
Prevent using external resources for derived blackboard plans in `BTPlayer` and `BTState` 2024-04-01 15:25:54 +02:00
Serhii Snitsaruk 5ff42e29e4
Always duplicate `BlackboardPlan` props 2024-04-01 01:11:51 +02:00
Serhii Snitsaruk e50b00c70e
BTSubtree: Fix subtree blackboard plan is not property utilized 2024-03-26 18:19:31 +01:00
Serhii Snitsaruk 12fd9d00d6
Update file headers and fix whitespace 2024-03-21 21:38:57 +01:00
Serhii Snitsaruk 06ebff7518 Fix includes and build errors 2024-03-12 21:09:28 +01:00
Serhii Snitsaruk b09006a11b Fix issues with blackboard plan system 2024-03-11 18:58:40 +01:00
Serhii Snitsaruk 2658060b1c Move prefetching code into `BlackboardPlan` and add checkbox to the plan editor 2024-03-06 21:28:06 +01:00
Serhii Snitsaruk 4c26583007 Remove "p_" from the argument names in the `ClassDB` bindings 2024-03-04 21:36:16 +01:00
Serhii Snitsaruk 88df78c4a2 Refactor HSM to use StringName for events 2024-03-04 16:19:35 +01:00
Serhii Snitsaruk 350c27abbc Change BB variable members to StringName 2024-03-04 12:54:45 +01:00
Serhii Snitsaruk f5d21e2669 Fix BTState not honoring API virtual methods 2024-03-02 20:19:38 +01:00
Wilson E. Alvarez fb958c7c34
Add BTEvaluateExpression 2024-02-18 12:20:48 -05:00
Serhii Snitsaruk e6e2f5595d BTRunLimit: Add `count_policy` property
Breaking compatibility: RunLimit count policy defaults to counting only successful runs. Previously, both successful and failed runs were counted.
2024-02-10 20:13:39 +01:00
Serhii Snitsaruk 654eda1c65 Better error handling when resolving _generate_name 2024-02-10 15:05:50 +01:00
Serhii Snitsaruk 899335d1fe Util: Function to decorate output variable 2024-02-10 12:34:29 +01:00
Serhii Snitsaruk d38e6f97f1 Editor: Implement Cut-Copy-Paste
Resolves #14
2024-02-08 17:16:26 +01:00
Serhii Snitsaruk c5b92aa676 Expose BehaviorTreeView for tools and in-game use 2024-02-03 16:59:51 +01:00
Serhii Snitsaruk 3e32051791 Editor: Remember collapsed items in task tree 2024-02-02 16:46:26 +01:00
Serhii Snitsaruk ab564eb631 BTProbability: Fix incorrect percentage shown 2024-01-31 15:40:59 +01:00
Serhii Snitsaruk 761b211740 Editor: Mark behavior tree as dirty when blackboard plan changes 2024-01-26 16:47:26 +01:00
Serhii Snitsaruk 8155c2764a Refactoring and clean up 2024-01-25 14:35:48 +01:00
Serhii Snitsaruk 06052332b2 BlackboardPlanEditor: Fixes and clean up 2024-01-25 11:08:35 +01:00
Serhii Snitsaruk 15e0323919 Implement BlackboardPlan editor 2024-01-24 23:11:09 +01:00
Serhii Snitsaruk 20a995d1d2 Rename BlackboardSource => BlackboardPlan
Because it's a better name ;)
2024-01-23 20:02:23 +01:00
Serhii Snitsaruk b04f7530e4 Add a mechanism for overriding and resetting variables in a derived blackboard source 2024-01-23 17:54:20 +01:00
Serhii Snitsaruk f84127657b Fix crash while initializing blackboard in the BTPlayer node 2024-01-23 16:22:10 +01:00
Serhii Snitsaruk dc40109ade Fix default object value issues 2024-01-23 15:56:30 +01:00
Serhii Snitsaruk 8c67886b52 Parsing BlackboardSource properties 2024-01-23 15:31:56 +01:00
Serhii Snitsaruk a247d0d67b Replace node blackboard data with BlackboardSource 2024-01-23 12:05:54 +01:00
Serhii Snitsaruk 390d4a9385 New and improved workaround for the missing ClassDB::add_virtual_method 2024-01-17 22:46:48 +01:00
Serhii Snitsaruk c63785b5bc CallMethod: Use array of BBVariant to specify arguments
This allows specifying variables on the blackboard as arguments in additions to raw values.

WARNING: Breaks compatibility if you are using CallMethod tasks. CallMethod arguments in existing trees will need to be reassigned!
2024-01-15 21:51:17 +01:00
Serhii Snitsaruk 184361d460 CallMethod: Store result on the blackboard 2024-01-15 21:32:39 +01:00
Serhii Snitsaruk f546e285b7 Refactor and clean up the code 2024-01-13 17:10:42 +01:00
Serhii Snitsaruk eec085278a Fix name generation broken in module 2024-01-13 13:35:16 +01:00
Serhii Snitsaruk e6c87be723 Fix various bugs and unit tests 2024-01-11 00:31:42 +01:00
Serhii Snitsaruk 0e37d3dfa3 Fix module compilation 2024-01-10 22:45:42 +01:00
Serhii Snitsaruk 966199e8dc Fix: Weird name showing on the tasks 2024-01-09 22:06:56 +01:00
Serhii Snitsaruk a9a38bbffb Port debugger 2024-01-09 21:47:22 +01:00
Serhii Snitsaruk 59a8ab97d8 chore: Rename macro LSNAME to LW_NAME 2024-01-09 13:42:54 +01:00
Serhii Snitsaruk 9645baeb30 Port LimboAI plugin and editor 2024-01-09 13:34:24 +01:00
Serhii Snitsaruk f5b1b52f67 Port LimboHSM, LimboState and BTState 2024-01-07 05:54:17 +01:00
Serhii Snitsaruk 0767c0eee1 Port BTPlayer and LimboDebugger (game-side part) 2024-01-07 02:40:51 +01:00
Serhii Snitsaruk 4f97c1bd24 Post the rest of the BT tasks (massive changes) 2024-01-07 00:47:46 +01:00
Serhii Snitsaruk 2c4e343a48 Port the first core classes to get started
Ported: Blackboard, BTTask, BTAction, BTComment, BTDecorator, BTComposite, BTDecorator, LimboStringNames, LimboTaskDB, LimboUtility
2024-01-06 21:04:34 +01:00
Serhii Snitsaruk 4cf5a18721 Fix another potential crash related to debugger not being active 2023-12-28 14:41:58 +01:00
Serhii Snitsaruk 9e33b81f50
Merge pull request #11 from Rubonnek/fix-limbodebugger-crash
Fix LimboDebugger crash when EngineDebugger is not active
2023-12-28 14:37:00 +01:00