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

# GS2-Exchange Buff 레퍼런스

GS2-Buff로 버프를 적용할 때 지정하는, 파라미터 보정이 가능한 모델/액션 내 필드와 그 적용 범위 설정에 대해




**ℹ️ Note**

버프 엔트리 모델에 대한 자세한 내용은 [BuffEntryModel](api_reference/buff/master_data/#buffentrymodel)을 참조해 주세요.

## Models
버프 적용 가능한 모델의 종류

### Gs2Exchange:RateModel
교환 레이트 모델


#### 버프 적용 대상 필드

##### lockTime


|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| lockTime | int | {timingType} == "await" | ✓※|  | 0 ~ 538214400 | 교환 실행부터 실제로 보상을 받을 수 있게 될 때까지의 대기 시간(분)<br>timingType이 `await`인 경우에만 적용됩니다. 교환이 시작된 후 플레이어가 보상을 받을 수 있게 되기까지 경과해야 하는 실시간 분수를 지정합니다. 대기 시간은 스킵 기능을 사용하여 단축할 수 있습니다.<br>※ timingType이(가) "await" 이면 필수 |


##### 마스터 데이터 작성 예

`rate`에는 대상 필드에 대한 보정 배율을 지정합니다.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2Exchange:RateModel",
    "targetFieldName": "lockTime",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### 버프 적용 조건 모델

##### Gs2Exchange:Namespace


네임스페이스


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:Namespace",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}"
    }
]
```


##### Gs2Exchange:RateModel


교환 레이트 모델


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:RateModel",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}:model:{rateName}"
    }
]
```


---
##### acquireActions


|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| acquireActions | List&lt;AcquireAction&gt; |  | | [] | 0 ~ 100 items | 획득 액션 리스트<br>교환 완료 시 플레이어가 받는 리소스(보상)를 정의합니다. 여러 개의 획득 액션을 지정하여 다양한 리소스 타입을 동시에 지급할 수 있습니다. 이러한 액션은 분산 트랜잭션 내의 획득 액션으로 실행됩니다. |


##### 마스터 데이터 작성 예

`rate`에는 대상 필드에 대한 보정 배율을 지정합니다.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2Exchange:RateModel",
    "targetFieldName": "acquireActions",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### 버프 적용 조건 모델

##### Gs2Exchange:Namespace


네임스페이스


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:Namespace",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}"
    }
]
```


##### Gs2Exchange:RateModel


교환 레이트 모델


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:RateModel",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}:model:{rateName}"
    }
]
```


---
##### verifyActions


|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| verifyActions | List&lt;VerifyAction&gt; |  | | [] | 0 ~ 10 items | 검증 액션 리스트<br>교환이 실행되기 전에 모두 통과해야 하는 사전 조건 체크입니다. 검증 액션 중 하나라도 실패하면, 리소스를 소비하지 않고 교환이 중단됩니다. 레벨 요건이나 인벤토리 용량 등의 조건을 강제하기 위해 사용됩니다. |


##### 마스터 데이터 작성 예

`rate`에는 대상 필드에 대한 보정 배율을 지정합니다.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2Exchange:RateModel",
    "targetFieldName": "verifyActions",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### 버프 적용 조건 모델

##### Gs2Exchange:Namespace


네임스페이스


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:Namespace",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}"
    }
]
```


##### Gs2Exchange:RateModel


교환 레이트 모델


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:RateModel",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}:model:{rateName}"
    }
]
```


---
##### consumeActions


|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| consumeActions | List&lt;ConsumeAction&gt; |  | | [] | 0 ~ 10 items | 소비 액션 리스트<br>이 교환을 실행하기 위해 플레이어가 지불해야 하는 리소스(코스트)를 정의합니다. 여러 개의 소비 액션을 지정할 수 있어, 골드와 아이템을 모두 필요로 하는 것과 같은 복잡한 교환 코스트를 구현할 수 있습니다. 이러한 액션은 분산 트랜잭션 내의 소비 액션으로 실행됩니다. |


