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
Serhii Snitsaruk
22bfb9e3ab
Improve BTCallMethod
...
- Fix `include_delta` not initialized for some reason
- Add additional tests
- Group argument properties
- Improve name generation
2023-12-28 14:26:39 +01:00
Wilson E. Alvarez
56d7fb91c6
Fix LimboDebugger crash when EngineDebugger is not active
2023-12-27 21:02:22 -05:00
Wilson E. Alvarez
ab311c5770
Allow BTCallMethod to include its delta as an argument
2023-12-27 19:46:19 -05:00
Serhii Snitsaruk
3f61204961
Open BehaviorTree in the BT editor when its property is clicked in the inspector
2023-12-18 15:49:20 +01:00
Serhii Snitsaruk
71909648b7
Add "inline" optimizations
2023-11-22 13:41:28 +01:00
Serhii Snitsaruk
60012d984b
Fix drag & drop position in the same branch
...
Also, refactor get_child_index() into get_index().
2023-11-22 13:05:55 +01:00
Serhii Snitsaruk
caf1ff86b0
SetAgentProperty: Operation feature
2023-11-20 15:02:18 +01:00
Serhii Snitsaruk
c48eeef081
BTSetVar: Cover operations in unit tests & fix bugs
2023-11-15 16:35:56 +01:00
Serhii Snitsaruk
554ae5a165
Update class docs and refactor SetVar enums
2023-11-15 15:40:07 +01:00
Serhii Snitsaruk
1ac24e67bb
BTSetVar: Specify operation to be performed with assignment
2023-11-15 14:45:10 +01:00
Serhii Snitsaruk
166cc8b1d9
Rename BTTask::cancel() to abort() and expose it.
2023-10-26 16:26:10 +02:00
Serhii Snitsaruk
39971b1e1a
Improve BTPlayer doc
2023-10-26 13:44:09 +02:00
Serhii Snitsaruk
b5a44c0807
Fix BTProbabilitySelector showing probability for comments
2023-09-26 16:28:47 +02:00
Serhii Snitsaruk
1df821fdfa
Allow editing weight as percent in Probability popup
2023-09-25 22:36:37 +02:00
Serhii Snitsaruk
52a70fdee5
Add editor support for BTProbabilitySelector
2023-09-25 18:07:26 +02:00
Serhii Snitsaruk
32cbce6b80
Add abort_on_failure policy to BTProbabilitySelector
2023-09-24 16:45:10 +02:00
Serhii Snitsaruk
55e0b7404c
Add BTProbabilitySelector class
2023-09-24 14:06:09 +02:00
Serhii Snitsaruk
c94073fb39
Move BTCallMethod to Utility category
2023-09-20 10:40:16 +02:00
Serhii Snitsaruk
efe693347e
Refactor to return enum instead of int in task methods
2023-09-19 15:29:29 +02:00
Serhii Snitsaruk
50bcbcf616
Promote TaskStatus to named enum
2023-09-19 15:29:29 +02:00
Serhii Snitsaruk
476c4fd497
Merge branch 'unit-testing'
2023-09-12 10:03:30 +02:00
Serhii Snitsaruk
427de50ea1
Fix exposed methods missing arguments
2023-09-12 09:46:10 +02:00
Serhii Snitsaruk
97eee2a801
Fix not registering BT instance with debugger when BTPlayer is removed and then added to SceneTree
2023-09-09 13:37:09 +02:00
Serhii Snitsaruk
e1604fab67
Fix BTWaitTicks counting prematurely
2023-09-08 11:19:55 +02:00
Serhii Snitsaruk
198954e45f
Fix BTSetAgentProperty wrong error message
2023-09-07 12:13:31 +02:00
Serhii Snitsaruk
fe81b90dc1
Allow objects in BBNode
2023-09-05 11:00:58 +02:00
Serhii Snitsaruk
fe551e0299
Fix BTSetVar succeeding and setting variable to null when value parameter doesn't exist on the Blackboard
2023-09-02 14:16:52 +02:00
Serhii Snitsaruk
a07654394b
Fix BTCallMethod incompatibility with .NET glue
2023-08-28 19:24:55 +02:00
Serhii Snitsaruk
25246a1c77
Reorganize task categories
2023-08-28 13:22:23 +02:00
Serhii Snitsaruk
2ffcbf0565
Add `LimboTaskDB` to handle task categories and scanning user tasks
2023-08-25 17:32:46 +02:00
Serhii Snitsaruk
3f673c6865
Improve BTComment
...
Warn user about having comment as root task or having other tasks as children
2023-08-19 12:39:51 +02:00
Serhii Snitsaruk
0ae2b6869a
Don't count BTComment tasks for configuration warnings
2023-08-19 12:20:18 +02:00
Serhii Snitsaruk
a717a3ed8f
Add BTComment task
2023-08-18 21:38:28 +02:00
Serhii Snitsaruk
13f5eb1f71
Reorganize BT tasks
2023-08-15 17:49:13 +02:00
Serhii Snitsaruk
21c65541bf
Refactor BTTask.get_configuration_warnings()
2023-08-15 17:06:07 +02:00
Serhii Snitsaruk
d037295e1c
Add CallMethod action task
2023-08-15 13:09:18 +02:00
Serhii Snitsaruk
015ec64771
Add BTAwaitAnimation action
2023-08-14 17:24:27 +02:00
Serhii Snitsaruk
94f6d289a8
Allow BTPlayAnimation with `animation_name` empty to resume playback after pause
2023-08-14 14:31:02 +02:00
Serhii Snitsaruk
8e3c4c7570
Add BTPauseAnimation action
2023-08-14 14:08:10 +02:00
Serhii Snitsaruk
0b1d249ebe
BTStopAnimation: Add `keep_state` and fixes
2023-08-14 13:06:00 +02:00
Serhii Snitsaruk
abe1117055
Add BTStopAnimation action
2023-08-14 12:43:12 +02:00
Serhii Snitsaruk
45cf74dca9
Add BTPlayAnimation action
2023-08-13 17:34:34 +02:00
Serhii Snitsaruk
f286673dde
BT*AgentProperty fixes
2023-08-11 22:16:03 +02:00
Serhii Snitsaruk
557d457c1c
Add BTSetAgentProperty task
2023-08-11 12:33:39 +02:00
Serhii Snitsaruk
d3d5a0c50e
Refactor BTCheckVar
2023-08-10 13:12:13 +02:00
Serhii Snitsaruk
605444ee0f
Add BTCheckAgentProperty condition
2023-08-10 13:04:53 +02:00
Serhii Snitsaruk
a6077e202d
Add BTCheckTrigger
2023-08-09 10:33:04 +02:00
Serhii Snitsaruk
afe210b014
Update variables demo and small fixes
2023-08-08 15:07:02 +02:00
Serhii Snitsaruk
2795c6dcf2
Add BTCheckVar condition task
2023-08-08 15:06:01 +02:00
Serhii Snitsaruk
c8ec35c798
Improve BTConsolePrint action
...
- Make generated name less verbose
- Escape new line and tab characters
2023-08-07 14:58:09 +02:00
Serhii Snitsaruk
34e70d48ce
Add BTSetVar action
...
BTSetVar action can be used to assign any variant-type value to a blackboard variable.
2023-08-07 14:42:34 +02:00
Serhii Snitsaruk
458ad5280e
BTRepeat: Add `forever` property
...
This property makes BTRepeat iterate child indefinitely.
2023-08-06 12:45:19 +02:00