GS2-Enchant 트랜잭션 액션
Verify Action
검증 액션
Gs2Enchant:VerifyRarityParameterStatusByUserId
사용자 ID를 지정하여 레어리티 파라미터를 검증
지정된 사용자의 레어리티 파라미터 상태가 지정된 조건을 충족하는지 검증합니다.
3가지 검증 유형이 지원됩니다:
- ‘have’: 지정된 파라미터 값이 상태에 존재하는지 검증
- ‘havent’: 지정된 파라미터 값이 상태에 존재하지 않는지 검증
- ‘count’: 파라미터의 수가 지정된 수와 일치하는지 검증
다른 액션을 실행하기 전의 전제 조건 확인으로 사용할 수 있습니다.
수량 지정 가능한 액션: 예
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||||||||||
| parameterName | string | ✓ | ~ 128자 | 레어리티 파라미터 모델명 이 상태의 추첨 조건을 정의하는 레어리티 파라미터 모델의 이름입니다. 최대 파라미터 수, 부여 수 추첨 가중치, 값 추첨 풀을 지정하는 모델을 참조합니다. | ||||||||||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||||||||||
| propertyId | string | ✓ | ~ 1024자 | 파라미터의 보유 리소스의 프로퍼티 ID 이 레어리티 파라미터가 연결되어 있는 특정 게임 리소스(예: 무기나 장비 아이템)를 식별합니다. 일반적으로 GS2-Inventory의 아이템 등의 리소스를 프로퍼티 ID로 참조합니다. | ||||||||||
| verifyType | 문자열 열거형 enum { “havent”, “have”, “count” } | ✓ | 검증 종류
| |||||||||||
| parameterValueName | string | {verifyType} in [“havent”, “have”] | ✓※ | ~ 64자 | 이름 이 추첨 엔트리의 식별자입니다. 레어리티 파라미터 모델의 값 풀 내에서 고유해야 합니다. 추첨되었을 때, 이 이름이 결과 레어리티 파라미터 값에 저장됩니다. ※ verifyType이(가) “havent”,“have"이면 필수 | |||||||||
| parameterCount | int | {verifyType} == “count” | ✓※ | 0 ~ 10 | 검증할 파라미터의 수 ※ verifyType이(가) “count” 이면 필수 | |||||||||
| multiplyValueSpecifyingQuantity | bool | false | 수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부 | |||||||||||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2Enchant:VerifyRarityParameterStatusByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"parameterName": "[string]레어리티 파라미터 모델명",
"userId": "[string]사용자ID",
"propertyId": "[string]파라미터의 보유 리소스의 프로퍼티 ID",
"verifyType": "[string]검증 종류",
"parameterValueName": "[string]이름",
"parameterCount": "[int]검증할 파라미터의 수",
"multiplyValueSpecifyingQuantity": "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2Enchant:VerifyRarityParameterStatusByUserId
request:
namespaceName: "[string]네임스페이스 이름"
parameterName: "[string]레어리티 파라미터 모델명"
userId: "[string]사용자ID"
propertyId: "[string]파라미터의 보유 리소스의 프로퍼티 ID"
verifyType: "[string]검증 종류"
parameterValueName: "[string]이름"
parameterCount: "[int]검증할 파라미터의 수"
multiplyValueSpecifyingQuantity: "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("enchant").verify.verify_rarity_parameter_status_by_user_id({
namespaceName="[string]네임스페이스 이름",
parameterName="[string]레어리티 파라미터 모델명",
userId="[string]사용자ID",
propertyId="[string]파라미터의 보유 리소스의 프로퍼티 ID",
verifyType="[string]검증 종류",
parameterValueName="[string]이름",
parameterCount="[int]검증할 파라미터의 수",
multiplyValueSpecifyingQuantity="[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
timeOffsetToken="[string]타임 오프셋 토큰",
})Acquire Action
입수 액션
Gs2Enchant:ReDrawBalanceParameterStatusByUserId
사용자 ID를 지정하여 밸런스 파라미터 재추첨
특정 프로퍼티의 밸런스 파라미터 값을 재추첨하고, 합계값을 파라미터 간에 재분배합니다.
fixedParameterNames 에 파라미터 이름을 지정하면 특정 파라미터를 고정(잠금)하여 재추첨 대상에서 제외할 수 있습니다(최대 10개).
합계값 제약은 유지됩니다: 고정된 파라미터를 포함한 모든 파라미터 값의 합계는 항상 모델의 합계값과 같습니다.
업데이트 후와 업데이트 전 파라미터 상태가 모두 반환됩니다.
수량 지정 가능한 액션: 아니오
반전 가능한 액션: 아니오
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| parameterName | string | ✓ | ~ 128자 | 밸런스 파라미터 모델 이름 이 상태의 추첨 조건을 정의하는 밸런스 파라미터 모델의 이름입니다. 합계 값, 배분 방침, 사용 가능한 파라미터 슬롯을 지정하는 모델을 참조합니다. | ||
| propertyId | string | ✓ | ~ 1024자 | 파라미터를 보유한 리소스의 프로퍼티 ID 이러한 밸런스 파라미터가 연결되어 있는 특정 게임 리소스(예: 무기 또는 장비 아이템)를 식별합니다. 일반적으로 GS2-Inventory의 아이템 등의 리소스를 프로퍼티 ID로 참조합니다. | ||
| fixedParameterNames | List<string> | [] | 0 ~ 10 items | 재추첨하지 않는 파라미터의 이름 리스트 | ||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2Enchant:ReDrawBalanceParameterStatusByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"parameterName": "[string]밸런스 파라미터 모델 이름",
"propertyId": "[string]파라미터를 보유한 리소스의 프로퍼티 ID",
"fixedParameterNames": [
"[string]재추첨하지 않을 파라미터의 이름"
],
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2Enchant:ReDrawBalanceParameterStatusByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
parameterName: "[string]밸런스 파라미터 모델 이름"
propertyId: "[string]파라미터를 보유한 리소스의 프로퍼티 ID"
fixedParameterNames:
- "[string]재추첨하지 않을 파라미터의 이름"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("enchant").acquire.re_draw_balance_parameter_status_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
parameterName="[string]밸런스 파라미터 모델 이름",
propertyId="[string]파라미터를 보유한 리소스의 프로퍼티 ID",
fixedParameterNames={
"[string]재추첨하지 않을 파라미터의 이름"
},
timeOffsetToken="[string]타임 오프셋 토큰",
})Gs2Enchant:SetBalanceParameterStatusByUserId
사용자 ID를 지정하여 밸런스 파라미터에 임의의 값을 설정
통상적인 추첨/재추첨 메커니즘을 거치지 않고, 지정된 사용자의 특정 프로퍼티에 파라미터 값을 직접 설정합니다.
이는 임의의 파라미터 값을 할당할 수 있는 관리 작업입니다.
업데이트 후와 업데이트 전 파라미터 상태가 모두 반환됩니다.
수량 지정 가능한 액션: 아니오
반전 가능한 액션: 아니오
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| parameterName | string | ✓ | ~ 128자 | 밸런스 파라미터 모델 이름 이 상태의 추첨 조건을 정의하는 밸런스 파라미터 모델의 이름입니다. 합계 값, 배분 방침, 사용 가능한 파라미터 슬롯을 지정하는 모델을 참조합니다. | ||
| propertyId | string | ✓ | ~ 1024자 | 파라미터를 보유한 리소스의 프로퍼티 ID 이러한 밸런스 파라미터가 연결되어 있는 특정 게임 리소스(예: 무기 또는 장비 아이템)를 식별합니다. 일반적으로 GS2-Inventory의 아이템 등의 리소스를 프로퍼티 ID로 참조합니다. | ||
| parameterValues | List<BalanceParameterValue> | ✓ | 1 ~ 10 items | 밸런스 파라미터 값 리스트 추첨 처리 후 각 파라미터 슬롯에 할당된 구체적인 값입니다. 각 엔트리는 모델에서 정의된 파라미터 슬롯에 대응하며, 할당된 실제 수치를 보유합니다. 모든 값의 합계는 모델에서 지정된 합계 값과 같아집니다. | ||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2Enchant:SetBalanceParameterStatusByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"parameterName": "[string]밸런스 파라미터 모델 이름",
"propertyId": "[string]파라미터를 보유한 리소스의 프로퍼티 ID",
"parameterValues": [
{
"name": "[string]이름",
"value": "[long]값"
}
],
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2Enchant:SetBalanceParameterStatusByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
parameterName: "[string]밸런스 파라미터 모델 이름"
propertyId: "[string]파라미터를 보유한 리소스의 프로퍼티 ID"
parameterValues:
- name: "[string]이름"
value: "[long]값"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("enchant").acquire.set_balance_parameter_status_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
parameterName="[string]밸런스 파라미터 모델 이름",
propertyId="[string]파라미터를 보유한 리소스의 프로퍼티 ID",
parameterValues={
{
name="[string]이름",
value="[long]값"
}
},
timeOffsetToken="[string]타임 오프셋 토큰",
})Gs2Enchant:ReDrawRarityParameterStatusByUserId
사용자 ID를 지정하여 레어리티 파라미터를 재추첨
특정 프로퍼티의 레어리티 파라미터 값을 재추첨하고, 레어리티 가중치에 기반하여 무작위로 새 값을 할당합니다.
fixedParameterNames 에 파라미터 이름을 지정하면 특정 파라미터를 고정(잠금)하여 재추첨 대상에서 제외할 수 있습니다(최대 10개).
고정된 파라미터는 현재 값을 유지하며, 고정되지 않은 파라미터만 재추첨됩니다.
업데이트 후와 업데이트 전 파라미터 상태가 모두 반환됩니다.
수량 지정 가능한 액션: 아니오
반전 가능한 액션: 아니오
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| parameterName | string | ✓ | ~ 128자 | 레어리티 파라미터 모델명 이 상태의 추첨 조건을 정의하는 레어리티 파라미터 모델의 이름입니다. 최대 파라미터 수, 부여 수 추첨 가중치, 값 추첨 풀을 지정하는 모델을 참조합니다. | ||
| propertyId | string | ✓ | ~ 1024자 | 파라미터의 보유 리소스의 프로퍼티 ID 이 레어리티 파라미터가 연결되어 있는 특정 게임 리소스(예: 무기나 장비 아이템)를 식별합니다. 일반적으로 GS2-Inventory의 아이템 등의 리소스를 프로퍼티 ID로 참조합니다. | ||
| fixedParameterNames | List<string> | 0 ~ 10 items | 재추첨하지 않는 파라미터의 이름 리스트 | |||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2Enchant:ReDrawRarityParameterStatusByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"parameterName": "[string]레어리티 파라미터 모델명",
"propertyId": "[string]파라미터의 보유 리소스의 프로퍼티 ID",
"fixedParameterNames": [
"[string]재추첨하지 않을 파라미터의 이름"
],
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2Enchant:ReDrawRarityParameterStatusByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
parameterName: "[string]레어리티 파라미터 모델명"
propertyId: "[string]파라미터의 보유 리소스의 프로퍼티 ID"
fixedParameterNames:
- "[string]재추첨하지 않을 파라미터의 이름"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("enchant").acquire.re_draw_rarity_parameter_status_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
parameterName="[string]레어리티 파라미터 모델명",
propertyId="[string]파라미터의 보유 리소스의 프로퍼티 ID",
fixedParameterNames={
"[string]재추첨하지 않을 파라미터의 이름"
},
timeOffsetToken="[string]타임 오프셋 토큰",
})Gs2Enchant:AddRarityParameterStatusByUserId
사용자 ID를 지정하여 레어리티 파라미터를 추가
레어리티 가중치에 기반하여 무작위로 값을 추첨하고, 기존 레어리티 파라미터 상태에 새 파라미터 슬롯을 추가합니다.
count 는 추가할 파라미터 슬롯의 수(1~10)를 지정하며, 모델의 최대 파라미터 수가 상한이 됩니다.
업데이트 후와 업데이트 전 파라미터 상태가 모두 반환됩니다.
수량 지정 가능한 액션: 예
반전 가능한 액션: 아니오
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| parameterName | string | ✓ | ~ 128자 | 레어리티 파라미터 모델명 이 상태의 추첨 조건을 정의하는 레어리티 파라미터 모델의 이름입니다. 최대 파라미터 수, 부여 수 추첨 가중치, 값 추첨 풀을 지정하는 모델을 참조합니다. | ||
| propertyId | string | ✓ | ~ 1024자 | 파라미터의 보유 리소스의 프로퍼티 ID 이 레어리티 파라미터가 연결되어 있는 특정 게임 리소스(예: 무기나 장비 아이템)를 식별합니다. 일반적으로 GS2-Inventory의 아이템 등의 리소스를 프로퍼티 ID로 참조합니다. | ||
| count | int | 1 | 1 ~ 10 | 추가할 파라미터의 수 | ||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2Enchant:AddRarityParameterStatusByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"parameterName": "[string]레어리티 파라미터 모델명",
"propertyId": "[string]파라미터의 보유 리소스의 프로퍼티 ID",
"count": "[int]추가할 파라미터의 수",
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2Enchant:AddRarityParameterStatusByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
parameterName: "[string]레어리티 파라미터 모델명"
propertyId: "[string]파라미터의 보유 리소스의 프로퍼티 ID"
count: "[int]추가할 파라미터의 수"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("enchant").acquire.add_rarity_parameter_status_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
parameterName="[string]레어리티 파라미터 모델명",
propertyId="[string]파라미터의 보유 리소스의 프로퍼티 ID",
count="[int]추가할 파라미터의 수",
timeOffsetToken="[string]타임 오프셋 토큰",
})Gs2Enchant:SetRarityParameterStatusByUserId
사용자 ID를 지정하여 레어리티 파라미터에 임의의 값을 설정
통상적인 추첨/재추첨 메커니즘을 거치지 않고, 지정된 사용자의 특정 프로퍼티에 파라미터 값을 직접 설정합니다.
이는 레어리티 가중치와 관계없이 임의의 파라미터 값을 할당할 수 있는 관리 작업입니다.
업데이트 후와 업데이트 전 파라미터 상태가 모두 반환됩니다.
수량 지정 가능한 액션: 아니오
반전 가능한 액션: 아니오
| 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 | |
|---|---|---|---|---|---|---|
| namespaceName | string | ✓ | ~ 128자 | 네임스페이스 이름 네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. | ||
| userId | string | ✓ | ~ 128자 | 사용자ID#{userId}로 설정하면 로그인 중인 사용자ID로 치환됩니다. | ||
| parameterName | string | ✓ | ~ 128자 | 레어리티 파라미터 모델명 이 상태의 추첨 조건을 정의하는 레어리티 파라미터 모델의 이름입니다. 최대 파라미터 수, 부여 수 추첨 가중치, 값 추첨 풀을 지정하는 모델을 참조합니다. | ||
| propertyId | string | ✓ | ~ 1024자 | 파라미터의 보유 리소스의 프로퍼티 ID 이 레어리티 파라미터가 연결되어 있는 특정 게임 리소스(예: 무기나 장비 아이템)를 식별합니다. 일반적으로 GS2-Inventory의 아이템 등의 리소스를 프로퍼티 ID로 참조합니다. | ||
| parameterValues | List<RarityParameterValue> | 0 ~ 10 items | 레어리티 파라미터의 값 목록 부여된 각 슬롯에 대해 가중 추첨으로 선택된 구체적인 파라미터 값입니다. 엔트리 수는 부여 수 추첨으로 결정되며, 각 엔트리의 값은 값 모델 풀에서 선택됩니다. 최대 파라미터 수보다 적은 엔트리 수가 될 수 있습니다. | |||
| timeOffsetToken | string | ~ 1024자 | 타임 오프셋 토큰 |
{
"action": "Gs2Enchant:SetRarityParameterStatusByUserId",
"request": {
"namespaceName": "[string]네임스페이스 이름",
"userId": "[string]사용자ID",
"parameterName": "[string]레어리티 파라미터 모델명",
"propertyId": "[string]파라미터의 보유 리소스의 프로퍼티 ID",
"parameterValues": [
{
"name": "[string]이름",
"resourceName": "[string]리소스의 이름",
"resourceValue": "[long]리소스의 값"
}
],
"timeOffsetToken": "[string]타임 오프셋 토큰"
}
}action: Gs2Enchant:SetRarityParameterStatusByUserId
request:
namespaceName: "[string]네임스페이스 이름"
userId: "[string]사용자ID"
parameterName: "[string]레어리티 파라미터 모델명"
propertyId: "[string]파라미터의 보유 리소스의 프로퍼티 ID"
parameterValues:
- name: "[string]이름"
resourceName: "[string]리소스의 이름"
resourceValue: "[long]리소스의 값"
timeOffsetToken: "[string]타임 오프셋 토큰"transaction.service("enchant").acquire.set_rarity_parameter_status_by_user_id({
namespaceName="[string]네임스페이스 이름",
userId="[string]사용자ID",
parameterName="[string]레어리티 파라미터 모델명",
propertyId="[string]파라미터의 보유 리소스의 프로퍼티 ID",
parameterValues={
{
name="[string]이름",
resourceName="[string]리소스의 이름",
resourceValue="[long]리소스의 값"
}
},
timeOffsetToken="[string]타임 오프셋 토큰",
})