##### 마스터 데이터 작성 예

`rate`에는 대상 필드에 대한 보정 배율을 지정합니다.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2Exchange:RateModel",
    "targetFieldName": "consumeActions",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### 버프 적용 조건 모델

##### Gs2Exchange:Namespace


네임스페이스


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:Namespace",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}"
    }
]
```


##### Gs2Exchange:RateModel


교환 레이트 모델


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:RateModel",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}:model:{rateName}"
    }
]
```


---

### Gs2Exchange:IncrementalRateModel
코스트 상승형 교환 레이트 모델


#### 버프 적용 대상 필드

##### acquireActions


|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| acquireActions | List&lt;AcquireAction&gt; |  | | [] | 0 ~ 100 items | 획득 액션 리스트<br>코스트 상승형 교환 완료 시 플레이어가 받는 리소스(보상)를 정의합니다. 보상은 교환 횟수와 관계없이 일정하며, 코스트만 교환마다 증가합니다. |


##### 마스터 데이터 작성 예

`rate`에는 대상 필드에 대한 보정 배율을 지정합니다.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2Exchange:IncrementalRateModel",
    "targetFieldName": "acquireActions",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### 버프 적용 조건 모델

##### Gs2Exchange:Namespace


네임스페이스


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:Namespace",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}"
    }
]
```


##### Gs2Exchange:IncrementalRateModel


코스트 상승형 교환 레이트 모델


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:IncrementalRateModel",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}:incremental:model:{rateName}"
    }
]
```


---
##### consumeAction


|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| consumeAction | ConsumeAction |  | ✓|  |  | 소비 액션 (수량/값은 자동으로 덮어써집니다)<br>교환 비용으로 소비되는 리소스의 종류를 정의합니다. 실제 수량은 교환 횟수와 계산 방식(선형, 거듭제곱, 스크립트)에 기반하여 동적으로 계산됩니다. 액션 종류와 대상 리소스만 지정하면 되며, 수량 필드는 자동으로 덮어써집니다. |


##### 마스터 데이터 작성 예

`rate`에는 대상 필드에 대한 보정 배율을 지정합니다.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2Exchange:IncrementalRateModel",
    "targetFieldName": "consumeAction",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### 버프 적용 조건 모델

##### Gs2Exchange:Namespace


네임스페이스


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:Namespace",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}"
    }
]
```


##### Gs2Exchange:IncrementalRateModel


코스트 상승형 교환 레이트 모델


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:IncrementalRateModel",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}:incremental:model:{rateName}"
    }
]
```


---
##### maximumExchangeCount


|  | 타입 | 활성화 조건 | 필수 | 기본값 | 값 제한 | 설명 |
| --- | --- | --- | --- | --- | --- | --- |
| maximumExchangeCount | int |  | | 2147483646 | 0 ~ 2147483646 | 교환 횟수 상한<br>사용자가 이 코스트 상승형 교환을 실행할 수 있는 최대 횟수입니다. 교환 횟수가 이 상한에 도달하면, GS2-Limit에 의한 카운트 리셋까지 이후의 교환이 거부됩니다. |


##### 마스터 데이터 작성 예

`rate`에는 대상 필드에 대한 보정 배율을 지정합니다.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2Exchange:IncrementalRateModel",
    "targetFieldName": "maximumExchangeCount",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### 버프 적용 조건 모델

##### Gs2Exchange:Namespace


네임스페이스


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:Namespace",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}"
    }
]
```


##### Gs2Exchange:IncrementalRateModel


코스트 상승형 교환 레이트 모델


##### 마스터 데이터 작성 예


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2Exchange:IncrementalRateModel",
        "targetGrn": "grn:gs2:any:any:exchange:{namespaceName}:incremental:model:{rateName}"
    }
]
```


---



