> For the complete documentation index, see [llms.txt](/llms.txt)

# GS2-Stamina 트랜잭션 액션

검증/소비/입수 각 트랜잭션 액션의 사양




## Verify Action

검증 액션

### Gs2Stamina:VerifyStaminaValueByUserId

사용자 ID를 지정하여 스타미나 현재값을 검증<br>

지정된 사용자의 현재 스타미나 값이 지정된 조건을 지정된 임계값에 대해 충족하는지, 상태를 변경하지 않고 검증합니다.

**수량 지정 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| verifyType | 문자열 열거형<br>enum {<br>"less",<br>"lessEqual",<br>"greater",<br>"greaterEqual",<br>"equal",<br>"notEqual"<br>}<br> |  | ✓|  |  | 검증 종류less: 현재값이 지정값 미만임 / lessEqual: 현재값이 지정값 이하임 / greater: 현재값이 지정값을 초과함 / greaterEqual: 현재값이 지정값 이상임 / equal: 현재값이 지정값과 일치함 / notEqual: 현재값이 지정값과 일치하지 않음 /  |
| value | int |  | ✓|  | 0 ~ 2147483646 | 현재값 |
| multiplyValueSpecifyingQuantity | bool |  | | true |  | 수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:VerifyStaminaValueByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "userId": "[string]사용자ID",
        "staminaName": "[string]스태미나 모델 이름",
        "verifyType": "[string]검증 종류",
        "value": "[int]현재값",
        "multiplyValueSpecifyingQuantity": "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:VerifyStaminaValueByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  userId: "[string]사용자ID"
  staminaName: "[string]스태미나 모델 이름"
  verifyType: "[string]검증 종류"
  value: "[int]현재값"
  multiplyValueSpecifyingQuantity: "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").verify.verify_stamina_value_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    userId="[string]사용자ID",
    staminaName="[string]스태미나 모델 이름",
    verifyType="[string]검증 종류",
    value="[int]현재값",
    multiplyValueSpecifyingQuantity="[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:VerifyStaminaMaxValueByUserId

사용자 ID를 지정하여 스태미나 최댓값 검증<br>

지정된 사용자의 스태미나 최대 용량(버프에 의한 변경 포함)이 지정된 조건을 지정된 임곗값에 대해 충족하는지, 상태를 변경하지 않고 검증합니다.

**수량 지정 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| verifyType | 문자열 열거형<br>enum {<br>"less",<br>"lessEqual",<br>"greater",<br>"greaterEqual",<br>"equal",<br>"notEqual"<br>}<br> |  | ✓|  |  | 검증 종류less: 최댓값이 지정값 미만임 / lessEqual: 최댓값이 지정값 이하임 / greater: 최댓값이 지정값을 초과함 / greaterEqual: 최댓값이 지정값 이상임 / equal: 최댓값이 지정값과 일치함 / notEqual: 최댓값이 지정값과 일치하지 않음 /  |
| value | int |  | ✓|  | 0 ~ 2147483646 | 최대값 |
| multiplyValueSpecifyingQuantity | bool |  | | true |  | 수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:VerifyStaminaMaxValueByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "userId": "[string]사용자ID",
        "staminaName": "[string]스태미나 모델 이름",
        "verifyType": "[string]검증 종류",
        "value": "[int]최대값",
        "multiplyValueSpecifyingQuantity": "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:VerifyStaminaMaxValueByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  userId: "[string]사용자ID"
  staminaName: "[string]스태미나 모델 이름"
  verifyType: "[string]검증 종류"
  value: "[int]최대값"
  multiplyValueSpecifyingQuantity: "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").verify.verify_stamina_max_value_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    userId="[string]사용자ID",
    staminaName="[string]스태미나 모델 이름",
    verifyType="[string]검증 종류",
    value="[int]최대값",
    multiplyValueSpecifyingQuantity="[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:VerifyStaminaRecoverIntervalMinutesByUserId

사용자 ID를 지정하여 스태미나 회복 간격(분) 검증<br>

지정된 사용자의 스태미나 회복 간격(분)이 지정된 조건을 지정된 임곗값에 대해 충족하는지, 상태를 변경하지 않고 검증합니다.

