[レポート]今すぐ実現できるゲームのクラウド対応 〜 GameSparks と Amazon GameLift でユーザー動向に即応〜 #AWSSummit

2018.06.03

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

こんにちは、城岸です。今回は、AWS Summit Tokyo 2018の6/1(金) 「今すぐ実現できるゲームのクラウド対応 〜 GameSparks と Amazon GameLift でユーザー動向に即応〜 」セッションのレポートです。

セッション情報

  • セッション名:今すぐ実現できるゲームのクラウド対応 〜 GameSparks と Amazon GameLift でユーザー動向に即応〜
  • スピーカー:下田 純也氏 (アマゾン ウェブ サービス ジャパン株式会社)

ゲーム向けバックエンドサービス GameSparks の導入から、GameSparks を利用してサーバーレスでプレイヤー管理、セグメンテーション、分析、ソーシャル対応、複数人プレイ、ゲーム内アイテム、バックオフィス向け管理機能等を 実現するまでの手順、及びクラウド対応のゲームサーバーソリューション GameLift で、インテリジェンスにスポットインスタンス等も活用して、いかにゲームサーバーをリアルタイムにスケーリングさせられるかをご紹介します。ゲームへのクラウド活用にお悩みの皆様、セッションをご覧いただきお試しください。

セッション内容

  • ゲーム向けのバックエンドサービスとは?
  • GameSparksの紹介
  • GameLiftの紹介

ゲーム向けのバックエンドサービスとは?

ゲーム向けのバックエンドサービスとは、以下のような基本要素/ゲーム要素のこと。

  • 基本要素
    • ユーザー管理認証
    • ユーザーの課金管理
    • フレンド管理
    • チーム
    • チャット
    • などなど
  • ゲーム要素
    • ゲーム内課金管理
    • ゲーム内アイテム管理
    • などなど

これをクライアント側で実装するとクラックされてアイテムや体力を無限増殖されてしまう恐れがある。故にバックエンドで管理する必要がある。

バックエンドのサービス開発で大変なところ

開発に数十人月かかることも。単体テスト、ビルド、デプロイ、など一通り実施する必要がある。

バックエンドサービスの運用の大変なところ

ローンチ後のバグ、イベントの後に呼び出されたり、データ更新に失敗した時に呼び出されたり。

この問題の解決策として。。

GameSparksの紹介

GameSparksは、バックエンドのサービスをサーバーレスで実現。開発時間とコストの削減や、ゲームデータのリアルタイム分析更新が可能。 上記で紹介した基本的なバックエンドサービスは取り込み済みであり、さらに以下のような高度な機能も利用することができる。

  • 高度バックエンド網羅
    • 柔軟なカスタマイズ
    • 独自API作成
    • カスタムバックオフィス
    • 開発者ロール認証
    • などなど
  • 高度なゲーム要素
    • ユーザセグメンテーション
    • ユーザー動向分析
    • などなど

この小さな部品を組み合わせて複雑な機能も構築可能。また、GameSparksにより簡単なリアルタイムのデータリレーサービスも実現することができ、またそれに対する視覚的なユーザー動向も知ることができる。

サポート体制

24/365で利用することができ、また、過去の障害日時も共有されている。そして、もしもの場合に備え、お客様のデータは別のロケーションに12時間毎にバックアップされる。

始め方

サイトにアクセスして、メールアドレス等を入力するだけですぐに利用可能。

GameSparksのメリット

GameSparksを利用することで以下のメリットを享受することができる。

  • 開発工数も大幅に短縮
  • 運用工程も簡単かつ柔軟に
  • 最先端のバックエンドサービスを低コストで利用できる

GameLiftの紹介

複数人プレイのゲームセッションをAWSのグローバルなインスタンス群で稼働させ、スケーリングをゲームの状況に応じて柔軟に扱えるソリューション。 セッションを管理するゲームサーバーは内部的にはEC2が利用されている。

マルチプレイのゲーム開発でよく聞くこと

  • チート対策をしたい
  • eスポーツ等でユーザーの公平性を担保したい
  • ゲーム内アイテム課金/マッチプレイ課金
  • モバイルゲームだけではく、今後コンソールやPCも展開したい今後世界に展開したい

マルチプレイのアーキテクチャ

マルチプレイのアーキテクチャは大きく分けて2通り存在する。

  • P2Pネットワークアーキテクチャ
    • どれか1つのクライアントがホスト機能を兼ねる
    • ホストがゲームをやめた場合、クライアントがゲームをプレイできなくなる
  • サーバクライアント型アーキテクチャ
    • サーバー上でゲームを制御し、全てのクライアントとが接続

GameLiftはサーバクライアント型アーキテクチャのサーバーサイドのリソースを管理するサービスである。要望に応じて世界中にサーバーを立てることが簡単に実施できる。

GameLifの機能

  • サーバーインフラ管理
    • オートスケーリング
    • 高アベイラビリティ
    • などなど
  • セッション管理
    • プレイヤーセッション
    • マッチメイキング
    • などなど

GameLifはユーザー数に応じてサーバーサイドのリソースをスケールすることができる。また、サーバーサイドのリソースはスポットインスタンスを利用することも可能である。スポットインスタンスを利用するとEC2のオンデマンドインスタンスを利用する場合に比べ、最大で90%のコスト削減が可能である。

GameLift導入に共通するモチベーション

ユーザーエクスペリエンス向上効果>サーバーコスト

GameLiftまとめ

  • 対戦プレイ用のサーバを低コストで導入運用可能
    • とりあえずロンチしてみてという戦略もあり
    • クローズする場合もオンプレより実施しやすい

まとめ

GameSparks、GameLiftの使い所・メリットがわかるセッションでした。ゲームのバックエンドサービスをAWSに寄せることでスピード感のある開発や効率的な運用を実施することができそうですね。