Serhii Snitsaruk
361eb3eb15
Fix compile-time errors with updated godot-cpp
2024-05-28 19:50:57 +02:00
Serhii Snitsaruk
d36f8f1122
Fix variables missing from BTState blackboard
...
Non-overridden variables could be missing at runtime in the BTState blackboard due to a bug this commit fixes.
2024-05-15 11:43:31 +02:00
Serhii Snitsaruk
a572613001
BlackboardPlan: Utilize mapping in LimboHSM
...
Also changes how parent plan providing is implemented (used for editor hints).
2024-05-15 11:38:53 +02:00
Serhii Snitsaruk
ef1c1e5192
Fix circular ref & non-tools compilation errors
2024-05-14 22:03:29 +02:00
Serhii Snitsaruk
a1cdff2e2e
Fix issues with mapping in BTSubtree
2024-05-14 19:47:05 +02:00
Serhii Snitsaruk
0d1e846d93
BlackboardPlan: Use mapping with BTSubtree
2024-05-14 11:39:32 +02:00
Serhii Snitsaruk
e36ea6d3e6
Better error handling in BTState, BTPlayer & BehaviorTree
2024-05-02 14:10:29 +02:00
Serhii Snitsaruk
84c89356a6
Print error if agent node is set after initialization
2024-05-02 12:49:32 +02:00
Serhii Snitsaruk
a2dae24b99
Rename BTPlayer's agent => agent_node
2024-05-02 12:11:59 +02:00
Serhii Snitsaruk
af23272e3d
Fix unnamed arguments in method bindings
2024-05-02 01:27:14 +02:00
Serhii Snitsaruk
506d8aa967
Use `scene_root` with `BBParam`
2024-05-01 23:39:09 +02:00
Serhii Snitsaruk
5dff2e537b
Add `agent` parameter to `BTPlayer` to propagate upon `BehaviorTree` initialization, and add `scene_root` property to `BTTask`
...
`scene_root` is useful to resolve exported NodePath properties in `BTTask` instances (and for BBNode parameters).
2024-05-01 23:20:17 +02:00
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