本文へスキップ

AIventure

AIventure は bebechien/AIventure の Angular + Phaser ゲームです。Vifu 統合ではゲームの構造とアイデンティティを保ちながら、Vifu の公開・ランタイム環境に組み込みます。Vifu Hub は、モデル駆動 NPC プレイと Vifu ゲームで利用できるホスト管理機能のための、ゲームとプラットフォームの統一インターフェースです。

ゲームを開く

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 が出力内の実行入口です。
  • Vifu Hub は、ホスト管理の AI agent / tool、game state、runtime resource、world session、event、承認済み capability を一つのプラットフォームインターフェースとしてゲームに接続します。
  • AIventure はそのインターフェースを NPC 会話とゲームツールに使います。
  • 現在見えている NPC / ゲーム操作は、execute を持つツールとして hub.ai.generateText(...) に渡します。
  • 現在の Mind は Vifu ホスト / session が選ぶため、ゲームが provider や Mind id をハードコードする必要はありません。
  • ゲームには直接の provider credential や host transport コードを埋め込みません。

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

json
{
  "name": "AIventure"
}

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

デプロイ

bash
vifu deploy

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