“ドラゴンクエストXの舞台裏”サーバ・データベース開発のプロが語る、数十万人がいっしょに遊べるゲームができるまで【CEDEC 2012】
ゲーム Wii ニュース●数十万人の冒険者を支える“バックエンド”とは
2012年8月20日~22日、パシフィコ横浜にて開催されている、日本最大のコンピュータエンターテインメント開発者向けカンファレンス“CEDEC2012”。3日目の2012年8月22日に行われた、“ドラゴンクエストXの舞台裏”と題したセッションをリポートしよう。
非常に胸躍るタイトルが付けられたこのセッション。CEDECに訪れたクリエイターたちの興味も高く、立ち見どころか、会場に入りきらないほどの多くの聴衆が詰めかけた。スピーカーは、スクウェア・エニックス開発部 プログラマの森山朋輝氏。森山氏は、「サーバサイドのマニアックなテーマなので、まさかこれほど多くの方が集まるとは……」と驚いた様子を見せつつも、極めて興味深い講演を行ってくれた。
セッションのテーマは、“ドラゴンクエストXのサーバシステム概要”だ。ご存じの通り、『ドラゴンクエストX 目覚めし五つの種族 オンライン』(以下、『ドラゴンクエストX』)は、2012年8月2日よりサービスがスタート。『ドラゴンクエスト』シリーズのナンバリングタイトル最新作とあって、国内MMORPGの歴史を塗り替えるほどのゲームファンがソフトを購入し、日夜多くのプレイヤーが冒険を楽しんでいる。このセッションでは、本作の運営を支えるサーバシステムのうち、とくに“バックエンド”と呼ばれる、データベース関連の技術に関する講演が行われた。
講演の最初に、まず森山氏が自己紹介を行った。森山氏は、大学を卒業後、日本オラクルを経て、2006年にスクウェア・エニックスに入社。日本オラクル時代に培った技術を活かし、モバイル事業部でサーバプログラマー、Web、課金システム、ゲームサーバの開発などを手掛けた後、『ドラゴンクエストX』開発チームの一員となり、サーバ関連の開発を担当することとなる。森山氏によると、「ときどき『ファイナルファンタジーXIV』のお手伝いをしたりもしています」とのことで、まさにサーバ、データベース関連技術のスペシャリストというわけだ。
●「同じゲームなのにいっしょに遊べないのはダメ!」
森山氏は、本題のバックエンドの話に入るまえに、まずサーバの構成について説明。
【1】ロビー
いわゆる認証、ログインサーバにあたるもので、『ドラゴンクエストX』の場合は“冒険の書”の作成、削除などを管理する。
【2】ゲームサーバ
モンスターを動かしたり、イベントを制御したりと、ゲーム本体を担当する。実際には、役割の違うゲームサーバが数種類存在する。
【3】バックエンド
データベース+キャッシュサーバで構成される。本セッションのテーマ。
【4】Web
ゲーム内データと連動するWebサイト“目覚めし冒険者の広場”(【コチラ】)。自分やほかのプレイヤーのデータを参照したり、コミュニケーションを取ったりすることが可能。これらのデータもバックエンドを経由している。
森山氏は、上記のように、サーバシステムを構成する基本的な要素は一般的なオンラインゲームと同様だとしつつ、バックエンドの構成には『ドラゴンクエストX』ならではの特徴があるのだと語る。それは、『ドラゴンクエストX』の場合、プレイするサーバ(ワールド)をプレイヤーが任意に選択できることと関係がある。
MMOに限らず多くのオンラインゲームの場合、独立したサーバセットを複数用意する方式を取っている。これには、「作品がヒットして人が増えたら、その都度サーバセットを増やして対応することができます」(森山氏)と、低リスクで拡張を行えるメリットがあるという。
しかし『ドラゴンクエストX』の場合。ゲームサーバは任意に増やすことができるシステムになっているが、データベースはひとつで、データを一ヵ所で一元管理する方式を取っている。この方式を取った理由とは、前者の方式のデメリットの部分、つまり「違うデータベースにデータがあるため、どうしてもほかのワールドのプレイヤーとのやりとりが制限されてしまいます」(森山氏)という状態を避けるためだ。
これについては、森山氏いわく、「同じゲームなのにいっしょに遊べないのはダメだと、最初からこの構成で作ることが決められていました」のだそうだ。しかし、膨大な数のプレイヤーデータを一ヵ所で管理するというのは、「負荷分散とは真逆を行く方向で、ムチャぶりなオーダー」(森山氏)。しかし、これが『ドラゴンクエストX』では必須だということで、森山氏は腹を据えて、この難題に立ち向かっていくことになる。
ちなみに余談として、森山氏が開発チームに加わった直後に、“データベースをひとつでやってほしい”と言われたときには、「たいへんですよ。本当にやるんですか?」と返事をしつつも、その時点では本作がナンバリングタイトルであることを知らされていなかったため、「どれくらい人が集まるゲームなのかはわからないけど、がんばればなんとかなるかな……」(森山氏)という程度に考えていたそうだ。後に、正式にナンバリングタイトルである、つまり大勢のプレイヤーが集まることは必至であることを知らされた森山氏は愕然としたそうだが、「もう引くに引けなくなっていました(笑)」(森山氏)。
●かつてないほどの時間を費やした負荷試験
そして森山氏は、“世界はひとつ”というコンセプトのもと、制作チームでヒヤリングを行い、運営に適したサーバシステムの構築を進めていく。
ここで興味深いのが、プレイヤーのセーブデータにまつわるお話。森山氏は、あまり詳しくは話せないとしながらも、セーブデータはC++で書かれたデータの集合体であること、そして各構造体は、『ドラゴンクエストX』の場合、一般的なオンラインゲームと比較してサイズが非常に大きく、ひとりあたり数百キロバイトにも及ぶことを明かしてくれた。このデータを、数十のテーブルに分割して保存するわけだが、そのまま素直に実装してしまうと、ゲームが非常に重くなってしまう。とくにMMORPGにおけるセーブ&ロードは、ゲーム中のいたるところで実施されるのだからなおさらだ。
そこで快適に動作させるため、もっと言えば、「データベースに楽をしてもらうため」(森山氏)に、セーブデータを直接データベースに保存するのではなく、キャッシュサーバに保存する方法を取っているのだそうだ。
しかし大半をキャッシュに任せたとしても、当然最終的にはデータベースに保存してやる必要がある。そこでデータベースに保存するタイミングを、“ログアウトするとき”、“プレイヤー間でアイテムが移動するとき”、“定期的に(一定時間ごとに)”の3つに限定することにしたそうだ。森山氏いわく、とくに重要なのは2番目、“アイテムが移動するとき”にあるそうで、これは万一、片方だけが正しく保存され、片方に時間の巻き戻りが起きた場合に、アイテム消滅、複製などの事態が起こってしまうからだという。
こうして開発は進んでいったが、もともと非常に困難なミッションなだけに、すんなりと完成に至ったわけではない。森山氏は、バックエンドに関しては、チューニングフェイズがうまくいったことが大きかったと語る。チューニングの段階では、目標とする性能を達成するべく、非常に高性能な負荷検証用クライアント(通称ぼっと君)を使用して、大規模な負荷試験を長期にわたって実施したそうだ。この“ぼっと君”はLINUXで動作するプログラムで、スクリプトによってさまざまなテストシナリオを実行できるもの。これを駆使し、さまざまな状況を想定して検証・対応をしていった結果、最終的にバックエンドは、数十万の接続がきても問題なくさばけるものに仕上げることができたという。
さて、サービス開始後の現在の状況は、概ね負荷試験のシミュレーション通りになっているそうで、「負荷試験に手間をかけてよかったな、と思います」(森山氏)とのこと。ただし想定外のこともあったそうで、それは「旅人バザーの検索処理、コール回数が、予想の数十倍の規模になっています」(森山氏)のだそうだ。森山氏は、この部分については、工夫してさらなる性能拡張をする必要があると語る。
●数十万人がプレイすることを確信して
最後に森山氏は、改めて負荷試験の大切さを力説。サービス開始後に発生しているトラブルもあるが、それは「原因を探ると、負荷試験が難しい箇所、テストのシナリオから漏れてしまっている箇所にあるんです」(森山氏)。森山氏がいままでに経験したプロジェクトの中で、「ダントツで時間をかけています」(森山氏)というほどの負荷試験を実施した部分については、それに見合った成果が出ていることを実感していると語る。
また、プロジェクトを成功に導いた大きな要因として、「開発に携わったメンバー間で、目標・ビジョンの共有がはっきりできていたことが大きい」(森山氏)とも語る。森山氏は、当初、『ドラゴンクエスト』がオンラインゲームになるということで、ある程度ネガティブな反応が出ることも予想はしていたという。しかしそれでも、関係したメンバー全員が、「大勢に遊んでもらえることを信じて、仕様もサーバ構成も、すべてを“数十万人がアクセスしても大丈夫”を基準に進めました」(森山氏)という明確な目標があったからこそ、安定したバックエンドを構築できたのだと語る。
現在も日々ユーザーを増やし、大盛況な中でサービスを続けている『ドラゴンクエストX』。その裏で、こうした地道な努力によって構築された“バックエンド”が活躍していることを思うと、ゲームの楽しさに、さらに深みが加わるかも……?
ソーシャルブックマーク |
評価の高いゲームソフト(みんなのクロスレビュー) |
※ ブログ・レビューの投稿はこちら!(ブログの使い方) |
この記事の個別URL
特別企画・連載
個人日本一は!? 『コール オブ デューティ ブラックオプスII』の全国大会決勝戦リポート【ファミ通EE】
2013年2月16日、東京・六本木のニコファーレで、ユーザー参加型ゲームイベント“ニコニコゲームマスター with Call of Duty: Black Ops 2 ニコファーレ本選”が行われた。
本格海賊RPGがついに日本上陸!『リズン2 ダークウォーター』
海賊映画の主人公になったかのような気分が味わえる
アクションRPG『リズン2 ダークウォーター』の魅力を
たっぷりと紹介していこう。
『ファークライ3』の世界をリアルに描いた実写ムービーが見られる特設ページがファミ通ドットコムにオープン!
ユービーアイソフトから、3月7日発売予定のPS3・Xbox 360用ソフト『ファークライ
3』の特設ページが、本日よりファミ通ドットコムにオープン。本日からは、南国の
孤島で起こる凶気の数々を、俳優・クリスが体験する実写ムービーが公開される。果
たして、クリスを待ち受ける運命とは?
『朧村正』和風剣戟アクションがPS Vitaに乱れ咲く!
美麗なグラフィックや遊び応えバツグンのゲーム性が好評を博したアクションRPG『朧村正』が、PS Vitaで登場!今回の特集記事ではPS Vita版『朧村正』の魅力をたっぷりと紹介する。
ちょっぴりHだけど骨太なダンジョンRPG『ダンジョントラベラーズ2 王立図書館とマモノの封印』
パーティーリーダーの主人公と個性豊かなヒロインたちが、手強いモンスターの徘徊する危険な仕掛けの待ち受けるダンジョンを攻略していく本格派ダンジョンRPG『ダンジョントラベラーズ2 王立図書館とマモノの封印』を大特集!
ファミ通LIVEに『ヒットマン アブソリューション』が登場、『ヒットマン スナイパーチャレンジ』のDLは1/31まで【ファミ通EE】
1月30日放送のニコ生“ファミ通LIVE”では、『ヒットマン アブソリューション』の魅力を紹介。また、本ブログでもPC版のスペシャルコードを配布していた、『ヒットマン スナイパーチャレンジ』(『ヒットマン アブソリューション』をモチーフとしたスピンオフタイトル)のダウンロード有効期限は2013年1月31日まで。どちらもお忘れなく!
取っ付きやすく奥も深い、シリーズ最新作『ヒットマン アブソリューション』プレイインプレッション【ファミ通EE】
スクウェア・エニックスから本日(2013年1月24日)に発売されたプレイステーション3、Xbox 360、およびPC用ソフト『ヒットマン アブソリューション』のプレイインプレッションをお届け。
長い沈黙を破り、ついに発売される『ヒットマン アブソリューション』先行インプレッション【ファミ通EE】
スクウェア・エニックスから2013年1月24日に発売予定のプレイステーション3、Xbox 360、およびPC用ソフト『ヒットマン アブソリューション』。今回は、発売を来週に控え、期待が高まる同作の序盤をプレイした、インプレッションをお届けしよう。
『モンスターレーダー プラス』研究員日誌:第26回:1月のミッションが配信中だよ!
プレイステーション Vitaを持ち歩き、行く先々に生息するモンスターを捕まえる『モンスターレーダー』がパワーアップ! ハイテク機能×ゆるカワモンスターでお出かけが何倍も楽しくなる、『モンスターレーダー プラス』を遊び尽くすブログです。
『ヒットマン アブソリューション』世界に暮らす人々とエージェント47の関わりを紹介する最新映像が公開【ファミ通EE】
本日公開された動画は、本作の世界に暮らす人々の日常とエージェント47の関わりについて紹介されている。一見すると47には無関係に見える人々の声に耳を傾けることで、重要な情報が手に入る事も……。
その他のニュース
“PlayStation Meeting 2013”がニコニコ生放送で、2月21日8時(日本時間)より生中継決定!
現地時間2013年2月20日(水)午後6時(日本時間21日(木)午前8時)に、ニューヨークで開催される“PlayStation Meeting 2013”をニコニコ生放送で生中継することが決定した。
『とびだせ どうぶつの森』セブン-イレブンオリジナルアイテムPart2が3月1日より配信開始 “せいふく”から“ねぎしおぶたカルビベッド”まで!?
任天堂は、ニンテンドー3DS用ソフト『とびだせ どうぶつの森』について、セブン-イレブンとのコラボレーションによるオリジナルアイテムのPart2を、2013年3月1日より配信することを発表した。
SCEのPS Vita最新情報紹介放送にあの”モノクマ”がチラリ! どういうことかスパイク・チュンソフトさんに電話してみた
本日(2013年2月18日)、ソニー・コンピュータエンタテインメントジャパンはPlayStation公式サイト内の特設サイトにおいてストリーミング放送を実施。その放送の最後に、スパイク・チュンソフトの人気アドベンチャーゲーム『ダンガンロンパ 希望の学園と絶望の高校生』のキャラクター”モノクマ”がチラリと登場。いったいこれは!?
『GOD EATER 2(ゴッドイーター2)』最新PV&開発者インタビュー動画を公式サイトで公開
バンダイナムコゲームスは2013年発売予定のPS Vita、PSP用ソフト『GOD EATER 2(ゴッドイーター2)』の公式サイトを更新。最新PVならびに開発者インタビュー動画を公開した。
『三國志12』オンライン対戦用追加武将カードの第9弾が配信開始に
コーエーテクモゲームスはプレイステーション3、Wii U、プレイステーション Vita用ソフト『三國志12』のオンライン対戦用の武将カード17枚を新規追加した。
【大塚角満の熱血パズドラ部!】第139回『緊急寄稿! 大泥棒を捕まえろ!!』
ゲームのプレイ日記を書き続ける大塚角満の『パズル&ドラゴンズ』ブログ“大塚角満の熱血パズドラ部 ~本日も斜め移動日和~”平日はほぼ毎日更新予定!
PS Vita版『フェイト/ステイナイト [レアルタ・ヌア]』ダウンロード版が期間限定でプライスダウン
角川ゲームスから発売中の、プレイステーションVita用ソフト『フェイト/ステイナイト[レアルタ・ヌア]』のダウンロード版が、春休みに合わせた期間限定でプライスダウンされることになった。
『討鬼伝』最新PVが公開 発売時期は“2013年夏”に、体験版配信は2013年4月上旬に決定
コーエーテクモゲームスは、プレイステーション Vita/プレイステーション・ポータブル用ソフト『討鬼伝』の最新プロモーション映像を公開するとともに、発売時期を“2013年夏”とすること、本作の体験版を2013年4月上旬に配信することを発表した。
『英雄伝説 空の軌跡』シリーズ人気曲をアレンジした「空の軌跡ざんまい」が2013年4月9日に発売決定
日本ファルコムは、大人気ストーリーRPG『英雄伝説 空の軌跡』使用楽曲の中からとくに人気の高い曲をフルアレンジしたオリジナルアルバム『空の軌跡ざんまい』を、2013年4月9日(火)に発売する。価格は2100円[税込]。
『拡散性ミリオンアーサー』で劇場版『とある魔術の禁書目録』のコラボイベント実施中! 最強のミリオンレアカードも登場
スクウェア・エニックスから配信中のiPhone、Android向けオンラインカードバトルゲーム『拡散性ミリオンアーサー』にて、劇場版『とある魔術の禁書目録-エンデュミオンの奇蹟-』とのコラボイベントが実施中。
発売スケジュール
- 3DS
- ニンテンドー3DS
- PS3
- プレイステーション3
- Wii
- Wii
- WiiU
- Wii U
- DS
- ニンテンドーDS
- PSV
- プレイステーション ヴィータ
- PSP
- プレイステーション・ポータブル
- X360
- Xbox 360