Skip to content

Releases: limbonaut/limboai

v1.3.0

21 Jan 12:33
98917a2
Compare
Choose a tag to compare

Good News, Everyone! 🎉

It's time for a new LimboAI release—please welcome the freshly baked version 1.3.0! Packed with fixes and improvements, this edition might be the last in the Godot 4.3 series. Time will tell 😉
I’ve highlighted some of the most interesting changes—as usual, follow the links for more details. Cheers!

What's Changed

⭐ - highlights

  • ⭐ Implement task multiple selection and drag and drop by @ydeltastar in #210
  • Fix BTForEach crash if elements are removed from the array during iteration by @limbonaut in #211
  • Fix BBNode::get_value() crash with a freed object using GDExtension by @limbonaut in #212
  • Fix BTSetAgentProperty name generation by @limbonaut in #213
  • Fix loop variables used as copy by @limbonaut in #214
  • GHA: Add an option to create GDExtension debug builds by @limbonaut in #216
  • Prefetch nodes set directly in the BehaviorTree's BlackboardPlan by @limbonaut in #215
  • Fix duplicate entries in Misc->Layout by @monxa in #219
  • Remember loaded BehaviorTrees of last session by @ydeltastar in #225
  • Fix invalid access errors on exit in LimboHSM by @limbonaut in #226
  • Fix and update docs by @limbonaut in #230
  • GHA: Fix Vulkan SDK installation step by @limbonaut in #233
  • ⭐ Implement Tree Search Functionality with Highlighting and Filtering by @monxa in #229
  • GHA: Code style checks for PRs and commits by @limbonaut in #234
  • Doc: Clarify Blackboard.get_var() and set_var() by @limbonaut in #235
  • ⭐ GHA: Build iOS GDExtension libraries by @limbonaut in #163
  • GHA: Fix Vulkan SDK on iOS by @limbonaut in #237
  • Duplicate BBParam instances in typed arrays in BTTask::clone() by @limbonaut in #239
  • Call both native and script _setup/_enter/_exit in BTTask by @limbonaut in #227
  • LimboHSM: Ability to specify per-transition guard function by @limbonaut in #241
  • Fix re-parenting an agent interrupts its state machine by @limbonaut in #242
  • Improve saving for built-in BTs attached to scenes by @limbonaut in #243
  • Improve workflow with built-in BT resources by @limbonaut in #244
  • ⭐ Feature: Bind BlackboardPlan variables to node properties in the Inspector by @limbonaut in #245
  • GHA: Improve Windows builds: MinGW/GCC with LTO, D3D12, ANGLE by @limbonaut in #252
  • Fix: Keep BTInstance alive until update is finished (fixes #254) by @limbonaut in #255
  • Add missing 'not' in HSM state example by @namelessvoid in #258
  • Doc: Add Contributing page by @limbonaut in #260
  • Suggestion on re-arranging the docs by @namelessvoid in #262
  • Fix crash with VSCode and GDExtension by @limbonaut in #261
  • Remove arbitrary limit on user task directories by @Pheubel in #263
  • Add Blackboard.print_state() by @limbonaut in #264
  • Fix documentation links in the editor by @limbonaut in #265
  • Enable existing BlackboardPlan features for NIL variables by @dpalais in #267
  • Amend logic error in BlackboardPlan variable listing by @dpalais in #269
  • doc: clarify scoping for BTState by @laurentsenta in #271
  • Update copyright notices across the project files & in LICENSE.md by @limbonaut in #272

New Contributors

Full Changelog: v1.2.2...v1.3.0

v1.2.2

16 Sep 10:16
d3d3295
Compare
Choose a tag to compare

What's Changed

a5c318b Update class docs
65a1a3d, 5766922 Fix prefetching failing for nodes set directly in BehaviorTree's BlackboardPlan resource
5ac6cda Fix BTSetAgentProperty name generation
fd1ac1c Fix BBNode::get_value() crash with a freed object in GDExtension
644c589 Fix BTForEach crash if elements are removed from the array during iteration
1cb8580 Fix mem leaks in the demo

Full Changelog: v1.2.1...v1.2.2

v1.2.1

05 Sep 15:12
7839670
Compare
Choose a tag to compare

What's Changed

  • Fix custom scene root is not used in BTPlayer and BTState by @limbonaut in #202
  • Fix editor setting initialization for GDExtensions by @monxa in #204
  • Generalize EDITOR_DEF macro to fix potential editor setting issues by @monxa in #205
  • Override _to_string() to give useful info about objects in GDExtension by @limbonaut in #206

New Contributors

Full Changelog: v1.2.0...v1.2.1

v1.2.0

22 Aug 14:45
f83cf65
Compare
Choose a tag to compare

Good News, Everyone! 🎉

LimboAI version 1.2.0 is out! This release focuses on the shiny new Godot Engine 4.3 and also brings a bunch of improvements and fixes. Due to the use of a newer API, it is no longer compatible with Godot 4.2.
While there are some breaking changes, most projects should remain unaffected. You can check the details in the linked ⚡PR below.

What's Changed

⭐ - highlights
⚡ - breaking changes, follow PR link for details

  • GHA: Build Android platform libs in GDExtension workflow by @limbonaut in #147
  • ⭐ Add support for Godot 4.3 by @Rubonnek in #64
  • Register and call virtual methods on scripts in GDExtension by @limbonaut in #149
  • Fix: GDExtension load fails due to Expression used without Ref<> by @limbonaut in #150
  • ⭐ Generate built-in documentation header in GDExtension variant by @limbonaut in #151
  • GHA improvements by @limbonaut in #154
  • Replace deprecated set_auto_translate call with set_auto_translate_mode by @dpalais in #155
  • ⭐ Improved layout for large displays (optional) by @limbonaut in #157
  • Fix BlackboardPlan arrays shouldn't be shared between instanced agents by @limbonaut in #158
  • Improve documentation tooltips by @limbonaut in #159
  • Fix new task script path don't update after changing the setting by @ydeltastar in #161
  • Fix error when opening scene with a BTPlayer by @ydeltastar in #162
  • ⭐ HSM improvements by @limbonaut in #164
  • Fix BTPlayer.restart() crash by @limbonaut in #172
  • GHA: Fix iOS builds by @limbonaut in #173
  • GHA: Add Linux & Windows ARM64 builds by @limbonaut in #174
  • LimboHSM: Fix process_input is not enabled in active substate by @limbonaut in #176
  • Hide update_mode property for non-root HSMs by @limbonaut in #177
  • Fix error if changed signal is already connected in several tasks by @limbonaut in #180
  • Breaking: Implement BTInstance - runtime instance of BehaviorTree by @limbonaut in #181
  • Allow monitoring BT performance in BTState by @limbonaut in #182
  • ⭐ BTPlayer: Allow switching BT instance at runtime by @limbonaut in #183
  • Allow supplying custom scene root for behavior tree instantiation by @limbonaut in #184
  • Editor setting to prefer online docs, and open builtin docs by default by @limbonaut in #185
  • ⭐ Edit task script on double-click (open help for core task) by @limbonaut in #186
  • Fix C# exports print errors due to missing ClassDB binding by @limbonaut in #188
  • Make player filter in the debugger case-insensitive by @ydeltastar in #189
  • Improved dev setup for GDExtension by @limbonaut in #190
  • Fix renaming BehaviorTree files doesn't update tab names by @ydeltastar in #191
  • Fix monitor_performance screwing C# exports by @limbonaut in #193
  • BlackboardPlan: Fix mapping failing for NodePath variables with prefetch enabled by @limbonaut in #195
  • GHA: Preserve nuget version for C# builds by @limbonaut in #197
  • Don't overwrite exisiting blackboard variables in BTState upon initialization by @limbonaut in #198
  • GHA: .NET build workflow fixes by @limbonaut in #199
  • GHA: Build additional .NET templates - Android & iOS by @limbonaut in #200
  • Fix editor undo polluting scene history if BehaviorTree is not saved to a file by @limbonaut in #201

New Contributors

Full Changelog: v1.1.0...v1.2.0

v1.2-rc

15 Aug 17:07
d7438b8
Compare
Choose a tag to compare
v1.2-rc Pre-release
Pre-release

Hey, folks! Are you excited about shiny new Godot goodies? This pre-release is focused on Godot 4.3, and it's not compatible with 4.2.
I believe it is quite stable. But if you come upon some bugs, don't forget to report them! Thanks.

What's Changed

⭐ - highlights
⚡ - breaking changes, follow PR link for details

  • GHA: Build Android platform libs in GDExtension workflow by @limbonaut in #147
  • ⭐ Add support for Godot 4.3 by @Rubonnek in #64
  • Register and call virtual methods on scripts in GDExtension by @limbonaut in #149
  • Fix: GDExtension load fails due to Expression used without Ref<> by @limbonaut in #150
  • ⭐ Generate built-in documentation header in GDExtension variant by @limbonaut in #151
  • GHA improvements by @limbonaut in #154
  • Replace deprecated set_auto_translate call with set_auto_translate_mode by @dpalais in #155
  • ⭐ Improved layout for large displays (optional) by @limbonaut in #157
  • Fix BlackboardPlan arrays shouldn't be shared between instanced agents by @limbonaut in #158
  • Improve documentation tooltips by @limbonaut in #159
  • Fix new task script path don't update after changing the setting by @ydeltastar in #161
  • Fix error when opening scene with a BTPlayer by @ydeltastar in #162
  • ⭐ HSM improvements by @limbonaut in #164
  • Fix BTPlayer.restart() crash by @limbonaut in #172
  • GHA: Fix iOS builds by @limbonaut in #173
  • GHA: Add Linux & Windows ARM64 builds by @limbonaut in #174
  • LimboHSM: Fix process_input is not enabled in active substate by @limbonaut in #176
  • Hide update_mode property for non-root HSMs by @limbonaut in #177
  • Fix error if changed signal is already connected in several tasks by @limbonaut in #180
  • Breaking: Implement BTInstance - runtime instance of BehaviorTree by @limbonaut in #181
  • Allow monitoring BT performance in BTState by @limbonaut in #182
  • ⭐ BTPlayer: Allow switching BT instance at runtime by @limbonaut in #183
  • Allow supplying custom scene root for behavior tree instantiation by @limbonaut in #184
  • Editor setting to prefer online docs, and open builtin docs by default by @limbonaut in #185
  • ⭐ Edit task script on double-click (open help for core task) by @limbonaut in #186
  • Fix C# exports print errors due to missing ClassDB binding by @limbonaut in #188
  • Make player filter in the debugger case-insensitive by @ydeltastar in #189
  • Improved dev setup for GDExtension by @limbonaut in #190
  • Fix renaming BehaviorTree files doesn't update tab names by @ydeltastar in #191
  • Fix monitor_performance screwing C# exports by @limbonaut in #193
  • BlackboardPlan: Fix mapping failing for NodePath variables with prefetch enabled by @limbonaut in #195
  • GHA: Preserve nuget version for C# builds by @limbonaut in #197

New Contributors

Full Changelog: v1.1.0...v1.2-rc

v1.1.1

07 Aug 08:40
8a23496
Compare
Choose a tag to compare

Work on release for Godot 4.3 continues. In the meantime, I cherry-picked some bug fixes for this patch release, plus it comes with Android GDExtension libs.

What's Changed

  • GHA: Build Android platform libs in GDExtension workflow by @limbonaut in #147
  • Fix potential rare var name conflict in BTCooldown
  • Fix connected signal error when loading BT for the second time
  • Fix BlackboardPlan arrays shouldn't be shared between instanced agents
  • Defer banner actions to not crash upon restart
  • Fix new task script path don't update after changing the setting (thanks @ydeltastar)
  • Fix BTPlayer.restart() crash
  • Fix process_input is not enabled in active substate
  • Fix error if changed signal is already connected to a BBParam in a bunch of tasks
  • Fix C# exports print errors due to missing ClassDB binding

Full Changelog: v1.1.0...v1.1.1

v1.1.0

18 Jun 14:08
8fa609e
Compare
Choose a tag to compare

Good News, Everyone! 🎉

LimboAI version 1.1.0 is out now, bringing new quality-of-life improvements and various bug fixes. As usual, this release targets the latest stable Godot version (4.2.2 currently).
Don't miss out on the new mapping feature!

What's Changed

⭐ - highlights
⚡ - breaking changes, follow PR link for details

  • Blackboard: Add create parameter to bind_var_to_property and link_var by @limbonaut in #89
  • BTDecorator: Add default _tick implementation by @limbonaut in #95
  • Add tests for nested HSM flow, tests for dispatch() and get_root(), and fix BBParam saved_value initializing to null by @limbonaut in #101
  • Add note about how to run demo/tutorial by @TranquilMarmot in #100
  • Add pre-commit configuration by @limbonaut in #103
  • ⭐ ⚡ Breaking: Allow specifying agent in BTPlayer node via inspector by @limbonaut in #102
  • GHA: Use older toolchain for SteamDeck compatibility by @limbonaut in #107
  • ⭐ Mapping variables by @limbonaut in #106
  • Editor: Check if variable is of correct type for BBParam subtypes by @limbonaut in #110
  • GHA: Generate .import files for GDExtension icons by @limbonaut in #116
  • GHA: Use godotengine buildroot mirror by @limbonaut in #117
  • Doc: Add first steps by @limbonaut in #118
  • ⭐ Implement tab navigation in the editor by @limbonaut in #120
  • Fix compile-time errors with updated godot-cpp by @limbonaut in #123
  • Editor: Add tab context menu option "Jump to Owner" by @limbonaut in #122
  • Show version info in the editor by @limbonaut in #124
  • API: Add Blackboard methods to enable iteration, state inspection & serialization by @limbonaut in #125
  • Add unit tests for Blackboard and fix Blackboard.unbind_var() by @limbonaut in #127
  • Fix custom task issues - a rare crash & a sticky name/script issue, and improve error handling by @limbonaut in #130
  • Fix reparenting an agent deactivates its HSM by @limbonaut in #131
  • Fix crash when freeing agent with performance monitoring enabled by @limbonaut in #133
  • Fix folding/unfolding selected composite task is not working by @limbonaut in #136
  • Fix task tree warnings column always taking up space by @limbonaut in #142
  • Support light themes for editor icons in GDExtension by @limbonaut in #145

New Contributors

Full Changelog: v1.0.2...v1.1.0

v1.1-rc

04 Jun 07:02
db73133
Compare
Choose a tag to compare
v1.1-rc Pre-release
Pre-release

What's Changed

⚡ - compatibility breaking, follow PR link for details.

  • Blackboard: Add create parameter to bind_var_to_property and link_var by @limbonaut in #89
  • BTDecorator: Add default _tick implementation by @limbonaut in #95
  • Add tests for nested HSM flow, tests for dispatch() and get_root(), and fix BBParam saved_value initializing to null by @limbonaut in #101
  • Add note about how to run demo/tutorial by @TranquilMarmot in #100
  • Add pre-commit configuration by @limbonaut in #103
  • Breaking: Allow specifying agent in BTPlayer node via inspector by @limbonaut in #102
  • GHA: Use older toolchain for SteamDeck compatibility by @limbonaut in #107
  • Mapping variables by @limbonaut in #106
  • Editor: Check if variable is of correct type for BBParam subtypes by @limbonaut in #110
  • GHA: Generate .import files for GDExtension icons by @limbonaut in #116
  • GHA: Use godotengine buildroot mirror by @limbonaut in #117
  • Doc: Add first steps by @limbonaut in #118
  • Implement tab navigation in the editor by @limbonaut in #120
  • Fix compile-time errors with updated godot-cpp by @limbonaut in #123
  • Editor: Add tab context menu option "Jump to Owner" by @limbonaut in #122
  • Show version info in the editor by @limbonaut in #124
  • API: Add Blackboard methods to enable iteration, state inspection & serialization by @limbonaut in #125
  • Add unit tests for Blackboard and fix Blackboard.unbind_var() by @limbonaut in #127
  • Fix custom task issues - a rare crash & a sticky name/script issue, and improve error handling by @limbonaut in #130
  • Fix reparenting an agent deactivates its HSM by @limbonaut in #131

New Contributors

Full Changelog: v1.0.2...v1.1-rc

v1.0.2

23 Apr 10:29
2bfedec
Compare
Choose a tag to compare

What's Changed

  • GHA: Provide version.txt with GDExtension builds & demo project by @limbonaut in #87
  • GHA: Build .NET binaries for macOS by @limbonaut in #88
  • HSM: Delay state transition till update is finished by @limbonaut in #91
  • Support multiple debugger sessions by @limbonaut in #92
  • Fix LimboState::get_root and dispatch freeze the process in case of nested HSMs by @limbonaut in #93
  • Documentation update - BTSubTree by @onze in #96

New Contributors

  • @onze made their first contribution in #96

Full Changelog: v1.0.1...v1.0.2

Update (May 27)

Builds were updated using a different toolchain to support Steam Deck and older Linux distributions. All the packages were updated to the new build.

v1.0.1

03 Apr 14:26
0ff93fa
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.0...v1.0.1