limbonaut/limboai

LimboAI - Behavior Trees and State Machines for Godot 4

何を解決するか

LimboAIは、Godot 4エンジンでゲームエージェント(敵やNPCなど)の複雑なAI行動を構造的に作成するための方法を提供します。エージェントのロジックを書く際に、巨大で保守が難しいコードを書く必要をなくし、決定や状態管理にモジュール化・階層化されたツールを提供します。

動作方法

このプラグインは、2つの主要なAIアーキテクチャパターンを組み合わせています:

  • 行動木(BT): タスク(合成、デコレータ、条件)の階層構造で、エージェントの行動フローを制御します。視覚的なエディタで作成・編集でき、BTPlayerノードで実行できます。
  • 階層的状態機械(HSM): イベント駆動型の状態と遷移を管理するシステムです。複雑な状態ロジックを整理するために、HSMを他のHSM内にネストできます。

このシステムはパフォーマンスを重視してC++で実装されていますが、GDScriptまたはC#を使ってカスタムタスクや状態を定義できます。

対象ユーザー

Godot 4を使用し、ハードコードされたロジックに頼らずに、堅牢でスケーラブルなエージェントAIを設計したいゲーム開発者向けです。

特徴

  • 視覚的BTエディタ: Godotエディタ内で直接行動木リソースを作成・保存できます。
  • ブラックボードシステム: タスク間でデータを共有し、異なるエージェント間で変数を共有できる共有データストアです。
  • 視覚的デバッガー: ゲーム実行中にリアルタイムで行動木の実行を確認・トラブルシューティングできます。
  • ハイブリッドアプローチ: BTStateを使用して、状態機械と行動木を組み合わせ、反応型AIを実現できます。
  • 柔軟なデプロイ: エンジンの再ビルド不要のGDExtensionとして、またはC++モジュールとして利用可能です。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト