GS2-Quest 트랜잭션 액션
검증/소비/입수 각 트랜잭션 액션의 사양
Consume Action
소비 액션
Gs2Quest:DeleteProgressByUserId
사용자 ID를 지정하여 퀘스트 진행 상황 삭제
지정한 사용자의 현재 퀘스트 진행 상황을 삭제합니다. 진행 중인 퀘스트를 취소하고 새로운 퀘스트를 시작할 수 있게 합니다.
수량 지정 가능한 액션: 아니오
반전 가능한 액션: 아니오
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2Quest:DeleteProgressByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2Quest:DeleteProgressByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("quest").consume.delete_progress_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
timeOffsetToken="[string]타임 오프셋 토큰",
})Acquire Action
입수 액션
Gs2Quest:CreateProgressByUserId
사용자 ID를 지정하여 퀘스트 진행 상황 생성
퀘스트 모델을 참조하여 퀘스트 콘텐츠 추첨을 수행하고 퀘스트를 시작합니다. 이미 진행 중인 퀘스트가 있는 경우, force 플래그가 설정되어 있지 않으면 오류를 반환합니다.
수량 지정 가능한 액션: 아니오
반전 가능한 액션: 예
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| questModelId | string | ✓ | ~ 1024자 | 시작할 퀘스트 모델 GRN | ||
| force | bool | false | 이미 시작한 퀘스트가 있는 경우 이를 파기하고 시작할지 여부 | |||
| config | List<Config> | [] | 0 ~ 32 items | 트랜잭션 변수에 적용할 설정값 | ||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2Quest:CreateProgressByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"questModelId": "[string]시작할 퀘스트 모델 GRN",
"force": "[bool]이미 시작한 퀘스트가 있는 경우 이를 파기하고 시작할지 여부",
"config": [
{
"key": "[string]이름",
"value": "[string]값"
}
],
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2Quest:CreateProgressByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
questModelId: "[string]시작할 퀘스트 모델 GRN"
force: "[bool]이미 시작한 퀘스트가 있는 경우 이를 파기하고 시작할지 여부"
config:
- key: "[string]이름"
value: "[string]값"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("quest").acquire.create_progress_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
questModelId="[string]시작할 퀘스트 모델 GRN",
force="[bool]이미 시작한 퀘스트가 있는 경우 이를 파기하고 시작할지 여부",
config={
{
key="[string]이름",
value="[string]값"
}
},
timeOffsetToken="[string]타임 오프셋 토큰",
})