ゲーム開発に集中できるSaaS型ゲームサーバソリューションをご紹介します! #devio2022

ゲームサーバを構築するためのSaaSであるGame Server Service(GS2)のご紹介と、利用した場合のメリットを解説します。
2022.08.02

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

概要

Unityなどのゲームエンジンを使ったゲーム開発が一般化したため、ゲームクライアント(ユーザが触れるゲーム)開発は効率的に行える様になりました。

一方、ゲームサーバ側の開発に対応したSaaSは、このセッションで紹介してるGame Server Service以外にもいくつかあります。それら、ゲームクライアント、ゲームサーバのゲーム開発の今の流れ、多数の企業がリリースしているゲームサーバ向けサービスに触れつつGame Server Serviceが備える機能や採用した際の利点について解説しています。

動画

Game Server Serviceについて

Unityなどのゲームエンジンが一般的に利用されるようになり、ゲームクライアントはより効率的にゲーム開発ができるようになりました。

その一方、ゲームサーバ(プレイヤーデータ管理、ゲームの進行管理などを行う)はゲームクライアントほどゲーム開発が効率的になっているとは言いがたい状況です。ですが、そのようなゲームサーバの開発をGame Server Serviceを使う事でより効率的に開発できるようになります。

備える機能

Game Server Serviceは、スマートフォン向けのゲームをベンチマークとし、アウトゲーム(ユーザ認証やガチャといったゲーム周辺の機能)が実装できる機能を持っています。30種類以上の機能が用意されていますので、機能が不足しているがために自分たちが実装しないといけない機能の方が多い、といったことはほぼないでしょう。

Game Server Serviceが備える機能の一部を紹介すると次の通りです。

  • プレイヤーのレベル、経験値管理
  • スタミナ
  • 所持品
  • 課金通貨
  • ゲーム内部サービス
  • プレゼントボックス
  • イベント
  • ミッション
  • クエスト
  • マッチメイキング
  • リアルタイムデータ交換
  • パーティ編成・装備
  • 強化
  • ゲーム内ストア
  • ガチャ抽選
  • フレンドのフォロー

より詳しい情報はGame Server Servicesの機能紹介Game Server Servicesのドキュメントにあります。

GameServerServiceは機能が豊富であるため、ゲームだけではなくWebサービス開発にも利用できます。

ゲームサーバ開発でGame Server Serviceを使うメリット

ゲームサーバを独自に開発せずGameServerServiceを利用して開発するメリットとして、先に述べたようなゲームサーバ開発が効率的になるといった他に次のメリットがあります。

  • ゲームのAPI仕様が統一できる
    • 管理や運用関連のツールが統一できる
  • 他のゲームへの流用がしやすい
  • ゲームごとのデータ保持の方法が統一できる
    • 一度データ分析ツールを作成すると、他ゲームのデータ分析にも流用できる

これらの詳細について軽く解説します。詳細については動画をご覧ください。

ゲームAPIの仕様が統一できる

GS2-SDKが用意されているので、すべての案件で同一のインターフェイスが利用できます。またGS2-SDK for Unityにおいては、毎フレームでSDKを呼び出しても通信しないなど、さまざまな対応がされています。

管理や運用関連のツールが統一できる

独自開発だと管理や運用関連のツール開発が後回しにされることも珍しくありません。そのため、それらのツールが開発されるまでは、プレイヤーデータの確認などをログなど原始的な方法でチェックせざるを得ないこともあります。

GS2では、既に管理や運用のツールが用意されていますので、それらを使う事で効率的にチェックといったメリットがあります。

ゲームごとのデータ保持の方法が統一できる

独自開発されたゲームサーバであれば、データの保持方法もバラバラなので、分析ツールもそれぞれのゲームサーバにあわせて開発する必要があります。

Game Server Serviceを採用すると、それらのユーザデータなどの各種データの保持方法が統一されるため、データ分析ツールも共通で利用できるようになります。

採用事例

以下の事例があります。

さいごに

このようなゲームサーバを効率的に開発できるGame Server Serviceを使ってみてはいかがでしょうか。