creating skills - magemonkeystudio/fabled GitHub Wiki
β¨ Creating Skills
The Skills tab in the Web Editor allows you to create fully featured custom abilities, complete with scaling attributes, cast triggers, cooldowns, and more.
β Creating a New Skill
- Click on the Skills tab in the top bar.
- Use the β Add Skill button in the left sidebar to create a new entry.
- Select the new skill to begin editing it.
π§Ύ Skill Fields & Settings
Each skill includes a variety of properties, organized into a single form:
- Name β The skillβs internal and display name.
- Type β Flavor tag (e.g., Damage, Utility, Passive).
- Max Level β The maximum upgradeable level for the skill.
- Cost β Skill point cost per level (can scale).
- Cooldown β Delay in seconds before the skill can be used again.
- Cooldown Message β Toggle: show message when trying to use the skill on cooldown.
- Mana β Mana cost for casting this skill (only works with
Cast
trigger). - Cast Message β Radius-based chat/message effect sent on cast.
- Combo β Combo key string (e.g.
L R R
for left-right-right). Works if combos are enabled. - Icon β Select or upload an icon for this skill.
π Requirements
- Skill Requirement β Skill that must be unlocked first.
- Skill Requirement Level β Minimum level of the required skill.
- Permission β Optional permission node required to unlock. Example:
fabled.skill.fireball
. - Incompatible Skills β Skills that cannot be used together (mutual exclusivity).
π Logic Structure
Each skill contains logic blocks made of:
- Triggers β How the skill is activated (e.g.
Cast
,Initialize
,OnKill
) - Targets β What the skill applies to (e.g.
Self
,Location
,Area
) - Conditions β Checks that must be true (e.g. "target is not ally")
- Mechanics β The actual effects (e.g.
damage
,particle
,message
)
Each trigger forms a tree that starts with its target, followed by optional conditions, and ends in one or more mechanics.
π§ Attributes and Scaling
The following fields can use formulas to scale:
- Mana
- Cooldown
- Cost
- Mechanic values (like damage, duration, range)
Formula Variables
a
β Attribute value (e.g., Strength)v
β Skill levelc
β Class levelt
β Target level
Example:
10 + a * 0.5
would scale based on the playerβs Strength attribute.
πΎ Saving & Exporting
Once you're done:
- Use the πΎ Save button to export just this skill.
- Or use the π€ Upload All to Server to export all entries.
- Skill files are saved in:
/plugins/Fabled/skills.yml
Reload the plugin with:
/fabled reload
π§ͺ Testing Tips
- Equip the class that includes this skill.
- Open your skill bar or skill GUI to bind it.
- Cast using your server's configured casting mode.
- Use
/fabled debug
to help test visual effects and values.