『NARUTO X BORUTO ナルティメットストームコネクションズ』ファン同士の「緩い繋がり」を促す7つの機能実装と、Azure PlayFabの活用術【GCC 2024】

2024.06.04
注目記事しくみをつくるゲームの舞台裏講演レポートネットワーク
この記事をシェア!
Twitter Facebook LINE B!
Twitter Facebook LINE B!

2024年4月5日に、ゲーム開発者向けカンファレンス「GAME CREATORS CONFERENCE ’24」が開催されました。

本稿では、忍道対戦アクションゲームである『NARUTO X BORUTO ナルティメットストームコネクションズ』(発売元:バンダイナムコエンターテインメント)において、幅広いファンがいる中、「プレイヤー同士の緩い繋がり」がどのような形で、そして「Azure PlayFab」をどのように活用して実装されたかについて、サイバーコネクトツーの栗林 利郎氏とクラウドクリエイティブスタジオの小田 洋平氏による講演をレポートします。

TEXT / HATA
EDIT / 田端 秀輝

目次

ファンが集まるための、7つの「緩いつながり」

『NARUTO X BORUTO ナルティメットストームコネクションズ』は、2023年11月にバンダイナムコエンターテインメントから発売された、アニメ「NARUTO –ナルト-」20周年を記念した対戦アクションゲーム。前作の『NARUTO -ナルト- 疾風伝 ナルティメットストーム4 ROAD TO BORUTO』から7年ぶりに発売された最新作で、対応プラットフォームはPS4/PS5/XboxOne/XboxSereisX/Nintendo Switchです。

登壇したのはサイバーコネクトツー リード/プラットフォーム・ネットワークセクションリーダー 栗林 利郎氏。本作で掲げられたコンセプトは「NARUTO -ナルト-」「BORUTO –ボルト-」のファンが集まる場所を作りたい、というもの。

ファンと言っても、アニメ「NARUTO -ナルト-」は20年以上の歴史がある作品のため、放送初期から見ている人もいれば、動画配信サービスで最近見始めた人もいるなどさまざまな層のファンが存在します。また、ゲームプレイについても、本シリーズをすべてプレイしてきた人から久々にプレイする人、普段はゲームをプレイしない人など多岐にわたります。これらの幅広いファンが本作に集まり、プレイヤー間で何らかの「緩い繋がり」を持てるようにしたいというのが、本作の開発の狙いだったとのこと。

栗林氏はこの「緩い繋がり」を3つのポイントに分けて掘り下げました。

  • シングルプレイだけれども他プレイヤーの存在を感じられる
  • 気になるプレイヤーを気軽に(承認不要で)フォローできる
  • 直接対戦はせずとも他のプレイヤーの存在を感じられる

これらを実現するために、本作ではゲーム内に7つのコミュニケーション要素を盛り込むことにしました。

  1. 「リアクション」と「アンケート」
  2. 「忍録帖」
  3. 「フォロー」と「プレイヤーログ」
  4. 対戦後の「ナイス送信」
  5. 「チャット」と「スタンプ」
  6. 「観戦エモート」
  7. 「忍戦線イベント」

1:「リアクション」「アンケート」

1つ目の「リアクション」と「アンケート」は、「ヒストリーモード」というシングルプレイのモードに関する要素です。このモードでは、数々のエピソードをプレイしながら『NARUTO –ナルト-』のストーリーを最初から最後まで追体験できます。

「リアクション」は、1つのエピソードをクリアした時に、プレイした感想を喜怒哀楽の感情を表したアイコンを使って投票するものです。

投票を行うと、他プレイヤーの投票結果を見ることができます。

投票すると投票結果が表示される(画像左)。また、エピソード選択場面でも上位のリアクションが表示されるようになっており、意識しなくても投票結果が目に入るようになっている(画像右)

「アンケート」は7章構成のヒストリーモードにて、各章の終わりでストーリーを振り返る「究極の2択」の問いかけです。こちらも投票後に他のプレイヤーの投票結果を見ることができるようになっています。

例えば第一章の終わりでは、「考えや生き方においてあなたがより共感を覚えた忍はどちらですか?」という、プレイヤーによって答えが分かれるような「究極の2択」が問いかけられる

「リアクション」「アンケート」で期待する効果としては、シングルプレイモードでも投票結果を見ることで他のプレイヤーの存在や考えを感じてもらう点や、「プレイヤーに自分ならどうするんだろう?」「自分に近いのはどちらだろう?」と考えて感情移入をしてもらう点が挙げられます。

他プレイヤーの回答結果を表示するには全プレイヤーの投票結果を共有する仕組みが必要で、投票結果の保存と定期的な集計を行う必要があるため、各プラットフォームの機能ではなく独自実装が行われています。

