GS2-Version マスターデータリファレンス
マスターデータのフォーマットと インポートする各種モデルのリファレンス
マスターデータのフォーマット
{
"version": "2019-10-09",
"versionModels": [
{
"name": "[string]バージョンモデル名",
"metadata": "[string?]メタデータ",
"scope": "[string enum]判定に使用するバージョン値の種類",
"type": "[string enum]バージョンチェックモード",
"currentVersion": {
"major": "[int]メジャーバージョン",
"minor": "[int]マイナーバージョン",
"micro": "[int]マイクロバージョン"
},
"warningVersion": {
"major": "[int]メジャーバージョン",
"minor": "[int]マイナーバージョン",
"micro": "[int]マイクロバージョン"
},
"errorVersion": {
"major": "[int]メジャーバージョン",
"minor": "[int]マイナーバージョン",
"micro": "[int]マイクロバージョン"
},
"scheduleVersions": [
{
"currentVersion": {
"major": "[int]メジャーバージョン",
"minor": "[int]マイナーバージョン",
"micro": "[int]マイクロバージョン"
},
"warningVersion": {
"major": "[int]メジャーバージョン",
"minor": "[int]マイナーバージョン",
"micro": "[int]マイクロバージョン"
},
"errorVersion": {
"major": "[int]メジャーバージョン",
"minor": "[int]マイナーバージョン",
"micro": "[int]マイクロバージョン"
},
"scheduleEventId": "[string?]バージョンチェックを有効化する期間を設定した GS2-Schedule のイベントGRN"
}
],
"needSignature": "[bool]判定するバージョン値に署名検証を必要とするか",
"signatureKeyId": "[string]暗号鍵GRN",
"approveRequirement": "[string enum]承認の必要性"
}
]
}| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |
|---|---|---|---|---|---|---|
| version | string | ✓ | 2019-10-09 | マスターデータのフォーマットバージョン | ||
| versionModels | List<VersionModel> | ~ 100 items | バージョンモデル バージョンモデルには、ログインを受け入れるが、バージョンアップ出来ることを通知する警告バージョンと、ログインを受け入れないエラーバージョンを設定できます。 現在のバージョンをクライアントに申告させるのに、署名の有無を指定できます。 署名付きを選択した場合、クライアントは嘘のバージョン申告を出来なくなります。 |
モデル
VersionModel
バージョンモデル
バージョンモデルには、ログインを受け入れるが、バージョンアップ出来ることを通知する警告バージョンと、ログインを受け入れないエラーバージョンを設定できます。
現在のバージョンをクライアントに申告させるのに、署名の有無を指定できます。
署名付きを選択した場合、クライアントは嘘のバージョン申告を出来なくなります。
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| versionModelId | string | ※ | ~ 1024文字 | バージョンモデル
GRN ※ サーバーが自動で設定 | ||||||||
| name | string | ✓ | ~ 128文字 | バージョンモデル名 バージョンモデル固有の名前。英数字および -(ハイフン) _(アンダースコア) .(ピリオド)で指定します。 | ||||||||
| metadata | string | ~ 2048文字 | メタデータ メタデータには任意の値を設定できます。 これらの値は GS2 の動作には影響しないため、ゲーム内で利用する情報の保存先として使用できます。 | |||||||||
| scope | 文字列列挙型 enum { “passive”, “active” } | ✓ | 判定に使用するバージョン値の種類 バージョンチェックに使用するバージョン値の取得方法を決定します。「passive」はチェック時にクライアントが現在のバージョンを申告する方式、「active」はユーザーが過去に明示的に承認したバージョン(利用規約への同意など)を使用する方式です。
| |||||||||
| type | 文字列列挙型 enum { “simple”, “schedule” } | “simple” | バージョンチェックモード バージョンチェックの方式を選択します。「simple」は固定の警告・エラーバージョン閾値を使用し、「schedule」は GS2-Schedule のイベントを利用して時期に応じた異なるバージョン閾値を適用します。
| |||||||||
| currentVersion | Version | {type} == “simple” and {scope} == “active” | ✓※ | 現在のバージョン このバージョンモデルの最新バージョンです。「simple」モードの「active」スコープでのみ使用され、ユーザーがバージョン更新を承認・確認する際に現在のバージョンを通知します。 ※ type が “simple” で かつ scope が “active” であれば 必須 | ||||||||
| warningVersion | Version | {type} == “simple” | ✓※ | バージョンアップを促すバージョン アップグレード通知を表示する最低バージョン閾値です。クライアントのバージョンがこの値を下回る場合、ログインは許可されますがユーザーにアップグレードが促されます。比較はメジャー、マイナー、マイクロの順に階層的に行われます。 ※ type が “simple” であれば 必須 | ||||||||
| errorVersion | Version | {type} == “simple” | ✓※ | バージョンチェックでエラーになるバージョン ログインを許可する最低バージョン閾値です。クライアントのバージョンがこの値を下回る場合、バージョンチェックがエラーとなりログインがブロックされます。比較はメジャー、マイナー、マイクロの順に階層的に行われます。 ※ type が “simple” であれば 必須 | ||||||||
| scheduleVersions | List<ScheduleVersion> | {type} == “schedule” | 0 ~ 10 items | 時系列で切り替わるバージョンチェック内容リスト GS2-Schedule のイベントに基づいて異なるタイミングで有効になるバージョンチェック設定のリストです。更新を必須にする前に警告を表示するなど、段階的なバージョン強制が可能になります。 ※ type が “schedule” であれば 有効 | ||||||||
| needSignature | bool | {scope} == “passive” | ✓※ | 判定するバージョン値に署名検証を必要とするか 有効にすると、クライアントはバージョン申告と共に暗号署名を提供する必要があります。これにより、クライアントがバージョンチェックを回避するために偽のバージョンを申告することを防止します。スコープが「passive」の場合にのみ適用されます。 ※ scope が “passive” であれば 必須 | ||||||||
| signatureKeyId | string | {needSignature} | ✓※ | ~ 1024文字 | 暗号鍵
GRN ※ needSignature が “true” であれば 必須 | |||||||
| approveRequirement | 文字列列挙型 enum { “required”, “optional” } | {scope} == “active” | “required” | 承認の必要性 このバージョンモデルに対するユーザー承認が必須か任意かを制御します。「required」の場合、ユーザーが現在のバージョンを承認していないとバージョンチェックが失敗します。「optional」の場合、承認状態に関係なくバージョンチェックが通過します。スコープが「active」の場合にのみ適用されます。
※ scope が “active” であれば 有効 |
Version
バージョン
3階層(メジャー、マイナー、マイクロ)のバージョン番号を表します。バージョンの比較はメジャー、マイナー、マイクロの順に階層的に行われます。バージョンチェックの警告・エラー閾値の定義に使用されます。
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |
|---|---|---|---|---|---|---|
| major | int | ✓ | 0 ~ 2147483646 | メジャーバージョン バージョン比較で最も優先度の高いコンポーネントです。メジャーバージョンの差異はマイナーバージョンやマイクロバージョンより優先されます。 | ||
| minor | int | ✓ | 0 ~ 2147483646 | マイナーバージョン バージョン比較で2番目に優先されるコンポーネントです。メジャーバージョンが同一の場合にのみ比較されます。 | ||
| micro | int | ✓ | 0 ~ 2147483646 | マイクロバージョン バージョン比較で最も優先度の低いコンポーネントです。メジャーバージョンとマイナーバージョンがともに同一の場合にのみ比較されます。 |
ScheduleVersion
時系列で切り替わるバージョン
GS2-Schedule のイベントで制御される特定の期間中に有効になるバージョン閾値(現在、警告、エラー)のセットを定義します。複数のスケジュールバージョンを設定することで、古いクライアントをブロックする前にユーザーに警告するなど、段階的なバージョン強制を実装できます。
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |
|---|---|---|---|---|---|---|
| currentVersion | Version | ✓ | 現在のバージョン このスケジュール期間中に利用可能な最新バージョンです。「active」スコープでユーザーが更新を承認する際に現在のバージョンを通知するために使用されます。 | |||
| warningVersion | Version | ✓ | バージョンアップを促すバージョン このスケジュール期間中にアップグレード通知を表示する最低バージョン閾値です。ログインは許可されますがユーザーにアップグレードが促されます。 | |||
| errorVersion | Version | ✓ | バージョンチェックでエラーになるバージョン このスケジュール期間中にログインを許可する最低バージョン閾値です。クライアントのバージョンがこの値を下回る場合、バージョンチェックがエラーとなりログインがブロックされます。 | |||
| scheduleEventId | string | ~ 1024文字 | バージョンチェックを有効化する期間を設定した GS2-Schedule のイベント
GRN このバージョン閾値セットが有効になる期間を制御する GS2-Schedule のイベントを指定します。ここで定義されたバージョンチェック設定は、指定したイベントがアクティブな期間にのみ適用されます。 |