**수량 지정 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| verifyType | 문자열 열거형<br>enum {<br>"less",<br>"lessEqual",<br>"greater",<br>"greaterEqual",<br>"equal",<br>"notEqual"<br>}<br> |  | ✓|  |  | 검증 종류less: 회복 속도가 지정값 미만임 / lessEqual: 회복 속도가 지정값 이하임 / greater: 회복 속도가 지정값을 초과함 / greaterEqual: 회복 속도가 지정값 이상임 / equal: 회복 속도가 지정값과 일치함 / notEqual: 회복 속도가 지정값과 일치하지 않음 /  |
| value | int |  | ✓|  | 0 ~ 2147483646 | 회복 속도 |
| multiplyValueSpecifyingQuantity | bool |  | | true |  | 수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:VerifyStaminaRecoverIntervalMinutesByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "userId": "[string]사용자ID",
        "staminaName": "[string]스태미나 모델 이름",
        "verifyType": "[string]검증 종류",
        "value": "[int]회복 속도",
        "multiplyValueSpecifyingQuantity": "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:VerifyStaminaRecoverIntervalMinutesByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  userId: "[string]사용자ID"
  staminaName: "[string]스태미나 모델 이름"
  verifyType: "[string]검증 종류"
  value: "[int]회복 속도"
  multiplyValueSpecifyingQuantity: "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").verify.verify_stamina_recover_interval_minutes_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    userId="[string]사용자ID",
    staminaName="[string]스태미나 모델 이름",
    verifyType="[string]검증 종류",
    value="[int]회복 속도",
    multiplyValueSpecifyingQuantity="[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:VerifyStaminaRecoverValueByUserId

사용자 ID를 지정하여 스태미나 회복량 검증<br>

지정된 사용자의 스태미나 회복량(버프에 의한 변경 포함)이 지정된 조건을 지정된 임곗값에 대해 충족하는지, 상태를 변경하지 않고 검증합니다.

**수량 지정 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| verifyType | 문자열 열거형<br>enum {<br>"less",<br>"lessEqual",<br>"greater",<br>"greaterEqual",<br>"equal",<br>"notEqual"<br>}<br> |  | ✓|  |  | 검증 종류less: 회복량이 지정값 미만임 / lessEqual: 회복량이 지정값 이하임 / greater: 회복량이 지정값을 초과함 / greaterEqual: 회복량이 지정값 이상임 / equal: 회복량이 지정값과 일치함 / notEqual: 회복량이 지정값과 일치하지 않음 /  |
| value | int |  | ✓|  | 0 ~ 2147483646 | 회복량 |
| multiplyValueSpecifyingQuantity | bool |  | | true |  | 수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:VerifyStaminaRecoverValueByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "userId": "[string]사용자ID",
        "staminaName": "[string]스태미나 모델 이름",
        "verifyType": "[string]검증 종류",
        "value": "[int]회복량",
        "multiplyValueSpecifyingQuantity": "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:VerifyStaminaRecoverValueByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  userId: "[string]사용자ID"
  staminaName: "[string]스태미나 모델 이름"
  verifyType: "[string]검증 종류"
  value: "[int]회복량"
  multiplyValueSpecifyingQuantity: "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").verify.verify_stamina_recover_value_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    userId="[string]사용자ID",
    staminaName="[string]스태미나 모델 이름",
    verifyType="[string]검증 종류",
    value="[int]회복량",
    multiplyValueSpecifyingQuantity="[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:VerifyStaminaOverflowValueByUserId

사용자 ID를 지정하여 스태미나 오버플로우량 검증<br>

지정된 사용자의 스태미나 오버플로우량이 지정된 조건을 지정된 임곗값에 대해 충족하는지, 상태를 변경하지 않고 검증합니다.

**수량 지정 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| verifyType | 문자열 열거형<br>enum {<br>"less",<br>"lessEqual",<br>"greater",<br>"greaterEqual",<br>"equal",<br>"notEqual"<br>}<br> |  | ✓|  |  | 검증 종류less: 오버플로우량이 지정값 미만임 / lessEqual: 오버플로우량이 지정값 이하임 / greater: 오버플로우량이 지정값을 초과함 / greaterEqual: 오버플로우량이 지정값 이상임 / equal: 오버플로우량이 지정값과 일치함 / notEqual: 오버플로우량이 지정값과 일치하지 않음 /  |
| value | int |  | ✓|  | 0 ~ 2147483646 | 오버플로우량 |
| multiplyValueSpecifyingQuantity | bool |  | | true |  | 수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:VerifyStaminaOverflowValueByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "userId": "[string]사용자ID",
        "staminaName": "[string]스태미나 모델 이름",
        "verifyType": "[string]검증 종류",
        "value": "[int]오버플로우량",
        "multiplyValueSpecifyingQuantity": "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:VerifyStaminaOverflowValueByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  userId: "[string]사용자ID"
  staminaName: "[string]스태미나 모델 이름"
  verifyType: "[string]검증 종류"
  value: "[int]오버플로우량"
  multiplyValueSpecifyingQuantity: "[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").verify.verify_stamina_overflow_value_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    userId="[string]사용자ID",
    staminaName="[string]스태미나 모델 이름",
    verifyType="[string]검증 종류",
    value="[int]오버플로우량",
    multiplyValueSpecifyingQuantity="[bool]수량을 지정했을 때, 검증에 사용하는 값도 곱할지 여부",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

