GS2-Inventory
GS2-Deploy のテンプレートで使用できるリソース定義のリファレンス
GS2-Deploy リファレンス
エンティティ
Namespace
Namespace
Type: GS2::Inventory::Namespace
Properties:
Name: namespace1
Description: null
AcquireScript: null
OverflowScript: null
ConsumeScript: null
LogSetting:
LoggingNamespaceId: grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1
ネームスペース
ネームスペースは一つのプロジェクトで同じサービスを異なる用途で複数利用できるようにするための仕組みです。
GS2 のサービスは基本的にネームスペースというレイヤーがあり、ネームスペースが異なれば同じサービスでもまったく別のデータ空間として取り扱われます。
そのため、各サービスの利用を開始するにあたってネームスペースを作成する必要があります。
型 | 必須 | デフォルト | 値の制限 | 説明 | |
---|---|---|---|---|---|
name | string | ✓ | ~ 32文字 | ネームスペース名 | |
description | string | ~ 1024文字 | 説明文 | ||
acquireScript | ScriptSetting | アイテム入手したときに実行するスクリプト | |||
overflowScript | ScriptSetting | 入手上限に当たって入手できなかったときに実行するスクリプト | |||
consumeScript | ScriptSetting | アイテム消費するときに実行するスクリプト | |||
logSetting | LogSetting | ログの出力設定 |
InventoryModelMaster
InventoryModelMaster
Type: GS2::Inventory::InventoryModelMaster
Properties:
NamespaceName: namespace1
Name: item
Description: null
Metadata: null
InitialCapacity: 50
MaxCapacity: 100
ProtectReferencedItem: null
インベントリモデルマスター
インベントリはゲームプレイヤーが所有しているアイテムを格納する鞄のようなものです。
インベントリには容量が設定でき、容量を超えては所有できません。
インベントリの容量は拡張することができます。
スタンプシートの報酬に設定ができますので、スタンプシートを使用して報酬を付与できる手段であれば、拡張の方法は問いません。
型 | 必須 | デフォルト | 値の制限 | 説明 | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32文字 | ネームスペース名 | |
name | string | ✓ | ~ 128文字 | インベントリモデル名 | |
description | string | ~ 1024文字 | 説明文 | ||
metadata | string | ~ 128文字 | メタデータ | ||
initialCapacity | int | ✓ | ~ 2147483646 | 初期サイズ | |
maxCapacity | int | ✓ | ~ 2147483646 | 最大サイズ | |
protectReferencedItem | bool | ✓ | false | 参照元が登録されているアイテムセットは削除できなくする |
ItemModelMaster
ItemModelMaster
Type: GS2::Inventory::ItemModelMaster
Properties:
NamespaceName: namespace1
InventoryName: item
Name: item-master-0001
Description: null
Metadata: null
StackingLimit: 99
AllowMultipleStacks: false
SortValue: 10
アイテムモデルマスター
アイテムは ポーション×99
のようにインベントリの1容量に対して複数所有できます。
1容量で複数所有している状態を アイテムをスタック
する。と呼び、アイテムごとにスタックできる最大数量を指定できます。
スタックできる最大数量に達したとき、新しくインベントリの容量を確保して所有することができるか、入手することが出来なくなるかをアイテムごとに設定できます。
型 | 必須 | デフォルト | 値の制限 | 説明 | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32文字 | ネームスペース名 | |
inventoryName | string | ✓ | ~ 128文字 | インベントリモデル名 | |
name | string | ✓ | ~ 128文字 | アイテムモデル名 | |
description | string | ~ 1024文字 | 説明文 | ||
metadata | string | ~ 128文字 | メタデータ | ||
stackingLimit | long | ✓ | 1 ~ 9223372036854775806 | スタック可能な最大数量 | |
allowMultipleStacks | bool | ✓ | スタック可能な最大数量を超えた時複数枠にアイテムを保管することを許すか | ||
sortValue | int | ✓ | ~ 2147483646 | 表示順番 |
CurrentItemModelMaster
CurrentItemModelMaster
Type: GS2::Inventory::CurrentItemModelMaster
Properties:
NamespaceName: namespace1
Settings: {
"version": "2019-02-05",
"inventoryModels": [
{
"name": "item",
"metadata": "INVENTORY_ITEM",
"initialCapacity": 100,
"maxCapacity": 999,
"itemModels": [
{
"name": "item-0001",
"metadata": "ITEM_0001",
"stackingLimit": 99,
"allowMultipleStacks": false,
"sortValue": 1
},
{
"name": "item-0002",
"metadata": "ITEM_0002",
"stackingLimit": 49,
"allowMultipleStacks": true,
"sortValue": 2
},
{
"name": "item-0003",
"metadata": "ITEM_0003",
"stackingLimit": 9,
"allowMultipleStacks": false,
"sortValue": 3
}
]
},
{
"name": "character",
"metadata": "INVENTORY_CHARACTER",
"initialCapacity": 50,
"maxCapacity": 99,
"itemModels": [
{
"name": "character-0001",
"metadata": "CHARACTER_0001",
"stackingLimit": 99,
"allowMultipleStacks": false,
"sortValue": 1
},
{
"name": "character-0002",
"metadata": "CHARACTER_0002",
"stackingLimit": 49,
"allowMultipleStacks": true,
"sortValue": 2
},
{
"name": "character-0003",
"metadata": "CHARACTER_0003",
"stackingLimit": 9,
"allowMultipleStacks": false,
"sortValue": 3
}
]
}
]
}
現在有効なマスターデータ
GS2ではマスターデータの管理にJSON形式のファイルを使用します。
ファイルをアップロードすることで、実際にサーバーに設定を反映することができます。
JSONファイルを作成する方法として、マネージメントコンソール上でのマスターデータエディタを提供していますが
よりゲームの運営に相応しいツールを作成し、適切なフォーマットのJSONファイルを書き出すことでもサービスを利用可能です。
JSONファイルの形式についてはドキュメントを参照ください。
型 | 必須 | デフォルト | 値の制限 | 説明 | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32文字 | ネームスペース名 | |
settings | string | ✓ | ~ 5242880文字 | マスターデータ |