本文へスキップ

AIventure

AIventure は bebechien/AIventure の Angular + Phaser ゲームです。VifuHub/Agent Runtime 統合ではゲームの構造とアイデンティティを保ちながら、VifuHub の公開プロジェクトと Agent Runtime に組み込みます。VifuHub SDK は、モデル駆動 NPC プレイとホスト管理機能のための統一ランタイムインターフェースです。

ゲームを開く

bash
git clone --recurse-submodules https://github.com/vifudotdev/awesome-open-source-ai-native-games
cd awesome-open-source-ai-native-games/games/aiventure
npm install

何を使っているか

AIventure は Angular のバンドルプロジェクトで、ゲームプレイは Phaser が担当します。

  • npm run build がブラウザー成果物をビルドします。
  • dist/template-angular/browser がデプロイ出力です。
  • index.html が出力内の実行入口です。
  • Agent Runtime は、VifuHub SDK を通してホスト管理の AI agent / tool、game state、runtime resource、world session、event、承認済み capability をゲームに接続します。
  • AIventure はそのインターフェースを NPC 会話とゲームツールに使います。
  • 現在見えている NPC / ゲーム操作は、execute を持つツールとして hub.ai.generateText(...) に渡します。
  • モデルの経路はホスト session が選ぶため、ゲームが provider id をハードコードする必要はありません。
  • ゲームには直接の provider credential や host transport コードを埋め込みません。

manifest はゲームを識別し、VifuHub CLI は Angular のビルドコマンド、出力ディレクトリ、実行入口、利用可能なホスト機能をプロジェクトと VifuHub 呼び出しから解決します。

json
{
  "name": "AIventure"
}

検出された既定値を上書きする場合、またはホスト機能を無効にする場合だけ manifest reference を参照してください。

デプロイ

bash
vf deploy

デプロイ検査は、リモートの実行コードやブラウザーから外部 AI プロバイダーへの直接呼び出しをブロックします。モデル呼び出しは hub.ai.generateText(...) または hub.run(...) の後ろに置き、ゲームがランタイムの AI サービスを使うようにします。