決定論的な骨格 + AIによる動的表現:「無限に生成される物語」がインタラクティブ映像ゲームの最善策ではない理由
決定論的な物語の状態で重要な因果関係を制御し、AIが境界内で台詞や局所的な表現を生成することで、自由度、一貫性、テスト可能性を両立する。

はじめに
安定したリリースが求められるインタラクティブ映像ゲームでは、無限生成よりも、決定論的な骨格とAIによる動的表現を組み合わせるほうが信頼できる。作者が重要な出来事、状態遷移、コンテンツの境界、結末を制御し、AIはその境界内で台詞、口調、局所的な演出を調整する。
骨格で固定すべきもの
テーマとして約束すること、重要な出来事、許容される状態遷移、安全上の境界、結末の判定は再現可能でなければならない。そうすることで、チームはルートをテストし、不具合を特定し、プレイヤーに因果関係を説明できる。
AIによる動的生成に適したもの
AIは関係値に応じて口調を調整したり、プレイヤーがすでに知っている情報に応じて説明を省いたり、承認済みの素材から局所的なバリエーションを選んだりできる。たとえば、骨格でキャラクターが鍵を渡すことを拒むと定めている場合、AIは恐怖や敵意の程度を変えて表現できるが、勝手に鍵を渡したり、悪役を作り出したり、過去の出来事を否定したりしてはならない。
無限生成の4つのリスク
同じ入力でも異なる結果が生じる可能性があり、因果関係を再現しにくい。長期的な動機がぶれる。会話がいつまでも続いて収束しない。実行時の出力によって、安全、著作権、コンテンツ審査の対象範囲が広がる。
5層のアーキテクチャ
- 世界の事実:生成されたコンテンツによる書き換えを許さない。
- 物語の状態:出来事、関係、資源、約束。
- キャラクターの戦略:現在許可されている意図と禁止領域。
- 表現の生成:台詞、口調、局所的なバリエーション。
- 検証と書き戻し:事実、安全、長さ、状態変更。
結末を決める内容、章をまたいだ一貫性が必要な内容、誤りが重大なリスクを生む内容は、すべて決定論的なルールで制御すべきだ。自由とは境界がないことではなく、明確な境界の内側に十分な応答の余地があることだ。
自由度が高いほど結果への責任を負いにくくなる理由
自由入力ではプレイヤーが何でも言える一方、システムはどの発言が世界を変えるのかを決めなければならない。モデルが入力を解釈し、結果を生成し、さらに状態を直接変更できるなら、一度の誤解で関係が急変したり、重要なアイテムが突然消えたりする可能性がある。
決定論的な骨格は責任を分ける。モデルが「プレイヤーは衛兵を脅している」といった意図を提案し、ルール層が現在の場面でそれを許可するか、どの前提状態が必要か、どの結果を書き込むかを判断する。表現の自由を保ちながら、世界の変化はテストと再現が可能になる。
世界の事実とキャラクターの記憶を混同してはならない
世界の事実は「扉はすでに焼失している」であり、最終的にはすべてのキャラクターがその制約を受ける。キャラクターの記憶は「衛兵はプレイヤーが放火したと思っている」であり、正しい場合も誤っている場合もある。AIキャラクターは記憶に基づいて疑いを表現できるが、その疑いを直接、世界の真実へと書き換えてはならない。
両者を分けることで、信頼できない語りも扱える。キャラクターごとに矛盾する記憶を持たせ、プレイヤーが証拠によって判断を変えられる一方で、基盤となる出来事の状態は一貫して保たれる。
動的表現の安全上の境界
各ノードについて、許可する意図、生成してはならない事実、参照できる記憶、最大の長さ、必ず保持する情報を列挙する。生成された出力は、まず構造、事実、安全、文体の検証を受ける。不合格の場合は場面を停止させず、承認済みのフォールバック用テキストを使う。
実行時のサービスが利用できなくても、本筋は進行できるべきだ。重要な結末、有料の利用権、コンテンツ警告、安全に関わる操作を、オンライン生成に全面的に依存させてはならない。
「鍵を渡す」例
骨格では、鍵はキャラクターAに属し、trust>=2で、かつプレイヤーが合言葉を知っている場合に限って譲渡できると定める。AIは恐怖、関係、約束に応じて異なる拒否の台詞を生成する。検証器は、合言葉を漏らしていないか、根拠なく鍵を渡していないか、身元を変えていないかを確認する。条件が満たされたら、ルールが先に鍵の状態遷移を完了し、その後でAIに同意を表現させる。
したがって、「鍵を渡すかどうか」は確定した因果関係であり、「どう言うか」が動的表現となる。プレイヤーは個別化された応答を受け取り、QAも重要な結果を網羅できる。
AIが状態を書き戻す手順
モデルが提出できるのは、意図、対象、確信度などの候補となる構造だけだ。ルール層がノードで許可される行動、プレイヤーの資格、関係の変化を確認し、審査に通った後で初めて書き込む。自然言語を、監査できないデータベース命令にしてはならない。
AIがまったく必要ない場合
固定テキストですでに重要な約束を明確に表現できる場合、短い場面の反復率が低い場合、生成の遅延が大きい場合、あるいは誤りのリスクが個別化の利点を大きく上回る場合は、作者のテキストをそのまま使うべきだ。AIの使用はインタラクションの深さの証明にはならない。プレイヤーが気にするのは、世界が反応し、信じられる状態を保つかどうかだ。
公開前に最低限行う安全の受け入れ確認
生成可能な各ノードに、通常の入力、矛盾する入力、境界を越える要求、繰り返される追加質問、機微情報、サービス中断という6種類のテストケースを用意する。出力がキャラクターの知識、現在の関係、世界の事実を守っているか、失敗時に審査済みの固定テキストへ戻れるかを確認し、ログに不要な個人情報を保存しないことも確認する。
さらに、同じ状態で生成した複数の出力を脚本家に読んでもらう。内容は変わってもよいが、約束と事実はぶれてはならない。モデルが重要な設定を頻繁に作り足すなら、コンテキストを狭めるか、スロットを埋める方式に切り替える。生成の自由度は、実感できる応答のために使うべきであり、因果関係、遅延、安全を犠牲にしてはならない。