2:「忍録帖」

忍録帖」はプレイヤーの名前や戦績などが表示される、いわゆるプレイヤーカードです。対戦相手と忍録帖を交換したり、ランキングに載っている他プレイヤーの忍録帖を見たりすることができます。

前作では「忍識札」と呼ばれていた要素だが、本作の「忍録帖」はプレイヤーキャラクターの3Dモデルを表示したり、アクセサリーをつけたりといったカスタマイズが可能。キャラクターの使用率を表示されるので、プレイヤーの好きなキャラクターの傾向も見ることができる

「忍録帖」に期待したのは、デコレーションにより自分が好きなキャラクターをアピールする、他のプレイヤーの好きなキャラクターを知ったりすることで同じキャラクターを好きなプレイヤー同士で繋がるきっかけ作りにするという効果でした。

「忍録帖」の実装は各プラットフォームの機能で対応可能であり、また前作でも実装されていたこともあって対応は容易だったとのこと

3:「フォロー」「プレイヤーログ」

フォロー」は、他のプレイヤーをSNSのように気軽にフォローできる機能です。対戦後にワンボタンでフォローが可能で、「忍録帖」やランキング画面からもフォローができるようになっています。

他のプレイヤーをフォローすると、「プレイヤーログ」、つまりゲーム内でフォローしたプレイヤーの近況が表示されます。フォローしたプレイヤーだけのランキングを見ることもできます。

フォローすると画像左の「カジュアルマッチに勝利しました(56分前)」といったように、フォローしたプレイヤーの近況がヘッドライン方式で表示される。また、画像右のように、フォローしたプレイヤーだけを集めたランキングも表示できる

本機能は、相手の承認が必要でハードルが高い「プラットフォームのフレンドになる」行為よりも気軽なフォローであり、プレイヤー同士がつながるまでのハードルを下げることが意識されています。

また、「プレイヤーログ」には直接対戦はしなくても他のプレイヤーがゲームをプレイしていることを感じてもらう狙いもあります。

「フォロー」「プレイヤーログ」機能の実装においてはフォローの情報の共有や、行動記録のアップロード・ダウンロードの仕組みが必要で、各プラットフォーム機能では実装できないため独自実装が行われたそうです。

4:対戦後の「ナイス」送信

プレイヤーが直接交流する要素として、ネットワーク対戦後に対戦相手に「ナイス」が送信できるシステムも実装。「ナイス」は何回も送ることができ、送った回数に応じて拍手もたくさん表示されるほか、受け取った相手は若干のゲーム内通貨が手に入り、「忍録帖」にもその数が記録されます。

対戦後に拍手の形をしたアイコンが表示され、ボタンを押すことでナイスを贈ることができる

「ナイス」送信機能について、対戦相手同士で気軽な交流ができるようにという狙いがあります。相手に「ナイス」を送信するだけの処理のため、実装面のハードルも低かったとのこと。

5:「チャット」「スタンプ」

今作で追加した新要素の「チャット」「スタンプ」は、マッチング後に対戦が始まるまでの時間や多人数が集まるロビーで使用できます。挨拶だけでなく、キャラクターの画像とセリフを組み合わせたスタンプを送ることもでき、作中の掛け合いの再現も可能です。

こちらも「ナイス」と同様に、送信された事だけが分かればよいので実装ハードルは低かったとのこと。対戦以外でも相手とのコミュニケーションができるように、また作中のセリフやキャラクターの画像を使うことでファンが交流しやすい環境を作ることに寄与しています。

6:観戦エモート

本作では最大8人のプレイヤーが参加し、そのうちの2人が対戦、他プレイヤーは観戦をする「カスタムマッチ」モードがあります。本作では観戦中に「エモート」という感情を表したアイコンを送って対戦を応援できるようになっています。

画像左のように観戦者がパレットを開き、エモートを送信すると、画像右のように参加者に送ったエモートが全員の画面に表示される

従来は見るだけだった観戦者に対して主体的な行動が促せる点や、激しい攻防の際にエモートが一斉に送られたり、同じエモートが偶然に揃ったりして、プレイヤー同士で気持ちを共有して盛り上がるといった効果があります。

実装については、エモートが送信されていることをプレイヤー間で共有できれば実現できるため、各プラットフォームの機能を用いて問題なく実現できたとのことです。

7:「忍戦線イベント」

忍戦線イベント」は期間限定で開催されるオンラインイベントで、プレイヤーは2つの陣営に別れてポイントを獲得し勝利を目指すというものです。

通常とは異なるルールでゲームが行われるため、力量差のあるプレイヤーも勝利の可能性があり、また相手に勝てなくてもポイントを稼ぐことで自陣営に貢献することもできる仕組みになっています。

