mcpField
G
game-ai

game-ai

github.com/alphaonedev開発47 回インストール
リポジトリ

game-ai について

game-aiは、NPCの移動や判断を自動化するOpenClawスキルです。A*探索、設定可能な決定木、TensorFlowによる学習連携を備え、ゲーム開発者向けです。

主な機能

  1. 01ヒューリスティック設定可能なA*探索
  2. 02JSON設定の決定木
  3. 03TensorFlowモデル学習連携
  4. 04経路探索のメモリ調整

活用シーン

  1. 01グリッド上で障害物を避けるNPC経路の計画
  2. 02ゲーム状態に応じた敵の行動選択
  3. 03適応型ゲームAI向けモデルの学習

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/alphaonedev/openclaw-graph --skill game-ai

インストール後、Claude Code で/game-aiを入力して読み込まれたか確認します。

詳細

game-ai

目的

このスキルは、経路探索(A* アルゴリズムなど)、NPC の行動に関する決定木、機械学習の統合(TensorFlow を使ったモデルのトレーニングなど)に重点を置き、ゲーム向けの AI アルゴリズムを開発します。ゲーム開発のワークフローにおける AI ロジックの自動化に役立ちます。

使用する場面

  • グリッドベースの世界で最適な経路を見つけるなど、ゲーム内で NPC のナビゲーションを実装する場合。
  • ゲームの状態に基づいて敵 AI が行動を選択するような、意思決定システムを作成する場合。
  • リアルタイムシミュレーションでプレイヤーの動きを予測するモデルをトレーニングするなど、適応型 AI に ML を統合する場合。

主な機能

  • 経路探索:ヒューリスティックを設定できる A* アルゴリズムを実装します。最大 100x100 セルのグリッドベースのマップに対応します。
  • 決定木:JSON 設定ファイルからツリーを構築します。例:{"node": "if health < 50 then flee"}。各判断を 10ms 未満で評価します。
  • 機械学習の統合:モデルのトレーニング用に TensorFlow API をラップします。ゲーム内の強化学習では、入力ベクトルを使って /api/ml/train などのエンドポイントを使用します。
  • 最適化:経路探索ルーチンでヒープ使用量を 20% 削減する --optimize-memory など、パフォーマンス調整用のフラグが含まれています。

使用パターン

このスキルを使用するには、必須パラメーターを渡して OpenClaw の CLI または API から呼び出します。認証のため、環境変数 $GAME_AI_API_KEY は必ず設定してください。経路探索では開始点、終了点、グリッドを指定して関数を呼び出します。決定木では設定を読み込み、入力を評価します。API 呼び出しを try-catch ブロックで囲むなど、非同期レスポンスを処理できるようにコードを構成してください。

一般的なコマンド/API

  • CLI コマンド:openclaw game-ai pathfind --start 0,0 --end 10,10 --grid '{"width":20,"height":20,"obstacles":[[5,5]]}'
    • コードスニペット:
      import openclaw
      result = openclaw.run('game-ai pathfind', {'start': '0,0', 'end': '10,10'})
      print(result['path'])  # Outputs: [[0,0], [1,0], ...]
      
  • API エンドポイント:JSON ボディ {"tree": {"root": "if enemy_near then attack"}, "input": {"enemy_near": true}} を指定して /api/game-ai/decision-tree に POST します。
    • コードスニペット:
      import requests
      headers = {'Authorization': f'Bearer {os.environ["GAME_AI_API_KEY"]}'}
      response = requests.post('https://api.openclaw.com/api/game-ai/decision-tree', json={'tree': {...}}, headers=headers)
      print(response.json()['decision'])  # e.g., 'attack'
      
  • 設定形式:入力には JSON を使用します。例:{"algorithm": "A*", "params": {"heuristic": "manhattan"}}。実行前にエラーを確認するには、--validate-config フラグで検証してください。

統合に関する注意

OpenClaw SDK をインポートし、$GAME_AI_API_KEY で初期化して統合します。ゲームエンジンでは、Unity(C# スクリプト経由)または Unreal(Blueprint 経由)のモジュールとして追加します。OpenClaw SDK v2.5+ を使用するなど、バージョンを一致させて互換性を確保してください。ML では、pip install tensorflow を追加して TensorFlow などの外部ライブラリと連携し、$TF_MODEL_PATH=/path/to/model.h5 などの環境変数で設定します。ゲームループが中断されないよう、サンドボックス環境で統合をテストしてください。

エラー処理

レスポンスコード(例:認証エラーを示す 401)を確認して、API エラーを必ずチェックしてください。認証エラーは $GAME_AI_API_KEY を使った再試行で対処します。入力が無効な場合は、openclaw game-ai pathfind --start invalid --debug のように CLI フラグ --debug を使って詳細をログに記録します。コードでは、形式が正しくないグリッドに対する ValueError などの例外を捕捉します。

  • コードスニペット:
    try:
        path = openclaw.run('game-ai pathfind', params)
    except ValueError as e:
        print(f"Error: {e} - Fix grid format and retry")
    

使用前に、事前チェック関数などを使って設定を検証してください。また、指数バックオフを使い、ネットワーク障害時に最大 3 回再試行する処理を実装してください。

具体的な使用例

  1. 2D ゲームでの経路探索:障害物を避けて NPC の経路を見つけるには、openclaw game-ai pathfind --start 1,1 --end 5,5 --grid '{"width":10,"obstacles":[[3,3]]}' を実行します。座標のリストが返されます。経路の配列に基づいて NPC の位置を更新し、ゲームループに組み込みます。
  2. 敵 AI のデシジョンツリー:openclaw game-ai build-tree --config '{"root": "if player_health < 20 then heal"}' でツリーを構築し、ゲーム内で評価します。API を使って判断を確認します。たとえば、現在のゲーム状態を指定して /api/game-ai/decision-tree に POST し、レスポンスが "heal" の場合は回復などのアクションを実行します。

グラフの関連性

  • 関連クラスター:game-dev(ゲーム関連スキルの直接の親)。
  • 関連タグ:artificial-intelligence(ML コンポーネントを共有)、pathfinding(中核機能が重複)。
  • 接続:統合に役立つ「game-engine」や、高度なトレーニングに役立つ「ml-tools」などのスキルにリンクしています。また、ゲームエコシステムにおける AI の中心ノードとして「game-ai」を含むサブグラフを形成しています。

コメント