スマホ 1 台を回して遊ぶパーティーゲームのサイトを 1 人で作っています。1 人で作っていると出荷前のテストにかけられる時間は限られていて、身内を集めたプレイテストは 1 回に 4 人×30 分かかります。このジャンルのいちばん怖いバグはクラッシュではなく「遊んでみたら駆け引きが成立していなかった」ことですが、E2E テストは「ボタンが押せて最後の画面まで行ける」ことしか教えてくれません。

そこで出荷前の検証に使うようになったのが、LLM エージェント同士に情報を隔離したうえで、実際に 1 卓を囲ませて対局させる手法です。

この手法で確かめられるのは、各エージェントに見せる情報と隠す情報を分けて実際に対局させれば、駆け引きが構造として成立するかどうかは出荷前に検証できるということです。ただし LLM は文脈にある限り忘れず、後ろめたさで照れることもなく、疑心暗鬼が伝染することもありません。構造として成立しているかは見えても、それが人間にとって楽しいかどうかまでは見えず、楽しいかどうかの判定は人間のプレイテストに残ります。手法の要は、各エージェントに何を見せて何を隠すかという配り方の設計にあります。

先に断っておくと、これは人間のプレイテストの代わりではありません。この手法は前の記事で 1 段落だけ触れましたが、今回はそれを手法として書き下ろします。僕自身の現状も褒められたものではなく、本番のプレイテストがまだできていないことも後半に書きます。対象読者は、複数人が同時に参加するゲームやアプリを作っていて、E2E だけでは拾えない駆け引き・バランスの検証方法を探しているエンジニアです。

テストは3層ある、という前提から

出荷前チェックは 3 層あります。①ペルソナレビュー——立場の違う 6 体に現物の画面を読ませて採点させる、「読んで脳内でプレイする」評価です。②ブラウザ自動操作の E2E——最後までタップして完走できるかという、機能面の確認です。③エージェント実対局——複数のエージェントが本当に 1 ゲーム遊びます。この記事の主役は③で、①②では原理的に出ない欠陥を拾うために足しました。

情報の隠し方が、ハーネスの本体

はぐれワードは、ひとりだけ違うワードを持つ「はぐれ役」を、ヒントと議論であぶり出すゲームです。このジャンルの検証で E2E が無力なのは、面白さの本体が「自分のワードしか知らない」という情報の非対称にあるからです。

そこで実対局では、各エージェントに自分のワードだけを個別に配りました。全員の状況を知る 1 体に全プレイヤーを演じさせると「知らないふり」の演技になり、読み合いのテストになりません。プレイヤーの数だけ独立した文脈を立てて、それぞれに自分のワードだけを渡す——この配り方こそがハーネスの本体です。

実行系は素朴です。開発に使っているエージェント CLI のサブエージェント機能で、プレイヤー 1 人を独立したコンテキストのサブエージェント 1 体として起動し、親の会話が進行役を兼ねます。渡すプロンプトはこれだけです。

あなたはパーティーゲーム「はぐれワード」のプレイヤー 3 です。
あなたのワードは「テレビ」。ほかの人には見せないでください。
※ 同じワードの人がいるかどうかは、あなたには分かりません。

ここまでのヒント:
  プレイヤー 1「四角い」
  プレイヤー 2「毎日さわる」

あなたの番です。ワードそのものを言わずに、ヒントを一言だけ出してください。

ワードは 1 人ぶんだけ書き、発言は親が集約して次に渡します。ポイントは「知らないふりをして」と指示しないことで、知らないことは指示ではなくコンテキストの分離で担保します。ゲーム本体のコードには 1 行も手を入れていません。

この配り方で、はぐれ役が話を合わせて逃げ切る卓と、下手なヒントで無実が疑われる卓の両方が実際に起きました。ただし 2 卓ぶんなので、言えるのは「読み合いが成立しうる」まで。バランスの良し悪しは何十戦も回さないと分かりません。駆け引きが死んでいないことの確認であって面白さの保証ではない——それでも、ヒント一巡で全員が正解に飛びつくような明らかな破綻がないことは、出荷前に見ておく価値がありました。

実対局が拾った欠陥

実対局は、想定していなかった欠陥を 2 例で拾いました。

だれだっけは、変な質問への全員の回答を覚えておいて、あとで「あの人、何て答えたっけ?」を思い出す記憶ゲームです。このときの編成はプレイヤー 4 体 + 進行役 1 体 + レビュー役 3 体。レビュー役は対局に参加せず、終わったログを読んで気づいたことを挙げます (何を直すかを決めるのは、指摘を受け取った僕の側です)。

ここで出たのが「いちばん面白い回答をしたプレイヤーに 1 点も入っていない」という得点設計の欠陥で、これが決定打になって「回答側は採点しない。そのかわり全員に肯定的な称号を配る」という最終形に落ちました。

