本文へスキップ
ドキュメント
このページの内容

AIアシスタント

MCPに対応したAIクライアントは、エディターで開いているレベルを目の前で編集できます。AIのバッチ1つは元に戻す1ステップで、AIは公開、ファイルの削除、他のレベルへの上書きができません

Windows、Linux、Mac版のゲームには、このためのMCPサーバーが付属しています。AIは人間と同じ操作で編集するので、すべての変更はすぐにビューポートに表示され、自分で行った編集と同じように履歴に記録されます

MCPに対応したクライアントなら、チャットアプリでもコーディングアシスタントでも使えます。ゲーム内に、特定のAIに縛られた部分はありません

クライアントの接続

  1. 設定 → エディター → AIエージェント(MCP)を開きます
  2. AIの接続を許可にチェックを入れます。設定の下のステータス行に、エディターが待ち受けているポートが表示されます
  3. クライアント設定をコピーを押します。両方のパスが入力済みのクライアント設定が、クリップボードにコピーされます
  4. それをクライアントのMCPサーバー設定に貼り付けます
  5. エディターでレベルを開くか、エディターやレベルを開くようAIに頼みます

コピーされる設定は次のようになります:

{ "mcpServers": { "bullet-hero": { "command": "<path to BH.MCP>", "args": ["--endpoint", "<path to endpoint.json>"] } } }

サーバーファイルBH.MCPは、ゲームの隣にあります:

システムサーバーファイル
Windows<game folder>/BH.MCP.exe
Linux<game folder>/BH.MCP
Mac<game>.app/Contents/Resources/mcp/osx-arm64/BH.MCP(Intelではosx-arm64の代わりにosx-x64)

接続できるのはこのコンピューターだけで、同時に接続できるクライアントは1つだけです。スマートフォンとタブレットにはMCPのセクションがありません:アシスタントはデスクトップ専用です

ゲームは複数同時に起動できます。AIは、切り替えを頼まれるまで最後に起動したゲームで作業し、起動中のすべてを一覧できます。それぞれのゲームが受け付けるクライアントは、これまでどおり1つです。複数起動する場合は、2つのゲームが同じポートで待ち受けることはできないため、ポートを0のままにしてください

AIにできること、できないこと

AIは、人間ができることのほとんどを行えます:

  • レベルを読む:ヒエラルキー、オブジェクト、キーフレーム、イベント、リソース
  • オブジェクト、キーフレーム、マーカー、チェックポイント、オーディオトラック、ビートグリッドを作成、変更、削除する
  • ジェネレーターを実行し、プレハブをパックして配置し、プレハブモード内で作業する
  • テクスチャ、フォント、オーディオのファイルをレベルにインポートする
  • インポート後に、テクスチャ、フォント、オーディオのファイルの帰属情報を記入する:タイトル、説明、リンク、出典、作者(リソースの記録)
  • ゲーム自体のプリセットのテーマ、フォント、インターフェースサウンドを使う。resources_listはそれらをゲームのものとして示し、インポートは不要です。ゲームにはプリセットのエフェクトが付属していません:AIが置くエフェクトは、レベルにすでにあるものか、AIが新しく作るものです
  • 任意の輪郭を角の点からレベルシェイプとして描き、シェイプをグラデーションで塗り、テキストのフォントと揃えを設定し、レベルのテーマを作成、編集する
  • 元に戻す、やり直す、開いているレベルを保存する、別のレベルを開く、新しいレベルを作成する
  • 再生ボタンと同じように、再生を開始、一時停止する
  • 起動時と同じ引数で、ゲームを別の画面(エディター、レベル、設定など)に移す(起動引数)
  • サーバーがインストール済みのゲームの隣にあり、MCPがすでにオンなら、起動していないゲームを起動する

この方法で始めたプレイは、他のプレイと同じく統計に記録されます。そのため、AIは頼まれたときにだけプレイを始めます

できないこと:

  • Steamワークショップへの公開
  • レベルやファイルの削除
  • 他のレベルや他のファイルへの上書き。ファイル名がすでに使われているインポートは拒否されます
  • 読み取り専用のレベルや、このセッションでパスワードを入力していない保護されたレベルを開くこと
  • 開いているレベルに保存されていない変更があるときに、別のレベルを開くこと

AIのバッチ1つは履歴の1ステップです。履歴タブには、AI自身が付けた説明とともにAI一括操作として表示されます。Ctrl+Zを1回押すと、バッチ全体が取り消されます。履歴の詳細:レベル設定 › 履歴

AI は、同時に再生される2つのオブジェクトを同じレイヤーに置きません。 バッチがそうなりそうなときは、同じステップの中で後のオブジェクトを次の空いているレイヤーへ上げ、そのことを伝えます。例外はプレハブの中身で、レベルの他の部分とレイヤーを共有できます

レベルを変更する最初のAIバッチは、同じステップの中で、そのレベルのAI生成をAI生成に設定します。バッチを元に戻すと、これも元に戻ります。詳細:メタデータとレベルの共有 › AI生成

優先されるのは人間の操作

AIがエディターの操作を奪い合うことはありません:

  • ギズモのハンドルをドラッグしている間やタイムラインをスクラブしている間は、AIの編集は拒否され、AIは待ってから再試行します
  • AIが再生ヘッドを使うのは、人間が何もしていないときだけです:再生中、ドラッグ中、入力中、保存中は使いません
  • エディターはレベルを開くと再生を始めるので、AIはフレームを見るために再生を一時停止することがあります。AIが自分で開いた、または作成したレベルは一時停止したままです。意図的に再生を見ている場合、AIは一時停止の前に確認します
  • AIがフレームを見ている間にエディターに触れると、AIはすぐに止まります。再生ヘッドは、人間が置いた位置に残ります
  • 履歴をたどる操作の実行中も、AIは編集できません

