NAV
GS2-Deploy

GS2-Matchmaking

GS2-Deploy のテンプレートで使用できるリソース定義のリファレンス

エンティティ

Namespace

Namespace

Type: GS2::Matchmaking::Namespace
Properties:
  Name: namespace1
  Description: null
  EnableRating: true
  CreateGatheringTriggerType: none
  CreateGatheringTriggerRealtimeNamespaceId: null
  CreateGatheringTriggerScriptId: null
  CompleteMatchmakingTriggerType: none
  CompleteMatchmakingTriggerRealtimeNamespaceId: null
  CompleteMatchmakingTriggerScriptId: null
  JoinNotification: null
  LeaveNotification: null
  CompleteNotification: null
  LogSetting: 
    LoggingNamespaceId: grn:gs2:ap-northeast-1:YourOwnerId:log:namespace-0001

ネームスペースは一つのプロジェクトで同じサービスを異なる用途で複数利用できるようにするための仕組みです。 GS2 のサービスは基本的にネームスペースというレイヤーがあり、ネームスペースが異なれば同じサービスでもまったく別のデータ空間として取り扱われます。

そのため、各サービスの利用を開始するにあたってネームスペースを作成する必要があります。

必須 デフォルト 値の制限 説明
name string ~ 32文字 ネームスペース名
description string ~ 1024文字 説明文
enableRating bool false レーティング計算機能を使用するか
createGatheringTriggerType string ~ 128文字 ギャザリング新規作成時のアクション
createGatheringTriggerRealtimeNamespaceId string {createGatheringTriggerType} == "gs2_realtime" ~ 1024文字 ギャザリング作成時にルームを作成する GS2-Realtime のネームスペース
createGatheringTriggerScriptId string {createGatheringTriggerType} == "gs2_script" ~ 1024文字 ギャザリング作成時に実行される GS2-Script のスクリプト
completeMatchmakingTriggerType string ~ 128文字 マッチメイキング完了時のアクション
completeMatchmakingTriggerRealtimeNamespaceId string {completeMatchmakingTriggerType} == "gs2_realtime" ~ 1024文字 マッチメイキング完了時にルームを作成する GS2-Realtime のネームスペース
completeMatchmakingTriggerScriptId string {completeMatchmakingTriggerType} == "gs2_script" ~ 1024文字 マッチメイキング完了時に実行される GS2-Script のスクリプト
joinNotification NotificationSetting ギャザリングに新規プレイヤーが参加したときのプッシュ通知
leaveNotification NotificationSetting ギャザリングからプレイヤーが離脱したときのプッシュ通知
completeNotification NotificationSetting マッチメイキングが完了したときのプッシュ通知
logSetting LogSetting ログの出力設定

RatingModelMaster

RatingModelMaster

Type: GS2::Matchmaking::RatingModelMaster
Properties:
  NamespaceName: namespace1
  Name: mode1
  Description: null
  Metadata: null
  Volatility: null

レーティングの設定を保持するエンティティです。

GS2 ではレーティングアルゴリズムとして Glicko-2 を採用しています。 Glicko-2 には複数のパラメータがありますが、GS2-Matchmaking ではそれらを総合的に表す ボラティリティ という1つのパラメータに集約しています。 ボラティリティ は変化の大きさを表すパラメータで、値が大きいほどレーティングの値の変動量が大きくなります。

必須 デフォルト 値の制限 説明
namespaceName string ~ 32文字 ネームスペース名
name string ~ 128文字 レーティングの種類名
description string ~ 1024文字 説明文
metadata string ~ 128文字 メタデータ
volatility int 100 1 ~ 350 レート値の変動の大きさ

CurrentRatingModelMaster

CurrentRatingModelMaster

Type: GS2::Matchmaking::CurrentRatingModelMaster
Properties:
  NamespaceName: namespace1
  Settings: {\n  "version": "2020-06-24",\n  "ratingModels": [\n    {\n      "name": "mode1",\n      "metadata": "MODE1",\n      "volatility": 100\n    },\n    {\n      "name": "mode2",\n      "metadata": "MODE2",\n      "volatility": 150\n    }\n  ]\n}

GS2ではマスターデータの管理にJSON形式のファイルを使用します。 ファイルをアップロードすることで、実際にサーバーに設定を反映することができます。

JSONファイルを作成する方法として、マネージメントコンソール上でのマスターデータエディタを提供していますが よりゲームの運営に相応しいツールを作成し、適切なフォーマットのJSONファイルを書き出すことでもサービスを利用可能です。

JSONファイルの形式についてはドキュメントを参照ください。

必須 デフォルト 値の制限 説明
namespaceName string ~ 32文字 ネームスペース名
settings string ~ 5242880文字 マスターデータ