『ファイナルファンタジーXI』(以下、『FFXI』)の20周年を記念して5月8日にYouTubeで配信された特別番組『WE ARE VANA'DIEL』。番組内では“WE GREW VANA’DIEL”と題し、『FFXI』の開発に携わった方や、他社クリエイターも含めた関係者のさまざまな証言が映像等で公開された。しかし、それらは取材内容のほんの一部にすぎない。ここでは、関係者それぞれが語る“『FFXI』20年の軌跡”を、改めてインタビュー形式でお届けしていこう。
その第1回は、『FFXI』や『プレイオンライン』開発時におけるネットワークシステムを統括した伊勢幸一さんへのインタビュー。最終回となるパート4では、『FFXI』のネットワーク面での仕様や、20周年を迎えた『FFXI』について、伊勢さんの視点から振り返っていただいた。
『ファイナルファンタジーXI 20 周年記念放送 WE ARE VANA'DIEL』
ネットワーク方面に精通するエンジニア。1996年にスクウェア(当時)に入社し、スクウェアUSAのホノルル・スタジオの立ち上げなどに参加したのち、技術情報部のシニアマネージャーおよびプレイオンラインのサーバーシステムディレクターとして、『FFXI』のネットワークシステムの構築を担当する。2016年より、さくらインターネット株式会社の取締役に就任。
『FFXI』におけるネットワーク面でのさまざまな工夫
ここからはネットワーク面から見た『FFXI』のさまざまな仕様についておうかがいします。まず、『FFXI』はナローバンド(※)でも遊べるように設計されていますが、そのことがゲームの仕様において足枷となる部分はあったのでしょうか。たとえばですが、プレイヤーキャラクターの出身国が3つ用意されていたのは、サーバーの負荷を抑えるために人数を分散させる狙いがあった、とも言われています。
※ナローバンドとは、公衆電話網を利用した通信や、ISDN等の低速のネットワーク接続のこと。- 伊勢
出身国を分ける仕様に関しては、純粋にゲームデザイン側の意向ですね。ちなみに、サービス開始時の『FFXI』は、ひとつのワールド(BahamutやShivaなど)が16台くらいの物理サーバー(※)で構成されていました。そしてゲーム内の各エリア(東ロンフォールや西サルタバルタなどの単位)のデータを、どの物理サーバーに割り振って管理するのかは、全体のバランスを見ながら適宜、サーバープログラマーが設定ファイルで指定して調整していました。どのように物理サーバーにマップを配置して負荷を分散するかはサーバープログラマーが考え、私はサーバープログラマーと会話しながら、物理サーバーをどれだけ準備すればよいかを検討していました。
※ここでのサーバーとは、物理的に存在する1台のサーバーハードウェアの意味。近年でのサーバーは、ソフトウェア上であたかも物理的に存在するサーバーとして模倣できる仮想化技術の採用が主流で、少ないハードウェア機器で多くのサーバーを動作させることができる。 プレイヤーがモンスターに襲われているとき、エリアチェンジをするとそのモンスターは追って来ませんが、この仕様もサーバー構成と関係がありますか?
- 伊勢
当時、1台の物理サーバーが6つのエリアの処理を担当していました。その中でも個々のモンスターは、NPCとしてひとつのエリアだけに存在する設定になっています。プレイヤーがエリアの境界線を越えると、つぎに「あなたのデータが処理される物理サーバーのIPアドレスは○○です」という情報が送られて、プレイヤーはつぎの物理サーバーに移動します。ですが、モンスターはひとつのマップの中だけに設定されているため、その物理サーバーを越えては追ってこられない、そんな仕組みになっています。
『FFXI』が海外展開を行う際、言語圏別のワールドは設けられませんでした。これは、海外にデータセンターを設置することの難しさなども影響していたのでしょうか?
- 伊勢
その仕様は、田中さん(田中弘道氏。初代『FFXI』プロデューサー)が決めたと記憶しています。時差の関係で国によってログイン時間のピークタイムが異なることから、サーバー運用を効率化する意図もあったのでしょうね。当時のネットワークエンジニアの視点だと、日本で会員数が増えていくのと同じように、順調に海外展開を行えたので助かりました。そのためもあってか、海外展開の際に大きなサーバートラブルも発生しなかったですし。
『FFXI』にはデュナミスやビシージといった、同一エリア内に大人数が密集するコンテンツも実装されています。さすがに当初想定していたナローバンドでは、ああいったコンテンツはきびしい面もあったと思うのですが、ネットワーク面において工夫された部分などはあったのでしょうか。
- 伊勢
デュナミスのコンセプトを最初に開発者から聞いたとき、プレイヤーキャラクターを中心とした一定範囲内のデータのみを送受信する仕組みを考えました。つまり、仮にエリア内に数百人がいるようなケースでも、クライアントは全員ぶんのデータをやり取りしているわけではないのです。見えない場所にいるキャラクターのデータをやり取りしても、画面内には描画されないですからね。デュナミスのプレイ中に実際にやり取りを行っているデータの量は、じつは通常のタウンエリアなどと比べて極端に大きくはなかったりします。
なるほど、そういう仕組みだったのですね。
- 伊勢
ただ、その仕様を踏まえても、当初は「少しきびしいかな……」と考えていました。でも、先ほどお話ししたADSLの予想外の普及によって、なんとか実現の目処がついた、というのが正直なところですね。
データ量といえば、大型バージョンアップのときはダウンロードするデータの量もかなりのサイズになりましたが、アップデートができないというトラブルは少なかったと記憶しています。
- 伊勢
新しいアイテムを追加するなどでパッチのサイズが大きくなるときは、通信量もかなりのものになりました。ですので、どのタイミングでどれくらいのパッチデータの配信があるのかは、事前に開発者に聞いて回っていました。たとえば、サーバー側でアウトゴーイング(※)に耐え切れないのであれば、キャッシュを配置してサーバーの負荷を緩和させたり、大規模なISP向けのトラフィックのためにアウトゴーイングの帯域をもうひとつ用意したりしていましたね。そのようなことに対応するために、“つぎに何をやるのか”の打ち合わせを開発の担当者と頻繁に実施しながら、システムの運用とチューニングを繰り返していました。
※アウトゴーイングとは、外向き(この場合は『FFXI』のシステム外へ)の通信経路のこと。
20年が経っても現役で稼働する『FFXI』のネットワークシステム
『FFXI』は2022年5月に20周年を迎えました。つまり、伊勢さんが構築されたネットワークが、20年経ったいまも現役で稼働しているわけですが、そのことに対する率直な感想はいかがですか。
- 伊勢
いや、本当にすごいことだと思いますね。実際にはデータセンターの設定場所や、ひとつひとつのサーバー機器などは順次更新されているのでしょうけれど。ただ、『FFXI』のネットワークシステムにおける基本設計(※)は、もともと長期の稼働にも耐えられるように設計していました。
※基本設計とは、システムの要件を満たすようにシステム基盤の設計方針や大まかな構成を決める工程のこと。基本設計をもとに、具体的な設定値を定める詳細設計や、運用の方針を定める運用設計を作成するため、基本設計の品質が高いとリリース後のトラブルの発生頻度が減り、安定してシステムを運用することができる。 長期稼働を行うための特別な工夫などはされていたのでしょうか。
- 伊勢
MMO(多人数同時参加型オンライン)RPGにおけるネットワークシステムは、ミドルウェアやアプリケーションが過不足なく動作する条件さえ整えてさえいれば、それで十分だと当時から考えていました。ですので、『FFXI』のネットワークシステムの基盤を作るときも、これといった特別な技術は使わず、むしろ安定性を重視していました。私がかつて業界内で講演を行ったときも、「品質のよくないブロードバンドより、品質のよいナローバンドのほうが向いている」と発表したことがあります。
それは説得力がありますね。
- 伊勢
『FFXI』の登場から20年が経過して、MMORPGは大きく進化していますが、その進化の大部分はミドルウェアやアプリケーションの部分に集中しているはずです。一方でネットワークシステムの基本設計は、20年前からドラスティックな変化はないと思いますよ。
改めていま20年前の仕事を振り返って、自己評価するとしたらいかがですか?
- 伊勢
まあ、悪くはなかったのではないでしょうか(笑)。それにしても、20年間稼働し続けるネットワークシステムなんて、これまで聞いたことがないですね。
伊勢さんはスクウェア(当時)に入社する際に、「ネットワークシステムを用いて作られた成果物にも興味があった」とおっしゃっていました。その点を踏まえて、『FFXI』を筆頭としたスクウェア作品に関わられた感想をお聞かせください。
- 伊勢
私が在籍していたころのスクウェアは、世界で初めてのチャレンジをつぎからつぎへと行っていました。その渦中にいた同僚や私にとっては、“世界を相手に仕事を行っている”手応えを、ごく当たり前のものとして感じていたのを覚えています。冷静に考えて、そういった環境はめったになく、後にも先にもない希有な経験をさせてもらったと思います。スクウェアで関わらせていただいた仕事を通じて、とても多くのものを得られました。また『FFXI』については、サーバーやネットワークを設計する際に、“その上で何が動いて、何ができ上がるのか”というのを理解することの大切さをあらためて感じました。
とくにプロジェクトが大きくなると、全体像が見えないまま極一部の作業だけに終始してしまうことが往々にしてありますよね。
- 伊勢
これはエンジニアに限った話ではないのですが、自分の業務範囲に対する専門性が高くても、それ以外に対してはまったく興味がないといった人が、けっこういるんですよ。でも、それだとやはりサービス全体の価値を高めたり、チューニングをしたりといった作業は難しい。我々の業界においても、インフラだけでなく、ミドルウェアやアプリケーションまでひと通り見渡すことで、初めて最適解にたどり着けることがある。こういった考えかたは、いまも心掛けていて、いろいろなことにも応用できていると思います。
それでは最後に、『FFXI』のプレイヤーに向けてメッセージをお願いします。
- 伊勢
現在も『FFXI』を楽しんでくださっている皆さんに対しては、本当にありがとうございます、といった気持ちです。その世界の構築に携わった一員として、とても誇らしいです。また、これほどまで『FFXI』が長く続いていると、きっと多くの人にとってリアルの人生の記憶と同じくらい、『FFXI』での記憶をお持ちいただいていると思います。これから先もそんな『FFXI』での経験を大切に持ち続けていただけるのであれば、それはとても素敵なことだと思います。