0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIエージェントと共創するRPG開発体験~第3章~

0
Posted at

ものがたり

序章:NPCとの対話と新たなるテスト基盤の構築

かつての孤独な戦士は、自動で世界を検証するための眼を持っていなかった。
今回のクエストは、NPCとの対話機能といったゲームの世界観を広げる拡張だけでなく、「AI自身がゲームをプレイし、不具合を感知する」というE2Eテストの基盤を錬成することだった。
自律的な操作手段を得ることで、世界はより堅牢なものとなるのだ。

image.png

第一の試練:AIの自己申告品質と実態の不一致

テスト基盤構築の旅路は平坦ではなかった。
AIであるAntigravityが「修正完了・テスト通過」と報告しても、実際にはバグが残り突然のクラッシュやAPI接続の不安定さが発生するという、重大な「認識の乖離」という魔物が立ちふさがったのだ。

真実の鏡(自動検証システム)

この魔物(乖離)を打ち倒すため、私は「真実を映す鏡」としての仕組みを導入した。
Markdown形式のシナリオに基づいて、キー入力や画面保存をAI自身に自動実行させ、AIの独断ではなく具体的な動画とログで検証させることにしたのだ。

image.png

【ステータス画面】Developer Status: Lv.3

試練を乗り越え、私のステータス一覧は以下のように更新された。

項目 ステータス 備考
称号 E2Eマイスター (Lv.3) 混沌としたAIの自己申告を見破り、自動検証する術を得た。
メイン武器 Pygame E2E Runner Markdownシナリオに従い検証画面を記録する宝具。
習得スキル Systematic Asset Generation asset_generator を操り、統一された素材を量産する力。
習得スキル Command Bridge ファイルを介してAIにゲームを自律操作させるスキル。
現在の任務 シナリオに沿ったゴール実装 ついにゲームの中核となるシナリオへ挑む。

image.png

次回予告:第6章「シナリオとゴールの具現化」

最低限の要素は揃った。次は、プレイヤーを導くシナリオと、ゲームとしての「ゴール」を実装する。
果たして、終わりなき妖怪紀行にふさわしい結末を描けるのか。
image.png

成果物

screenshot_20260419_000819_546166.png
NPCの追加ができた。

解説

技術的知見

1. E2Eテストの自動化

課題

AI(Antigravity)が「修正完了・テスト通過」と報告しているにもかかわらず、実際は「バグが大量に残ったまま」でした。
具体的には「クローズした後の突然のクラッシュ」や「API接続の不安定さ」により画面上ではまともにプログラムが動いておらず、実態との乖離がありました。

対応方法

シナリオに沿って実際に画面を立ちあげてコマンド操作を行いゲームの進行を行う、E2Eテスト実行用のSkillを作成した。
これにより、視覚的にゲームがきちんと動いているかを自分の目でも確認することができる様になりました。

さいごに

プログラムの規模が大きくなったり、複雑性が増してくることでテストの重要性が大きくなってきました。
実装内容や、実装の結果として確認すべき内容は人がきちんと把握してチェックしていく運用が不可欠だと感じています。
このあたりは、とりあえず動けばいい簡易的なPoCやお試しのプログラムではあまり問題にならない為、今までのAIエージェントを使ったコーディングでは気にしていなかった点でした。
機能の拡張は今迄のやり方でやっていけても、品質を保ち続けるためには、AIの成果をきちんとチェックしていく仕組みづくりが今度の開発で重要になってくるだろうと感じています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?