クライアントが接続している間、ビューポートの右上、検索ボタンの下にAIが表示されます。色が状態を示します:緑は接続中、黄はAIが作業中、赤はAIの最後の呼び出しがエラーで終わったことを示します。クライアントが切断された後も、バッジは30秒間残ります。ステップごとに接続し直すAIでも、バッジが点滅しないようにするためです。バッジは、ビューポートのツールと一緒に非表示になります。カーソルを合わせると、状態が文字で表示されます:AI接続中、AIの作業中は実行中の内容の説明。横のバツ印はクライアントを切断して拒否し、バッジは消えます

この停止は保存されません。AIの接続を許可をオフにしてもう一度オンにするか、ゲームを再起動すると解除されます

AIに見えるもの

AIは2つの方法でレベルを見ます:

  • 模式図。画面外で計算した任意のフレームの画像です。再生ヘッドは動きません。シェイプと当たり判定は表示されますが、テキストとエフェクトは表示されません
  • キャプチャ。レベルが描画するとおりの実際のピクセルで、人間の再生ヘッドを使って撮影します。一瞬、再生ヘッドがそのフレームに移動し、エディターのオーバーレイが隠れます。その後、再生ヘッドがAIに追従がオンでない限り、再生ヘッドは元の位置に戻ります。画像はエディターのカメラではなく、レベルのカメラで撮られます。細部を詳しく見るために、AIは代わりにワールドの矩形を指定して撮ることもできます。レベルは変わりません

移動後のエフェクトの静止画は、連続再生で表示されるものに近いですが、常に同じとは限りません

AIは音楽を聴けません。曲を数値に変換します:テンポ、ビート、小節、セクション、各帯域の音量。これは信頼度付きの推定で、外れることもあります(たとえばテンポが半分や倍になる)。レベルに設定したビートグリッドは、AIの推定より優先されます。分析からAIが提案するビートグリッドでは、整数から0.01%以内のテンポはその整数に丸められ、オフセットは常に1小節より短くなります。曲の一部に対する提案はその部分のテンポを使うので、テンポが変わる曲ではテンポごとに1つのセグメントになります

そのため、タイミングが重要なときは、AIが聴いて確認するよう頼むことがあります。AIはエディターで最大45秒の範囲を再生し、これによっても再生ヘッドが動きます。エディターに触れると、再生はその位置で止まります

エディターの音がミュートされている間、AIは何も再生せず、音をオンにするよう頼みます

AI自身の操作では、インターフェースの音は鳴りません:AIが起こした元に戻す、保存、拒否は無音です。聞こえるのは、AIが意図的に再生するものだけです

aiフォルダー

AIは、レベルについての記憶をレベルフォルダー内のaiフォルダーに保存します。次のセッションは、どのクライアントでも最初にこれを読み、前回止まったところから続けます

中にあるもの:

  • CONTEXT.md:依頼内容、音楽、セクションの計画、決定事項、作者のコメント、未解決の質問
  • AIが保存すると決めたその他のファイル。.mdまたは.jsonのみ
  • manifest.json:フォルダーがレベルと一緒に運ばれるかどうか。AIはこれを変更できません

フォルダーは、AIが初めて何かを書き込むときにだけ作られます。1ファイルは最大256KB、フォルダー全体は最大1MBです。普通のテキストファイルなので、自分で読んだり、編集したり、削除したりできます

警告

aiフォルダーは、レベルの履歴に含まれません。AIがそこに書き込んだ内容は、Ctrl+Zでは元に戻りません

デフォルトでは、フォルダーはレベルと一緒に運ばれます:エクスポートしたアーカイブにも、Steamワークショップへのアップロードにも含まれます。手元に残すには、レベル設定のメタデータタブでこのレベルにAIコンテキストを含めるのチェックを外してください。このチェックボックスは、フォルダーが存在すると表示されます。変更はすぐにファイルに保存されるので、これもCtrl+Zでは元に戻りません

パスワード付きのエクスポートモードでは、チェックボックスの状態にかかわらず、フォルダーは含まれません。詳細:エクスポートと保護 › レベルのエクスポート

このデバイス上でレベルをコピーすると、フォルダーも一緒にコピーされます。コピーは共有ではないためです

設定

すべて設定 → エディター → AIエージェント(MCP)にあり、このデバイスにだけ保存されます:

  • AIの接続を許可:そもそもクライアントが接続できるかどうか。デフォルトはオフです
  • ポート:エディターが待ち受けるポート。0なら、起動のたびに空いているポートを選びます
  • 再生ヘッドがAIに追従:オンの場合、キャプチャ後に再生ヘッドは、AIが見たフレームで一時停止したまま残ります
  • AIの編集を表示:AIが編集するたびに、作成または変更したものを選択して、その位置を表示します
  • AI操作の遅延(秒):AIの2つの操作の間にエディターが待つ時間。操作を目で追えるようにするためのものです。0なら、各操作がすぐに適用されます

すべての設定とそのデフォルト値:エディター設定 › AIエージェント

次へ:作業を失わないために、エクスポートと保護