GS2-Enhance Master Data Reference

Reference for the master data format and the models to be imported

Master Data Format

{
  "version": "2020-08-22",
  "rateModels": [
    {
      "name": "[string]Enhancement Rate Model name",
      "description": "[string?]Description",
      "metadata": "[string?]Metadata",
      "targetInventoryModelId": "[string]GS2-Inventory Inventory Model GRN usable for enhancement targets",
      "acquireExperienceSuffix": "[string]Suffix to be assigned to the property ID that stores the experience value obtained from GS2-Experience",
      "materialInventoryModelId": "[string]GS2-Inventory Inventory Model GRN usable as enhancement material",
      "acquireExperienceHierarchy": [
        "[string]Hierarchical structure of JSON data defining acquisition experience values to be stored in ItemModel metadata"
      ],
      "experienceModelId": "[string]GS2-Experience Experience Model GRN gained as a result of enhancement",
      "bonusRates": [
        {
          "rate": "[float]Experience bonus multiplier (1.0 = no bonus)",
          "weight": "[int]Lottery weight"
        }
      ]
    }
  ],
  "unleashRateModels": [
    {
      "name": "[string]Unleash Rate Model name",
      "description": "[string?]Description",
      "metadata": "[string?]Metadata",
      "targetInventoryModelId": "[string]GS2-Inventory Inventory Model GRN usable for unleash targets",
      "gradeModelId": "[string]Grade Model GRN",
      "gradeEntries": [
        {
          "gradeValue": "[long]Target grade",
          "needCount": "[int]How many items of the same type to consume"
        }
      ]
    }
  ]
}
TypeConditionRequiredDefaultValue LimitsDescription
versionstring
2020-08-22Format version of master data
rateModelsList<RateModel>~ 10000 itemsEnhancement Rate Model
The enhancement rate is data that defines the materials used for enhancement and the target of enhancement.

Both material data and enhancement target data must be managed in GS2-Inventory.
The experience value obtained from the enhancement is recorded in GS2-Inventory metadata in JSON format.
Here, it is necessary to describe at which level of the metadata the experience value is stored.

A correction value can be applied to the amount of experience value that can be obtained with a certain probability of great success during enhancement.
The probability of that draw is also defined in this entity.
unleashRateModelsList<UnleashRateModel>~ 10000 itemsUnleash Rate Model
Defines the conditions for limit breaking (unleashing) items. Associates an item managed in GS2-Inventory with a GS2-Grade grade model to enable grade progression. Each grade level can require consuming a different number of duplicate items, allowing fine-grained control over the cost of each limit break step.

Model

RateModel

Enhancement Rate Model

The enhancement rate is data that defines the materials used for enhancement and the target of enhancement.

Both material data and enhancement target data must be managed in GS2-Inventory. The experience value obtained from the enhancement is recorded in GS2-Inventory metadata in JSON format. Here, it is necessary to describe at which level of the metadata the experience value is stored.

A correction value can be applied to the amount of experience value that can be obtained with a certain probability of great success during enhancement. The probability of that draw is also defined in this entity.

TypeConditionRequiredDefaultValue LimitsDescription
rateModelIdstring
*
~ 1024 charsEnhancement Rate Model GRN
* Set automatically by the server
namestring
~ 128 charsEnhancement Rate Model name
Enhancement Rate Model-specific name. Specified using alphanumeric characters, hyphens (-), underscores (_), and periods (.).
descriptionstring~ 1024 charsDescription
metadatastring~ 2048 charsMetadata
Arbitrary values can be set in the metadata.
Since they do not affect GS2’s behavior, they can be used to store information used in the game.
targetInventoryModelIdstring
~ 1024 charsGS2-Inventory Inventory Model GRN usable for enhancement targets
Specifies the GS2-Inventory inventory model that holds the items eligible for enhancement. The item to be enhanced must belong to this inventory model.
acquireExperienceSuffixstring
~ 1024 charsSuffix to be assigned to the property ID that stores the experience value obtained from GS2-Experience
A string appended to the item’s property ID to form the GS2-Experience property ID where experience is stored. This allows the same item to have multiple experience types (e.g., “level” for character level, “like” for affinity).
materialInventoryModelIdstring
~ 1024 charsGS2-Inventory Inventory Model GRN usable as enhancement material
Specifies the GS2-Inventory inventory model that holds the items usable as enhancement materials. The experience value each material provides is defined in the item model’s metadata using the JSON hierarchy specified by acquireExperienceHierarchy.
acquireExperienceHierarchyList<string>0 ~ 10 itemsHierarchical structure of JSON data defining acquisition experience values to be stored in ItemModel metadata
GS2-Enhance features a mechanism that works in conjunction with GS2-Inventory to perform enhancements. It sets the experience value when used as enhancement material in JSON format within the ItemModel metadata.
For example, to define metadata with a structure like: { “aaa”: { “bbb”: { “experienceValue”: 100 } } } Specify it as: [ “aaa”, ‘bbb’, “experienceValue” ]
Details are explained in the Microservices Introduction / GS2-Enhance section.
experienceModelIdstring
~ 1024 charsGS2-Experience Experience Model GRN gained as a result of enhancement
Specifies the GS2-Experience experience model where the experience points obtained from enhancement are recorded. The experience is added to the property identified by combining the target item’s property ID with the acquireExperienceSuffix.
bonusRatesList<BonusRate>0 ~ 1000 itemsExperience gain bonus
Defines a weighted lottery for bonus experience multipliers during enhancement. Each entry specifies a multiplier (e.g., 1.5 for 150%) and a draw weight. When enhancement is performed, one entry is selected by weighted lottery to determine whether a “great success” bonus applies to the experience gained.

