2.3
AuraSkills 2.3 Release Notes
AuraSkills 2.3 adds new customization features for the stats and requirements systems. The new stat info menu shows players exactly how stat and trait levels are calculated, while percentage-based and temporary modifiers create new ways to use stats. Block requirements add a flexible way to restrict breaking blocks based on skills.
Breaking Changes
The plugin now requires at least Java 21
Drop support for Minecraft 1.18.x and 1.19.x
New Features
Add 1.21.5 support
Add stat_info menu
This allows players to see exactly how their stat and trait levels are calculated
Accessed by clicking any of the stat items (glass panes) in the stats menu (/stats)
The menu is tab-based and shows stat modifiers by default. Trait modifiers can be viewed by clicking on the tab buttons on the right.
Each tab shows any base value, value from skill rewards, and custom modifiers
Add percentage-based stat and trait modifiers
Modifiers now have an operation value that defines how they are applied
The
add_percent
operation multiplies the stat level by 1+value/100For example, a modifier with value 50 multiplies the stat by 1.5
The values for all
add_percent
modifiers for a stat are added together before multiplying the stat (additive multiplier)
The
multiply
operation directly multiplies the stat level by the valueFor example, a modifier with value 2 doubles the stat level
Each
multiply
modifier is applied separately (multiplicative modifier)
All existing modifiers use the
add
operation, which is the basic addition to the stat levelAll
add
modifiers are applied before anyadd_percent
ormultiply
modifiers
The following existing commands have been modified to add an operation argument:
/skills modifier add <player> <stat> <name> <value> [operation] [silent] [stack]
/skills trait add <player> <trait> <name> <value> [operation] [silent] [stack]
/skills item modifier add <player> <stat> <value> [operation] [lore]
/skills item trait add <player> <trait> <value> [operation] [lore]
/skills armor modifier add <player> <stat> <value> [operation] [lore]
/skills armor trait add <player> <trait> <value> [operation] [lore]
The
operation
argument is optional and defaults toadd
Add temporary modifiers
Temporary modifiers are automatically removed after certain amount of time
Use the following commands to add temporary stat and trait modifiers:
/skills modifier addtemp <player> <stat> <name> <value> <duration> [pauseOffline] [operation] [silent] [stack]
/skills trait addtemp <player> <trait> <name> <value> <duration> [pauseOffline] [operation] [silent] [stack]
The
duration
argument is in the format[years]y[months]mo[days]d[hours]h[minutes]m[seconds]s
Examples of valid durations are
5s
,10m
, and4d2m1s
The
pauseOffline
argument defines whether the remaining duration should stop counting down when the player is offline (defaults to false)
Add block requirements
Block requirements are customizable restrictions on breaking, placing, or harvesting blocks
Requirements are defined in requirement.blocks.list in config.yml
Each element in the list can have the following keys:
material
- The name of the block to add requirements for (required)allow_break
- Whether to ignore requirements on block break (defaults to false)allow_place
- Whether to ignore requirements on block place (defaults to false)allow_harvest
- Whether to ignore requirements on block harvest (defaults to false)When none of the above allow options are defined, the block cannot be broken, placed, or harvested when requirements are not met
requirements
- A map list of the requirement nodes for this block. Each element in the list can have the following keys:type
- The type of requirement, which can beskill_level
,permission
,excluded_world
, orstat
message
- The error message to send to the player when the requirement is not met. Supports MiniMessage and PlaceholderAPI (optional).Each type has specific keys below that must be added to define type behavior. These keys are added in the same indent level as
type
.The
skill_level
type requires the player to be at least a specific level in a skill. Keys:skill
- The name of the skill to add a level requirement forlevel
- The minimum skill level the player must be
The
permission
type requires the player to have a specific permission node. Keys:permission
- The permission node required
The
excluded_world
type defines a list of worlds that will make the requirement fail if the player is in one of them. Keys:worlds
- The list of worlds to not allow the player to be in
The
stat
type requires the player to be at least a specific stat level. Keys:stat
- The name of the stat to add a level requirement forvalue
- The minimum stat value that the player must be
General options related to the block requirement system are in requirement.blocks:
enabled
- Whether block requirements are checked at allbypass_in_creative_mode
- Whether to ignore block requirements for players in creative mode (defaults to true)bypass_if_op
- Whether to ignore block requirements for players that are op (defaults to false)
Add addition protections against removing items from menus
Enable by setting
menus.removal_protection
in config.yml to true (false by default)
Add
speed_reduction
option to Stun abilityAdd translatable messages for command descriptions and update notification
Add
item_model
support in menu and loot itemsAdd
percent_format
andcurrent_xp_format
options to skills menuAdd
xp_format
option to sources menuAdd
format
option to stat reward to configure decimalsAdd Nexo support
Changes
Storing modifiers with SQL has been moved from the key_values table to a new modifiers table
Existing modifiers will be migrated automatically
A new schema_migrations table stores previously applied migrations
Remove Oraxen support
Bug Fixes
Fix default item options like glow being saved when updating files
Fix errors when Anvil Discount is not loaded
Last updated
Was this helpful?