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",
"resetType": "[string?]Target Reset timing",
"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"
}
],
"counters": [
{
"name": "[string]Counter Name",
"metadata": "[string?]metadata",
"scopes": [
{
"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"
}
],
"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> | ~ 10 items | Mission Group Model | |||
counters | List<CounterModel> | ~ 1000 items | Counter Model |
CounterScopeModel
Counter Reset Timing Model
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
resetType | enum [ “notReset”, “daily”, “weekly”, “monthly” ] | ✓ | ~ 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 |
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 ~ 100 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” ] | ✓ | “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 |
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 |
ScopedValue
Reset timing
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
resetType | enum [ “notReset”, “daily”, “weekly”, “monthly” ] | ✓ | ~ 128 chars | Reset timing | ||
value | long | ✓ | 0 | ~ 9223372036854775805 | Count value | |
nextResetAt | long | Next reset timing | ||||
updatedAt | long | ✓ | Datetime of last update |
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 | ||
resetType | enum [ “notReset”, “daily”, “weekly”, “monthly” ] | ~ 128 chars | Target Reset timing | |||
value | long | ✓ | 1 ~ 9223372036854775805 | Target value |
AcquireAction
Acquire Action
ConsumeAction
Consume Action
VerifyAction
Verify Action
Type | Condition | Require | Default | Limitation | Description | |
---|---|---|---|---|---|---|
action | enum [ "Gs2Dictionary:VerifyEntryByUserId", "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", "Gs2Mission:VerifyCompleteByUserId", "Gs2Mission:VerifyCounterValueByUserId", "Gs2Schedule:VerifyEventByUserId", ] | ✓ | ~ 128 chars | Types of actions to be performed in the verify task | ||
request | string | ✓ | ~ 1048576 chars | JSON of request |