BonusRate

Experience Gain Bonus

Defines a single entry in the weighted lottery for determining the experience bonus multiplier during enhancement. By configuring multiple entries with different rates and weights, you can implement “great success” or “super success” mechanics with controlled probabilities.

TypeConditionRequiredDefaultValue LimitsDescription
ratefloat1.00 ~ 10000Experience bonus multiplier (1.0 = no bonus)
The multiplier applied to the base experience value when this entry is drawn. A value of 1.0 means normal enhancement with no bonus, 1.5 means 150% experience (great success), 2.0 means 200% experience (super success), and so on.
weightint10 ~ 2147483645Lottery weight
The relative weight used in the weighted lottery when selecting the bonus rate. Higher values increase the probability of this bonus rate being selected. The actual probability is this weight divided by the sum of all weights in the bonus rate list.

UnleashRateModel

Unleash Rate Model

Defines the conditions for limit breaking (unleashing) items. Associates an item managed in GS2-Inventory with a GS2-Grade grade model to enable grade progression. Each grade level can require consuming a different number of duplicate items, allowing fine-grained control over the cost of each limit break step.

TypeConditionRequiredDefaultValue LimitsDescription
unleashRateModelIdstring
*
~ 1024 charsUnleash Rate Model GRN
* Set automatically by the server
namestring
~ 128 charsUnleash Rate Model name
Unleash Rate Model-specific name. Specified using alphanumeric characters, hyphens (-), underscores (_), and periods (.).
descriptionstring~ 1024 charsDescription
metadatastring~ 2048 charsMetadata
Arbitrary values can be set in the metadata.
Since they do not affect GS2’s behavior, they can be used to store information used in the game.
targetInventoryModelIdstring
~ 1024 charsGS2-Inventory Inventory Model GRN usable for unleash targets
Specifies the GS2-Inventory inventory model that holds the items eligible for limit breaking. The item to be unleashed and the duplicate items consumed as material must both belong to this inventory model.
gradeModelIdstring
~ 1024 charsGrade Model GRN
Specifies the GS2-Grade grade model that tracks the limit break level of the target item. When a limit break is successfully performed, the item’s grade is incremented in this grade model.
gradeEntriesList<UnleashRateEntryModel>
1 ~ 1000 itemsList of Grade Entry
Defines the material cost for each grade level of the limit break. Each entry maps a grade value to the number of duplicate items that must be consumed to reach that grade. For example, grade 1 might require 1 duplicate, grade 2 might require 3 duplicates, and so on.

UnleashRateEntryModel

Unleash Rate Entry Model

Defines the material cost for a single grade level in a limit break progression. Each entry specifies which grade value it applies to and how many duplicate items of the same type must be consumed to achieve that grade.

TypeConditionRequiredDefaultValue LimitsDescription
gradeValuelong
1 ~ 1000Target grade
The grade value that this entry defines the cost for. When performing a limit break to this grade level, the number of items specified by needCount will be consumed.
needCountint
1 ~ 1000How many items of the same type to consume
The number of duplicate items that must be consumed to perform the limit break to the target grade. These items are of the same item model as the item being unleashed.