Master Data Reference of GS2-Mission
{
"version": "2019-05-28",
"groups": [
{
"name": "[string]Mission Group Name",
"metadata": "[string?]metadata",
"tasks": [
{
"missionTaskId": "[string]Mission Task GRN",
"name": "[string]Task Name",
"metadata": "[string?]metadata",
"verifyCompleteType": "[string]Completion criteria type",
"targetCounter": {
"counterName": "[string]Counter Name",
"scopeType": "[string]Scope type",
"resetType": "[string?]Target Reset timing",
"conditionName": "[string]Condition Name",
"value": "[long]Target value"
},
"verifyCompleteConsumeActions": [
{
"action": "[string]Types of actions to be performed in the verify task",
"request": "[string]JSON of request"
}
],
"completeAcquireActions": [
{
"action": "[string]Types of actions to be performed in the acquire action",
"request": "[string]JSON of request"
}
],
"challengePeriodEventId": "[string?]GS2-Schedule event GRN with a set period of time during which rewards can be received",
"premiseMissionTaskName": "[string?]Name of the tasks accomplish to attempt this task",
"counterName": "[string]Counter Name",
"targetResetType": "[string?]Target Reset timing",
"targetValue": "[long]Target value"
}
],
"resetType": "[string]Reset timing",
"resetDayOfMonth": "[int]Date to reset (If the value exceeds the days of the month, it is treated as the last day.)",
"resetDayOfWeek": "[string]Day of the week to reset",
"resetHour": "[int]Hour of Reset",
"completeNotificationNamespaceId": "[string?]Namespace GRN",
"anchorTimestamp": "[long]Anchor date to elapsed days",
"days": "[int]Number of days to reset"
}
],
"counters": [
{
"name": "[string]Counter Name",
"metadata": "[string?]metadata",
"scopes": [
{
"scopeType": "[string]Scope type",
"resetType": "[string]Reset timing",
"resetDayOfMonth": "[int]Date to reset (If the value exceeds the days of the month, it is treated as the last day.)",
"resetDayOfWeek": "[string]Day of the week to reset",
"resetHour": "[int]Hour of Reset",
"conditionName": "[string]Condition Name",
"condition": {
"action": "[string]Types of actions to be performed in the verify task",
"request": "[string]JSON of request"
},
"anchorTimestamp": "[long]Anchor date to elapsed days",
"days": "[int]Number of days to reset"
}
],
"challengePeriodEventId": "[string?]GS2-Schedule event GRN that sets the period during which the counter can be operated."
}
]
}
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
version | ✓ | 2019-05-28 | Format version of master data | |||
groups | List<MissionGroupModel> | ~ 20 items | Mission Group Model | |||
counters | List<CounterModel> | ~ 1000 items | Counter Model |
CounterScopeModel
Counter Reset Timing Model
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
scopeType | enum { “resetTiming”, “verifyAction” } | ✓ | “resetTiming” | ~ 128 chars | Scope type | |
resetType | enum { “notReset”, “daily”, “weekly”, “monthly”, “days” } | ✓ | “notReset” | ~ 128 chars | Reset timing | |
resetDayOfMonth | int | {resetType} == “monthly” | ✓ | 1 ~ 31 | Date to reset (If the value exceeds the days of the month, it is treated as the last day.) | |
resetDayOfWeek | enum { “sunday”, “monday”, “tuesday”, “wednesday”, “thursday”, “friday”, “saturday” } | {resetType} == “weekly” | ✓ | ~ 128 chars | Day of the week to reset | |
resetHour | int | {resetType} in [“monthly”, “weekly”, “daily”] | ✓ | ~ 23 | Hour of Reset | |
conditionName | string | {scopeType} == “verifyAction” | ✓ | ~ 128 chars | Condition Name | |
condition | VerifyAction | {scopeType} == “verifyAction” | ✓ | Condition | ||
anchorTimestamp | long | {resetType} == “days” | ✓ | Anchor date to elapsed days (Unix time unit:milliseconds) | ||
days | int | {resetType} == “days” | ✓ | 1 ~ 2147483646 | Number of days to reset |
Enumeration type definition to specify as scopeType
Enumerator String Definition | Description |
---|---|
resetTiming | Reset timing |
verifyAction | Verify action |
Enumeration type definition to specify as resetType
Enumerator String Definition | Description |
---|---|
notReset | Not resetting. |
daily | Daily |
weekly | Weekly |
monthly | Monthly |
days | Every certain number of days |
Enumeration type definition to specify as resetDayOfWeek
Enumerator String Definition | Description |
---|---|
sunday | Sunday |
monday | Monday |
tuesday | Tuesday |
wednesday | Wednesday |
thursday | Thuesday |
friday | Friday |
saturday | Saturday |
CounterModel
Counter Model
The counter model is an entity that can be set as a condition for accomplishing mission tasks. Since counter values can be referenced by multiple mission groups, a single counter can be set as an accomplishment condition for multiple mission groups, such as weekly and daily missions.
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
counterId | string | ✓ | ~ 1024 chars | Counter Model GRN | ||
name | string | ✓ | ~ 128 chars | Counter Name | ||
metadata | string | ~ 1024 chars | metadata | |||
scopes | List<CounterScopeModel> | ✓ | [] | 1 ~ 20 items | List of Counter reset timing | |
challengePeriodEventId | string | ~ 1024 chars | GS2-Schedule event GRN that sets the period during which the counter can be operated. |
MissionGroupModel
Mission Group Model
A mission group is an entity that groups tasks by counter reset timing. For example, one group for daily missions. One group for Weekly Mission.
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
missionGroupId | string | ✓ | ~ 1024 chars | Mission Group GRN | ||
name | string | ✓ | ~ 128 chars | Mission Group Name | ||
metadata | string | ~ 1024 chars | metadata | |||
tasks | List<MissionTaskModel> | [] | ~ 1000 items | List of Mission Task | ||
resetType | enum { “notReset”, “daily”, “weekly”, “monthly”, “days” } | ✓ | “notReset” | ~ 128 chars | Reset timing | |
resetDayOfMonth | int | {resetType} == “monthly” | ✓ | 1 ~ 31 | Date to reset (If the value exceeds the days of the month, it is treated as the last day.) | |
resetDayOfWeek | enum { “sunday”, “monday”, “tuesday”, “wednesday”, “thursday”, “friday”, “saturday” } | {resetType} == “weekly” | ✓ | ~ 128 chars | Day of the week to reset | |
resetHour | int | {resetType} in [“monthly”, “weekly”, “daily”] | ✓ | ~ 23 | Hour of Reset | |
completeNotificationNamespaceId | string | ~ 1024 chars | Namespace GRN | |||
anchorTimestamp | long | {resetType} == “days” | ✓ | Anchor date to elapsed days (Unix time unit:milliseconds) | ||
days | int | {resetType} == “days” | ✓ | 1 ~ 2147483646 | Number of days to reset |
Enumeration type definition to specify as resetType
Enumerator String Definition | Description |
---|---|
notReset | Not resetting. |
daily | Daily |
weekly | Weekly |
monthly | Monthly |
days | Every certain number of days |
Enumeration type definition to specify as resetDayOfWeek
Enumerator String Definition | Description |
---|---|
sunday | Sunday |
monday | Monday |
tuesday | Tuesday |
wednesday | Wednesday |
thursday | Thuesday |
friday | Friday |
saturday | Saturday |
MissionTaskModel
Mission Task Model Master
A mission task is an entity that defines the conditions under which a reward will be given if the value of the associated counter exceeds a certain level.
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
missionTaskId | string | ✓ | ~ 1024 chars | Mission Task GRN | ||
name | string | ✓ | ~ 128 chars | Task Name | ||
metadata | string | ~ 1024 chars | metadata | |||
verifyCompleteType | enum { “counter”, “verifyActions” } | ✓ | “counter” | ~ 128 chars | Completion criteria type | |
targetCounter | TargetCounterModel | {verifyCompleteType} == “counter” | ✓ | Target Counter | ||
verifyCompleteConsumeActions | List<VerifyAction> | {verifyCompleteType} == “consumeActions” | [] | ~ 10 items | Verify actions when task is accomplished | |
completeAcquireActions | List<AcquireAction> | [] | ~ 100 items | Rewards for mission accomplishment | ||
challengePeriodEventId | string | ~ 1024 chars | GS2-Schedule event GRN with a set period of time during which rewards can be received | |||
premiseMissionTaskName | string | ~ 128 chars | Name of the tasks accomplish to attempt this task |
Enumeration type definition to specify as verifyCompleteType
Enumerator String Definition | Description |
---|---|
counter | Counter |
verifyActions | Verify Actions |
ScopedValue
Reset timing
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
scopeType | enum { “resetTiming”, “verifyAction” } | ✓ | “resetTiming” | ~ 128 chars | Scope type | |
resetType | enum { “notReset”, “daily”, “weekly”, “monthly”, “days” } | {scopeType} == “resetTiming” | ✓ | ~ 128 chars | Reset timing | |
conditionName | string | {scopeType} == “verifyAction” | ✓ | ~ 128 chars | Condition Name | |
value | long | ✓ | 0 | ~ 9223372036854775805 | Count value | |
nextResetAt | long | Next reset timing (Unix time unit:milliseconds) | ||||
updatedAt | long | ✓ | Now | Datetime of last update (Unix time unit:milliseconds) |
Enumeration type definition to specify as scopeType
Enumerator String Definition | Description |
---|---|
resetTiming | Reset timing |
verifyAction | Verify action |
Enumeration type definition to specify as resetType
Enumerator String Definition | Description |
---|---|
notReset | Not resetting. |
daily | Daily |
weekly | Weekly |
monthly | Monthly |
days | Every certain number of days |
TargetCounterModel
Target Counter
Information about the counter that serves as the achievement goal for the mission
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
counterName | string | ✓ | ~ 128 chars | Counter Name | ||
scopeType | enum { “resetTiming”, “verifyAction” } | ✓ | “resetTiming” | ~ 128 chars | Scope type | |
resetType | enum { “notReset”, “daily”, “weekly”, “monthly”, “days” } | {scopeType} == “resetTiming” | ~ 128 chars | Target Reset timing | ||
conditionName | string | {scopeType} == “verifyAction” | ✓ | ~ 128 chars | Condition Name | |
value | long | ✓ | ~ 9223372036854775805 | Target value |
Enumeration type definition to specify as scopeType
Enumerator String Definition | Description |
---|---|
resetTiming | Reset timing |
verifyAction | Verify action |
Enumeration type definition to specify as resetType
Enumerator String Definition | Description |
---|---|
notReset | Not resetting. |
daily | Daily |
weekly | Weekly |
monthly | Monthly |
days | Every certain number of days |
AcquireAction
Acquire Action
ConsumeAction
Consume Action
VerifyAction
Verify Action
VerifyActionResult
Verify action execution result
ConsumeActionResult
Consume action execution result
AcquireActionResult
Acquire action execution result
TransactionResult
Transaction execution results
Transaction execution results executed using server-side transaction auto-execution functionality
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
transactionId | string | ✓ | 36 ~ 36 chars | Transaction ID | ||
verifyResults | List<VerifyActionResult> | ~ 10 items | List of verify action execution results | |||
consumeResults | List<ConsumeActionResult> | [] | ~ 10 items | List of consume action execution results | ||
acquireResults | List<AcquireActionResult> | [] | ~ 100 items | List of acquire action execution results | ||
hasError | bool | ✓ | false | Whether an error occurred during transaction execution |