Master Data Reference of GS2-Grade

Reference of the format of master data and various models to be imported

Master Data Format

{
  "version": "2023-12-25",
  "gradeModels": [
    {
      "name": "[string]Grade Model Name",
      "metadata": "[string?]Metadata",
      "defaultGrades": [
        {
          "propertyIdRegex": "[string]Regular expression for property ID to which default value is applied",
          "defaultGradeValue": "[long]Default grade value"
        }
      ],
      "experienceModelId": "[string]GS2-Experience Experience Model GRN to link grade and rank cap",
      "gradeEntries": [
        {
          "metadata": "[string?]Metadata",
          "rankCapValue": "[long]Rank cap value to be set in GS2-Experience",
          "propertyIdRegex": "[string]Regular expression for property ID that can be used for grade up",
          "gradeUpPropertyIdRegex": "[string]Regular expression for property ID that can be used for grade up"
        }
      ],
      "acquireActionRates": [
        {
          "name": "[string]Remuneration addition table name",
          "mode": "[string]Remuneration addition table type",
          "rates": [
            "[double]Addition amount (multiplier)"
          ],
          "bigRates": [
            "[string]Addition amount (multiplier)"
          ]
        }
      ]
    }
  ]
}
TypeConditionRequiredDefaultValue LimitsDescription
versionstring
2023-12-25Format version of master data
gradeModelsList<GradeModel>~ 100 itemsGrade Model
A grade model is an entity that sets the threshold of grade required for rank advancement and for each default and maximum rank cap.

Model

GradeModel

Grade Model

A grade model is an entity that sets the threshold of grade required for rank advancement and for each default and maximum rank cap.

TypeConditionRequiredDefaultValue LimitsDescription
gradeModelIdstring
✓*
~ 1024 charsGrade Model GRN
* Automatically configured on the server
namestring
~ 128 charsGrade Model Name
Grade model-specific name. Specified using alphanumeric characters, hyphens (-), underscores (_), and periods (.).
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.
defaultGradesList<DefaultGradeModel>0 ~ 100 itemsList of Default grade model
experienceModelIdstring
~ 1024 charsGS2-Experience Experience Model GRN to link grade and rank cap
gradeEntriesList<GradeEntryModel>
1 ~ 100 itemsList of Grade Entry Models
acquireActionRatesList<AcquireActionRate>0 ~ 100 itemsList of Remuneration addition table

DefaultGradeModel

Default grade model

You can set the default grade value according to the match of the property ID regular expression when creating a new grade.

TypeConditionRequiredDefaultValue LimitsDescription
propertyIdRegexstring
~ 1024 charsRegular expression for property ID to which default value is applied
defaultGradeValuelong
0 ~ 9223372036854775805Default grade value

GradeEntryModel

Grade Entry Model

TypeConditionRequiredDefaultValue LimitsDescription
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.
rankCapValuelong
0 ~ 9223372036854775805Rank cap value to be set in GS2-Experience
propertyIdRegexstring
~ 1024 charsRegular expression for property ID that can be used for grade up
You can use the parts enclosed in parentheses in the pattern as $1/$2… in the regular expression of gradeUpPropertyIdRegex.
gradeUpPropertyIdRegexstring
~ 1024 charsRegular expression for property ID that can be used for grade up

AcquireActionRate

Remuneration addition table master

You can adjust the amount of rewards according to the rank.

TypeConditionRequiredDefaultValue LimitsDescription
namestring
~ 128 charsRemuneration addition table name
modeString Enum
enum {
  “double”,
  “big”
}
“double”Remuneration addition table type
Enumerator String DefinitionDescription
“double”Floating point number less than 2^48
“big”Floating point number less than 1024 digits
ratesList<double>{mode} == “double”
✓*
1 ~ 1000 itemsAmount added per grade (multiplier)
* Required if mode is “double”
bigRatesList<string>{mode} == “big”
✓*
1 ~ 1000 itemsAmount added per grade (multiplier)
* Required if mode is “big”