Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Guide to adding skill XP multipliers
Multipliers are a way of increasing the amount of skill XP a player receives without changing the sources config.
Multipliers are permission based, meaning you can add them to individual players or groups of players (such as ranks). If your permissions plugin supports temporary permissions, you can even create temporary XP multiplier events.
To add a multiplier, use your permissions plugin to add a permission in the following format:
aureliumskills.multiplier.[percent]
Replace [percent] with the percent more XP you want the multiplier to give. For example, the permission aureliumskills.multiplier.100
will give 100% more or 2x XP. The percent supports decimals using . (e.g. aureliumskills.multiplier.10.5
)
Multipliers can also be added to only multiply XP from sources of a specific skill. The format of the permission is aureliumskills.multiplier.[skill].[percent]
where [skill] is the default English name of the skill in lowercase.
Example permission for 1.5x farming multiplier: aureliumskills.multiplier.farming.50
If a player has more than one multiplier permission, the multipliers will add together and work as if there was only a single multiplier. For example, 100 (2x) and 50 (1.5x) multipliers will add to 150 (2.5x).
If you want multiplier multipliers that have the same value, you cannot simply use the same permission because inherently permissions must be unique. As a workaround, you can add trailing decimal zeros so that they are technically unique, but have the same value.
For example, aureliumskills.multiplier.100
will work the same as aureliumskills.multiplier.100.0
. You can continue adding trailing zeros to add as many duplicates as you like.
The following are examples of adding multipliers using LuckPerms, a popular permissions plugin. If you use a different permissions plugin, use the commands from that plugin to add the multiplier like any other permission.
Adding a 2x multiplier to a player:
Adding a 1.5x multiplier to a rank called vip:
Adding a temporary 3x multiplier to everyone for 12 hours:
Removing a 2x multiplier from a player:
When removing multipliers, you must use the exact text of the permission you added.
Multipliers can also be added to items and armor similar to stat modifiers. Item multipliers increase XP when holding the item. Armor multipliers increase XP when wearing the item. Multipliers can be either global or only for a specific skill.
The commands used for item/armor multipliers:
/skills item/armor multiplier add <target> <value> [lore]
/skills item/armor multiplier remove <target>
/skills item/armor multiplier list
/skills item/armor multiplier removeall
Use either item or armor in the command depending on the type of multiplier you want. Target can be either global or the name of a skill. The value of the multiplier is the percent more XP gained (works the same as permission multipliers).
These multipliers are included in the /skills multiplier command, which can display skill-specific multipliers if they are different from the global multiplier.
Welcome to the Aurelium Skills wiki!
This wiki is no longer maintained and is only for Aurelium Skills Beta versions. Visit the for AuraSkills 2.0+.
Here you will find documentation on how to set up, configure, and use the plugin. Navigate pages using the sidebar on the left (top left icon on mobile). Please note that not everything about the plugin is covered, and some information may be out of date.
If you are new to the plugin or are looking to download it, visit the .
If you have any other questions, please join the and ask in the support channel. There you can also give suggestions, report bugs, get notified about updates and announcments, and access developmental builds.
Guide to setting up and configuring MySQL database storage
The options under the mysql
section of the main config.yml
file allow the storage of player data in a MySQL database instead of the default YAML flatfile format. Using MySQL for data storage enables better performance at high player counts, allows syncing of data between multiple servers, and makes it easier for third-party applications to interact with data.
Before configuring the Aurelium Skills config, a MySQL database must already be created separately (either through the server panel or terminal). This database should have a host (usually an IP address), database name, port, username, and password.
The options for configuring MySQL are under the mysql
section of config.yml
. To enable MySQL, set the enabled
option to true. Enter the host address under host
and the name of your database under database
. Then, enter the username and password of the database under their corresponding options. Enter the port number of the database under port
. If desired, SSL can be enabled under the ssl
option.
Once the server is restarted, MySQL should be successfully working. Aurelium Skills will automatically create tables in the database. If MySQL is not working, check the server console for any errors on startup and double check your database credentials are correct.
Enabling MySQL alone will not migrate player data from the default YAML storage method. To migrate data, a few extra steps are required:
While still on YAML, create a backup of the player data using /skills backup save
Shut down the server
Follow the instructions in the Basic Setup section and switch to MySQL (make sure you restart the server after)
Run /skills backup load [fileName]
, with fileName being the name of the backup file you saved before (seen in the backups folder)
Guide to creating custom rewards
This wiki is no longer maintained and is only for Aurelium Skills Beta versions. Visit the for AuraSkills 2.0+.
Rewards are a powerful way of performing actions or giving things when a player levels skills. There are many different types of rewards, including stats, commands, permissions, items, and money. Rewards also support custom messages in menus and level-up chat messages.
Configuring rewards requires Yaml syntax that you might not have seen before, technically known as map lists. These are simply lists comprised of multiple line components, similar to an array of objects in JSON. Map lists are defined like this:
Pay attention to the spacing between the hyphen and the previous section. In the example, a regular indentation is 2 spaces. Therefore, the space from the start of your map list values (type, stat, value) compared to the previous section name (patterns) should be 4 spaces.
Rewards are configurable in files in the AureliumSkils/rewards
folder, and the name of the file corresponds to the skill it configures (eg. farming.yml controls Farming rewards only). There is also the global.yml
file which configures rewards for all skills, so rewards added in it will be applied to all skills. You will already see files for each skill containing the default rewards. Each file is split into two main sections, patterns
and levels
.
The patterns section is for rewards that repeat in a regular pattern within a skill's progression. Each reward in this section should have a pattern
section that can define a start
, interval
, and stop
. Patterns can be used for every type of reward.
The start
value is the skill level the reward should first appear at; this should be at least 2 since the first level up possible is from level 1 to 2. If start
isn't specified, it will default to 2.
The interval
is the difference between consecutive rewards; an interval of 2 means the reward appears every other level (2, 4, 6,...). The default interval
is 1.
The stop
number is the maximum level the reward should appear at, which may or may not be a level the reward would actually be at calculated by the start
and interval
. It simply means that there will only be that reward below or at the specified stop
level. This defaults to the max skill level defined by the max-level
option of that skill in config.yml.
The levels section is for defining single rewards at a specific level. You must first define a section of the level you want to define for, like so:
This command reward will be executed when the player levels up to skill level 5.
Every reward must have a type
value of the reward type it is. Each type of reward has different keys you can define that configure the reward, both required and optional.
stat
)Stat rewards level up an Aurelium Skills stat, which includes health, regeneration, strength, luck, wisdom, and toughness. Menu and level-up chat messages are automatically handled.
Keys:
stat
- The name of the stat the reward should level, use the default English names like strength
(Required)
value
- The amount of the stat to level, defaults to 1 (Optional)
Example:
Want to remove the default stat rewards? You can do so by making the patterns section empty using patterns: []
. However, you may need to adjust menu message newlines in the messages file to remove extra spaces when there are no stat rewards.
command
)Command rewards allow you to execute any command, either through console or the player.
Keys:
command
- The command to execute; do not include the beginning slash. (Required)
Supported placeholders:
{player} - The player's name
{level} - The level of the skill that the player just leveled up to
{skill} - The name of skill that was leveled up
All PlaceholderAPI placeholders (requires the PlaceholderAPI plugin installed). Built-in placeholders are applied before PlaceholderAPI placeholders so you can combine them together.
Color codes work using "&" unless escaped using "\&"
executor
- Defines who executes the command, either console
or player
. Using a player executor may still take into account permissions. Defaults to console. (Optional)
revert_command
- Revert commands allow you to execute a command when a player loses the skill level due to admin commands. Placeholders work the same as the normal command value. (Optional)
revert_executor
- Defines who executes the revert command, console
or player
(Optional)
Example:
permission
)Permission rewards grant a permission node to a player. You should use this over a command reward because permission rewards automatically handle much of the pain and problems a direct command would have, such as: 1. Automatically removing the permission when the player loses the level 2. Automatically giving missing permissions if you added the reward to a level below what a player already has (applies on player join)
Permission rewards currently only work if you use LuckPerms as your permissions plugin.
Keys:
permission
- The permission node to give (Required)
value
- The value of the permission, either true
or false
, but defaults to true
(Optional)
Example:
item
)Item rewards give an item to the player, supporting any item through a key and registry system. Items must first be registered to a unique key in-game using /skills item register [key]
and holding the item you want to register in your main hand. Items can be unregistered using /skills item unregister [key]
. When a player's inventory is full, they will be notified and the item will be added to the player's unclaimed items. They can then claim the items using /skills claimitems
. Unclaimed items are saved between restarts.
Keys:
key
- The key of the item that was registered using /skills item register [key]
(Required)
amount
- The amount of that item to give, can exceed max stack size. If the amount exceeds the maximum stack size of an item, the given items will still follow the item's max stack size but will just be divided into multiple stacks. If items can't fit into the player's inventory they will be added to unclaimed items like normal. The amount defaults to the original amount of the item registered. (Optional)
Example:
money
)Money rewards simply give money on level up through Vault Economy.
Keys:
amount
- The amount of money to give
Example:
If you don't use Vault or have special currencies, you can still give money using command rewards. You can also make complex amount equations easily through pattern command rewards combined with the {level} placeholder and PlaceholderAPI math placeholders. Here is an example:
Command, permission, and item rewards support custom menu and chat messages. The menu_message
key is for the message that will show on the level item in the level progression menu (accessible by clicking any skill in the /skills menu). This will appear under the "Rewards:" section right after stat rewards and before ability unlock/level ups. The chat_message
key is for the message that will show on the list of rewards in chat when the player levels up. If the menu_message
and chat_message
you want are the same, you can simply use message
instead as a shorthand.
The value of a message can either be a direct string (exactly what you put) or the path of a message key in the messages file. The plugin will first try to replace a message key and if not found will just use the direct string. Messages also support color codes using "&".
Note: Messages do not include new lines by default, you must use \n at the beginning if you want a new line for each reward.
Example of a menu and chat message being defined:
Example using the message shorthand for both menu and chat messages:
Item rewards by default use the display name or localized name of the item in the format of the rewards.item
section's message keys in the messages file. If the item does not have a display name, it will not have any messages by default.
Stat reward messages are automatically handled because it always uses the menus.level_progression_menu.rewards_entry
message key for menu messages and the leveler.stat_level
message key for chat messages. You should edit those values in the messages file to change what stat reward messages look like.
Money reward messages are automatically handled through the menus.level_progression_menu.money_reward
message key for menu messages and the leveler.money_reward
message key for chat messages. All money rewards amounts for a particular level are added together into a single message, including money rewards from the legacy skill-money-rewards section of config.yml
Still confused or syntax not working? Try looking over the example rewards file
Stats information and calculations
There are 6 different stats that are upgraded through skills:
Health increases the max HP of the player.
Adds a AttributeModifier to Attribute.GENERIC_MAX_HEATLH
Applied on PlayerJoinEvent, health stat changes, and config reloads
How Health is calculated based on stat level:
Attribute.GENERIC_MAX_HEALTH = 20.0 + (Stat.HEALTH * Setting.HEALTH_MODIFIER)
Where Stat.HEALTH is the Health Stat Level visible with /stats and Setting.HEALTH_MODIFIER is the config option "health.modifier" (Default value 0.5)
A "health.modifier" of 1.0 means that every Health Stat Level increases player HP by 1.0
Health Scaling:
If "health.health-scaling" is set to true, the amount of hearts displays on the player's screen is affected by their max health, preventing a player's health from blocking their entire screen. This means that the amount of hearts the player sees will not be 1 heart = 2 HP if their health is greater than 20.0
Health scaling caps at a maximum of 2 full rows of hearts
HP Indicator Scaling
Changed through config option "health.hp-indicator-scaling"
HP Indicator Scaling is the amount the player's raw attribute health should be multiplied by to get the displayed HP on the action bar.
The default value of 5 makes it so that 20.0 raw HP = 100 Displayed Action Bar HP
See the Health page for more detailed information
Strength increases the damage a player does in attacks
Strength is applied on EntityDamageByEntityEvent
How damage is calculated from strength:
Damage = InitialDamage + (Stat.STRENGTH * Setting.STRENGTH_MODIFIER)
Where Stat.Strength is the Strength Stat Level visible with /stats and Setting.STRENGTH_MODIFIER is the config option "strength.modifier" (Default value 0.1)
If use-percent is set to true:
Damage = InitialDamage * (1 + (Stat.STRENGTH * Setting.STRENGTH_MODIFIER) / 100)
Toughness decreases the damage dealt by enemy attacks
Toughness is applied on EntityDamageEvent
How Toughness is calculated:
Damage = OriginalDamage * (1 - (-1 * (1.01)^(-1 * Stat.TOUGHNESS * Setting.TOUGHNESS_MODIFIER) + 1))
Where Stat.Toughness is the Toughness Stat Level visible with /stats and Setting.Toughness_MODIFIER is the config option "toughness.new-modifier" (Default value 1)
Regeneration increases the natural regeneration rate
Two options: Vanilla or Custom
Vanilla
Used when "regeneration.custom-regen-mechanics" is set to false
Changes the amount regenerated on EntityRegainHealthEvent if regain reason equals RegainReason.SATIATED
If player saturation is greater than 0:
AmountRegenerated = VanillaAmount + (Stat.REGENRATION * Setting.SATURATED_MODIFIER)
Where Stat.REGENERATION is the Stat Level and Setting.SATURATED_MODIFIER is the config option "regeneration.saturated-modifier" (Default value 0.05)
If player hunger is full (20) but saturation = 0:
AmountRegenerated = VanillaAmount + (Stat.REGENRATION * Setting.HUNGER_FULL_MODIFIER)
Where Stat.REGENERATION is the Stat Level and Setting.HUNGER_FULL_MODIFIER is the config option "regeneration.hunger-full-modifier" (Default value 0.025)
If player hunger is greater than 14 but not full:
AmountRegenerated = VanillaAmount + (Stat.REGENRATION * Setting.HUNGER_ALMOST_FULL_MODIFIER)
Where Stat.REGENERATION is the Stat Level and Setting.HUNGER_ALMOST_FULL_MODIFIER is the config option "regeneration.hunger-almost-full-modifier" (Default value 0.025)
Custom
Used when "regeneration.custom-regen-mechanics" is set to true
Non-saturated regen:
Applied every Setting.HUNGER_DELAY ticks ("regeneration.custom-regen-options.hunger-delay", Default 60)
If player hunger is full (20):
AmountRegenerated = Setting.BASE_REGEN + (Stat.REGENERATION * Setting.HUNGER_FULL_MODIFIER
Where Setting.BASE_REGEN is config option "regeneration.base-regen" (Default value 1)
If player hunger is greater than 14 but not full:
AmountRegenerated = Setting.BASE_REGEN + (Stat.REGENERATION * Setting.HUNGER_ALMOST_FULL_MODIFIER
Saturated regen:
Applied every Setting.SATURATED_DELAY ticks ("regeneration.custom-regen-options.hunger-delay", Default 20)
AmountRegenerated = Setting.BASE_REGEN + (Stat.REGENERATION * Setting.SATURATED_MODIFIER
Where Setting.SATURATED_MODIFIER is config option "regeneration.saturated-modifier" (Default value 0.05)
Changes to Setting.SATURATED_DELAY and Setting.HUNGER_DELAY will only take effect on server restart
Increase Luck attribute (better chest and fishing loot) and chance for double drops
Modifies Attribute.GENERIC_LUCK
Luck = Stat.LUCK * Setting.LUCK_MODIFIER
Setting.LUCK_MODIFIER is config option "luck.modifier" (Default value 0.1)
Applied on PlayerJoinEvent, luck stat changes, and config reloads
Chance to give double drops when breaking certain blocks
Includes stone, cobblestone, sand, dirt, gravel, grass_block, andesite, diorite, and granite
% Chance = Stat.LUCK * Setting.DOUBLE_DROP_MODIFIER * 100
Setting.DOUBLE_DROP_MODIFIER is config option "luck.double-drop-modifier" (Default value 0.005)
Maxes out at a chance of Setting.DOUBLE_DROP_PERCENT_MAX ("luck.double-drop-percent-max", default value 100)
Increases experience gained from any source and decreases anvil costs
ExperienceGained = InitialExperience * (1 + (Stat.WISDOM * Setting.EXPERIENCE_MODIFIER))
Setting.EXPERIENCE_MODIFIER is config option "wisdom.experience-modifier" (Default value 0.01)
NewCost = OriginalCost * (1 - (-1 * 1.025^(-1 * Stat.WISDOM * Setting.ANVIL_COST_MODIFIER) + 1))
Setting.ANVIL_COST_MODIFIER is config option "wisdom.anvil-cost-modifier" (Default value 0.25)
Guide to stat modifiers with commands, items, and armor
Modifiers are temporary Stat buffs or changes on a player. They come in 3 different types and are interacted with primarily using commands.
Regular modifiers are the simplest type of modifier. You add and remove them using commands. Each modifier has 3 properties, a name
, stat
, and value
.
The name
is used to identify the modifier. You cannot have more than one modifier with the same name on a single player.
The stat
property is which stat the modifier should be applied on. You must use the official stat names, which are health
, strength
, regeneration
, luck
, wisdom
, and toughness
.
The value
property is how much the stat should increase/decrease. For example, a value
of 50
would add 50 levels to whatever stat it was applied on. Negative values subtract levels.
The commands used to interact with them are:
/sk modifier add [player] [stat] [name] [value] (silent)
- Adds a stat modifier to a player
/sk modifier remove [player] [name] (silent)
- Removes a specific stat modifier from a player
/sk modifier list (player) (stat)
- Lists all or a specific stat's modifiers for a player
/sk modifier removeall (player) (stat) (silent)
- Removes all stat modifiers from a player
Item modifiers are like regular modifiers but stored on items. The modifier will only be applied when the player is holding the item. The commands will by default apply lore displaying the modifier's stat and value. The item modifier itself is independent of lore and is stored as custom NBT data. Therefore, you can modify lore however you want and it will still work. You can add multiple modifiers, but you can only have 1 modifier of each stat type.
The commands used to interact with them are:
/sk item modifier add [stat] [value] (lore)
- Adds an item stat modifier to the item held, along with lore by default
/sk item modifier remove [stat] (lore)
- Removes an item stat modifier from the item held, and the lore associated with it by default
/sk item modifier list
- Lists all item stat modifiers on the item held
/sk item modifier removeall
- Removes all item stat modifiers from the item held
Armor modifiers are exactly like item modifiers, except they only apply when the player is wearing the item as armor. You can have both item and armor modifiers on the same item and can have an item with an item and armor modifier of the same stat.
The commands used to interact with them are:
/sk armor modifier add [stat] [value] (lore)
- Adds an armor stat modifier to the item held, along with lore by default
/sk armor modifier remove [stat] (lore)
- Removes an armor stat modifier from the item held, and the lore associated with it by default
/sk armor modifier list
- Lists all item armor modifiers on the item held
/sk armor modifier removeall
- Removes all armor stat modifiers from the item held
The following info is for advanced users with prior knowledge about the NBT format
The following is the NBT tag structure used for item and armor modifiers. It can be used in places such as the give command to create items with modifiers already added.
Replace [Type] with either Armor for armor modifiers or Item for item modifiers. Replace [Stat] with the name of the stat with first letter capitalized (e.g. Health). Replace [value] with the value of the modifier (a number).
Full example of a Health item modifier with value 100:
Multiple modifiers can also be used:
Both item and armor modifiers can be used on the same item:
List of menu config format changes in Beta 1.3.0 from older versions
This is a detailed list of the configuration format changes in Beta 1.3.0 from versions before Beta 1.3.0. Existing configurations will migrate automatically, but any new changes made after updating must be done in the new format.
The existing menus.yml has been replaced by individual files for each menu in the new menus folder.
Existing changes to menus.yml will be automatically migrated to the new files.
Exception: the lore of the rank item in the level progression menu will be reset due to new additions to it.
The old menus.yml has been renamed to menus-OLD.yml and should not be used. This is just a backup of your menu config before it was migrated.
The rows
menu entry has been renamed to size
. The value of size
functions the same as rows
(1-6).
Material names are now in lowercase (though uppercase is still allowed).
The row
and column
entries for items has been replaced with the pos
entry with two acceptable formats:
The row,column
format, such as 3,0
for row 3, column 0 (the first row/column is always 0)
The slot
format, which is a single number for the slot number from 0 up to 53 (starting at the top left slot increase left to right then top to bottom)
Each context (every skill/stat that has a different material/position) in a template has been moved to its own subsection under the template name.
Values such as the material, pos, and item meta of each context are separate fields under the subsection with the context name.
The following is an example of the new format for contexts in templates:
Item meta options, such as potion_data, are now separate fields under the item section (alongside material, lore) for items and in the context subsection for templates.
The material
field is just for the material name and not for any item meta (glow, potion_data, nbt, etc).
The following is an example of item meta being defined in the new format:
Legacy material data for 1.12 is still defined in the material field, using the material:data format
Detailed guide to health options
Health increases the max HP of the player. It works by adding an AttributeModifier to the GENERIC_MAX_HEALTH attribute. It is applied on PlayerJoinEvent, health stat changes, and config reloads.
Health is calculated based on the Health stat level:
GENERIC_MAX_HEALTH = 20.0 + (Stat.HEALTH * health.modifier)
Where Stat.HEALTH is the Health Stat Level visible with /stats and health.modifier is the config option health.modifier
(Default value 0.5)
A health.modifier
of 1.0 means that every Health Stat level increases the player's HP by 1.0
If health.health-scaling
is set to true, the amount of hearts displayed on the player's screen is affected by their max health, preventing a player's health from blocking their entire screen. This means that the amount of hearts the player sees will not be 1 heart = 2 HP if their health is greater than 20.0
The amount of hearts displayed on the screen can be customized in the config under the health.hearts
section of config.yml. The key is the number of heart, and the value is the Minecraft health that amount of hearts is unlocked at. For example, if two entries are '12': 29 and '13': 37, this means the player will have 12 hearts shown on their screen when their Minecraft health is from 29 (inclusive) to 37 (exclusive).
This supports hearts below 10 and hearts above 20, just add entries with the key as the number of hearts. The order of keys and values should be sequential, otherwise, higher heart entries will override lower ones.
This is purely cosmetic, changing these options does not change the actual hp you have, and it only works if you have health.health-scaling
set to true.
HP Indicator Scaling is the amount the player's raw attribute health should be multiplied by to get the displayed HP on the action bar. It is changed through the config option health.hp-indicator-scaling
. The default value of 1 makes it so that the action bar HP matches the Minecraft HP (20 HP on action bar = 20 HP in Minecraft). This is also cosmetic and does not affect the actual amount of health a player has.
Guide to configuring loot tables
This wiki is no longer maintained and is only for Aurelium Skills Beta versions. Visit the for AuraSkills 2.0+.
The Fishing and Excavation skills have abilities that can drop custom loot, which is configured in the loot
folder. For Fishing, the treasure_hunter
ability corresponds to the rare pool and the epic_catch
ability gives items from the epic loot pool. The metal_detector
ability in Excavation gives rare loot while the lucky_spades
ability gives epic loot.
The drop chances for the abilities are configured separately in abilities_config.yml
, see the Abilities page for more details.
Beyond changing the items dropped for these abilities, the files enable adding custom loot pools unrelated to abilities, executing commands as loot, as well as creating new loot tables for other skills (Foraging and Mining).
Loot tables are separated into files for each skill in the loot folder. The name of the file is the skill that the file corresponds to. By default, there are excavation and fishing loot tables. You can optionally add loot tables for mining and foraging, as long as they follow the format.
Loot pools are lists of loot entries, and each loot table file can have multiple loot pools. In the default excavation and fishing loot tables, there are the rare and epic loot pools. However, you can add any amount of new loot pools.
Loot pools are defined in the pools section of the loot file. Each pool must have a unique name for the config section name. In excavation and fishing, rare
and epic
are reserved names that integrate with abilities, so it is discouraged to change them.
Keys:
base_chance
- The chance to select this pool without any added ability bonuses (1 = 1% chance) (defaults to 1)
selection_priority
- The order the pools are potentially selected, a higher priority means that it will attempt to select before lower priority pools (defaults to 1)
override_vanilla_loot
- Whether the regular loot from the block should be replaced with the selected loot. Does not apply to fishing (defaults to 1).
chance_per_luck
- The amount the chance of selecting the pool should increase by per Luck stat level the player has (0.1 = +0.1% chance per Luck) (defaults to 0)
require_open_water
- For Fishing, only give items in the pool when the player fishes in open water (5x5x5 volume of water) when set to true. This prevents giving loot when using most AFK fish farms (defaults to false).
Each pool has a loot section containing a map list of the loot entries. This uses the same type of syntax as rewards, which is explained here.
Currently, there are two types of loot: item loot and command loot. Each loot entry must have certain required keys and can optionally have more. Optional keys are either notated with (optional) or have their default values specified on this page. Each key is explained below:
Universal Keys (apply to any loot type):
type
- The type of loot, either item
or command
weight
- The weight of the entry compared to other loot in the same pool. A higher weight means the loot entry is more likely to be selected (defaults to 10).
message
- A chat message to send to the player when they get the loot. This supports color codes and PlaceholderAPI (optional).
sources
- A list of sources or source tags that this loot should exclusively apply to. The names of sources should match the exact name in sources_config.yml. Does not support custom block sources yet (optional).
xp
- The amount of skill xp to give when this loot is dropped (defaults to the original source amount)
Item loot keys:
material
- The material of the item, must be valid bukkit material name (not case sensitive). Use material:id to specify legacy data if on 1.12
amount
- Controls the amount of item to give. This can either be a single number like '5' or a range of numbers such as '1-5', which gives a random amount from 1 to 5 (both inclusive) (defaults to 1)
key
- References an item key registered using /skills item register. If this is specified, material and all keys below do not apply
display_name
- The display name of the item, supports & for color codes unless escaped with \& (optional)
lore
- The lore of the item, must be a list of each line, supports & for color codes unless escaped with \& (optional)
enchantments
- A list of enchantments, one enchantment per line. Use a space between the enchantment name and the level, such as 'sharpness 5' (optional)
potion_data
- A section containing potion data, see below for keys (optional):
type
- The type of potion, must be a bukkit PotionType
extended
- Whether the potion has an extended duration
upgraded
- Whether the potion has an upgraded level
custom_effects
- A map list of effects, keys for each section below (optional):
type
- The name of the effect, must be a bukkit PotionEffectType
duration
- The duration of the effect, in ticks
amplifier
- The amplifier of the effect (0 means level 1)
glow
- Set to true to make the item glow without enchantments showing (optional)
nbt
- Section for any custom NBT data (optional)
flags
- List of item flags to add to the item (optional)
ignore_legacy
- If true, the plugin will skip loading the item if the server version is below 1.13 to prevent material parsing errors. The only reason you should use this if you are planning on using the same config for legacy and modern versions and an item you have does not exist in 1.12. The plugin is able to recognize modern material names on legacy versions without any issues. (optional)
Basic example of an item loot:
Here is a more complex example with display name, lore, and enchantments:
Here is a potion with base potion data and custom effects:
An item with hidden enchants using item flags and custom model data using the nbt section
Command loot is used to execute any command when the player gets the loot, either through console or by the player.
Command loot keys:
executor
- Who should execute the command, either console or player (defaults to console)
command
- The command without the beginning /, supports {player} placeholder and all PlaceholderAPI placeholders
Example:
The way loot is selected is fairly straightforward:
The loot table is determined by skill that corresponds to the action the player does. For block based loot, the block must be a source for a supported skill (foraging, mining, excavation).
A loot pool is selected from the loot table starting from the highest priority loot pool. Whether pool is selected is base on the pool's base_chance and any added chances. If a pool is not selected, the pool with the next highest selection priority will be attempted. If no loot pool gets selected, the below steps do not apply.
A single loot entry is selected from the pool based on the weight of the entry. A higher weight makes it more likely for it to be selected. The exact chance is calculated by weight / sum of all weights in pool
.
Guide to configuring XP sources
This is a guide to using and configuring the sources_config.yml
file.
The sources config is where you configure the amount of skill XP each block, action, mob, etc. should give. The sources_config.yml
file is divided into sections for each skill.
The key for each source is the name of the source and should not be modified. The value is the amount of skill XP that the source should give by default (without any modifiers or multipliers). After changing values, make sure to run /skills reload
to have them take effect.
The Farming, Foraging, Mining, and Excavation sections support custom blocks (blocks that are not defined by default).
To add custom blocks, add a custom:
section under the specific skill section. In the custom section, the keys are the block name and the values are the XP amount. For example: blue_concrete: 10.0
The blocks you add are checked for block replacement by default, meaning players cannot place and break them repeatedly to gain XP. The block names to use are the 1.13+ block names, even if your server is 1.12.
Here is a full example of a custom block for the Mining skill:
Guide to the config.yml file
This wiki is no longer maintained and is only for Aurelium Skills Beta versions. Visit the for AuraSkills 2.0+.
This is a guide to the config.yml
file found in the plugins/AureliumSkills
folder.
If an option you see in the config is missing, this page may not have been updated yet or the option may have been removed. You can find any config additions and changes in the full plugin .
Last Updated Version: Beta 1.3.13
mysql:
enabled
- Whether MySQL should be used for data storage (requires a restart to enable)
host
- MySQL hostname
port
- Port (must be number)
database
- Database name (must be created already)
username
- MySQL username
password
- MySQL password
load-delay
- Number of ticks to delay loading data after a player joins, useful for syncing multiple servers to a single database
always-load-on-join
- If true, player data will always be loaded from the database when a player joins, regardless if it is already in memory
ssl
- Whether to use SSL
default-language
- The default language for players; must have a file that matches (ex: messages_en.yml
for en
)
try-detect-client-language
- If set to true
, the plugin will try to use the client's language, if available and valid. This is only for players who have not set a language using commands, or if their language was reset after a server restart. If the client language is not a valid plugin language, it will use the default-language
. If set to false
, all unset players will use the default-language
.
languages
- A list of languages players can switch to using /skills lang <language>
; must also have a file that matches. Custom language files are defined here.
action-bar:
enabled
- Whether the action bar should be enabled/disabled (Must be set to true
to have any action bars; setting to false
disables all action bar types)
idle
- Controls the idle action bar (not gaining xp). Enable this if you want the action bar to always display.
ability
- Controls the action bar for ability messages (raise/lower, activate, etc.). If set the false, the ability messages will be sent through chat instead.
xp
- Controls the action bar for gaining xp (not maxed)
maxed
- Controls the action bar when xp is gained in a maxed skill
update-period
- How often the action bar should update, in ticks (Increase this value if action bar is causing lag)
round-xp
- If enabled, current xp will be rounded to an integer.
placeholder-api
- Whether PlaceholderAPI placeholders should be replaced in the action bar, given that you have PlaceholderAPI
use-suffix
- Whether to format the current player's XP with number suffixes (k, m, etc). Only applies if xp
is set to true.
boss-bar:
enabled
- Whether boss bars should be enabled for xp gains
mode
- Can be either single
or multi
. multi
means multiple boss bars will display if gaining XP from different types of skills, single
is only one at a time.
stay-time
- How long the boss bar should stay up after not gaining xp, in ticks
update-every
- Controls how often the boss bar should update when gaining xp consecutively, increase if having lag issues
round-xp
- If enabled, the current xp will be rounded to an integer.
use-suffix
- Whether to format the current player's XP with number suffixes (k, m, etc).
format
- The format list allows you to change the boss bar color and style for each skill:
Format: '[SKILL] [COLOR] [STYLE]'
Available colors are BLUE, GREEN, PINK, PURPLE, WHITE, RED, and YELLOW
Available styles are SOLID, SEGMENTED_6, SEGMENTED_10, SEGMENTED_12, and SEGMENTED_20
base-mana
- The base amount of mana players should have at 0 Wisdom
enable-roman-numerals
- Whether Roman numerals should be used for skill levels
damage-holograms
- Enable/disable damage holograms (requires HolographicDisplays)
damage-holograms-scaling
- Whether the damage displayed on holograms should be scaled according to health.hp-indicator-scaling
damage-holograms-decimal:
display-when-less-than:
- Display decimals in damage holograms when less than a specified damage
decimal-max-amount
- The maximum amount of decimal digits to display
damage-holograms-offset:
x
- X coordinate offset
y
- Y coordinate offset
Z
- Z coordinate offset
random
:
enabled
- Whether random hologram positions should be enabled
x-min
- Minimum X coordinate offset
x-max
- Maximum X coordinate offset
y-min
- Minimum Y coordinate offset
y-max
- Maximum Y coordinate offset
z-min
- Minimum Z coordinate offset
z-max
- Maximum Z coordinate offset
leaderboards:
update-period
- How often leaderboards should be updated, in ticks
update-delay
- How long after server startup should the leaderboards be updated, in ticks (does not include the immediate update on startup)
enable-skill-commands
- Whether skill name commands should be enabled such as /farming
or /mining
(Requires restart to have an effect)
check-block-replace
- Whether blocks placed by players should not give xp; keep true
unless you are having plugin compatibility issues
blocked-check-block-replace-worlds
- Worlds on this list will not be checked for block replaces, allowing placing and breaking of blocks to gain xp.
blocked-check-block-replace-regions
- WorldGuard regions on this list will not be checked for block replaces (requires 1.13+).
blocked-worlds
- Players in worlds on this list will not be able to gain xp naturally in any skill.
blocked-regions
- Players in regions on this list will not be able to gain xp naturally in any skill (requires 1.13+).
disabled-worlds
- Most of the plugin's gameplay functionality will be disabled in worlds on this list, including but not limited to stats, abilities, gaining xp, and the action bar (commands and menus will still be available)
disable-in-creative-mode
- Whether players should not be able to gain xp while in creative mode
auto-save:
enabled
- Whether data for online players should save periodically instead of just when they log out. This is useful if you experience skill data losses due to server crashes.
interval-ticks
- How often (in ticks) to auto-save
skill-money-rewards:
enabled
- Whether players should gain money for leveling up skills (requires Vault)
base
- The base amount of money players gain at level 2
multiplier
- The multiplier (money = base + multiplier * level * level
)
leveler:
title:
enabled
- Whether a title should be displayed to players on skill level up
fade-in
- Title fade in time, in ticks
stay
- How long the title should last, in ticks
fade-out
- Title fade out time, in ticks
sound:
enabled
- Whether a sound should be played to players on skill level up
type
- The name of the sound that should be played (must be a valid sound name)
category
- The sound category the sound should be played in
volume
- Sound volume
pitch
- Sound pitch
double-check-delay
- The level up check delay for large xp gains at once, in ticks (lower is faster)
modifier:
armor:
equip-blocked-materials
- A list of blocks that should not grant stats of armor when right-clicked; add to this list when stats are given but armor is not equipped.
item:
check-period
- How often, in ticks, the item held in a player's hand should be checked for stat item modifiers (increase if you have lag)
enable-off-hand
- Whether stat modifiers should work in the off hand
auto-convert-from-legacy
- Whether the old modifier nbt format should be converted to the new one. Set to false if you are having performance issues and all your items have been converted.
requirement:
enabled
- Whether requirements should be checked at all. If you do not use requirements, disabling will improve performance.
item:
prevent-tool-use
- Whether block breaking should be blocked when a player does not meet a requirement
prevent-weapon-use
- Whether attacking entities should be blocked when a player does not meet a requirement
prevent-block-place
- Whether block placing should be blocked when a player does not meet a requirement
prevent-interact
- Whether interacting (right clicking) should be blocked when a player does not meet a requirement
global
- Define item requirements that should apply to every item of that type. Format: - '[material] [skill_1]:[level_1] [skill_2]:[level_2] ...'
armor:
prevent-armor-equip
- Whether armor should be unable to be equipped when a player does not meet a requirement
global
- Define armor requirements that should apply to every item of that type. Format: - '[material] [skill_1]:[level_1] [skill_2]:[level_2] ...'
critical:
base-multiplier
- The base damage multiplier for critical hits
enabled
- Options in this category control whether that item type should be able to deal critical hits. (hand
is for empty fist, other
is for holding any other item not on the list)
menus:
placeholder-api
- Whether PlaceholderAPI placeholders should be used in menus.
check-for-updates
- Whether the plugin should check for new updates on startup and when a player with the aureliumskills.checkupdates
permission joins
automatic-backups:
enabled
- Whether automatic backups should be taken on server shutdown
minimum-interval-hours
- The minimum interval, in hours, between automatic backups. Automatic backups will only be taken at least this amount of hours after the last one.
save-blank-profiles
- If false, player data of players who have not leveled any skills or gained any XP will not be saved into storage.
All Skills Options
enabled
- Whether this skill should be enabled. Disabled skills will be invisible from menus and unable to be leveled. The abilities and mana abilities of disabled skills will not work.
max-level
- The max level obtainable naturally for this skill
check-cancelled
- An option on most skills that controls whether block break events should be checked for cancellation (only disable if there are plugin compatibility issues)
check-multiplier-permissions
- Whether to check for permission based XP multipliers when a player gains XP in a skill. If you do not use multiplier permissions, setting this to false can improve performance.
Archery and Fighting Options
damage-based
- Option to grant XP every time a player attacks per damage dealt instead of killing the mob. WARNING: This still uses the values in sources_config.yml as the XP granted PER VANILLA DAMAGE for each type of mob. You should significantly lower and equalize the archery and fighting values in sources_config.yml if you want to keep the progression similar to before.
spawner-multiplier
- Option to change the XP gained from mobs spawned from spawners. Set to 0 to disable XP from mob spawners; set to 1 to match regular mobs (1 by default). The XP gained is the spawner-multiplier value multiplied by the XP a normal mob of that type would give.
Defense Options
max
- The maximum amount of XP that can be gained at once
min
- The minimum amount of XP/damage required to gain any XP
allow-shield-blocking
- Allow Defense XP gain when blocking with a shield (false by default)
Endurance Options
xp-gain-period
- How often Endurance XP should be gained, in ticks
Alchemy Options
give-xp-on-takout
- Alchemy option to reward XP when the potion is taken out of the brewing stand.
give-xp-on-potion-combat
- Give alchemy XP when using splash/lingering potions to kill/damage mobs (follows Archery options and XP source values)
ignore-custom-potions
- If true, abilities will not be applied on potions with custom effects.
Healing Options
exclude-negative-potions
- Disable options that give negative effects from giving Healing XP
blocked-grindstone-enchants
- A list of enchantments that should not give grindstone XP. Useful for preventing irremovable curses from custom enchant plugins from allowing XP duping.
health:
modifier
- How much vanilla hp should be given for every Health level (2 = 1 vanilla heart). By default it is 0.5, which means players will gain half of half a heart (0.25 of a heart) for every Health level. This is not affected by hp-indicator-scaling
.
health-scaling
- If enabled, hearts are scaled at high enough hps (purely visual), maxing out at 20 hearts. (This option is to prevent hearts taking up a large portion of the screen, however this means that 1 heart at low hps will not be worth the same as 1 heart at high hps)
hp-indicator-scaling
- How much vanilla hp should be multiplied by for display on the action bar and menus (Does not affect actual health, purely visual)
update-delay
- How many ticks the plugin should wait before updating health on world switches (keep at 0 unless you are having plugin compatibility issues)
force-base-health
- If enabled, base health will be forced to 20 every time health updates (only enable if you are having plugin compatibility issues)
hearts
- This section is used to change the hearts shown for different health ranges. The key is the number of hearts and the value is the minecraft health that amount of hearts is unlocked at.
For example, if two entries are '12': 29 and '13': 37, this means the player will have 12 hearts shown on their screen when their minecraft health is from 29 (inclusive) to 37 (exclusive).
The values are not the HP shown on the action bar. To find the HP from the action bar the value is, multiply it by the health.hp-indicator-scaling option (default is 5).
This supports hearts below 10 and hearts above 20, just add entries with the key as the number of hearts.
The order of keys and values should be sequential, otherwise higher heart entries will override lower ones.
This is purely cosmetic, changing these options does not change the actual hp you have.
This only works if you have health.health-scaling set to true.
keep-full-on-increase
- If enabled, a player with full health that has a health stat increase will keep full health. Players will not need to regenerate extra health if they were already at full health before their max health increased.
strength:
modifier
- How much vanilla damage should be added for every Strength level (2 = 1 vanilla heart of damage). If use-percent is set to true, the new damage is damage = originalDamage * (1 + (strength * modifier) / 100)
.
hand-damage
- Whether strength should work on fists and items that aren't tools or weapons)
bow-damage
- Whether strength should apply for bows
display-damage-with-health-scaling
- Whether the Strength descriptors in the stats menu should display damage with health.hp-indicator-scaling
use-percent
- Whether strength should be calculated on a percentage basis, rather than adding. This will make the base damage more important so waiting for the attack cooldown and using a better weapon will be more important. If this is true, the recommended modifier is 0.63.
toughness:
regeneration:
custom-regen-mechanics
- Whether custom regeneration mechanics should be enabled (allows the control of regen delays but doesn't feel as vanilla)
base-regen
- The base amount of vanilla health regenerated when Regeneration is 0
saturated-modifier
- How much addition health should be regenerated per Regeneration level when the player has saturation
hunger-full-modifier
- How much additional health should be regenerated per Regeneration level when the player is at full hunger but does not have saturation
hunger-almost-full-modifier
- How much additional health should be regenerated per Regeneration level when the player is above 14 hunger points but below 20
custom-regen-options:
saturated-delay
- How fast health should regenerate when the player has saturation, in ticks, if custom-regen-mechanics
are enabled
hunger-delay
- How fast health should regenerate when the player does not have saturation, in ticks, if custom-regen-mechanics
are enabled
mana-modifier
- How much additional mana should be regenerated per second per Wisdom level
base-mana-regen
- The base amount of mana regenerated when Regeneration is 0
luck:
modifier
- How much luck attribute should be given per Luck level
double-drop-enabled
- Whether the luck double drop functionality is enabled
double-drop-modifier
- The chance modifier for double drop per Luck level
double-drop-percent-max
- The maximum percent chance for double drops
wisdom:
anvil-cost-modifier
- The anvil XP cost reduced per Wisdom level
experience-modifier
- The increase in vanilla experience gain per Wisdom level
allow-over-max-mana
- Whether mana should stay when the Wisdom stat decreases so that the max mana goes below the current mana
max-mana-per-wisdom
- How much the max mana should increase per wisdom level
new-modifier
- Controls the power of the Toughness stat in reducing damage (See for more info)
Guide to customizing XP requirements
The amount of XP required to level up skills can be configured in the xp_requirements.yml
file.
Within a section, such as the default
section, you will see an expression
value that contains the expression/equation used to calculate the XP requirements.
The expression can be changed as you wish, but it must be a valid EvalEx expression. You can view the supported operators and functions here.
The result of the expression will always be rounded to the nearest whole number
Variables are also supported in expressions. In order to have a different XP required for each level, you must have the level
variable in the expression somewhere. This variable corresponds to the level that is unlocked upon reaching the required XP. The level
starts at 2 and goes up to the maximum level of the skill. For example, the result of the expression when level
is 5 is the XP need to go from level 4 to 5.
Custom variables are also supported, which allow you to label and organize the parts of your expression. Instead of using the numbers directly in the expression, you can turn it into a variable that is specified in its own key. In the default expression shown below, multiplier
and base
are examples of custom variables.
As you can see, the numeric values of multiplier
and base
are specified as keys with the same name as the variable:
You can use any variable name, as long as the value of the variable is defined in a separate key of the same name.
You can create different XP requirements for each skill by adding a skills.[skillName]
section that will override the default
section. The keys and values in the skill section are the same as the default
section.
Here is an example of Alchemy XP requirements that override the default:
Instead of using an equation, XP requirements can be defined using a direct list of values. Create a list called values
under either the default
section or a specific skill section.
Here is an example of XP requirements using a value list:
The first value in the list is the XP required to get from level 1 to level 2.
Guide to the messages files
This wiki is no longer maintained and is only for Aurelium Skills Beta versions. Visit the new wiki for AuraSkills 2.0+.
This guide is for using and translating Aurelium Skills messages. Almost all content is translatable, such as commands, menus, and chat.
The messages files can be found in the messages
folder. Each file corresponds to a different language. Players can select their own personal language using /skills lang [language]
.
You must define all the languages you want to use in config.yml under the "languages" list. This is a list of the two-letter Locale codes that match your file name.
To change the default language, change the "default-language" in config.yml
Do not change any messages placeholders! Placeholders are text wrapped in { and } (Ex: {placeholder})
Do not remove newlines (\n) in the "menus" section unless your menus.yml format requires it
Do not touch the file_version field
When naming your file, it must be in the format messages_[language].yml [language] must be a valid two-letter Java Locale code or a locale with country code such as messages_pt-BR.yml
Never use tabs! Use correctly aligned spaces instead.
If your message contains characters "&", "{", or "}", wrap the entire message in single quotes. (Ex: 'Message'). When in doubt, put it in single quotes.
Use newlines in descriptions for when the menu item doesn't fit or look good on the screen.
Unit placeholders can be used everywhere and are changed in the "units" section. To use units in messages, use "{mana_unit}", "{hp_unit}", "{xp_unit}", etc.
{value} placeholders do not include % symbols.
If you are creating a new translation, use the template here.
Be sure to reference messages_en.yml for the placeholders and format
This is a guide to creating an official translation to be added to the plugin publicly. Translations here must follow certain format guidelines and rules to be accepted. Any translation that does not follow all the guidelines will have to be revised by the author to be accepted.
It is highly recommended that you translate on Crowdin. It makes it much easier to edit, collaborate, upload, and download translations. All you have to do is create an account and you can translate! If you do not see your language on the list, please contact Archy in the Discord to add it. There are also options to upload existing files (so you don't have to start over) and to download translations (so you don't have to wait for a plugin update) when you click on the 3 dots next to the file in each language section.
Do not change or remove any color codes, keep the same color scheme as the default messages_en.yml
Do not change or remove any newlines (\n) in the menus section
Do not remove any placeholders that are in the default messages
Try to keep translations as accurate as possible. Translations should not affect the meaning of descriptions and names
Do not change stat symbols or colors
Do not remove any entries in the file; all entries in the default messages must exist in your translation.
Do not change action bar, level up title, or level up formats
Add newlines (\n) in ability, skill, and stat descriptions when you think it is too long. Use your best judgment and test (if possible). I will change newlines if necessary.
Use the most up to date file found on GitHub
Don't translate a language if the translation already exists; add to the existing file if it needs to be updated
Keep formats as much as possible, such as punctuation, colors, caps, etc. You may need to move around color codes to get the contexts/parameters to match.
The file must be named in the correct format with the correct language code (If it's wrong it's not a big deal I can fix it myself)
Guide to configuring abilities and mana abilities
Abilities are perks and buffs that you unlock and level up as you level up skills. Each skill has a maximum of 5 abilities. If a skill does not have any abilities, then the abilities for that skill have not been added yet. Abilities are usually passive, meaning they do not require any extra player input to activate or use. For active abilities, see Mana Abilities.
To see your ability levels easily, hover over an item in the skills menu (/skills). If an ability name is dark gray and crossed out, that means you have not unlocked that ability yet. To see the descriptions for what each ability does, hover over the items in the level progression menu, which is seen by clicking on any skill item in the skills menu. Each skill level shows what abilities are unlocked/leveled up at that skill level with descriptions.
To allow for the leveling of abilities, each ability has one or two values. This value(s) determines how powerful the ability is depending on the level. This could be a percentage chance, percent extra damage, etc. When dealing with percentages in the config, you should use the percent as the value in the config (0-100).
The abilities_config.yml is a new file in version Alpha 1.6.0.
The file is split into 2 main sections, abilities
and mana_abilities
.
This section contains the options for the regular, passive abilities. Each ability is split into sections by their skill.
The options:
enabled
- Whether this ability should be enabled. If set to false, the ability will be hidden from menus or messages and will not function.
base
- The base value of the ability at level 1 (see above for what values are). If the ability has 2 values, this is the first one displayed in the default English description.
per_level
- This is how much the value should increase per ability level. The formula for the value of ability at a given level is value = base + ((level - 1) * per_level)
where level
is the level of the ability, not the skill.
unlock
- This is the skill level the ability should unlock at. The default is from 2-6, depending on the ability.
level_up
- This is the multiple the ability levels up at (every x levels the ability should level up). If an ability has a level_up
of 3, it would level up every 3 skill levels. Defaults to 5.
max_level
- The maximum ability level. Setting this value to 0 allows infinite levels. Keep in mind that an ability level cannot exceed what the maximum skill level allows. This value should be below the max skill level to have any effect naturally. This will still apply if you use commands to set your skill level above the max. Defaults to 0.
Other options:
base_2
- The second base value of the ability at level 1. This is the second one displayed in the default English description.
per_level_2
- The same as per_level, but for the second value.
Some abilities have specific options and are fairly self-explanatory.
This section contains the options for the active abilities that use mana.
The options:
enabled
- Whether this mana ability should be enabled. If set to false, the mana ability will be hidden from menus or messages and will not function.
base_value
- The base value of the mana ability at level 1. Values work the same as abilities but are usually in the context of durations or percents.
value_per_level
- This works the same as per_level for normal abilities.
cooldown
- The base cooldown of the ability for the mana ability at level 1, in seconds. This can be a decimal.
cooldown_per_level
- The time the cooldown should increase/decrease per mana ability level. If the value is positive the cooldown will increase per level, if it is negative the cooldown will decrease per level.
mana_cost
- The base mana cost of the mana ability at level 1.
mana_cost_per_level
- How much the mana cost should change per mana ability level.
unlock
- This controls the level the mana ability unlocks at. Defaults to 7.
level_up
- This is the multiple the mana ability levels up at (every x levels the mana ability should level up).
max_level
- The maximum mana ability level. It works the same as max_level for regular abilities.
Other options:
require_sneak
in replenish, treecapitator, speed_mine, and terraform - If set to true, the player must be sneaking (shifting) to raise their pickaxe.
display_damage_with_scaling
in sharp_hook - Whether the damage displayed in the menu should use the hp_indicator_scaling.
enable_sound
in sharp_hook and charged_shot - Whether the sound should be played when the player attacks with Sharp Hook and Charged Shot
enable_particles
in absorption - Whether a pink circle of particles should show when damaged with Absorption activated.
check_offhand
in replenish, treecapitator, speed_mine, and terraform - If set to true, the tool will not be raised if the player right clicks with a block in their offhand that they placed (such as torches).
sneak_offhand_bypass
in replenish, treecapitator, speed_mine, and terraform - If set to true, sneaking will disable the offhand check and will always raise the tool.
enable_message
in charged_shot - Whether a chat message should be sent when firing a bow with Charged Shot.
max_blocks_multiplier
in treecapitator - Scales the number of blocks broken by this value
Guide to configuring and customizing GUI menus
Menus in Aurelium Skills are inventory GUIs that display information about skills to players in-game. This includes personal skill and stat menus, skill progression, ability descriptions, Some menus are accessible by commands, such as /skills and /stats, while others are accesible by clicking buttons in other menus.
Since the Menu Update significantly changed configuration format and added new features, this guide is applicable to Aurelium Skills version Beta 1.3.0 and newer. If you are upgrading from an earlier version and are already familiar with the old format, see the changes from the legacy format first.
The files for configuring menus are located in the AureliumSkills/menus
folder. Each menu has its own corresponding file used to configure that menu.
Much of the menus file uses placeholders, which is text surrounded by {
and }
. When the menu is actually opened, the placeholder will be replaced by the corresponding message in the messages file. The path of the placeholder message is found under either the menus.common
or menus.[menu_name]
section with either the same or similar key as the placeholder.
However, some placeholders are more generic ones that are not found in the menus section of the messages file. For example, the {skill}
placeholder is replaced with the name of a skill.
It is recommended to make any changes to the actual text context of menus in the corresponding message in the messages file in order to preserve multi-language support. Any change to the text in a placeholder will make it no longer work.
The following is a list of keys and sections that are at the left-most indentation of the file (referred to here as the menu section).
title
- The text that will show up at the top of the menu when it is opened
size
- The number of rows the menu has, from 1-6 (each row has 9 slots)
fill
- A section used to define the menu background item to fill empty slots, see .
items
- The main items section used for singular items
templates
- The section used to define items with custom contexts and multiple instances
options
- A section found in some menu files that contains custom options and settings
The fill
section defines a background item to fill empty slots not used by other items. There are two required keys in the fill
section:
enabled
- A true/false value of whether the fill item should be used
material
- The material of the fill item
The display name of a fill item is automatically turned into a space, so the name of the item is invisible. Additional keys can be added to customize item meta using the same format as other items (see ).
The items
section is used to define singular items in the menu. Each subsection is the unique name of the item, which is used as a unique key. The item names that exist in the default menus are reserved words, meaning that items with those names have functionality or placeholders used by the plugin. Custom items can be added using any non-reserved name in the items
section using the same format as other items. See adding custom items for additional information.
The templates section is used for items with multiple instances or contexts, such as each skill item in the skills menu. Template items usually have the same lore and display name for all contexts, with differences applied internally through placeholders. Each context in a template, which is a specific type such as each skill, has its own subsection within the template to define any differences for that context only. The following example shows the basic structure of a template:
Since templates are only used for items already defined by default, custom templates cannot be created.
Items refers to sections in both the items
and templates
sections, as most keys apply to both. There are two required keys for all items and most templates:
material
- The material of the item, such as dirt
or diamond
. See below for details.
pos
- The position/slot of the item on the menu, either in the comma separated row,column
format or as a single slot number from 1-53. See below for details.
The material field is required on all items and most templates and defines the type of the item. In Minecraft 1.13+, the proper name of a material can be found in game by hovering over an item in the inventory with advanced tooltips enabled (F3 + H). The dark gray text on the bottom after minecraft:
is the name of the material used in menu configuration. Lowercase is recommended but capitals are also allowed.
In Minecraft 1.12, some items have an additional data value (a number) that must be used to define some items such as different colors of stained glass or wool and different types of logs. This data value is added to the material name in the material:data
format. For example, log:2
defines a birch log. Data values can be seen in game with advanced tooltips as the number after a # in the item display name. The data value of 0 does not have to be defined.
In templates, the material is either defined in a context subsection or the main item section. Materials defined in a context will only apply to that specific context, while a material defined in the main section will be the default material if no context-specific material is defined.
The pos
key on items is the position or slot on the menu the item is located. There are two acceptable formats for pos
:
This format is defined as row,column
, such as 2,3
for the second row and the third column. The first row and column starts at 0. Row can be from 0-5 and column can be from 0-8. Row 0 is the top-most row and column 0 is the left-most column.
This format is a single number from 0-53 indicating the slot number of the item. 0 is the top-left slot and the number increases left to right, then top to bottom.
The display_name
key contains the text used for the item display name. Color codes and placeholders are supported.
The lore
key is a list of strings containing the lore displayed on the item. Color codes and placeholders are also supported.
The display name and lore keys also contain built-in placeholders in a {placeholder}
format. These are replaced internally to display functional parts of the menu. The messages usually correspond to a message with a similar key in the menus
section of the messages file.
Hex colors are supported in display names and lore using the �
format or using the MiniMessage format.
There are many keys available to define different types of optional item meta. These keys are added in the section of the the item, not in the material
field but on the same indent level.
The enchantments
key is a list of strings with each entry in the format name level
, such as:
The name of the enchantment is the name used by the vanilla game.
The potion_data
section contains subkeys for defining data on a potion. There are three keys in the potion_data
section:
type
- The name of the potion type, such as speed
or night_vision
. The type must be a valid Bukkit PotionType (listed here).
extended
- An optional true/false value of whether the potion should have an extended duration (defaults to false).
upgraded
- An optional true/false value of whether the potion should have an upgraded level (defaults to false).
An example of a potion_data section with all three keys:
The custom_effects
section is a map list defining custom potion effects on a potion (this is different from potion data). Each object in the map list must have three keys:
type
- The type of potion effect to use, must be a valid Bukkit PotionEffectType (listed here).
duration
- The duration of the potion effect, in ticks (20 ticks = 1 second).
amplifier
- The level of the potion effect, with an amplifier of 0 being level 1.
Below is an example of a custom_effects
section with multiple custom effects (Fire Resistance I for 10 seconds and Haste II for 30 seconds):
The flags
key is a list of item flags to add to the item. Item flags are a type of meta used to hide other meta on the item from being shown to the player. Below is a list of valid flags and the format used in item configuration:
The glow
key is a true/false value that adds the glowing enchantment effect to the item without showing the enchantment name if set to true. It is equivalent to adding an enchantment and a hide_enchants item flag.
The skull_meta
section can be used to add a custom skin texture to a player head item. The section must have one of three possible sub-keys, uuid
, base64
, or url
.
The uuid
key is the UUID of the player's skin texture to use. The base64
key is a base64 string of the texture. The url
is the minecraft.net URL containing the texture.
Below is an example of using skull meta. You only need ONE of the three options.
The durability
key sets the durability of the item from 0 to the max durability of the item (a value of 0 means the item is almost broken).
NBT data can be added to an item using the nbt
section. This section supports nested NBT structures and will automatically detect the type of data inputted.
The key
key can be used in an item section to use an item in the item registry. Any item can be registered in game using /skills item register
. This is used instead of defining material
and other meta. This can be convenient when an item has already been created in game or is too complex.
Custom model data can be added to items within the nbt section like as follows:
This follows the exact format Minecraft uses to store custom model data on items.
Click actions are used to define custom functionality when a player clicks an item in the menu. This includes executing a command, closing the menu, opening another menu, and more.
There are multiple ways click actions can be triggered (key in parenthesis):
Any click (on_click
)
Left click (on_left_click
)
Right click (on_right_click
)
Middle click (on_middle_click
)
Drop key (on_drop
)
The trigger key is used to name the section that contains the click actions for that particular trigger. For example, all the actions under an on_click
section will be activated when the player clicks that item with any mouse button.
Once you have created a section under the item with a trigger name, click actions are defined underneath using map list syntax.
Each action must have a type
defined, either command
(executing a command) or menu
(menu navigation).
For command actions, an executor
(either console
or player
) and the command
itself must be defined. Commands with a console
executor will be run through console, while a player
executor will be run as if the player had typed it (accounts for player permissions too).
The command
text should not include the beginning slash. It supports PlaceholderAPI placeholders and a built in placeholder of {player}
(player username).
Menu actions are for anything related to menu navigation. You must define the specific action type using the action
value, which can be as follows:
open
- Opens another menu (must be within the Aurelium Skills plugin)
close
- Closes the current menu
next_page
- Moves to the next page of the menu, if applicable
previous_page
- Returns to the previous page of the menu, if applicable
The open
action type also requires a menu
value, which is the internal name of the menu to open (this is usually the lowercase name with spaces replaced with underscores).
The open
, next_page
, and previous_page
action types also take an optional properties
section that is used to define menu behavior, though this option is hard to use unless you dig through the source code.
Command action activated on any click that executes a command through console:
Menu action activated on right click only that closes the menu:
Multiple click actions under the same trigger (will activate together):
Completely new items can be added to menus by simply defining a new section in the items
section with the name of your new item. The custom item name cannot be the name of an existing built-in item.
The format of the custom item is the same as any other item (material, pos, display_name, lore, etc). Click actions and PlaceholderAPI placeholders are also supported.
Server and plugin incompatibilities
The following server software will not receive support. Although the plugin may work, it is prone to issues and deviates from the mechanics of Spigot/Paper.
CraftBukkit - Action bar will not work
Modded hybrid servers (Mohist, Magma, CatServer) - Modded environments do not work well with Bukkit plugins in general
Offline Mode - We do not support piracy in any way, and player data saving may not work.
LoreAttributesRecoded - Will reset health when doing certain actions. Can be fixed by disabling the health in that plugin.
CustomEnchants - Will reset health when doing certain actions.
Frequently asked questions
Set action-bar.idle
to true in config.yml.
See https://wiki.aurelium.dev/gameplay/mana-abilities
Restart the server. You likely reloaded the server, which is not supported and will break things.
No. Too much would have to be re-coded and features would be cut.
Yes, find the dependency info at the bottom of the README. The main class is AureliumAPI, which contains static methods you can use.
To uninstall, put the plugin back and run skills resethealth
in the console when no players are online. Then immediately remove the plugin and restart.
List of plugin commands
This wiki is no longer maintained and is only for Aurelium Skills Beta versions. Visit the new wiki for AuraSkills 2.0+.
Syntax: [this]
indicates a required argument, (this)
is an optional argument. See Permissions for more details about permissions.
Aliases: /sk
, /skills
, /skill
. Any command that says /sk works with all the aliases.
/sk
- Opens the skill menu
/sk xp add [player] [skill] [amount] (silent)
- Gives Skill XP to a player in a certain skill
/sk xp set [player] [skill] [amount] (silent)
- Sets a player's skill XP for a certain skill to an amount
/sk xp remove [player] [skill] [amount] (silent)
- Removes skill XP from a player in a certain skill
/sk top (page)
or /sk top [skill] (page)
or /sk top average (page)
- Shows the top players in a skill (Alias: /skilltop
)
/sk rank
- Shows your skill rankings (Alias: /skillrank
)
/sk skill setlevel [player] [skill] [level]
- Sets a specific skill to a level for a player
/sk skill setall [player] [level]
- Sets all of a player's skills to a level
/sk skill reset [player] (skill)
- Resets all skills or a specific skill to level 1 for a player
/sk modifier add [player] [stat] [name] [value] (silent) (stack)
- Adds a stat modifier to a player. Setting silent
to true will not send a feedback message. Setting stack
to true will add the stat modifier even if the name
is already used by appending a number to the end.
/sk modifier remove [player] [name] (silent)
- Removes a specific stat modifier from a player
/sk modifier list (player) (stat)
- Lists all or a specific stat's modifiers for a player
/sk modifier removeall (player) (stat) (silent)
- Removes all stat modifiers from a player
/sk item modifier add [stat] [value] (lore)
- Adds an item stat modifier to the item held, along with lore by default
/sk item modifier remove [stat] (lore)
- Removes an item stat modifier from the item held, and the lore associated with it by default
/sk item modifier list
- Lists all item stat modifiers on the item held
/sk item modifier removeall
- Removes all item stat modifiers from the item held
/sk armor modifier add [stat] [value] (lore)
- Adds an armor stat modifier to the item held, along with lore by default
/sk armor modifier remove [stat] (lore)
- Removes an armor stat modifier from the item held, and the lore associated with it by default
/sk armor modifier list
- Lists all item armor modifiers on the item held
/sk armor modifier removeall
- Removes all armor stat modifiers from the item held
/sk item requirement add [skill] [level] (lore)
- Adds an item requirement to the item held, along with lore by default
/sk item requirement remove [skill] (lore)
- Removes an item requirement from the item held, and the lore associated with it by default
/sk item requirement list
- Lists the item requirements on the item held
/sk item requirement removeall
- Removes all item requirements from the item held
/sk armor requirement add [skill] [level] (lore)
- Adds an armor requirement to the item held, along with lore by default
/sk armor requirement remove [skill] (lore)
- Removes an armor requirement from the item held, and the lore associated with it by default
/sk armor requirement list
- Lists the armor requirements on the item held
/sk armor requirement removeall
- Removes all armor requirements from the item held
/sk lang [language]
- Changes your player language
/sk multiplier (player)
- Shows a player's current XP multiplier based on their permissions
/sk abtoggle
- Toggles your own action bar
/sk help
- Shows help page
/sk profile skills [player]
- Views the skill levels of another player. player
is the username of the player you want to view skills for. This player does not have to be online.
/sk profile stats [player]
- Views the stat levels of another player.
/sk save
- Saves skill data
/sk updateleaderboards
- Updates and sorts the leaderboards
/sk reload
- Reloads the config, messages, menus, loot tables, action bars, boss bars, and health and lucks stats.
/sk transfer [playerFrom] [playerTo]
- Copies the player data from one player to another. playerFrom
and playerTo
must be valid UUIDs. The player data from playerFrom
is not reset. Players do not have to be online for this to work.
sk resethealth
- Removes all AureliumSkills player health and luck attributes. Useful if you are uninstalling the plugin. This command can only be run through console and there should be no players online to work properly.
/sk backup save
- Saves a backup of the current skill data to the backups folder.
/sk backup load [file]
- Loads a backup from the backups folder. You must specify the exact file name, including the file extension. This will override the current skill data, so it is advised to take a backup before loading one.
/mana (player)
- Shows how much mana you or another player has
/mana add [player] [amount] (allowOverMax) (silent)
- Adds mana to a player
/mana remove [player] [amount] (silent)
- Removes mana from a player. Mana cannot go below 0, any extra is ignored.
/mana set [player] [amount] (allowOverMax) (silent)
- Sets the mana of a player.
/stats
- Opens the stats menu
/[skill]
- Opens the level progression menu directly for a specific skill, can be enabled/disabled in config (ex: /farming, /archery, /healing)
/sk claimitems
- Opens the unclaimed items menu to claim unclaimed items
/sk item register [key]
- Registers the held item to a unique key
/sk item unregsiter [key]
- Unregisters an item
/sk item give [player] [key] (amount)
- Gives a registered item to a player. If the player does not have enough inventory space, the item will be added to the player's unclaimed items.
Explanation and descriptions of mana abilities
Mana Abilities are a special type of ability that costs mana to use and are active, meaning they require the player to activate or use. Currently, this is the primary use of mana. Mana Abilities are by default unlocked at level 7 of that skill and increase in level every 7 levels (This is configurable). Level increases can change duration/power, cooldown, and mana cost. (These are all configurable in abilities_config.yml)
Using Mana Abilities will give Sorcery XP.
Mana Abilities are not visible in the main skills menu until the player unlocks it at level 7. After unlocking it, hovering over the skill item will show the mana ability name, level, duration/power, cooldown, and mana cost. Players can see mana abilities they haven't unlocked yet in the level progression menu at levels of a multiple of 7. Those items will display a description of the mana ability and the duration/power of it at that particular level.
Replenish (Farming) - Replants crops automatically for a certain duration. Right-click with a hoe and break a crop to activate. Works with wheat, carrots, potatoes, nether wart, and beetroot.
Treecapitator (Foraging) - Breaks entire trees instantly for a certain duration. Right-click with an axe and break a log to activate. Works best with oak, birch, and spruce trees (One block wide). The algorithm is not final and will be improved later on to work perfectly with all tree types.
Speed Mine (Mining) - Gives Haste 10 for a certain duration. Right-click with a pickaxe and break stone or an ore to activate.
Sharp Hook (Fishing) - Deal damage to a hooked entity when left-clicking with a fishing rod'
Terraform (Excavation) - Break blocks instantly in a 4 block radius in the same layer when digging. You must use a shovel and extra blocks broken must be the same type and in a single connected vein. Right click shovel and dig block to activate.
Charged Shot (Archery) - Arrows you shoot will deal more damage based on how far the bow was pulled back, consuming mana in the process. Does more damage per mana consumed. Left click a bow to toggle charged shot mode.
Absorption (Defense) - Incoming damage will decrease mana by 2x Minecraft damage instead of your health. Mana will not regenerate while Absorption is active. Left click shield and take damage to activate.
Lightning Blade (Fighting) - Increases attack speed by % for seconds. Right click sword and attack mob to activate.
Mana can be essentially disabled through a few steps:
1. Set all the mana_cost
and mana_cost_per_level
to 0
in abilities_config.yml
under the mana_abilities
section. This is the only thing required to functionality disable mana.
2. Remove mana from the action bar by editing the messages under action_bar
in the messages files. You may want to consider disabling the action bar entirely in config.yml
under action-bar
.
3. Rename messages to remove mentions of mana. For example, Mana Ability could be renamed to Active Ability or similar. Most of the messages that mention mana are in the menus
section of the messages files. You would also want to remove mentions of mana cost and rename level up messages in the leveler
section.
List of PlaceholderAPI placeholders
The placeholders that Aurelium Skills currently has, no need for an ecloud expansion, works automatically. Text wrapped in [this] means you replace it with different text, such as skill names.
%aureliumskills_power%
- Combined skill level
%aureliumskills_[skill]%
- Level for a certain skill (ex: %aureliumskills_farming%)
%aureliumskills_[skill]_roman%
- Level for a certain skill as a roman numeral
%aureliumskills_[stat]%
- Level for a certain stat (ex: %aureliumskills_health%)
%aureliumskills_[stat]_int%
- Level for a certain stat rounded to an integer
%aureliumskills_average%
- Average skill level
%aureliumskills_average_int%
- Average skill level rounded to an integer
%aureliumskills_average_1%
- Average skill level rounded to one decimal
%aureliumskills_hp%
- Hp as an integer
%aureliumskills_hp_1%
- Hp rounded to 1 decimal
%aureliumskills_hp_2%
- Hp rounded to 2 decimals
%aureliumskills_hp_max%
- Max hp
%aureliumskills_hp_percent%
- Percent hp as an integer
%aureliumskills_mana%
- Current player mana
%aureliumskills_mana_int%
- Mana of a player rounded to an integer
%aureliumskills_mana_max%
- Max mana
%aureliumskills_mana_max_int%
- Max mana rounded to an integer
%aureliumskills_lb_power_[place]%
- Gets a formatted value of username and level for the power leaderboard at a certain place
%aureliumskills_lb_power_[place]_name%
- Gets the username for the power leaderboard at a certain place
%aureliumskills_lb_power_[place]_value%
- Gets the level for the power leaderboard at a certain place
%aureliumskills_lb_[skill]_[place]%
- Gets a formatted value of username and level for a skill leaderboard at a certain place
%aureliumskills_lb_[skill]_[place]_name%
- Gets the username for a skill leaderboard at a certain place
%aureliumskills_lb_[skill]_[place]_value%
- Gets the level for a skill leaderboard at a certain place
%aureliumskills_rank%
- Gets the power leaderboard rank
%aureliumskills_rank_[skill]%
- Gets a skill leaderboard rank
%aureliumskills_xp_required_formatted_[skill]%
- Gets the required XP for the next level of a player formatted with suffixes (ex: 5k)
%aureliumskills_xp_required_[skill]%
- Gets the required XP for the next level of a player as an exact number
%aureliumskills_xp_progress_int_[skill]%
- Gets the percent progress to the next level rounded to an integer
%aureliumskills_xp_progress_1_[skill]%
- Gets the percent progress to the next level rounded to 1 decimal place
%aureliumskills_xp_progress_[skill]%
- Gets the exact percent progress to the next level
%aureliumskills_xp_int_[skill]%
- Gets the current XP for a player rounded to an integer
%aureliumskills_xp_formatted_[skill]%
- Gets the current XP for a player formatted with suffixes
%aureliumskills_xp_[skill]%
- Gets the exact skill XP for a player
%aureliumskills_multiplier%
- Gets a player's permission XP multiplier rounded up to 2 decimal places (1 = normal, 2 = 2x XP)
%aureliumskills_multiplier_[skill]%
- Gets a player's permission XP multiplier for a specific skill rounded up to 2 decimal places (1 = normal, 2 = 2x XP)
%aureliumskills_multiplier_percent%
- Gets a player's permission XP multiplier as a percent more value rounded to an integer (40 = 40% more XP)
%aureliumskills_multiplier_percent_[skill]%
- Gets a player's permission XP multiplier for a specific skill as a percent more value rounded to an integer (40 = 40% more XP)
The most up-to-date list of permissions is the plugin.yml file viewed here.
Default value meanings:
true - Everyone has this permission by default
op - Only players with op have this permission by default
false - No one has this permission by default
Guide to adding item and armor requirements
Requirements allow you to add skill level requirements in order to use an item. For example, you can create a pickaxe that only works when the player reaches Mining 15. There are two types of requirements: item and armor.
Item requirements apply when using the item in the player's hand. Armor requirements only apply when equipping/wearing the item.
There are also two different scopes and ways to add requirements: using commands or global requirements.
Using commands to add requirements only adds the requirement to the specific item you are holding when creating the requirement. Therefore, you must distribute exact copies of that item in order for it to work.
Commands:
The item/armor
below means you only type item
for item requirements and only armor
for armor requirements.
/skills item/armor requirement add <skill> <level> [lore]
- Adds an item/armor requirement to the held item. skill
is the name of the skill that is required. level
is the minimum skill level needed to use the item. lore
is an optional true/false argument that determines whether lore should be added to the item. Lore is completely separate from the functionality of the requirement, so you can change or remove any lore.
/skills item/armor requirement remove <skill> [lore]
- Removes an item/armor requirement from the item held. If lore
is true, the lore that was originally added will be attempted to be removed from the item. This may not work if you added custom lore.
/skills item/armor requirement list
- Lists the item/armor requirements on the item held.
/skills item/armor requirement removeall
- Removes all item requirements from the item held.
Global requirements allow adding skill requirements to all items of a certain type/material. To add global requirements, you must add a global
list to the requirement.item
or requirement.armor
section of config.yml
.
The basic format for an entry in the list is: - MATERIAL SKILL:LEVEL
Here is an example of a global item requirement for diamond swords requiring Fighting 10 to use, including where it is located in the config:
Multiple global requirements on a single item are also supported:
Global requirements do not support custom items
The following info is for advanced users with prior knowledge about the NBT format
The following is the NBT tag structure used for item and armor requirements (not global requirements). It can be used in places such as the give command to create items with requirements already added.
Replace [Type] with either Armor for armor requirements or Item for item requirements. Replace [Skill] with the name of the skill with first letter capitalized (e.g. Fighting). Replace [value] with the skill level required.
Example of a Farming 10 item requirement: