発売に備えて発売に備えて

サーバーだけでなくゲームも開発

Nintendo Switchでネットワーク機能を使ったゲームを遊ぶためには、ゲームプログラムと通信を行うゲームサーバーが必要です。私は入社以来さまざまなタイトル向けのゲームサーバーの開発に携わり、主にサーバー上で動くプログラム実装を行ってきましたが、仕事に取り組むうえで強く意識しているのは「単にサーバーを作るのではなく、ゲームを開発している」ということです。さまざまなゲーム開発の関係者と密なコミュニケーションを取りながら、企画の相談やスケジュールの調整なども含めて、ゲームのネットワーク機能全般の開発に関わり、ゲームの遊びをより良く、楽しいものにしてお客様に届けることを考えています。

万全の状態に仕上げる

ゲームサーバー開発の中の重要な仕事の一つに負荷対策というものがあります。 ネットワーク機能を使用するタイトルでは、ゲームサーバーへのアクセスが集中することで遊びづらくなり、お客様が快適にゲームをプレイできなくなることがありますので、そうならないように準備します。

具体的には、初めにサーバーへのAPI呼び出しのチェックを行います。ゲームの実装が進み、ゲームサーバーのAPIを呼び出すようになってきたら、呼び出すタイミングや内容がおかしくないか、実際にゲームを動かして確認します。多くのお客様からのアクセスがあるゲームサーバーでは、一人分のAPI呼び出しの中で無駄や小さな問題があると、それが積み重なって大きな負荷や問題に繋がってしまいますので、まずはこの過程でチェックをし、問題があった箇所はゲームプログラマーと相談して修正、変更していきます。

次に行うのが負荷テストです。ここでは、前の工程で確認したゲームからのAPI呼び出しを模したプログラムを作成し、それを大量に実行し、ゲームサーバーに対して負荷をかけます。ネットワーク機能を利用するほとんどのタイトルは、発売週の週末に大量のアクセスがありますが、そのアクセス数を予測し、捌けるようにサーバー規模を決め、高負荷によって引き起こされるサーバーの問題をあらかじめ解消します。例えば、小規模なアクセスでは問題なかった処理が、高負荷に耐えられないことがわかりチューニングをする、ということはよくあります。サーバーの規模を大きくすれば負荷の問題は減りますが、今度はコストの問題が出てきます。最適なコストでサーバーを準備できるよう、負荷テストとチューニングを繰り返して確認していきます。

ここまで準備をしていても、発売後に高負荷で問題が発生する可能性も考えられます。起き得る状況を事前に想定し、それぞれのケースでの対処案を入念に用意して、万が一実際に問題が起きた場合でも、早期に解消をできるように準備しておくなど、不安要素を徹底的に取り除くことで、ゲームサーバーを万全の状態に仕上げていきます。

発売を見守る

近年の任天堂のゲームは、世界同時で発売されるケースがほとんどです。時差の影響もあり、発売後の週末にはアクセス数の大きな波が地域ごとに順番にやってきて、最後に北米エリアの大きな波がやってきます。サーバーは万全の状態に仕上げていますが、万が一のことが起きる可能性に備えて、刻一刻と変化する発売後の負荷状況を見守ります。途中でトラブルがあれば都度調査と対応を行いつつ、週末が終わりに近づいて、しっかりと負荷に対応できている様子を確認できると、ホッと一安心します。

サーバーが日々安定して稼働してネットワーク機能を利用したゲームを遊べることは、お客様にとっては当たり前のことです。
その日々の当たり前を実現することが、サーバー開発者にとって責任のある、重要でやりがいのある仕事で、それが達成できたときは何よりも嬉しいと感じる瞬間です。

社員略歴

下村企画制作部/2012年入社
2012年キャリア採用で入社。
入社以来、さまざまなゲームタイトル向けの専用ゲームサーバー開発に携わる。
職種

↑