Skip to content
Contractsv1.14.0

Skill Tree Points

⭐ Premium

Grants skill points to the player when the reward is claimed. Points are what a player spends to unlock Skill Tree nodes, so this gives them something they can use right away instead of progress towards it. If you want the progress instead, use a Skill Tree XP reward.

{
"type": "SkillTreePoints",
"title": "",
"description": "",
"eligiblePermissions": [],
"amount": 1
}
FieldTypeDescription
typestringExactly 'SkillTreePoints'
amountinteger (min 1)Number of Skill Tree skill points granted. Whole numbers only.
Shared fields (5)
FieldTypeDescription
titlestringDisplay name. May be empty to use the reward type's default name (recommended for most rewards).
titleTranslationsmap | nullPer-language overrides for title, mapping a language code (like "fr" or "zh-CN") to the translated text. Players whose language has no entry (matched case-insensitively, no region fallback) or a blank one see title instead. null when there are none.
descriptionstringA short blurb of 1 to 3 sentences. May be empty.
descriptionTranslationsmap | nullPer-language overrides for description, mapping a language code (like "fr" or "zh-CN") to the translated text. Players whose language has no entry (matched case-insensitively, no region fallback) or a blank one see description instead. null when there are none.
eligiblePermissions ⭐ Premiumstring[]Permission strings that gate this reward, using any-of logic: a non-empty list grants the reward to any player holding at least one of the listed permissions. An empty array means everyone is eligible.

Skill Tree has no way to remove skill points a player already has, and a player can spend them the second they land. So when a claim fails halfway through, Contracts keeps everything it has already handed out and marks the contract claimed instead of rolling back.

Just like XP, for the reason stated above, Contracts distributes Skill Tree Points rewards as one of the last rewards in the distribution order, so that reversible rewards are processed first to minimize potential inconsistencies (though they can still happen in rare use-cases).