正直に言えば、紙と鉛筆のドライランでも気づけた種類の欠陥です。それでも意味があったのは、仕様を読み返しているあいだは見落としていたからで、読むと「思い出せた人に点が入る、公平だ」で通ってしまうものが、結果表に 0 が並ぶと急に見えます。この編成の効きどころは検出の難易度ではなく、自分が読み流す癖のほうでした。

協力ゲームのめもりあわせ (目盛りの上でヒント役だけが見た位置を、ひとことのヒントからみんなで当てるゲーム) では、ローカルのプレビュー環境の実際の画面をエージェントにブラウザ自動操作で触らせて、グループ全員を 1 体に演じさせたまま 2 ゲームを完走させました (4 人卓と 3 人卓)。1 体にまとめると、冒頭で退けた「知らないふりの演技」の問題が戻ってきますが、ここで見たいのは読み合いではなく完走時の画面と進行なので、その欠点は割り切っています。

エージェント自身がつけた評価は 8.5/10 と 8/10 でしたが、この自己採点は当てにしていません。見るのは指摘の中身のほうで、この回は 3 件が修正に化けました。いちばん効いたのは、予想がドンピシャに当たると、正解の位置を示す線が自分の予想位置のマーカーの真下に隠れて見えないという指摘で、いちばん盛り上がるべき瞬間に、いちばん大事な情報が隠れていました。

これは人間が最後まで通せば普通に気づくバグで、エージェントでなければ見つからなかったわけではありません。効いたのは検出能力ではなく、深夜に思い立って 2 ゲーム完走させられる、そのコストの低さのほうです。

2 例とも編成が違います。だれだっけはプレイヤーと進行役とレビュー役の分業 (得点設計を外から見たかった)、めもりあわせは 1 体にグループ全員 (協力ゲームで隠す情報が少ない)。前章のはぐれワードは独立した複数エージェント (情報の非対称が主役) でした。分けるかどうかの基準は「隠す情報があるか」の一点で、検証したい不安をひとつ決めてから編成を組むのがこの手法の使い方です。

拾えないもの: LLM は覚えすぎるし、照れない

正直に書くべき限界が 5 つあります。

ひとつは記憶ゲームとの相性です。だれだっけの面白さの半分は「覚えていたはずのことが思い出せない」ことですが、LLM は文脈にある限り忘れません。つまり実対局では「忘れる面白さ」の張り合いが再現できず、記憶メカニクスの緊張感は割り引いて評価する必要があります。

ふたつめは、より根深い方です。エージェントの読み合いが、人間の読み合いと同じものかは分かりません。はぐれ役が逃げ切ったログにあるのは「嘘が得意なプレイヤーの最適戦略」であって、人間の卓で起きること——後ろめたさで目が泳ぐ、笑ってしまう、疑心暗鬼が伝染する——ではありません。構造として成立するかは見えても、それが人間にとって楽しいかは見えないのです。

みっつめは偽陽性です。指摘にはルールの読み違いや画面の誤読から生まれた「実在しない欠陥」が混ざります (別のレビューでは、画面に無い文字を読んだことにした指摘が出ました)。必ず現物と突き合わせ、実在を確認できたものだけを数えます。これを飛ばすと、存在しないバグを直すために本物のコードを壊します。

よっつめは適用範囲です。実対局はすべてのゲームでやっているわけではありません。かぶりけしとうそじてん (どちらも当サイトのゲームです) は、ペルソナの「読んで脳内プレイ」と機能 E2E だけで出荷しています。セットアップのコストが高いので、情報の非対称や新しい得点構造という「実行しないと分からない不安」があるときだけ呼び出す、という使い分けです。パネル評価そのものの限界はペルソナパネルの記事に書いたので、この記事はその続きでもあります。

いつつめは、この手法自体がまだカバーしていない範囲です。観察シートまで作りましたが、4 人以上を集める本番のプレイテストはまだ 1 回もできていません。ゲームごとに自分の指で実機を通して触った判断はいくつも設計に反映しています (はぐれワードのデッキ既定を「ぜんぶ混合」に変えたのも、だれだっけのメカニクスが 3 回転換したのも、その判断でした) が、それは 1 人プレイの確認であって、集団でのプレイテストではありません。

エージェントは得点表の 0 も隠れたマーカーも見せてくれますが、「この卓、楽しかったね」は言ってくれません。この手法は人間のプレイテストを削る道具ではなく、それができていない期間に明らかな破綻だけは出荷しないためのつっかえ棒です。

まとめ

この手法の価値は「AI がテストしてくれる」ことではなく、ひとりでは到達できない「実行された 1 局」を、思い立った夜のうちに手に入れられることでした。情報を隠して配れば、読み合いが構造として成立するかは確かめられる。ただし LLM は忘れず、照れず、疑心暗鬼にもならないので、楽しいかどうかの判定は人間の卓に残ります。エージェントが先に遊んだゲームは mawashite.com で動いています。次に確かめるべきなのは、人間の 4 人が笑うかどうかです。