格闘ゲームを愛する3名の登壇者紹介
登壇したのはプランナーの薮下氏、プログラマの岩本 卓也氏、ローカライズディレクターのアンドリュー・アルフォンソ氏の3名。全員が格闘ゲームを好み、本講演のテーマである実況機能の実装に関しては格闘ゲームや大会等の実況がどういったものかをしっかりと理解した上で担当しているそうです。
ローカライズディレクター アンドリュー・アルフォンソ氏
実況機能を導入しようとしたきっかけと、目指されたゴール
講演は、プランナーの薮下氏による実況機能の概要説明から始まりました。『ストリートファイター6』の実況機能は、プレイヤーの試合の様子を状況にあわせたボイスと字幕で自動的に実況してくれるシステムです。これによって、誰でもeスポーツの大会で実況されているような体験を得ることができます。
なぜ開発チームは『ストリートファイター6』に実況機能を導入しようとしたのでしょうか?きっかけは、格闘ゲームは難しそうでとっつきづらいという印象に対する払拭したいという想いからでした。
未プレイのユーザーが感じる「難しそうでとっつきづらそう」という点について、同社は以下のように分析しています。
- 画面で何が起こっているか分かりづらい
- 駆け引きのポイントやテクニックが分かりづらい
- 1対1で運が絡まないゲーム性なのでストイックに見える
しかし、格闘ゲームは遊んでみると面白くて奥深いものであり、このような印象のまま敬遠されるのはもったいないという開発チームの意思から、本作ではシリーズ初となる実況機能の導入が検討されました。
こうした背景から、実況機能が目指すべきゴールはマニアックな解説ではなく「格闘ゲームの面白さを知ってもらうための足がかり」と定め、「面白さを伝える」役割として以下のような3点を決めました。
- 今何が起こっているかを伝える
- 盛り上がるポイントを伝える
- リアル大会の雰囲気、緊張感を伝える
「乾坤一擲ジャストパリィ!」という決め台詞を交えた熱い実況が、何が起こっているかを伝えると同時に、ここが試合の盛り上がりのポイントであることも伝えている
ストリートファイター6における実況システムの概要
それでは、『ストリートファイター6』の面白さを伝えるための実況システムがどのように実装されているかを見ていきましょう。
実況システムの概要
まず、ゲーム中の「何を見て」セリフを発するのかの「状況」を事前に設定します。例えば「投げが決まった」という状況は、「通常投げ」というアクションが「通常ヒット」した時という条件を設定し、その時に「投げる!」といったセリフを発すると決めています。
実際のプレイ中に、事前に設定した状況とプレイ中の状況が一致したら、対象となるセリフ群を「話すことができるセリフ」として内部的にマークしておきます(この時点ではまだ再生しません)。そして、毎フレーム(※)マークしたセリフ群の各セリフに対して優先度を設定し、最も優先度の高いセリフを選んで再生する仕組みとなります。
※『ストリートファイター6』など多くの格闘ゲームでは、秒間60フレーム(1フレーム=約0.017秒)で処理されている
事前に状況に応じたセリフを設定し、それがプレイ状況にマッチしているかをチェックした上で優先度の高いセリフを選んで再生する
セリフの条件数と条件分け
セリフの条件数やセリフ自体の数を決めるためには、開発過程において多くの要素を検討する必要がありました。
セリフの条件数を定めるために、まずストリートファイターの既存シリーズで実況者がよく反応するポイントを洗い出しました。「投げやジャンプ攻撃が決まった時」「体力や残り時間が少ない時」といった、ストリートファイターの根本的な駆け引きや動作の部分など、従来から変わらないであろう要素がこれにあたります。
次に、『ストリートファイター6』の新システムに対して実況者が反応しそうなポイントを洗い出していきますが、これはリリース前ゆえに「まだこの世で誰も実況したことがない」ものであり、予想をしなければいけないという難易度が高いものでした。洗い出しにあたり、絶対変わらないバトルコンセプトを深く理解したうえで、日々のテストプレイで想像しながら条件を決めつつ、さらに仕様変更にも追従する柔軟さが求められました。
実況セリフの条件を決めるには、既存シリーズの実況からの洗い出しだけでなく、新システムに反応を予想することも必要であった。イメージしやすいベース部分を先に固め、新システムの条件模索に時間をかけた
セリフの条件分けについて、例えば「通常投げ」という1つのアクションに対しても「空振り」「通常ヒット」「カウンターヒット」「投げ抜け」など複数の候補が用意されています。同時に、お互いのプレイヤーの体力状況によってもセリフが細かく変化していきます。その結果、絞り込んだ上であっても、必要な条件数はリリース時点で350以上に達しました。
セリフの数の決定
各条件に紐づくセリフは、基本的に流用はせず、その条件専用の音声素材が用意されています。複数の条件で同じセリフが使われた場合、同じセリフが頻発することになり、プレイヤーの飽きに繋がってしまうからです。1つの条件を満たすセリフの総数はバラバラで、重要なシーンや頻繁に起こるシーンではセリフも多めに用意されています。
最終的なセリフ数の決定には「テンションシステム」という独自に用意した仕組みが大きく影響しています。
盛り上がるリアルな実況を実現する「テンションシステム」
テンションシステムは、試合の状況に合わせて「言葉の強さ」をコントロールする仕組みです。実況の勢いに応じたセリフを、試合の状況に応じて変動する「テンション値」という内部パラメーターに合わせて選択します。
同じ「投げ」という条件であっても、試合の状況に応じて「テンション値」が変化し、それにあわせてセリフも変化する。試合序盤では「投げ。」という落ち着いたトーンのセリフ、ファイナルラウンドの接戦時には「投げる!!!」という高いテンションのセリフが選ばれる
体力差・残り体力・残り時間でテンション係数を決定
どのセリフが選ばれるかを決定するテンション値を定めるために、テンション係数が設定されています。
テンション値は、ラウンドごとに定められたレンジ内で変動するテンション係数を元に算出される
開発当初、テンション係数は、体力が少ない方のプレイヤーの残り体力と両プレイヤーの体力差に基づいて計算されるように設定しました。残り体力が少ないほど、またプレイヤー1と2の体力差が無いほど、テンション係数は高くなります。
残体力変数を0.0~1.0、体力差変数を0.5~1.0として、テンション係数=体力差変数×残体力変数という計算式で設定
ラウンド序盤では残体力変数がほぼ0のためにテンション係数は低くなるが、プレイが進み残り体力が減ることで残体力変数が上がりテンション係数も上がっていく
このシステムによって、試合序盤の落ち着いたテンションが少しずつ上がっていき、試合の終盤では高いテンションになっていることをシステムとして検出できます。特に両者とも残り体力が少なく試合の決着が付きそうな状況ではテンション係数が最も上がり、デッドヒート感を生み出します。
しかし、開発途中でそれだけでは何かが足りないと気付き、各ラウンドの残り時間も考慮に入れることにしました。残り時間30秒から0秒にかけて上昇していく残時間変数を設定し、残体力変数と残時間変数のどちらか高い数値を採用することにしました。これにより、残り時間が短くなった時のデッドヒート感を演出できるようになりました。
最終的に、テンション係数は以下の計算式で求められるように設定されました。
テンション係数=体力差変数×(※残体力変数 or 残時間変数)
※どちらか一方の高い数値を採用
最終的にテンション係数は「残り体力・体力差・残り時間」の3要素を参照。試合進行によって必然的に残り体力や残り時間は減っていくので、この2つは高いほうを採用するようにした
各ラウンドでテンション値が動けるレンジを定める
本作ではラウンドごとに「テンション値が動けるレンジ」が設定されています。ファーストラウンドでは0.5~2.9、ファイナルラウンドでは3~5など範囲を限定することで、意図しないラウンドでテンション値が過剰に上がってしまう事を防ぐ意図があります。
2ラウンド先取の場合、レンジは「ファーストラウンド」「どちらかがマッチポイント」「(両者とも1ラウンドずつ取って)ファイナルラウンド」の3種類(※)。ファーストラウンドでテンションが上がりすぎないように、必ず決着が付くファイナルラウンドではテンションが上がるように値の範囲がコントロールされている
※ラウンド数はゲーム内で設定することができ、3ラウンド先取の場合では「1-0」「0-1」「1-1」といった中間ラウンドが発生する
5段階のセリフを用意して、テンション値に近いものを呼び出す
セリフはテンションに応じた5段階が用意されており、その時のテンション値に近いものが選ばれます。小数点レベルで変動するテンション値に対して呼び出せる範囲(±0.8)を設定し、近い方の整数値に該当するセリフが呼び出されます。
同じラウンド決着時のセリフでも、テンション値1の「きっちりとどめまで!安定している」から、テンション値5の「まさか!足りてしまうのかー!」まで、テンション値に応じた5段階のセリフが用意されています。
テンション値が3.4だった場合、呼び出すことができる範囲はテンション値の±0.8である2.6~4.2であり、テンション3または4のセリフが候補になる。テンション値が3.4なので、より近いテンション3のセリフ「しっかり倒し切れるコンボ選択!」が採用される
以上の結果、最終的な台本のセリフ数は約4,000セリフとなりました。
約4,000セリフの内訳は汎用セリフが約80%、キャラクター固有セリフが20%。格闘ゲームでは「波動拳」「昇竜拳」「ソニックブーム」などキャラクター固有の技名が多数存在する
これだけのセリフ量の調整は、集計ツールや開発用のデバッグ機能で効率化を行っても時間がかかるため人力によるトライ&エラーが必要でした。セリフの出現バランス調整は実際の格闘ゲームの大会実況をイメージしつつ、感覚を頼りに設定するしかありません。『ストリートファイター6』開発の実況ユニットは企画・プログラマー・ローカライズ各1名の少人数ユニットであったため、トライ&エラーを早いサイクルで回すことができ、量産までに長い時間をかけつつクオリティを上げて形にすることができたとのこと。
処理負荷軽減やロールバックに関する課題と対策
ここで発表はプログラマの岩本氏にバトンタッチ。実況システムを実装する過程で、「物量と処理負荷面」と「バトルのロールバック/ロールフォワード」に関する課題と解決策について解説がありました。
課題1:物量と処理負荷面の課題
物量と処理負荷について、60FPSを担保しつつ4,000程のセリフ制御をリアルタイムで行う必要がありましたが、仮組みの段階でも負荷が大きく、60FPSを達成できない状態でした。また、テンションシステムや細かいディレイなどの制作が進むにつれて、複雑な仕様による負荷上昇も見込まれました。
課題2:バトルのロールバック/ロールフォワードについての課題
『ストリートファイター6』ではバトル中の通信同期制御として、特定フレームにバトルの巻き戻し(ロールバック)をして、相手から届いた入力情報をもとに早回し(ロールフォワード)をする制御が行われています。この制御によって「実況システムが話した内容が巻き戻りによって嘘になってしまう」という問題が発生しました。
この2点の課題に対して、実況開発ユニットは2つの解決策を用いました。
解決策1:約0.3秒過去のフレームを参照して実況する
ゲーム内ではバトル同期の仕組みとして、ロールバックを実現するために過去数十フレームの情報を保持しています。実況システムは、そのさらに過去のフレームを参照するようにしました。
ロールバックが発生する範囲より前、約0.3秒過去の確定した情報を参照してセリフを決定。なお、上記のゲージを用いたフレーム数表示はゲーム内のトレーニングモードなどでも実際に用いられており、『ストリートファイター6』ユーザーには馴染みが深い
また、過去フレームを参照することにより、フレーム内のバトルの更新処理と実況システムの更新処理の順序を意識することなく、両者を並列更新することが可能になりました。
実況システムの更新処理について、すでに完成している情報を参照できるので、現在フレームで行われているバトルの更新処理を待つ必要がなくなった
さらに、過去フレームを参照することで約0.3秒のディレイでセリフが再生することが、よりリアルな実況へのクオリティアップにつながりました。実際の実況でもプレイを見てから発声しているので、結果的に0.3秒の遅れがリアリティへとつながったわけです。
解決策2:テンションシステムを用いた負荷軽減
テンションシステムには、現在のテンションと近いテンションのセリフしか選ばないという仕様があります。これを利用して、現在再生し得るセリフしか更新しないように制御することで、セリフ更新対象数を約40%に削減できました。ただし、そのためにはセリフ数の分布をテンションごとに均等に分ける必要があり、企画担当の薮下氏がシステムを考慮してセリフ数をコントロールすることで対応しています。
実況システム実装の課題を解決する中で、「少しならセリフ再生が遅れても挙動に違和感がない」ことを利用したことにより「ロールバック同期形式と実況システムは、実は相性が良い」という気付きがあったと岩本氏は言います。また、「システムの動作仕様はシンプルだが、セリフの配分や保守性の維持など物量のコントロールをする上で、バトルと実況のシステムを深く理解した企画担当が必須である」とも述べ、今後実況システムを実装する開発者へのアドバイスとしました。
格闘ゲーム特有の実況者のキャスティングや収録時の工夫
ここで改めて企画担当の薮下氏が登壇し、本作での実況者の選定について解説が行われました。冒頭に説明があったように、実況機能が目指すゴールは「格闘ゲームの面白さを知ってもらう足がかり」であり、以下の3つの「伝える」役割があります。
- 今何が起こっているかを伝える
- 盛り上がるポイントを伝える
- リアル大会の雰囲気、緊張感を伝える
この3つの「伝える」を満たすためにリアル大会のような「生の声」をゲームに取り入れたく、以下の3点を実況者選定にあたっての必要条件としました。
- 膨大なセリフ数にも耐えうる、どのような場面で実況しても違和感がない
- 緩急を使った盛り上がりを演出できる
- 現役の実況者として活躍し、認知されている
日本語版の実況者の選定と収録時の考え方
これらの条件を元に、日本語版の実況者としてアール氏、平岩康佑氏の2名が選ばれました。
アール氏はストリートファイターシリーズを中心に知名度が高く「いってみましょー!」「何を思う?」「○○○一閃!」など特徴的な言い回しでも知られる。『ストリートファイター6』開発初期からオファーを受け、実況担当だけでなく本システムの開発・台本作成などにも携わっている。実況紹介トレーラーはこちら
平岩康佑氏は2011年に朝日放送にアナウンサーとして入社、2018年に退社後eスポーツキャスターへと転身、多数のeスポーツ実況やMCを務める。安定感のある喋りと的確な状況表現で、格闘ゲームの垣根を越えて多くの層に『ストリートファイター6』を知ってもらうために抜擢された。実況紹介トレーラーはこちら
収録時には台本の内容を厳守せず、大きく意味が外れなければ実況者の口から生まれた自然な言葉を優先的に採用するようにしました。また、多少聞き取りづらい音声でも、ライブ感のある言葉の勢いを重視してOKにした内容も多くありました。
このほかの工夫として、セリフの内容としてプレイヤーを下げるような否定はもちろん、ミスを指摘するようなセリフは絶対に言わないよう徹底をしています。これは、あえて特定の技を受けてリスクを下げる戦術もあることから「何をもってミスとするか」の検知は難しく、実況で言わせる必要がないと判断したからです。
セリフのテンション分け
当初はテンションを3段階に分けていましたが、突然テンションが上がるなどのグラデーションに対して解像度が足りないことが分かり、最終的には5段階のセリフが用意されることになりました。
落ち着いていて抑揚も抑え目な状態から、テンションが上がるにつれて速度・語気・速度などが高まり、最大級に達すると興奮や叫びを伴う
例として講演上で再生された「ジャストパリィ」(※)時のセリフは、テンション1~5で以下のとおりです。
※2フレーム(約0.03秒)以内に相手の打撃を受け止めることで有利な反撃ができる当て身技。リスクも大きいがリターンも大きく、実際の大会でもこれが決まると大いに盛り上がる
テンション1「この攻撃はジャストで止めた。さあ、ここからどう動く?」
↓
テンション2「うまくかみ合わせて、ここからどうする?」
↓
テンション3「このジャストパリィで流れは変わるかー!?」
↓
テンション4「ジャストが通った! 反撃が始まる!」
↓
テンション5「うおおジャストパリィ! うますぎだろおお!!」
完全オリジナル台本を作成した英語版へのローカライズ
英語版実況システムのキャスティング
北米市場も重視している本作では、英語版の実況音声も用意されています。ローカライズ担当のアルフォンソ氏からは、英語版実況者のキャスティングにて重視した点について説明がありました。
- 4,000ものバラエティに富んだセリフに対応できる大規模大会の経験者
- 収録に耐えうる体力的にも話題的にも、発売当初だけでなく数年後のアップデートでも通用しそうな人
- Capcom eSports部門とのシナジー効果を狙って、Capcom Pro Tour(※)のレギュラーキャスター
- 日本語版キャスティングと遜色ない
※:通称「CPT」。カプコンeスポーツ部門が主催するストリートファイターシリーズの公式大会。年間を通してのオフラインプレミア(EVO等の大規模大会)・オンラインプレミア(地域別一発トーナメント)・ワールドウォーリアー(地域別ポイント&決勝トーナメント形式)が開催される。これらの大会を勝ち抜いた選手たちによって争われるCapcom Cupで、その年の最強プレイヤーが決定する
その結果、Jeremy “Vicious” Lopez氏とSteve “TastySteve” Scott氏が選ばれました。
ベテランで喉が強く実況の質が高く、Capcom Pro Tourにも欠かせない存在であるVicious氏。実況紹介トレーラーはこちら
他社タイトルの実況でも活躍しVicious氏とも相性がいいTastySteve氏。実況紹介トレーラーはこちら
英語版の台本づくり
日本語版で収録されたセリフをそのまま英語に翻訳するだけでは違和感があります。そこで、意訳された完全オリジナルの英語版台本が作成されることになりました。
アール氏の「パニッシュカウンター 一閃!」「上はケアしている!!!」などの日本語をそのまま訳しても英語では通じない
日本の格闘ゲーム用語やスラングの一部は、海外では使われていません。例えばキャラクター・リュウの技「鳩尾砕き」を日本では「大ゴス」と呼ぶことがありますが、海外ではそれに相当する言葉はありません。逆に波動拳・真空波動拳という技に対しては「plasma」という英語のスラングがあります。
さらに英語版キャスターにも特徴や名言があるため、これらを活かして海外の実況の雰囲気をそのまま再現する完全オリジナルの台本が作成されました。
日本語版では素直に技名を使っている場合も、英語版では大胆な意訳や言い換えが行われている場合がある
さらに収録時には、以下のような細やかな工夫も施されました。
- 日本語版と尺を合わせるのが難しいため、0.5秒以内のセーフゾーンを設定
- アクターの喉をケアして低いテンションのセリフから収録
- セリフの自然なつながりを意識したブレスやPre-Life(セリフの前に入れる「ああ!」「えー」等のリアクション)を挿入
ほぼ狙い通りと言えたリリース後のユーザーからの反応
最後に薮下氏が改めて登壇。リリース後のユーザーの反応は、おおむね狙い通りの反応であったと述べました。
実況で技名や固有名詞を呼ぶことは、アップデートでキャラクターが追加されるたびに新規収録を行う必要があるなど、開発上の負担も大きいです。しかし、ユーザーからの反応を見るに、そのリスクを負ってでもプレイヤーに「自分の操作に反応しているという感覚を与え、没入感を上げる」価値はあったということでした。
「これ」「それ」といった曖昧な指示語は避け、対象を明確に示したほうがよいとアドバイスも
ネガティブな反応としては、「セリフの中身が薄い」といった内容もありました。しかし、これは対戦ゲームにおける高度な駆け引きは環境や時間によって変化する、いわゆる「攻略が進む」「メタが回る」といった現象があるため、間違った実況にならないよう最初から詳細には言及しないと決めていたそうです。
高度な駆け引きには踏み込めなくても、実況によって「格闘ゲームをあまり知らない人にも面白さを伝える」という当初の目標はクリアできたと薮下氏は評価をしました。
さらにユーザーからの反応から、新たに発見した点もいくつかありました。例えば、プレイヤーの行動や意識を完全に分析できていなくても、「セリフは決めつけを入れた方が良い」といったケースもあるとのこと。
プレイヤーが実際には相手のジャンプ攻撃を警戒した上でK.O.できたかは不明だが、プレイヤーは褒められて嬉しいと感じることが多い
また、当初はゲーム配信動画との関係について、「ゲーム内の自動実況と配信者の喋りが被るなどして相性が悪いのでは?」と予想していました。しかし実際に稼働してみると、配信者が集中してプレイしている時のつなぎとしての使用や、自動実況をネタにしたトークや弄りなども見られ、「意外にもゲーム配信文化と相性がよいのでは」という感触を得たようです。
実況機能を導入した結果、格闘ゲームの難しそうな印象をある程度和らげることに貢献でき、実際のキャスターを起用することでプロモーション段階でも大きな反響があり、SNSでのリアクションなどFGC(Fighting Game Community、格闘ゲームコミュニティ)を中心とした訴求力も生まれました。
薮下氏は最後に、自動実況システムの導入にあたって「制作スタート時の方向性の決定とセリフ数の見積もりが重要である」とまとめました。セリフ再生の条件はいくらでも用意できてしまうため、方向性をもとに取捨選択を行うべきであると語り、講演を締めくくりました。
『ストリートファイター6』 公式サイト『ストリートファイター6』対戦を熱く盛り上げる自動実況機能の取り組み - CEDEC2023
ゲーム会社で16年間、マニュアル・コピー・シナリオとライター職を続けて現在フリーライターとして活動中。 ゲーム以外ではパチスロ・アニメ・麻雀などが好きで、パチスロでは他媒体でも記事を執筆しています。 SEO検定1級(全日本SEO協会)、日本語検定 準1級&2級(日本語検定委員会)、DTPエキスパート・マイスター(JAGAT)など。