
Game Server Servicesは、7月12日に都内の秋葉原で開催された「GTMF 2019」にて「Game Server Servicesではじめるサーバー開発運用しないゲーム開発」セッションを実施しました。本稿では、GSSの活用による開発効率化について説明されたセッションのレポートをお届けします。


このセッションには、Game Server Servicesの代表取締役社長である丹羽一智氏が登壇。Game Server Services(以下、GS2)は、初期費用や運用費用など無しで、ゲームサーバーをサーバーアクセス1回あたり0.02円で使用できるクラウドサービスを展開しています。

丹羽氏は、任天堂に所属していたころ、常々サードパーティーの人達がゲームサーバーの開発/運用をすることなく、責任を負わずにネットワーク対応のゲームタイトルを開発できていたことに感銘を受けたと話します。
スマートフォンのタイトルでも同じようなゲームサーバーが用意されている状況を見て、「任天堂の発想をスマホゲームでも使えればいろいろな人が喜びそうだ」と感じたことから会社を設立したとのことです。

氏は、ゲームデベロッパーがリソースを割くべきなのは「ネットワーク構築/維持への注力」ではなく、ゲームを面白くするための開発と見ています。


また、汎用ゲームエンジンの普及がゲーム開発のハードルを下げたように、ゲームサーバーでもネットワーク分野をプロフェッショナルに任せることで、「ゲームの面白さ」を高めることにデベロッパーの開発力を集中させたいと考えています。
Game Server Servicesが提供するゲームサーバーとその価値

GS2は、AWSとGCPのハイブリッドクラウドで提供。秒間10万アクセス超の負荷テストを実施した際には、それ以上のアクセスも受け付けられる状態であったことを確認しています。


さらに初期費用無しでも利用可能(サーバーの保守費用や初期投資が必要ない)であるため、コストをゲーム開発そのものに活用できます。

前述の通り、GS2はサーバーのAPI呼び出し回数の利用状況に応じて料金が発生します。ゲームに合わせたカスタマイズも可能で、チート対策にも対応。また、UnityやUnreal Engine 4などのゲームエンジンやJavaやPythonなどの各言語向けSDKも揃えています。


Unityにおいて、「アカウント新規作成」や「パスワードの登録」といった機能を導入するために必要なAPIは7種類。管理用のAPIは3種類です。


それらのAPIを組み合わせることで、マッチメイキングやリアルタイム対戦など必要な機能を組み合わせて実装できます。例として、いわゆる「ログインボーナスシステム」はクエスト管理と所持品管理、イベントスケジュール管理、回数制限管理、サーバースクリプトも含め4つで実装できます。
アカウント管理ではデータ引き継ぎなどをサポート。他のGS2機能を活用でき(自社で管理機能を持っていたとしても、GS2の管理機能も利用可能)、課金通過管理では資金決算法の前払式支払手段、二次通過管理もサポートします。所属品管理では、消費型アイテムやキャラクターなどの資産、素材といった様々な要素を所持品として管理できます。


また所持品枠の拡張機能も備えています。ネットワーク関連に関しても、リアルタイム対戦であれば初期はパケットリレーサーバーとして提供し、サーバーで動かすロジックを変更できます。


GS2内のサービスを連携させる仕組みでは、スタンプシートシステムを提供しています。このスタンプシートは、課金に際してユーザーが買ってきたレシートを参照して支払いを確認。支払ったことへのスタンプが揃ったら二度と使えないように破棄することで、対策しています。


課金の不正対策には「スタンプシートの改ざん検出機能」が用意されていて、「対価を支払なければ報酬を受け取れない」という仕組みで対応しています。GS2のマスターデータ管理は、サービスごとにJSON形式でマスターデータを管理。GS2の管理画面からのエクスポートも可能ですが、独自ツールでJSONファイルを出力することも可能です(Excelでも可)。


開発環境に関してはGS2-Deployでサポートできます。リソースを宣言的に記述することで、自動的に作成/更新/削除が行えるテンプレート機能を用い、過去に開催したイベント管理や開発者それぞれの開発環境構築などが可能となります。


また、現在は第二世代GS2のベータ版が公開中。年内には正式サービス開始を予定しており、正式サービス開始時には99.99%のSLAと国内だけでなく、北米と欧州リージョン向けにもリリースを予定すると共に利用料も発生します(毎月2万円まで無料)。セッションの最後にはUnityでのCloud Weaveを紹介。テンプレートによって分かりやすく操作できる管理画面について触れ、幕を閉じました。