NAV
GS2-Deploy

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文字 マスターデータ