指示を達成することで、プレイヤーにゲージが溜まる「ターゲットマッチ」も用意。ゲージが溜まると一定時間パワーアップし対戦が有利になる

「忍戦線イベント」で期待する効果として、陣営を選ぶ際のお題をどちらを選ぶか迷うようなものにすることでゲーム外でも話題にして楽しんでほしいというものがあります。また、「ターゲットマッチ」機能により幅広いプレイヤーが気軽に参加できるように、そして定期的なイベント開催によって本作を長く遊んでもらえるようにということが挙げられました。

「忍戦線」イベントの運営にあたってはプレイヤーの獲得ポイントを保存、集計する必要がありました。これはプラットフォームのサーバーで部分的には対応可能ですが、集計するためにはプラットフォームごとに個別の実装が必要となり、ハードルが高かったとのこと。

「緩い繋がり」を実装するための「PlayFab」活用術

各プラットフォームの機能だけでは実現が難しい箇所については、マイクロソフトが提供するバックエンドプラットフォーム「Azure PlayFab」(以下、「PlayFab」が採用されています。

続いて登壇したのはクラウドクリエイティブスタジオのディレクター 小田 洋平氏。「PlayFab」を用いた実装について解説が行われました。

「PlayFab」で使用した機能として、小田氏は「ユーザー認証、データ保持」「リーダーボード機能」「ほぼすべてのプラットフォームに対応」「KPI分析」といった点を挙げています。

続いて小田氏は独自サーバーで運用した場合とPlayFabを採用した場合の比較を行いました。独自サーバーの場合は、要件やニーズに合わせて開発するため拡張性はあるものの、自社のノウハウやライブラリを使っても開発工数が高くなりがちになります。一方で「PlayFab」を使用すると、既にある機能を利用するため開発工数は抑えることができるが、拡張性はほぼないと、それぞれ一長一短があるとのことです。

このため、実装したいゲームの企画を「PlayFab」サービス機能内にどのように収めるか、栗林氏と相談しながら開発を行ったそうです。

ここからは実装に課題があった「リアクション」「アンケート」、「フォロー」「プレイヤーログ」、「忍戦線イベント」、そして「運営からのお知らせ」の実装方法について見ていきます。

「リアクション」「アンケート」の実装

「リアクション」「アンケート」に関しては、「PlayFab」のランキング機能を介してプレイヤーがどちらに投票したかを投稿、集計では「PlayFab」のクライアント側APIとサーバー側APIを用いて各プレイヤーの投票を集計し、その結果を反映させています。

集計処理にはAzure Funcitonsを使用しており、「PlayFab」の拡張性を活かし極力ミニマムな外部実装で済ませた

本件ではプレイヤーのアクションに応じて「PlayFab」のAPIを使用しますが、そこで回数制限があるAPIの呼び出しをどう少なくするかという問題点が挙がりました。また、API通信の待ち時間や、オフラインプレイ時にどのように集計し結果を表示するかといった点も解決する必要があります。

この対策として、本作ではローカルで「PlayFab」にあるデータをキャッシュし、表示をするという方法を採用しました。この方法ではリアルタイムに結果を表示することはできませんが、投票データは集計作業が発生するため、許容できる範囲であるとしています。

収集したデータがどのように格納されるかについても解説がありました。ウェブ上で確認できる「PlayFab」のダッシュボードにはKeyとValueという項目があります。Keyはいわゆるインデックスに該当します。「リアクション」「アンケート」ではIDごとのKeyを作成し、Valueの箇所に集計結果データを格納しています。

ゲーム画面では5つのリアクションの集計結果をパーセンテージで表示している

「フォロー」の実装

「フォロー/フォロワー」は、「PlayFab」のフレンド機能を使用して実装しています。しかし、フレンド機能だけでは相手が自分をフォローをしているかが分からないため、フレンド機能にあるタグの「誰が誰をフォローしている(相手から見ればフォロワーである)」というステータスを参照することで対処しています。

問題点として、「リアクション」「アンケート」と同様に「PlayFab」のAPIには呼び出し回数制限があることが挙げられています。また、「PlayFab」のフレンド機能は無制限に登録ができるため、無制限にフォローを行った際にフォローのみが表示されるランキングの閲覧に支障が生じてしまうといった点も挙げられます。これらの対策として、「フォロー/フォロワー」は100人までという制限を設けたとのこと。

フォローはランキング画面でもすることができるため、ランカーがフォローされやすくなってしまう可能性があり、フォロー数に偏りが生じてしまうため、「フォロー/フォロワー」の人数制限を行った

「PlayFab」ダッシュボード上では、フォローしている相手はFollow、フォローされている相手はFollower、相互にフォローしている場合はBothとタグに表示される

ゲーム中のアイコンは対応するように、フォローするとオレンジ、フォローされているとさらに水色の表示が付くようになっている

「プレイヤーログ」の実装

「プレイヤーログ」については、プレイヤーが「PlayFab」に行動ログを送り、相手がログを受け取るというフローのため、「PlayFab」標準機能のみで実装可能でした。ただ、行動ログの表示が増えると保存するデータ量が増えて料金が発生するため、自身のログ投稿までは5件までにするという制限対策を取ったとのこと。

「プレイヤーログ」については、Keyにプレイヤーのログを示すキーワードを入れ、Valueには誰がどういった行動を何時に行ったかを格納している

「忍戦線イベント」の実装

「忍戦線イベント」については、集計やゲームから呼び出すAPIについては「リアクション」「アンケート」と同じ設計にしたそうです。ただし、イベント実施のタイムスケジュールの制御や複数イベントの実施にも耐え得る設計が必要になり、マスターデータ(静的データ)の管理が必要になるという点が異なります。

対策としては、「PlayFab」側のタイトルデータに必要な情報を格納しダウンロードして利用する形を取り、ゲーム側はその情報によって振る舞いが変わるようにしたそうです。

ランキングには登録制限があったそうだが、マイクロソフトに協力を依頼し、この制限もクリアしたとのこと

ValueはJson形式で保存し、投票数や部門のポイントを分かりやすく残せるようにした

「運営からのお知らせ」の実装

7つの要素とは別に、「運営のお知らせ」の実装についても解説がありました。

家庭用ゲームが多言語対応するのはほぼ必須となっており、本作の「運営のお知らせ」も日本語と英語に対応しています。「PlayFab」にはお知らせ機能が標準で用意されており、多言語に対応する場合も「PlayFab」上で対応言語を登録すれば対応できるそうです。

「緩い繋がり」を促す要素の実装の結果は

講演の最後に、栗林氏から本セッションのまとめの解説が行われました。

栗林氏は、本作で「プレイヤー同士の緩い繋がり」の実現方法を検討した結果、「PlayFab」という選択肢にたどり着き、やりたいことを対応する「PlayFab」の機能に落とし込んだことで目的を実現できたことや、プラットフォーム個別の実装を避けることができたこと、現実的なコストや期間でマルチプラットフォームの対応をすることができたと成果について述べました。

また、「忍戦線イベント」についてはまだ始まったばかりで、まずはプレイヤーに楽しんでもらい、話題にしてもらい、そして多くの人に興味を持ってもらえるようにしたいとのこと。実際にSNSで陣営ごとのハッシュタグが作られるなど盛り上がりが見られることにも触れ、今後もプレイヤーからフィードバックを受けて本作をより良いものにしていこうと考えていると述べ、本講演を締めました。

『NARUTO X BORUTO ナルティメットストームコネクションズ』「NARUTO X BORUTO ナルティメットストームコネクションズ」での「プレイヤー同士の緩い繋がり」の実現について ‐ GAME CREATORS CONFERENCE
HATA

5歳の頃、実家喫茶店のテーブル筐体に触れてゲームライフが始まる。2000年代にノベルゲーム開発を行い、異業種からゲーム業界に。ゲームメディアで記事執筆を行いながらゲーム開発にも従事する。

関連記事

トイロジック、UE4のRPC関数をベースにしたプレイヤー同期処理を解説。大規模オンラインゲーム『FOAMSTARS』に導入した管理の仕組み
2024.04.26
128人以上のオンラインマルチプレイを実現するUnityのデモプロジェクト「Megacity Metro」、GitHubで公開
2024.03.22
Epic Games Japan、2023/12/14-15に開催された「EOS/UE5 Deep Dive 2023」の講演資料を公開
2023.12.27
『地球防衛軍6』のオンラインプレイに採用された「Epic Online Services」。たった1か月で完了した内製エンジンへの導入について開発者が語る【EOS Deep Dive 2023】
2023.12.27
DeNA、セキュリティ部が発見したゲームの脆弱性を集計・分類したブログ記事を公開。原因と対策にも言及
2023.01.17
コロプラ、プレイヤーが分散しやすいマッチング環境を改善する方法を解説した記事を公開
2022.12.26

注目記事ランキング

2024.10.08 - 2024.10.15
VIEW MORE

連載・特集ピックアップ

イベントカレンダー

VIEW MORE

今日の用語

レベル(Level)
レベル
  1. ゲーム開発において、位置情報を持つオブジェクトが配置されている地形。
  2. RPGなどのゲームにおいて、キャラクターの成長度合いを示す数値。レベルアップなど。
VIEW MORE

Twitterで最新情報を
チェック!