GGua 日本語リファレンス
英語版が正式な参照です。内容に差異がある場合は、英語版を優先してください。
USE CASE / AI

AIによるゲーム開発と、リリース版を遊ぶAIプレイヤー

Guaは、ゲームを実装・検証するAIコーディングエージェントと、許可された情報と操作を使ってリリース版を遊ぶAIエージェントプレイヤーの両方を支えます。

Guaが支える2種類のAI

開発を支援するAI

コードを変更し、Debug情報、ログ、スクリーンショットを使って実行結果を検証し、問題を修正します。

リリース版を遊ぶAI

コードは変更せず、Player向けに許可されたUI・World情報と操作だけを使い、プレイヤーとしてゲームを進めます。

1. AIコーディングエージェントに、実行中ゲームを確かめる手段を与える

コーディングエージェントはゲームのコードを書き、Guaは実行中ゲームを確認するためのランタイムUIレイヤーを提供します。gui-mcpを通じてSemantic UI Tree、操作、待機、ログ、スクリーンショット、Recording、Visual比較、テスト実行を利用できます。

AIが実装→ゲームを起動→UIを観測・操作→検証・修正

AI開発ループ

  1. 機能を実装する

    AIコーディングエージェントがGodotのGDScript/C#またはUnityのC#とゲームUIを変更します。

  2. ゲームを起動する

    GodotはGDScriptアドオンがControlを収集します。UnityはUPMパッケージがUI Toolkit、uGUI、TextMeshProのランタイムUIを自動収集します。どちらもGua WebSocketブリッジで公開します。

  3. Semantic UI Treeを調べる

    AIはget_ui_treeでID、role、text、状態を読み、engine固有object APIへ依存せず対象Controlを特定します。

  4. 操作して結果を待つ

    click、値入力、選択、scroll、key入力を送り、期待するUI状態まで待機します。

  5. 証拠から検証・修正する

    失敗時はUI Tree、engine log、スクリーンショット、Visual差分を確認し、実装修正後に再実行します。

2. AIエージェントプレイヤーがリリース版を遊ぶ

リリース版では、AIは開発者権限を持つテスト担当者ではなく、ゲームへ参加するプレイヤーです。ゲーム側がPlayer profileと公開ポリシーを固定し、AIに見せるUI、World Object、UI操作を選びます。Semantic Game ActionとRaw Inputは別権限として必要なものだけを許可します。

Release版を起動→Player情報を観測→目的・状況を判断→許可された入力で遊ぶ
ゲーム世界を理解する

World Object Treeからobjective、enemy、door、checkpointなど、ゲームが明示した意味情報を読みます。scene nodeや内部状態を無差別には公開しません。

ゲームを操作する

メニューはSemantic UI Action、ゲームプレイはjumpやmoveなどのSemantic Game Action、必要な場合だけRaw Inputで操作します。

Player向け情報だけを見る

privateなobject、内部値、Debug logは除外され、screenshotも既定では拒否されます。AIからDebugへ昇格することはできません。

安全に入力を終了する

保持入力は接続ごとに分離され、lease満了、切断、登録解除、engine終了時にニュートラルへ戻ります。

開発AIとAIプレイヤーの違い

AIによる開発・検証リリース版のAIプレイヤー
目的実装を検証し、問題を修正するゲームへ参加し、プレイヤーとして遊ぶ
公開profile開発者管理のDebughostが固定したPlayer
観測UI、log、screenshot、診断情報許可されたUI・World情報。Debug logは非公開
操作テスト・診断に必要なSemantic操作許可されたUI操作と、別途許可されたゲーム入力
接続主にネイティブゲーム向けgui-mcpPlayer設定のgui-mcp、またはWebゲーム向けgua-webmcp

ゲームエンジンごとの接続方法

ゲームエンジン収集するランタイムUIGuaの起動方法
Godot 4.7標準ControlツリーGDScriptアドオンが自動収集アダプターを接続し、ブリッジを開始します。
Unity 6UI Toolkit、uGUI、TextMeshProUPMパッケージがscene読込前に自動起動し、frame後にUIを収集します。
共通Semantic UI Tree v2gui-mcpから同じlocator、action、待機、log、Screenshot、Visual、Recordingを利用できます。

WebのPlaywrightとの対応

Web UI自動化GuaによるゲームUI自動化
Browser実行中ゲーム
DOMSemantic UI Tree
locatorID・role・text・状態によるSemantic locator
click / fill / keyboardclick / set value / press keyなどのSemantic action
expect / waitGuaAssertions / wait_for_node
screenshot / visual testGua screenshot / Visual baseline comparison

よくある質問

GuaはGodotのUIテストに使えますか?

はい。推奨Godot 4.7 GDScriptアドオンが標準Controlを収集し、Semantic locator、操作、待機、アサーション、Screenshot、Visual比較を利用できます。

GuaはUnityのUIテストに使えますか?

はい。Unity 6のUPMパッケージが、対応するWindows x64 Mono環境でUI Toolkit、uGUI、TextMeshProのランタイムUIを自動収集します。AIはGodot版と同じSemantic MCP toolで操作できます。

リリース版をAIに遊ばせられますか?

はい。ネイティブゲームではPlayer設定のgui-mcp、Webゲームではgua-webmcpを使い、許可されたUI・World情報を観測し、許可されたUI操作とゲーム入力でプレイできます。開発用Debug情報とPlayer向け権限は分離されます。

GuaはGodot EditorやUnity Editorを操作するMCPですか?

役割が異なります。Editor用ツールがゲーム制作環境を操作するのに対し、Guaは起動済みGodot・UnityゲームのランタイムUIを観測・操作・検証します。併用できます。

画像認識でボタンを探しますか?

いいえ。主要な対象指定にはゲームが公開するID、role、text、状態を使います。Screenshotは描画確認やVisual比較の証拠として利用できます。

GuaはゲームエンジンやAIを置き換えますか?

いいえ。Guaはゲームランタイムとテスト、Inspector、開発AI、AIエージェントプレイヤーをつなぐ自動化レイヤーです。