## Consume Action

소비 액션

### Gs2Stamina:DecreaseMaxValueByUserId

사용자 ID를 지정하여 스타미나 최대값 감산<br>

지정된 사용자의 스타미나 최대 용량을 지정된 양만큼 감소시킵니다. 스타미나 용량에 대한 디버프나 페널티 적용에 사용할 수 있습니다.

**수량 지정 가능한 액션: 예**

**반전 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| decreaseValue | int |  | ✓|  | 0 ~ 2147483646 | 감산할 최대 스타미나 양 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:DecreaseMaxValueByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "staminaName": "[string]스태미나 모델 이름",
        "userId": "[string]사용자ID",
        "decreaseValue": "[int]감산할 최대 스타미나 양",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:DecreaseMaxValueByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  staminaName: "[string]스태미나 모델 이름"
  userId: "[string]사용자ID"
  decreaseValue: "[int]감산할 최대 스타미나 양"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").consume.decrease_max_value_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    staminaName="[string]스태미나 모델 이름",
    userId="[string]사용자ID",
    decreaseValue="[int]감산할 최대 스타미나 양",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:ConsumeStaminaByUserId

사용자 ID를 지정하여 스타미나 소비<br>

지정된 사용자의 현재 스타미나 값에서 지정된 양을 차감합니다. 현재 스타미나 값이 소비량보다 적은 경우 Insufficient 오류를 반환합니다.

**수량 지정 가능한 액션: 예**

**반전 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| consumeValue | int |  | ✓|  | 1 ~ 2147483646 | 소비할 스타미나 양 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:ConsumeStaminaByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "staminaName": "[string]스태미나 모델 이름",
        "userId": "[string]사용자ID",
        "consumeValue": "[int]소비할 스타미나 양",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:ConsumeStaminaByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  staminaName: "[string]스태미나 모델 이름"
  userId: "[string]사용자ID"
  consumeValue: "[int]소비할 스타미나 양"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").consume.consume_stamina_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    staminaName="[string]스태미나 모델 이름",
    userId="[string]사용자ID",
    consumeValue="[int]소비할 스타미나 양",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

## Acquire Action

입수 액션

### Gs2Stamina:RecoverStaminaByUserId

사용자 ID를 지정하여 스타미나 회복<br>

지정된 양의 스타미나를 최대 용량까지 회복합니다. 회복으로 인해 값이 최대값을 초과하고 오버플로 모드가 활성화된 경우, 초과분은 오버플로 값으로 기록됩니다.

**수량 지정 가능한 액션: 예**

**반전 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| recoverValue | int |  | ✓|  | 1 ~ 2147483646 | 스타미나의 회복량 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:RecoverStaminaByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "staminaName": "[string]스태미나 모델 이름",
        "userId": "[string]사용자ID",
        "recoverValue": "[int]스타미나의 회복량",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:RecoverStaminaByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  staminaName: "[string]스태미나 모델 이름"
  userId: "[string]사용자ID"
  recoverValue: "[int]스타미나의 회복량"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").acquire.recover_stamina_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    staminaName="[string]스태미나 모델 이름",
    userId="[string]사용자ID",
    recoverValue="[int]스타미나의 회복량",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:RaiseMaxValueByUserId

사용자 ID를 지정하여 스타미나의 최대값을 가산<br>

지정된 양만큼 스타미나의 최대 용량을 영구적으로 증가시킵니다. 레벨업 보상이나 아이템 효과 등 영구적인 스탯 상승에 사용됩니다.

**수량 지정 가능한 액션: 예**

**반전 가능한 액션: 예**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| raiseValue | int |  | ✓|  | 0 ~ 2147483646 | 증가시킬 최대 스타미나 양 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:RaiseMaxValueByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "staminaName": "[string]스태미나 모델 이름",
        "userId": "[string]사용자ID",
        "raiseValue": "[int]증가시킬 최대 스타미나 양",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:RaiseMaxValueByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  staminaName: "[string]스태미나 모델 이름"
  userId: "[string]사용자ID"
  raiseValue: "[int]증가시킬 최대 스타미나 양"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").acquire.raise_max_value_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    staminaName="[string]스태미나 모델 이름",
    userId="[string]사용자ID",
    raiseValue="[int]증가시킬 최대 스타미나 양",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:SetMaxValueByUserId

사용자 ID를 지정하여 스타미나의 최대값을 갱신<br>

스타미나의 최대 용량을 지정된 값으로 설정합니다. 감사 목적으로 변경 전 스타미나 상태가 응답에 유지됩니다. 관리자에 의한 오버라이드나 특별 이벤트에서의 조정에 사용됩니다.

**수량 지정 가능한 액션: 예**

