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

# GS2-SkillTree Buff Reference

Describes the fields within models/actions whose parameters can be adjusted when applying buffs with GS2-Buff, and how to configure the scope in which those buffs are applied.




{{% alert title="Note" color="info" %}}
See [BuffEntryModel](api_reference/buff/master_data/#buffentrymodel) for more information on the buff entry model.
{{% /alert %}}

## Models
Target model types available for buff application

### Gs2SkillTree:NodeModel
Node Model


#### Target fields for buff application

##### releaseVerifyActions


|  | Type | Condition | Required | Default | Value Limits | Description |
| --- | --- | --- | --- | --- | --- | --- |
| releaseVerifyActions | List&lt;VerifyAction&gt; |  | | [] | 0 ~ 10 items | List of Release Verify Actions<br>List of verify actions executed before releasing this node to check whether the conditions are satisfied.<br>For example, can verify that the player has a certain level or possesses a specific item.<br>If any verify action fails, the node release is rejected. Maximum 10 actions. |


##### Example Master Data

`rate` specifies the multiplier applied to the target field.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2SkillTree:NodeModel",
    "targetFieldName": "releaseVerifyActions",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### Buff Application Condition Model

##### Gs2SkillTree:NodeModel


Node Model


##### Example Master Data


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2SkillTree:NodeModel",
        "targetGrn": "grn:gs2:any:any:skillTree:{namespaceName}:model:{nodeModelName}"
    }
]
```


---
##### releaseConsumeActions


|  | Type | Condition | Required | Default | Value Limits | Description |
| --- | --- | --- | --- | --- | --- | --- |
| releaseConsumeActions | List&lt;ConsumeAction&gt; |  | | [] | 1 ~ 10 items | Release Consume Actions<br>List of consume actions executed when releasing this node, representing the cost to unlock it.<br>These actions are also used to calculate the return acquire actions: each consume action is reverted at the restrain return rate when the node is restrained.<br>At least 1 consume action is required. Maximum 10 actions. |


##### Example Master Data

`rate` specifies the multiplier applied to the target field.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2SkillTree:NodeModel",
    "targetFieldName": "releaseConsumeActions",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### Buff Application Condition Model

##### Gs2SkillTree:NodeModel


Node Model


##### Example Master Data


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2SkillTree:NodeModel",
        "targetGrn": "grn:gs2:any:any:skillTree:{namespaceName}:model:{nodeModelName}"
    }
]
```


---
##### restrainReturnRate


|  | Type | Condition | Required | Default | Value Limits | Description |
| --- | --- | --- | --- | --- | --- | --- |
| restrainReturnRate | float |  | | 1.0 | 0.0 ~ 1.0 | Restrain Return Rate<br>The rate at which consumed resources are refunded when this node is restrained (reverted to unreleased state).<br>A value of 1.0 means full refund, 0.5 means half refund, and 0.0 means no refund.<br>Defaults to 1.0 (full refund). Valid range: 0.0 to 1.0. |


##### Example Master Data

`rate` specifies the multiplier applied to the target field.


**JSON**
```json
"targetModel": {
    "targetModelName": "Gs2SkillTree:NodeModel",
    "targetFieldName": "restrainReturnRate",
    "conditionGrns": [
    ],
    "rate": 1.0
}
```



#### Buff Application Condition Model

##### Gs2SkillTree:NodeModel


Node Model


##### Example Master Data


**JSON**
```json
"conditionGrns": [
    {
        "targetModelName": "Gs2SkillTree:NodeModel",
        "targetGrn": "grn:gs2:any:any:skillTree:{namespaceName}:model:{nodeModelName}"
    }
]
```


---



