-
Notifications
You must be signed in to change notification settings - Fork 110
Attributes
Attributes provide a flexible way to control various stats which the player can invest points into. Each class can have base amounts, skills can modify them, and items can have lore which provides extra attributes.
Attributes are disabled by default. To enable them, edit the config.yml and change "attributes-enabled" under "Classes" to true.
This is the main config file for attributes. You can completely customize them, changing which ones are available and what they do. The available options are:
- The name of the attribute
- The max amount of points a player can invest
- The icon used to represent the attribute in the GUI
- What dynamic skill settings they affect
- The stats they effect
Vitality | +1 HP |
Spirit | +1 Mana and +2.5% Regen |
Intelligence | +2.5% Skill Damage |
Strength | +2.5% Physical Damage |
Dexterity | +2.5% Skill Range |
Attributes can directly modify certain stats. The format for these is the following:
<stat>: '<formula>'
The <stat> part is the stat to modify, which can be one of these stats:
health | The max health of the player |
mana | The max mana of the player |
mana-regen | The amount of mana regeneration the player has |
physical-damage | The amount of damage done by physical (basic or projectile) attacks |
physical-defense | The amount of damage taken by physical (basic or projectile) attacks |
skill-damage | The amount of damage done by skills |
skill-damage-<classification> | The amount of damage done by skills with the specified classification |
skill-defense | The amount of damage taken by skills |
skill-defense-<classification> | The amount of damage taken by skills with the specified classification |
move-speed | The movement speed of the player |
attack-speed | [PREM, 1.9+] Weapon recharge time |
armor | [PREM, 1.9+] Vanilla damage mitigation |
armor-toughness | [PREM, 1.9+] Secondary vanilla damage mitigation |
luck | [PREM, 1.9+] loot table chances |
____________________________________ |
Attributes can modify the settings for dynamic skills. They are organized by their category (Mechanic, Target, or Condition) and have the following format:
<componentName>-<valueKey>: '<formula>'
An example which raises damage by 2% per attribute point:
Damage-value: 'a*0.02+1*v'
And another which causes more particle projectiles to be fired out:
Particle Projectile-amount: 'a*0.5+v'
You can add conditions to affect certain samples as well. Here's an example that only changes damage when the component has an Icon Key set to "example":
Damage-value: 'a*0.05+1*v:icon-key=example'
You can add multiple statements as well to target different groups. This example increases damage by 5% if the Icon Key is "example", and 2% for all other skills:
Damage-value: 'a*0.05+1*v:icon-key=example|a*0.02+1*v'
For details on how formulas work, see this page:
a*<num>+v where <num>is the amount to change by per attribute point
v(a*<num>+1) where <num> is the pertentage as a decimal (e.g. 0.01 for 1%)