**반전 가능한 액션: 아니오**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| maxValue | int |  | ✓|  | 1 ~ 2147483646 | 스태미나 최대값<br>StaminaModel로부터 결정되며, 옵션으로 플레이어의 GS2-Experience 랭크에 따라 MaxStaminaTable로 오버라이드되는 사용자별 스태미나 최대값입니다.<br>오버플로우가 비활성화된 경우 initialCapacity가 하한이 됩니다. 오버플로우가 활성화된 경우 maxCapacity가 상한이 됩니다.<br>자연 회복은 이 값에서 멈춥니다. |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:SetMaxValueByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "staminaName": "[string]스태미나 모델 이름",
        "userId": "[string]사용자ID",
        "maxValue": "[int]스태미나 최대값",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:SetMaxValueByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  staminaName: "[string]스태미나 모델 이름"
  userId: "[string]사용자ID"
  maxValue: "[int]스태미나 최대값"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").acquire.set_max_value_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    staminaName="[string]스태미나 모델 이름",
    userId="[string]사용자ID",
    maxValue="[int]스태미나 최대값",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:SetRecoverIntervalByUserId

사용자 ID를 지정하여 스타미나 회복 간격(분)을 갱신<br>

스타미나 회복 간격을 지정된 값(분)으로 설정합니다. 감사 목적으로 변경 전 스타미나 상태가 응답에 유지됩니다. 스타미나가 자동으로 회복되는 빈도를 제어합니다.

**수량 지정 가능한 액션: 예**

**반전 가능한 액션: 아니오**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| recoverIntervalMinutes | int |  | ✓|  | 1 ~ 2147483646 | 스타미나 회복 간격(분) |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:SetRecoverIntervalByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "staminaName": "[string]스태미나 모델 이름",
        "userId": "[string]사용자ID",
        "recoverIntervalMinutes": "[int]스타미나 회복 간격(분)",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:SetRecoverIntervalByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  staminaName: "[string]스태미나 모델 이름"
  userId: "[string]사용자ID"
  recoverIntervalMinutes: "[int]스타미나 회복 간격(분)"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").acquire.set_recover_interval_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    staminaName="[string]스태미나 모델 이름",
    userId="[string]사용자ID",
    recoverIntervalMinutes="[int]스타미나 회복 간격(분)",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---

### Gs2Stamina:SetRecoverValueByUserId

사용자 ID를 지정하여 스타미나의 회복량을 설정<br>

스타미나의 회복량을 지정된 값으로 설정합니다. 감사 목적으로 변경 전 스타미나 상태가 응답에 유지됩니다. 회복 간격마다 회복되는 스타미나 양을 제어합니다.

**수량 지정 가능한 액션: 예**

**반전 가능한 액션: 아니오**

|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| namespaceName | string |  | ✓|  |  ~ 128자 | 네임스페이스 이름<br>네임스페이스 고유의 이름입니다. 영숫자 및 -(하이픈) _(언더스코어) .(마침표)로 지정합니다. |
| staminaName | string |  | ✓|  |  ~ 128자 | 스태미나 모델 이름<br>이 스태미나 인스턴스의 회복 파라미터, 용량, 테이블 참조를 정의하는 StaminaModel의 이름입니다.<br>사용자별 스태미나 상태를 대응하는 모델 정의와 연결합니다. |
| userId | string |  | ✓|  |  ~ 128자 | 사용자ID<br>`#{userId}`로 설정하면 로그인 중인 사용자ID로 치환됩니다. |
| recoverValue | int |  | ✓|  | 1 ~ 2147483646 | 스타미나의 회복량 |
| timeOffsetToken | string |  | |  |  ~ 1024자 | 타임 오프셋 토큰 |




**JSON**
```json
{
    "action": "Gs2Stamina:SetRecoverValueByUserId",
    "request": {
        "namespaceName": "[string]네임스페이스 이름",
        "staminaName": "[string]스태미나 모델 이름",
        "userId": "[string]사용자ID",
        "recoverValue": "[int]스타미나의 회복량",
        "timeOffsetToken": "[string]타임 오프셋 토큰"
    }
}
```

**YAML**
```yaml

action: Gs2Stamina:SetRecoverValueByUserId
request:
  namespaceName: "[string]네임스페이스 이름"
  staminaName: "[string]스태미나 모델 이름"
  userId: "[string]사용자ID"
  recoverValue: "[int]스타미나의 회복량"
  timeOffsetToken: "[string]타임 오프셋 토큰"
```

**GS2-Script**
```lua

transaction.service("stamina").acquire.set_recover_value_by_user_id({
    namespaceName="[string]네임스페이스 이름",
    staminaName="[string]스태미나 모델 이름",
    userId="[string]사용자ID",
    recoverValue="[int]스타미나의 회복량",
    timeOffsetToken="[string]타임 오프셋 토큰",
})
```


---



