Master Data Reference of GS2-Formation
Reference of the format of master data and various models to be imported
{
"version": "2019-09-09",
"moldModels": [
{
"name": "[string]Form storage area model name",
"metadata": "[string?]Metadata",
"initialMaxCapacity": "[int]Initial capacity to store forms",
"maxCapacity": "[int]Maximum capacity to store forms",
"formModel": {
"formModelId": "[string]Form model GRN",
"name": "[string]Form model name",
"metadata": "[string?]Metadata",
"slots": [
{
"name": "[string]Slot model name",
"propertyRegex": "[string]Regular expressions for values that can be set as properties",
"metadata": "[string?]Metadata"
}
]
}
}
],
"propertyFormModels": [
{
"name": "[string]Property form model name",
"metadata": "[string?]Metadata",
"slots": [
{
"name": "[string]Slot model name",
"propertyRegex": "[string]Regular expressions for values that can be set as properties",
"metadata": "[string?]Metadata"
}
]
}
]
}
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| version | | | ✓ | 2019-09-09 | | Format version of master data |
| moldModels | List<MoldModel> | | | | ~ 100 items | Area for storing forms If it is a party composition, it is intended to be saved in the form of “fire attribute party” or “water attribute party”. The number of areas that can be saved can be limited or expanded individually. |
| propertyFormModels | List<PropertyFormModel> | | | | ~ 100 items | Property Form Model An entity that represents the composition status. The difference between Mold / Form is that Mold / Form defines the number of slots and records the composition in each slot, and Property Form is used to represent compositions that are difficult to determine the number of slots in advance, such as setting skills for owned equipment. |
Slot
Slot
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| name | string | | ✓ | | ~ 128 chars | Slot model name |
| propertyId | string | | | | ~ 1024 chars | Property ID |
| metadata | string | | | | ~ 1024 chars | Metadata |
SlotWithSignature
Signature Slot
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| name | string | | ✓ | | ~ 128 chars | Slot model name |
| propertyType | String Enum enum { “gs2_inventory”, “gs2_simple_inventory”, “gs2_dictionary” }
| | ✓ | | ~ 128 chars | Property Type| Enumerator String Definition | Description |
|---|
| “gs2_inventory” | GS2-Inventory::ItemSet | | “gs2_simple_inventory” | GS2-Inventory::SimpleItem | | “gs2_dictionary” | GS2-Dictionary::Entry |
|
| body | string | | | | ~ 1048576 chars | payload |
| signature | string | | | | ~ 1024 chars | Signature that proves ownership of the resource for the property ID |
| metadata | string | | | | ~ 1024 chars | Metadata |
AcquireAction
Acquire Action
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| action | String Enum enum { "Gs2AdReward:AcquirePointByUserId", "Gs2Dictionary:AddEntriesByUserId", "Gs2Enchant:ReDrawBalanceParameterStatusByUserId", "Gs2Enchant:SetBalanceParameterStatusByUserId", "Gs2Enchant:ReDrawRarityParameterStatusByUserId", "Gs2Enchant:AddRarityParameterStatusByUserId", "Gs2Enchant:SetRarityParameterStatusByUserId", "Gs2Enhance:DirectEnhanceByUserId", "Gs2Enhance:UnleashByUserId", "Gs2Enhance:CreateProgressByUserId", "Gs2Exchange:ExchangeByUserId", "Gs2Exchange:IncrementalExchangeByUserId", "Gs2Exchange:CreateAwaitByUserId", "Gs2Exchange:AcquireForceByUserId", "Gs2Exchange:SkipByUserId", "Gs2Experience:AddExperienceByUserId", "Gs2Experience:SetExperienceByUserId", "Gs2Experience:AddRankCapByUserId", "Gs2Experience:SetRankCapByUserId", "Gs2Experience:MultiplyAcquireActionsByUserId", "Gs2Formation:AddMoldCapacityByUserId", "Gs2Formation:SetMoldCapacityByUserId", "Gs2Formation:AcquireActionsToFormProperties", "Gs2Formation:SetFormByUserId", "Gs2Formation:AcquireActionsToPropertyFormProperties", "Gs2Friend:UpdateProfileByUserId", "Gs2Grade:AddGradeByUserId", "Gs2Grade:ApplyRankCapByUserId", "Gs2Grade:MultiplyAcquireActionsByUserId", "Gs2Guild:IncreaseMaximumCurrentMaximumMemberCountByGuildName", "Gs2Guild:SetMaximumCurrentMaximumMemberCountByGuildName", "Gs2Idle:IncreaseMaximumIdleMinutesByUserId", "Gs2Idle:SetMaximumIdleMinutesByUserId", "Gs2Idle:ReceiveByUserId", "Gs2Inbox:SendMessageByUserId", "Gs2Inventory:AddCapacityByUserId", "Gs2Inventory:SetCapacityByUserId", "Gs2Inventory:AcquireItemSetByUserId", "Gs2Inventory:AcquireItemSetWithGradeByUserId", "Gs2Inventory:AddReferenceOfByUserId", "Gs2Inventory:DeleteReferenceOfByUserId", "Gs2Inventory:AcquireSimpleItemsByUserId", "Gs2Inventory:SetSimpleItemsByUserId", "Gs2Inventory:AcquireBigItemByUserId", "Gs2Inventory:SetBigItemByUserId", "Gs2JobQueue:PushByUserId", "Gs2Limit:CountDownByUserId", "Gs2Limit:DeleteCounterByUserId", "Gs2LoginReward:DeleteReceiveStatusByUserId", "Gs2LoginReward:UnmarkReceivedByUserId", "Gs2Lottery:DrawByUserId", "Gs2Lottery:ResetBoxByUserId", "Gs2Mission:RevertReceiveByUserId", "Gs2Mission:IncreaseCounterByUserId", "Gs2Mission:SetCounterByUserId", "Gs2Money:DepositByUserId", "Gs2Money:RevertRecordReceipt", "Gs2Money2:DepositByUserId", "Gs2Quest:CreateProgressByUserId", "Gs2Schedule:TriggerByUserId", "Gs2Schedule:ExtendTriggerByUserId", "Gs2Script:InvokeScript", "Gs2SerialKey:RevertUseByUserId", "Gs2SerialKey:IssueOnce", "Gs2Showcase:DecrementPurchaseCountByUserId", "Gs2Showcase:ForceReDrawByUserId", "Gs2SkillTree:MarkReleaseByUserId", "Gs2Stamina:RecoverStaminaByUserId", "Gs2Stamina:RaiseMaxValueByUserId", "Gs2Stamina:SetMaxValueByUserId", "Gs2Stamina:SetRecoverIntervalByUserId", "Gs2Stamina:SetRecoverValueByUserId", "Gs2StateMachine:StartStateMachineByUserId", }
| | ✓ | | ~ 128 chars | Types of actions to be performed in the acquire action |
| request | string | | ✓ | | ~ 524288 chars | JSON of request |
VerifyActionResult
Verify action execution result
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| action | String Enum enum { "Gs2Dictionary:VerifyEntryByUserId", "Gs2Distributor:IfExpressionByUserId", "Gs2Distributor:AndExpressionByUserId", "Gs2Distributor:OrExpressionByUserId", "Gs2Enchant:VerifyRarityParameterStatusByUserId", "Gs2Experience:VerifyRankByUserId", "Gs2Experience:VerifyRankCapByUserId", "Gs2Grade:VerifyGradeByUserId", "Gs2Grade:VerifyGradeUpMaterialByUserId", "Gs2Guild:VerifyCurrentMaximumMemberCountByGuildName", "Gs2Guild:VerifyIncludeMemberByUserId", "Gs2Inventory:VerifyInventoryCurrentMaxCapacityByUserId", "Gs2Inventory:VerifyItemSetByUserId", "Gs2Inventory:VerifyReferenceOfByUserId", "Gs2Inventory:VerifySimpleItemByUserId", "Gs2Inventory:VerifyBigItemByUserId", "Gs2Limit:VerifyCounterByUserId", "Gs2Matchmaking:VerifyIncludeParticipantByUserId", "Gs2Mission:VerifyCompleteByUserId", "Gs2Mission:VerifyCounterValueByUserId", "Gs2Ranking2:VerifyGlobalRankingScoreByUserId", "Gs2Ranking2:VerifyClusterRankingScoreByUserId", "Gs2Ranking2:VerifySubscribeRankingScoreByUserId", "Gs2Schedule:VerifyTriggerByUserId", "Gs2Schedule:VerifyEventByUserId", "Gs2SerialKey:VerifyCodeByUserId", "Gs2Stamina:VerifyStaminaValueByUserId", "Gs2Stamina:VerifyStaminaMaxValueByUserId", "Gs2Stamina:VerifyStaminaRecoverIntervalMinutesByUserId", "Gs2Stamina:VerifyStaminaRecoverValueByUserId", "Gs2Stamina:VerifyStaminaOverflowValueByUserId", }
| | ✓ | | ~ 128 chars | Types of actions to be performed in the verify task |
| verifyRequest | string | | ✓ | | ~ 524288 chars | JSON of request |
| statusCode | int | | | | 0 ~ 999 | Status code |
| verifyResult | string | | | | ~ 1048576 chars | Result payload |
ConsumeActionResult
Consume action execution result
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| action | String Enum enum { "Gs2AdReward:ConsumePointByUserId", "Gs2Dictionary:DeleteEntriesByUserId", "Gs2Enhance:DeleteProgressByUserId", "Gs2Exchange:DeleteAwaitByUserId", "Gs2Experience:SubExperienceByUserId", "Gs2Experience:SubRankCapByUserId", "Gs2Formation:SubMoldCapacityByUserId", "Gs2Grade:SubGradeByUserId", "Gs2Guild:DecreaseMaximumCurrentMaximumMemberCountByGuildName", "Gs2Idle:DecreaseMaximumIdleMinutesByUserId", "Gs2Inbox:OpenMessageByUserId", "Gs2Inbox:DeleteMessageByUserId", "Gs2Inventory:ConsumeItemSetByUserId", "Gs2Inventory:ConsumeSimpleItemsByUserId", "Gs2Inventory:ConsumeBigItemByUserId", "Gs2JobQueue:DeleteJobByUserId", "Gs2Limit:CountUpByUserId", "Gs2LoginReward:MarkReceivedByUserId", "Gs2Mission:ReceiveByUserId", "Gs2Mission:BatchReceiveByUserId", "Gs2Mission:DecreaseCounterByUserId", "Gs2Mission:ResetCounterByUserId", "Gs2Money:WithdrawByUserId", "Gs2Money:RecordReceipt", "Gs2Money2:WithdrawByUserId", "Gs2Money2:VerifyReceiptByUserId", "Gs2Quest:DeleteProgressByUserId", "Gs2Ranking2:CreateGlobalRankingReceivedRewardByUserId", "Gs2Ranking2:CreateClusterRankingReceivedRewardByUserId", "Gs2Schedule:DeleteTriggerByUserId", "Gs2SerialKey:UseByUserId", "Gs2Showcase:IncrementPurchaseCountByUserId", "Gs2SkillTree:MarkRestrainByUserId", "Gs2Stamina:DecreaseMaxValueByUserId", "Gs2Stamina:ConsumeStaminaByUserId", }
| | ✓ | | ~ 128 chars | Types of actions to be performed in the consume action |
| consumeRequest | string | | ✓ | | ~ 524288 chars | JSON of request |
| statusCode | int | | | | 0 ~ 999 | Status code |
| consumeResult | string | | | | ~ 1048576 chars | Result payload |
AcquireActionResult
Acquire action execution result
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| action | String Enum enum { "Gs2AdReward:AcquirePointByUserId", "Gs2Dictionary:AddEntriesByUserId", "Gs2Enchant:ReDrawBalanceParameterStatusByUserId", "Gs2Enchant:SetBalanceParameterStatusByUserId", "Gs2Enchant:ReDrawRarityParameterStatusByUserId", "Gs2Enchant:AddRarityParameterStatusByUserId", "Gs2Enchant:SetRarityParameterStatusByUserId", "Gs2Enhance:DirectEnhanceByUserId", "Gs2Enhance:UnleashByUserId", "Gs2Enhance:CreateProgressByUserId", "Gs2Exchange:ExchangeByUserId", "Gs2Exchange:IncrementalExchangeByUserId", "Gs2Exchange:CreateAwaitByUserId", "Gs2Exchange:AcquireForceByUserId", "Gs2Exchange:SkipByUserId", "Gs2Experience:AddExperienceByUserId", "Gs2Experience:SetExperienceByUserId", "Gs2Experience:AddRankCapByUserId", "Gs2Experience:SetRankCapByUserId", "Gs2Experience:MultiplyAcquireActionsByUserId", "Gs2Formation:AddMoldCapacityByUserId", "Gs2Formation:SetMoldCapacityByUserId", "Gs2Formation:AcquireActionsToFormProperties", "Gs2Formation:SetFormByUserId", "Gs2Formation:AcquireActionsToPropertyFormProperties", "Gs2Friend:UpdateProfileByUserId", "Gs2Grade:AddGradeByUserId", "Gs2Grade:ApplyRankCapByUserId", "Gs2Grade:MultiplyAcquireActionsByUserId", "Gs2Guild:IncreaseMaximumCurrentMaximumMemberCountByGuildName", "Gs2Guild:SetMaximumCurrentMaximumMemberCountByGuildName", "Gs2Idle:IncreaseMaximumIdleMinutesByUserId", "Gs2Idle:SetMaximumIdleMinutesByUserId", "Gs2Idle:ReceiveByUserId", "Gs2Inbox:SendMessageByUserId", "Gs2Inventory:AddCapacityByUserId", "Gs2Inventory:SetCapacityByUserId", "Gs2Inventory:AcquireItemSetByUserId", "Gs2Inventory:AcquireItemSetWithGradeByUserId", "Gs2Inventory:AddReferenceOfByUserId", "Gs2Inventory:DeleteReferenceOfByUserId", "Gs2Inventory:AcquireSimpleItemsByUserId", "Gs2Inventory:SetSimpleItemsByUserId", "Gs2Inventory:AcquireBigItemByUserId", "Gs2Inventory:SetBigItemByUserId", "Gs2JobQueue:PushByUserId", "Gs2Limit:CountDownByUserId", "Gs2Limit:DeleteCounterByUserId", "Gs2LoginReward:DeleteReceiveStatusByUserId", "Gs2LoginReward:UnmarkReceivedByUserId", "Gs2Lottery:DrawByUserId", "Gs2Lottery:ResetBoxByUserId", "Gs2Mission:RevertReceiveByUserId", "Gs2Mission:IncreaseCounterByUserId", "Gs2Mission:SetCounterByUserId", "Gs2Money:DepositByUserId", "Gs2Money:RevertRecordReceipt", "Gs2Money2:DepositByUserId", "Gs2Quest:CreateProgressByUserId", "Gs2Schedule:TriggerByUserId", "Gs2Schedule:ExtendTriggerByUserId", "Gs2Script:InvokeScript", "Gs2SerialKey:RevertUseByUserId", "Gs2SerialKey:IssueOnce", "Gs2Showcase:DecrementPurchaseCountByUserId", "Gs2Showcase:ForceReDrawByUserId", "Gs2SkillTree:MarkReleaseByUserId", "Gs2Stamina:RecoverStaminaByUserId", "Gs2Stamina:RaiseMaxValueByUserId", "Gs2Stamina:SetMaxValueByUserId", "Gs2Stamina:SetRecoverIntervalByUserId", "Gs2Stamina:SetRecoverValueByUserId", "Gs2StateMachine:StartStateMachineByUserId", }
| | ✓ | | ~ 128 chars | Types of actions to be performed in the acquire action |
| acquireRequest | string | | ✓ | | ~ 524288 chars | JSON of request |
| statusCode | int | | | | 0 ~ 999 | Status code |
| acquireResult | string | | | | ~ 1048576 chars | Result payload |
TransactionResult
Transaction execution results
Transaction execution results executed using server-side transaction auto-execution functionality
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| transactionId | string | | ✓ | | 36 ~ 36 chars | Transaction ID |
| verifyResults | List<VerifyActionResult> | | | | 0 ~ 10 items | List of verify action execution results |
| consumeResults | List<ConsumeActionResult> | | | [] | 0 ~ 10 items | List of consume action execution results |
| acquireResults | List<AcquireActionResult> | | | [] | 0 ~ 100 items | List of acquire action execution results |
| hasError | bool | | ✓ | false | | Whether an error occurred during transaction execution |
Form Model
This entity represents the form status.
You can define slots as areas that can be formed.
For weapons and armor, parts such as “right hand”, “left hand”, “body”, and “arm” can be used as slots,
and for parties, positions such as “vanguard”, “midfield”, and “rear guard” can be expressed as slots.
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| formModelId | string | | ✓ | | ~ 1024 chars | Form model GRN |
| name | string | | ✓ | | ~ 128 chars | Form model name |
| metadata | string | | | | ~ 2048 chars | Metadata |
| slots | List<SlotModel> | | ✓ | | 1 ~ 10 items | List of Slot Model |
MoldModel
Area for storing forms
If it is a party composition, it is intended to be saved in the form of “fire attribute party” or “water attribute party”.
The number of areas that can be saved can be limited or expanded individually.
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| moldModelId | string | | ✓ | | ~ 1024 chars | Form storage area GRN |
| name | string | | ✓ | | ~ 128 chars | Form storage area model name |
| metadata | string | | | | ~ 2048 chars | Metadata |
| initialMaxCapacity | int | | ✓ | | 1 ~ 2147483646 | Initial capacity to store forms |
| maxCapacity | int | | ✓ | | 1 ~ 2147483646 | Maximum capacity to store forms |
| formModel | FormModel | | ✓ | | | |
Property Form Model
An entity that represents the composition status.
The difference between Mold / Form is that Mold / Form defines the number of slots and records the composition in each slot,
and Property Form is used to represent compositions that are difficult to determine the number of slots in advance, such as setting skills for owned equipment.
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| propertyFormModelId | string | | ✓ | | ~ 1024 chars | Property form model GRN |
| name | string | | ✓ | | ~ 128 chars | Property form model name |
| metadata | string | | | | ~ 2048 chars | Metadata |
| slots | List<SlotModel> | | ✓ | | 1 ~ 10 items | List of Slot Model |
SlotModel
Slot Model
| Type | Condition | Required | Default | Value Limits | Description |
|---|
| name | string | | ✓ | | ~ 128 chars | Slot model name |
| propertyRegex | string | | ✓ | “.*” | ~ 512 chars | Regular expressions for values that can be set as properties |
| metadata | string | | | | ~ 512 chars | Metadata |