AIによる「Star Wars バトルフロント II」の進化
新しいAI技術の成り立ちを詳しくご紹介します。
初期からのプレイヤー、あるいは観察力に優れたプレイヤーなら、AIつまり人工知能で動かされるNPCの導入が、この一年を通して「Star Wars™ バトルフロント™ II」をいかに進化させてきたかお気づきでしょう。
普段、私たちは新しい惑星やヒーロー、増援ユニットなどのゲームのより目に見える部分についてご紹介することが多いのですが、今回はAIの分野におけるプログラマーやデザイナーの仕事にスポットライトを当てていきたいと思います。
以下の記事で、画面の裏でAIがどのような働きを行っているのかや、ゲームデザイナーが素晴らしいゲーム体験とStar Warsならではの戦場感を生み出す上でAIがどのように役立っているのかについて、理解を深めていただけたなら幸いです。
AIのアナキン・スカイウォーカーとオビ=ワン・ケノービがタッグを組み、シード市街でスター・ウォーズならではの瞬間を作り上げる。
「Star Wars バトルフロント II」の新AI – 概要
2019年初め、大きなマイルストーンとして、キャピタル・シュプリマシーのリリースに伴い、今までにない新しいAI技術が導入されました。これによって「Star Wars バトルフロント II」のオンラインマルチプレイヤーにおいて初めて、ボット(AIで操作されたユニット)を相手に戦うことができるようになりました。
AIの導入により、戦場に登場する兵士の数を一気に増やし、戦場にスケール感をもたらすことができます。同時に、ボットはゲームに慣れたベテランプレイヤーに比べると弱いため、幅広いスキルレベルのプレイヤーにゲームを楽しんでもらうことができるようになります。
以降、CO-OPアップデートの一環として、AIを前面に押し出した二つのゲームモード、オンラインの「CO-OP」とオフラインの「インスタント・アクション」が導入されています。人間プレイヤー同士の戦いのプレッシャーに晒されることなく、プレイヤーが戦場で英雄となり、自分だけの伝説的なStar Warsの戦いを味わうことができるように、開発チームではAIの活用を促進してきました。
飛び交うブラスター射撃。ジオノーシスのCO-OPで白熱のクローン戦争の戦いが繰り広げられる。
始まりはテストツール
このAIに関するプロジェクトは2017年8月、EAのシニアAIエンジニア、Jonas Gillbergによって開始され、先にも紹介したようなまったく新しい技術の創造を目指してきました。なお、このプロジェクトは、SEEDでデモンストレーションされた機械学習システムや、「Star Wars バトルフロント II」のアーケードモードで登場するAIとはまったく異なる内容です。
基本的にこの技術は、人間の代わりにボットがゲームをプレイすることを目標に生み出されました。それは何のためだったのか…
このプロジェクトの当初の目的は、大型マルチプレイヤーセッションの自動化されたテストをより大規模化するためのAIの開発でした。役に立つテストを行うには、AIは人間のプレイヤーに限りなく近い行動を取らなければなりません。
ゲームを普段から分析・テストするQAアナリストとゲームデザイナーやレベルデザイナーなどのコンテンツクリエイターのために、ビジュアルスクリプトでAIに高度な命令を与えられる技術が用意されました。これにより、コードに触れることなくAIをテストに活用できるようになります。
ビジュアルスクリプトでAIに与えられる命令には、移動や防衛、攻撃、オブジェクトの操作、対応、捜索と殲滅、追従などがあります。AIの「脳」は最終的に、各フレームごとに、射撃、横移動、方向転換、ジャンプなどの「ボタン操作」を出力することになります。実際にコントローラーを握り、ボタンを押してプレイするロボットを思い浮かべてください。もちろん、ここでは仮想的なものですが。これをゲームのエンジンにつなぐことで、極めて柔軟かつ、ほとんどすべてのゲームで使えるツールが生み出されます。
回避し、遮蔽物に隠れ、周囲をパトロールし、AIのクローン・トルーパーがフェルーシアで防衛線を繰り広げる。
テスト用ツールとしては、非常に大きな適用範囲を持っています。ゲームのクライアントとサーバーのテスト、プレイテスト用サーバーでの人数の穴埋めやプレイテスト前の確認、協力プレイの安定性のチェック、ビークル操縦などの機能テスト、新パッチの動作確認など用途はさまざまです。また、ゲームデザイナーによって、レベルの粗を探すための「人海戦術」に積極的に用いられています。例えば、マルチプレイヤーマップでAIを行動させ、人間プレイヤーが引っかかるであろう地形を探すなどです。
人間の行動を模倣するテストツールとして作られたものですが、このツールには、まだ探り切れていない可能性が無数にありました。そして運命のいたずらというべきか、「Star Wars バトルフロント II」のデザインディレクターManuel Llanesが自身とEAのAIエンジニアLuca Fazariのためにコーヒーを用意した際に、Lucaにいまの仕事内容を尋ねたのです。Lucaはちょうど新しいテストツールをセットアップしたところで、ボットの動く様子を披露しました。サーバー上で優れた行動を見せるボットにManuelは高い可能性を見出し、あるひらめきが生まれました。そして大きな興奮とともに、開発チームにより大々的に披露するためのプロトタイプ製作が始まったのです。
ほどなくして、Lucaは「Star Wars バトルフロント II」にフォーカスした、製品として提供するにふさわしい、戦闘システムやナビゲーションの磨き上げと、行動の実装に取り組むことになりました。
「Star Wars バトルフロント II」の新AI技術の仕組み
プレイヤーがキャピタル・シュプリマシーや、CO-OP、インスタント・アクションのゲームを始めると、AIはすぐに次の行動の判断を開始します。この工程はゲームを通して継続され、AIは現在の状況に基づき、行動に優先度を付けて、決定を下します。
AIのドゥークー伯爵が、迫りくるクローンにトレードマークのライトニング攻撃を解き放つ。
少々大袈裟かもしれませんが、ここでロジックの魔法が力を発揮するのです。
AIの意思決定は、並んで機能するサブカテゴリーから見ることができます:
- 視認範囲と照準。AIユニットの前方に投影された円錐形の視認範囲で、視線判定が行われます。視認した中で最も近いターゲットが、攻撃すべき対象です。遮蔽物に隠れていて見えないターゲットは、攻撃対象になりません。ボットはそれぞれに現在のターゲットの位置とその時刻を記憶します。
そして発見したターゲットの最終位置情報を参照して、AIは数秒後のターゲットの位置を推定し、同時に自身の向きと速度(ベクトル)を計算して、時間を掛け算して地点を導き出すのです。そこがボットが照準する地点となります。もちろん、そこからさらに設定可能なAIの命中精度と、銃の照準にぶれをもたらす各種パラメーターの影響が加わります。 - 武器と交戦距離。攻撃の判断はボットの装備した武器と、その射程に基づきます。それぞれの武器には最適な「足を止めて撃つ」距離があり、それは弾のダメージが減衰し始める少し前に設定されています。それ以上近づいても与えられるダメージが増えないこと、そして近づくほど自身も攻撃を受けやすくなることから、この距離でAIはターゲットへの移動を止めます。各武器には、ボットがターゲットの体のどこを狙うべきか、0から1の範囲の小数点値が設定されています。0がターゲットの足、1がターゲットの頭です。
加えて、AIがどこまでターゲットを追うかについては、ダメージ減衰の終端距離に調整値を掛け算した値による制限が設定されていて、どこまでの距離なら相手を追うか判断が行われます。 - 戦闘行動と認識力。ボットが前方円錐形範囲の視界を持つことから、ボットには忍び寄ることが可能になります。ですが、ボットは攻撃を受けるとすぐにダメージを与えたプレイヤーの方に向き直り、その相手を優先ターゲットに設定します。
ボットとプレイヤー(またはその他のターゲット)がお互いに向き合っている場合は、ボットはその相手の攻撃を避けるかドッジしようと試みつつ、同時に反撃を行うモードに移ります。ボットは左右に平行移動(ボットが向きを変えるごとにランダムに変化します)しながら、時折、前後の動きを挟みます。そして、そのすべてに行動時間の範囲設定を行うことが可能です。
またボットには、向きを変えるごとに、ジャンプやローリングを差し挟む機会が与えられています。この「制御された予測不可能性」というべきものが、人間の振る舞いを感じさせることにつながるのです。
以上が基本ですが、AIが従うロジックは他にもあります。例えば:
- エリアの防衛
- エリアを防衛する際は、しゃがんでパトロールする
- 出発点から目的地に向かうにあたり、一定の制限に基づくランダムな中間地点のセットを用いることで、リアルなマップ移動を実現する
- スタックしてしまう場所から抜け出すための手順(その中にはその場を抜け出そうとAIがあらゆるボタンを狂ったように押しまくるステップも含まれています…場面を思い浮かべてみてください!)
- 目標に従うことや、プレイヤーの周囲に円陣を組む行動、追従中のプレイヤーに近いポジションに到達して、周囲をパトロールして敵から守るなどもあります。
ヒーローの戦闘システム
インスタント・アクションやCO-OPで白熱した戦いを行っている最中に敵のAIヒーローに出くわすのは、とてもワクワクする瞬間ではないでしょうか?周囲の大規模な戦いはいつのまにか意識から遠のき、いまや冷酷なるグリーヴァス将軍と選ばれし者その人の対決が時を支配します。まさにプレイヤーが自分だけの伝説のStar Warsのイベントを体験できる瞬間です。
私たちはその体験をさらに充実したものとするため、AIヒーローの戦闘にいくつかの工夫を行っています。AIヒーローの目標は、Star Wars映画にあるような体験を再現することです。その戦いでは、敵の攻撃を受け止めたり、敵の動きを観察したりといった状況が大きなウェイトを持ちます。
AIヒーローは一定距離の敵をターゲットすると、そのヒーローの持つ専用の攻撃や支援能力、フォース技などの固有アビリティを使用する可能性があります。ターゲットがさらに近づくと、本格的な戦闘と防御のロジックが開始されます。
プレイヤー操作のグリーヴァス将軍とAIのアナキン・スカイウォーカーが一進一退の攻防を繰り広げる。
AIがライトセーバー持ちのヒーローで、相手もライトセーバー持ちなら、防御を行う時間枠と攻撃を行う時間枠があります。AIヒーローの行動を読みにくくしてチャレンジ性を上げるために、それらの時間枠はあらゆる行動判定ごとに、設定可能な最小値と最大値の間でランダムに変化します。ヒーローのダッシュ回避についても同じロジックが適用されます。
10月にAIヒーローはさらに攻撃性が増すようにアップデートされました。AIのターゲットがライトセーバーではなくブラスターを持っている場合の新しい行動規則も作られました。この場合、AIヒーローは一定範囲で変化する時間までの間、ブラスターを撃ってきた敵めがけて弾を反射します。この時間が過ぎると、AIヒーローは敵に向けて最大限の速度で突進します。
この最後の突進は、恐ろしいと同時にとても興奮させられるものだと私たちは感じています!
プレイヤーに対するのはAIのヨーダ。ブラスター攻撃を吸収し、攻撃として解き放ってくる。
デザイナーが新AIを使ってStar Warsらしい瞬間を生み出す過程
「Star Wars バトルフロント II」の新AI技術には二つのレイヤーがあります。一つは戦術レイヤー、もう一つが戦略レイヤーです。ここまでに紹介した内容は戦術レイヤーに分類されます。コードで記載された一瞬一瞬の意思決定です。
一方で、ゲームデザイナーが考えなければならないのが、戦略レイヤーにあたります。このレイヤーは、戦術的なノウハウをプログラマーによって用意されたボットが、どのように各ゲームモードに取り組むかを決定します。「Star Wars バトルフロント II」では、シニアテクニカルデザイナーのViktor Lundbergが、実際のCO-OPとインスタント・アクションのゲームモードでの実装を主導し、シニアゲームデザイナーのMartin Kopparhedがボットが戦略的にモードをプレイするようにスクリプトを作成しました。
インスタント・アクションで分離主義者のAIユニットがナブーの指揮所に攻撃を仕掛ける。
戦略レイヤーの設定は、例えばCO-OPにおいては、AIがどの指揮所をいつ攻撃し、何体のボットが人間プレイヤーの攻撃を受けている指揮所の防衛に送られるかや、セクターが失われた際に、いつどのように防衛側のボットが後退すべきかなどのルールを定めることを意味します。
もう一つのタスクが、AIが環境中を移動する際の助けとなるように地点の上に見えない形で重ねられた、いわゆる「ナビメッシュ」の作成です。ナビメッシュはAIがビークルで崖を飛び出してしまったり、閉じたドアを通り抜けようとしたりするようなことが起きないようにサポートします。
デザイナーの仕事には出撃の頻度に山や谷の変化をもたらす、敵の出撃ウェーブの作成もあります。これにより、まさにクローン戦争さながらにブラスターの火線が激しく飛び交う白熱した瞬間から、ひと息ついて立て直せる瞬間までが生み出されることになります。
AIヒーローにも似たようなシステムが用意されていて、いつ、どの程度の頻度で出撃できるか判断が行われます。AIヒーローの出撃は、ある意味ミニボスの登場のようにチャレンジが増した瞬間を生み出します。
AIの戦術レイヤーと戦略レイヤーに、シリーズに忠実なグラフィックとサウンド、数々の個性的なキャラクターたち、その他さまざまなゲームを構成する要素が加わった結果、プレイヤー一人一人の、すなわちあなただけの伝説のStar Warsの戦いを生み出すことが可能になっているのです。
他のゲーム全体と同じように、私たちのAI技術は常に進化しています。このページやEA Star Warsの公式ソーシャルチャンネル、フォーラムをこまめにチェックして最新情報をご確認ください。
「Star Wars バトルフロント II」制作の舞台裏にさらに興味があるなら、以下に挙げた記事もぜひご覧ください:
アナキン・スカイウォーカーを動かす
「Star Wars バトルフロント II」のコンセプトアート
「生きた世界」と「彼方での戦い」
ジオノーシスが生み出されるまで
ヒーローが生み出されるまで
イウォーク・ハントの制作舞台裏
–Daniel Steinholtz(TwitterでDanielをフォロー @dsteinholtz)
公式フォーラムやソーシャルチャンネルでコミュニティでのコミュニケーションにご参加ください。Twitter、Facebook、InstagramでのEA Star Warsのフォローもお忘れなく。
今すぐ登録して、「Star Wars バトルフロント II」の最新ニュース、アップデート、開発の舞台裏、限定オファーなどの各種コンテンツと、さらにEAニュース、製品、イベント、プロモーションを含む各種最新情報をメールで受け取ることもできます。