limbonaut/limboai

LimboAI - Behavior Trees and State Machines for Godot 4

解决的问题

LimboAI 为 Godot 4 引擎中的游戏代理(如敌人或 NPC)提供了一种结构化的方式来创建复杂的 AI 行为。它取代了编写庞大且难以维护的代理逻辑代码的需求,转而提供模块化、分层化的决策与状态管理工具。

工作原理

该插件结合了两种主要的 AI 架构模式:

  • 行为树(BT): 一种由任务(复合节点、装饰器、条件)组成的层次化结构,用于控制代理行为的流程。可通过可视化编辑器创建和编辑,并使用 BTPlayer 节点执行。
  • 分层状态机(HSM): 一种基于事件的状态与转换管理系统。HSM 可嵌套在其他 HSM 中,以组织复杂的状态逻辑。

系统以 C++ 实现以保证性能,但允许用户使用 GDScript 或 C# 定义自定义任务和状态。

适用人群

需要在 Godot 4 中构建稳健、可扩展的代理 AI 系统,而不依赖于硬编码逻辑的游戏开发者。

特色亮点

  • 可视化 BT 编辑器: 可直接在 Godot 编辑器中创建和保存行为树资源。
  • 黑板系统: 一个共享数据存储,允许任务在不同代理之间通信并共享变量。
  • 可视化调试器: 在游戏运行时实时检查和排查行为树的执行情况。
  • 混合方法: 可通过 BTState 将状态机与行为树结合,实现反应式 AI。
  • 灵活部署: 支持作为 GDExtension(无需重新编译引擎)或 C++ 模块使用。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目