
eスポーツタイトルとしても人気の高い『スト6』で、CPUの動作はどのようにプログラミングされているのかを、カプコン CS第二開発統括 開発一部 第一ゲームデザイン室のカプコンの安原直宏氏が解説した。
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/afe07eee1f0268775c646e844b05bff2d.png?x=767)
レベルとともに広がるCPUの行動バリエーション
- 対戦格闘ゲームのCPU
- 人間らしく行動させるための3つの観点
- 長期運営に対応する
最初に言っておくが、ここで言う“CPU”とは、CPUが操作するキャラクターの思考ルーチン、つまり行動を決定するロジックやプログラムのことを指す。安原氏はCPUがどうあるべきかという目的地として、CPUキャラクターの“行動の草案”を1枚の表として示した。
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/a2f07ffa368f051119fc0d9e7c6f72a89.png?x=767)
この表ではレベルが上がるほどCPUキャラクターが取り得る行動のバリエーションが増え、さらにその精度が上がっていくことをわかりやすく明示。非常にわかりやすく示されていた。表組みのタイトルは“行動の草案”で、調整が加えられたものの実際の製品版でも、ほぼ最初に決めた仕様のままCPUの実装が進められているという。
CPUは2つの側面を持つ
前者はプレイヤーを操作に慣れさせるとともに、キャラクターの特性や魅力を伝えるものとして。後者はより高度なシステムや、戦いにおける駆け引きの理解などが具体的な役割となる。
“対人戦としてのデザイン”として、本作のCPUは“どんなときに反撃が成立するのか、あるいはしないのか”を示すような連携や行動をくり出すことで、キャラクターごとの技に設定された“隙”を理解させる。これは駆け引きの基礎的なことを理解させるための行動だ。また、高レベルになれば、カッコよく高度な連携を見せる操作を行う。こうしてプレイヤーの“師匠”として手本を見せるのだ。
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/aa03b8fe4f2334ddddb4c174d7240a117.png?x=767)
CPUのロジックをカードゲーム的表現で解説
CPUにしろプレイヤーにしろ、条件ごとに取り得る行動の選択肢は限られる。たとえば相手がジャンプをしてきたら、“ガードする”か“対空の技を出す”といった具合だ。そうした状況ごとの行動をカードゲームで言う“デッキ”のようにまとめて、安原氏は“戦術”と表現した。
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/afaf51514839d1f62080e6545afe2b0f3.png?x=767)
安原氏によると、CPUが操作する各キャラクターには、その特徴を決定づける“キーカード”が設定されているとのこと。CPUはいかにこのキーカードを使うか、つまりいかに各キャラクターの特性を発揮させるかに主眼をおいて戦術が組まれているのだという。CPUのレベルが上がるほど、キーカードを用いるためのカードを組み合わせる枚数が増え、より行動が複雑化していく。
最終的なカードを使うにあたって“実行能力”の判定は、先に入るようになっている。たとえばリュウ対ザンギエフの対戦が行われているとして、リュウに歩いて近づいてきたザンギエフは通常技を出してガードさせる。ガードによる硬直で有利な状況が生まれ、ここでスクリューパイルドライバーを実行、かと思いきや。なんとザンギエフは後方へとジャンプで飛び去ってしまう。
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/8ea1962ad6bd5a859c2153b7ebfc9f80.jpg?x=767)
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/a5b16053408a0f9be0ef6485dcda5d66c.png?x=767)
安原氏によれば、CPUは内部的に状況から感じるプレッシャーを係数として持っていて、レベルによってコマンド入力の成否が揺らぐのだそう。つまりレベルが低いCPUは、プレッシャー係数による影響が大きい。つまり実行能力が低いのである。
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/ab5b72eb9de43b290467263ffded1bfb3.png?x=767)
さらに安原氏は人間らしさを感じさせるための工夫について、より詳細な部分の解説を“補足”として続けた。本作のCPUはレベルの違いによって、攻撃をヒットさせたときの有利という状況の分解能が変化する。これはどういうことかというと、おおまかに言えば“有利であることがわからない”、“有利であることがわかる”、“○フレーム先に行動ができる”といったように変化するのだという。
攻撃を出したときに空振りすれば出した側が不利になる。これは強かろうが弱かろうが変わりはない。しかし、ヒットしたときにどう判断し、つぎにどの行動を取るかで“強さ”が変わる。有利なフレーム数までわかれば、つぎに出すもっとも効果的な技の判断もできるし、つぎに出した技がさらに当たれば、そこからどの戦術につなげればいいかも判断できるわけだ。
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/aa8c73e668bd07976ce3880379df62721.png?x=767)
更新対応へのコスト低減で長期運営へ対応
どういうことかというと、バージョンアップのたびに生まれる細かなデータの違いがCPUの行動に影響しないように、その依存度を下げる工夫がされているのだ。本作のCPUは、細かなデータよりも実行中の情報、つまりその瞬間瞬間の状況を細かく読み取ることを重視して行動を決定していく。
作戦、戦術、実行能力という3つの観点でロジックをまとめ、実行中の判断でそれらを有機的に接続することで、結果的に幅広いユーザー層に対応しつつ長期運営に耐え得るものとなったというのが、安原氏のまとめだ。
![[IMAGE]](https://cimg.kgl-systems.io/camion/files/famitsu/15462/a660ac0839fa25ba36ee82d5615c26763.png?x=767)
カードゲームに例えた表現の勝利
ちなみに、それぞれのカードには左上に各技の発生フレームが“コスト”として、さらに下部には与えられるダメージが“火力”として表記されているほか、必殺技ならそのコマンドまでもが描き込まれていた。コスト(発生フレーム)を考えてそのカード(技)を出すかどうかの判断をする。デッキが複雑化するとともに多彩になる。こうした表現はゲームに馴染みのある人にとっては直感的に理解しやすいものだった。
また、プレッシャーを係数として持ち、判断や実行能力の揺らぎを持たせることで強さを調整し、CPUに人間らしさを感じさせる一助としている点も興味深かった。コマンド入力に失敗してジャンプするザンギエフなど、具体例の選択も素晴らしい。
ショートセッションながら、聴講者にとってはかなり有意義かつ興味深い内容だったと言えるのではないだろうか。