16.【Rekiden】AIをFSMとして使うとゲーム設計になる|状態遷移で歴史シミュレーションを動かす

tags: [AI, ChatGPT, FSM, ゲーム設計, 戦国, シミュレーション]


🏁 はじめに

前回(Rekiden-15)では、
「テンプレートをAIに貼るだけでゲームが始まる」
という、かなり乱暴で、しかし実用的な方法を示しました。

では次の疑問が出てきます。

なぜ、あれで“ゲーム”として成立するのか?

答えはシンプルです。

AIはFSM(有限状態機械)として振る舞っているからです。


🎯 結論:AIは自然言語FSMとして使える

FSM(Finite State Machine)は、ゲーム設計の基本です。

RekidenのAIゲームは、これを コードではなく自然言語で定義しています。


🧱 RekidenシナリオのFSM構造

状態(State)

例:1561年 川中島シナリオ

S0:決戦前夜(両軍対峙)
S1:索敵・偵察段階
S2:局地戦発生
S3:本戦突入
S4:勝敗確定

AIは常に
「今はどの状態か」
を文章として保持しています。


遷移(Transition)

プレイヤーの入力が、そのまま遷移条件になります。

条件:
- 夜襲を選択 → S0 → S2
- 啄木鳥戦法を選択 → S0 → S3
- 撤退を選択 → S0 → S1

if 文はありません。
意味理解で遷移が決まります。


状態遷移図(概念)

[S0 決戦前夜]
   ↓ 行動選択
[S1 偵察]
   ↓ 接触
[S2 局地戦]
   ↓ 拡大
[S3 本戦]
   ↓ 結果
[S4 勝敗確定]

これは完全に FSM です。


🔍 なぜAIでこれが可能なのか

① 状態を「文章」で保持できる

AIは、

数値ではなく意味として保持します。

これは人間のGMと同じです。


② 遷移条件が曖昧でよい

通常のFSM実装では、

if (hp < 0) gameover

のように、条件を厳密に書きます。

AIではこうなります。

「この行動は戦線を崩壊させる可能性が高い」

確率・文脈・歴史補正込みで遷移


📐 RekidenテンプレはFSM定義書である

Rekiden-14のテンプレを見てください。

初期状態:上杉軍と対峙、決戦前夜
敵勢力:上杉家(18,000人)

これはコード的に書けば、

state = S0
enemy_power = high

と同義です。

つまり、

テンプレ = 初期状態定義


✅ AIをFSMとして使うメリット

✔ 実装が不要

✔ 分岐爆発に強い

✔ 歴史補正が自然


⚠️ デメリットもある

正直に書きます。

しかしこれは、

TRPGと同じ性質

です。

Rekidenは 数値SLGではなく、設計SLG です。


🔁 15_ → 16_ で何が変わったか

ここで Rekiden は、

「遊び」から「設計」へ

一段階進みます。


🚀 次のステップ(17_ 予告)

FSMとして理解できたら、次はこれです。

Rekiden-17 では、
人が介入しなくても歴史が進むところまで行きます。


✍️ おわりに

AIは便利な文章生成器ではありません。

状態を持ち、遷移し、評価する存在です。

それを認めた瞬間、
ゲームエンジンは コードである必要がなくなります

Rekidenは、その実験です。


(続く:Rekiden-17 AI vs AI 自動戦記)