AuraSkills icon

AuraSkills -----

The ultra-versatile RPG skills plugin




New Features
- Add 1.21.4 support
- Add pale garden blocks to Foraging sources
- Add support for external items anywhere that accepts an item key

Changes
- Change MythicDamageEvent priority from high to normal
- Support {color} placeholder in leveled_by component of stats menu
- Make anvil discount trait formula configurable in stats.yml
- Change update checker to use Modrinth with loader and version filters

Bug Fixes
- Fix slimes and groups of mobs attacking rapidly with no cooldown
- Fix hex colors not working in loot entry message
- Fix xp-gain and custom-loot WorldGuard flags with Fishing loot
- Fix offline player skins not working in leaderboard menu
- Fix double plus in lore when adding some trait modifiers
----------, Dec 15, 2024

Bug Fixes
  • Fix IncompatibleClassChangeError on 1.21.1 and below caused by 2.2.5 update
----------, Nov 5, 2024

New Features
  • Add 1.21.3 support
Changes
  • The `{skill}` and `{skill_key}` placeholders can now be used anywhere in the level progression menu
Bug Fixes
  • Prevent errors from abnormal server version strings
----------, Nov 4, 2024

New Features
  • Add more permission nodes with child permissions
    • auraskills.* contains permissions for all commands
    • auraskills.command.user contains permissions users have by default
    • auraskills.skill.* contains permissions to use all skills
    • auraskills.command.item.* contains permissions related to item modifier creation
    • auraskills.command.armor.* contains permissions related to armor modifier creation
    • auraskills.command.admin contains permissions for all admin/op commands
Changes
  • Respect cancelled drops when applying block luck
  • Only show loaded skills in profile command
  • Update Chinese Simplified, Chinese Traditional, and Indonesian messages
Bug Fixes
  • Fix health value must be between error when changing worlds
  • Fix boss bar progress must be between error when max skill level
  • Fix NPE when updating leaderboards on MySQL
API Changes
  • SkillsUser#setSkillLevel will now refresh stats, permissions, rewards, and item modifiers
  • Add setSkillLevel method with boolean parameter to control whether to refresh stats
  • Add CustomManaAbilityBuilder#infoFormats to set the list of menu format names to use in the menu description
----------, Oct 4, 2024

New Features
  • Add new damage source options
    • Add excluded_damager/excluded_damagers to prevent XP gain from specific entity types
    • Add cooldown_ms to define a delay before XP can be gained again in milliseconds (200 by default)
    • Add damagers option to define a list of valid damagers
  • Add job selection cooldown option (jobs.selection.cooldown_sec)
Changes
  • Update German, Polish, and Italian messages
  • Make all region loading async
Bug Fixes
  • Fix error loading menu on Spigot 1.21
  • Fix typos in excavation loot file
  • Implement error handling for global requirement material names
  • Fix trait_experience_bonus placeholder not working
  • Fix boss bar progress must be between error
----------, Sep 6, 2024

New Features
  • Add 1.21.1 support
  • Add use_permission_cache option to disable LuckPerms multiplier permission cache
Bug Fixes
  • Fix anti-AFK being force enabled after reload
  • Skip sending item give command message if empty
----------, Aug 17, 2024

Bug Fixes
  • Fix cannot measure distance error in PositionHandler
  • Fix logs table not being created
----------, Jul 30, 2024

New Features
  • Add anti-AFK system for preventing AFK XP gain
    • This is an optional feature that detects and blocks repetitive AFK skill XP gain, encouraging active play
    • Must be manually enabled with the `anti_afk.enabled` option in the main config
    • There are 8 types of checks that can block AFK XP gain in the following skills: Farming, Foraging, Mining, Fishing, Excavation, Fighting, Archery, and Defense
    • The checks work in one of three ways: detecting identical player coordinates, facing direction (pitch/yaw), or the entity being involved
    • Checks are configured in the `anti_afk.checks` section
      • Specific checks can be toggled with the `enabled` option
      • The `min_count` option is the number of identical XP gain conditions in a row for the player to be blocked from gaining XP
      • The `max_distance` option for some checks is the threshold for which movement below that value is still considered identical
    • Logging for failing anti-AFK checks can be enabled with the `anti_afk.logging_enabled` option
      • The `log_threshold` is an expression determining the count of identical conditions required for logging an event. The min_count variable can be used in this expression to reference the min_count in the checks section for a check type.
      • Logs will be sent to any online player with the auraskills.antiafk.notify permission (op by default)
      • Logs are saved to storage can can be viewed for any player with the `/skills antiafk logs <player> [page] [perPage]` command (auraskills.command.antiafk.logs permission)
    • Important disclaimer: A player failing checks and being logged does not necessarily mean they are cheating or using a macro, as false positives can be common for legitmate players, especially if min_count is low. An example is a player using a mob farm manually can still trigger anti-AFK checks. Always check logged players manually before taking any action.
  • Add entity loot for fishing loot tables
    • The new entity loot type adds the ability to catch entity with fishing
    • Defined by a loot entry with `type: entity`
    • The `entity` key defines the type of entity caught
      • Vanilla entities/mobs are defined by name (e.g. `entity: zombie`)
      • MythicMobs can be used with the `mythicmobs:` prefix (e.g. `entity: mythicmobs:SkeletonKing`)
    • The `health` key overrides the entity max health attribute
    • The `damage` key overrides the entity attack damage attribute
    • The `level` key can be used to define the AuraMobs or MythicMobs level
    • The default vertical and horizontal velocities when caught can be overridden with `velocity.horizontal` and `velocity.vertical`
    • The keys `hand`, `off_hand`, `feet`, `legs`, `chest`, and `head` are used to define equipment on the spawned entity
      • The value is a mapping in the same item format as regular item loot (Using keys `material`, `enchantments`, etc.)
  • Add boss bar animation using delay when upgrading progress
    • This allows players to visually see the change in progress when a new boss bar is shown
    • Can be toggled with the `boss_bar.animate_progress` option in the main config
  • Add support for multiple commands on one loot entry
    • Use a `commands` list of strings on a command loot entry instead of `command`
Changes
  • Optimize leaderboard updating for SQL
  • Optimize SQL user loading and saving
    • A user is now loaded in a single statement with subqueries
    • Saving key_values will now utilize batched statements
Bug Fixes
  • Fix disabled abilities still showing in abilities menu
  • Fix level up title not working in 1.20.5+
  • Fix XP Convert giving extremely high experience values
  • Fix boss bar income showing for jobs enabled without economy
API Changes
  • Relocate and create Configurate API wrapper (breaking change)
    • ConfigurationNode has been replaced with the ConfigNode wrapper class in api and api-bukkit
    • Configurate is no longer included in the api module as a dependency
    • Any plugins working with ConfigurationNode in the API will break and must be updated (such as using LootParser, creating custom source types, or ItemManager#parseItem)
    • Updating is done by simply renaming ConfigurationNode mentions to ConfigNode, as most methods are copied over exactly
    • This change was made to fix critical loading errors with plugins like Nova
  • Add trait modifier methods to ItemManager
    • Deprecate addModifier, getModifiers, and removeModifier to be replaced by addStatModifier, getStatModifiers, and removeStatModifier
  • Add action bar methods to SkillsUser for sending and pausing action bars
----------, Jul 28, 2024

New Features
  • Add Oraxen support
    • Oraxen note blocks defined in sources will now give XP properly
    • Custom blocks can now be easily defined in sources by prefixing the `block` option of a block source with `oraxen:`
      • For example, `block: oraxen:mythril_ore` will automatically register the block state from Oraxen without needing to manually define a `state`
    • Oraxen items can be directly used in any source `menu_item` option using a string key prefixed with `oraxen:`
      • For example, `menu_item: oraxen:mythril` will use the exact item defined in Oraxen, including any NBT
      • This is defined as a string value directly on the `menu_item` key rather than the map section used for normal menu items
    • Custom loot from Oraxen blocks will drop extra items correctly with Luck traits like Mining Luck
  • Add requirement.override_global option to main config
    • If true, global requirements will be ignored if item-specific requirements are defined
  • Add mana.cooldown_timer_period option to main config
    • Increasing can help reduce lag caused by TimerCountdown for mana abilities
  • Add sql.pool options to main config
    • The new options maximum_pool_size, minimum_idle, connection_timeout, max_lifetime, and keepalive_time are used to configure the Hikari connection pool
    • These should not be changed unless you have issues with connection stability and know what you are doing
Bug Fixes
  • Fix power leaderboard not adding custom skills
  • Fix leaderboard still showing for disabled skills
  • Fix global requirements and world options not being updated on skills reload
  • Fix roman placeholders with value 0 not working
  • Fix ManaAbilityRefreshEvent being called invalidly
  • Fix hp keep_full_on_increase not working sometimes
  • Fix snow golem and mooshroom not giving XP in 1.20.5+
----------, Jun 30, 2024

New Features
  • Add jobs income batching options to reduce economy lag
    • If jobs.income.batching.enabled is true, accumulated income will be given in an interval instead of immediately
    • The interval_ms option controls the minimum delay between when money is given
    • If display_individual is true, the boss bar will display the original individual income instead of batched
Changes
  • Optimize checking for disabled sources using cache
Bug Fixes
  • Fix XP duplication exploit with land claiming plugins
  • Fix resethealth command not working on 1.21
  • Fix modifier is already applied error with stun
  • Fix NoSuchMethodError on 1.19.4
  • Fix PlaceholderAPI not working in level up message
  • Fix negative XP gain after negative multipliers
----------, Jun 19, 2024

New Features
  • Minecraft 1.21 support
    • Add bogged and breeze to Fighting and Archery sources
  • Add new action_bar options to main config
    • format_last - If true, parsing of MiniMessage will happen after placeholders are replaced on each send. This makes MiniMessage gradients work at the cost of performance (false by default).
    • update_async - If true, the idle action bar will be updated and sent asynchronously. This is an experimental option (false by default).
Changes
  • The option modifier.auto_convert_from_legacy is now false by default
Bug Fixes
  • Fix Lightning Blade attribute modifier not being removed
  • Fix backup debug message spam
  • Fix disabled traits not being fully disabled sometimes
  • Fix hex colors not working in level up title and chat message
  • Fix hex colors not working in action bars
----------, Jun 16, 2024

New Features
  • Add roman and int placeholders for abilities (thanks Erik)
    • `%auraskills_[ability]_roman%` - Gets ability level as a Roman numeral
    • `%auraskills_[ability]_value_int%` - Gets ability value rounded to an integer
    • `%auraskills_[ability]_value_2_int%` - Gets secondary ability value rounded to an integer if it exists
    • `%auraskills_mability_[ability]_roman%` - Gets mana ability level as a Roman numeral
    • `%auraskills_mability_[ability]_value_int%` - Gets mana ability value rounded to an integer
  • Add correct_over_max_level option to main config to prevent skill levels being over max level on join (false by default)
  • Add shape option to menu fill items
    • Available values are border, top_row, bottom_row, left_column, and right_column
Changes
  • Revert unnecessary AdvancedEnchantments event ignores, fixing compatibility
  • Update German and Chinese Simplified messages
Bug Fixes
  • Fix split slimes and magma cubes not applying spawner_multiplier
  • Fix double reloading on addStatModifier (thanks Erik)
    • This fixes extra health resets with plugins like MMOItems
  • Fix Charged Shot not applying damage bonus
  • Fix NoSuchFieldError on older versions when using mana abilities
  • Fix RoseStacker spawner mobs not working with spawner_multiplier
  • Fix armor add command not accepting decimal values
  • Fix level progression total page count sometimes being wrong
  • Fix food level decreasing at full health with use_custom_delay true
----------, Jun 7, 2024

New Features
  • Add auraskills.jobs.block.[skill] permission to prevent skills from being selected as jobs if set to true (ex: auraskills.jobs.block.mining)
  • Add `%auraskils_jobs_active_[skill]%` placeholder that returns true/false whether the job is active (ex: %auraskills_jobs_active_farming%)
Changes
  • Support property placeholders in menu placeholder conditions, such as {skill} for the skill name in certain menus
  • Slightly tweaked the jobs item lore style in the level_progression menu
Bug Fixes
  • Fix grindstone experience exploit
  • Fix NoSuchMethodError on older versions
----------, May 29, 2024

New Features
  • Add jobs system
    • Jobs is an optional feature that allows players to select skills as jobs to earn money while gaining XP.
    • To use jobs, the jobs.enabled option must be set to true in config.yml
    • Income for all XP sources is configured under jobs.income
      • If use_xp is true, sources will give a multiple of the XP gained based on default.income_per_xp
      • If use_expression is true, sources will give XP based on the result of default.expression
        • The available variables include xp, base_xp (value without multipliers), level (skill level), power, and skill_average
      • If use_final_xp is set to false, the calculation for income_per_xp will exclude all XP multipliers
    • Job selection is configured under jobs.selection
      • Players select a skill as a job using a new item in the level progression menu of a skill (gold_ingot by default)
      • If require_selection is set to false, players will gain income for all skills and selection will be hidden
      • The default_job_limit is the maximum number of skills that can be selected as jobs at the same time
      • The limit can be changed per-player using the auraskills.jobs.limit.[number] permission node (ex: auraskills.jobs.limit.4)
      • The disable_unselected_xp option will block gaining XP in all skills that are not active jobs if set to true
    • Income can also be configured per-source inside the sources files
      • Keys can be added to both the default section or an individual source
      • The following keys can be added to a source:
        • income_per_xp - The income to give per XP gained, works the same as the value in config.yml
        • income - A fixed decimal value for the money to give
        • income_expression - An expression to calculate the income, works the same as the expression in config.yml
    • Menu files will automatically update to add the new items and components to show job selection
      • However, you must manually add a new line `- component: skill_job_active` to the lore of the skill template in menus/skills.yml under `- component: max_level`
      • Everything will still work if this line isn't manually added, players just won't see the "Active Job" displayed in the skills menu
    • New jobs commands:
      • `/skills jobs add <job> [user]` - Joins a specific job for yourself or a different player
      • `/skills jobs remove <job> [user]` - Quits a specific job for yourself or a different player
      • `/skills jobs removeall [user]` - Quits all jobs for yourself or a different player
      • When user is not specified, these commands use the auraskills.command.jobs permission (op by default)
      • To specify a different user, the sender must also have the auraskills.command.jobs.other permission (op by default)
    • New jobs PlaceholderAPI placeholders:
      • `%auraskills_jobs_list%` - Lists active jobs in a comma separated list of default skill names in all lowercase
      • `%auraskills_jobs_list_formatted%` - Lists active jobs in a comma separated list with the skill display name of the config default_language
      • `%auraskills_jobs_count%` - Gets the number of jobs the player currently has active
      • `%auraskills_jobs_limit%` - Gets the maximum number of jobs the player is allowed to have active at the same time
  • Add trait commands for adding trait modifiers directly to players
    • `/skills trait add <player> <trait> <name> <value> [silent] [stack]` - Adds a trait modifier to a player with the given name
    • `/skills trait remove <player> <name> [silent]` - Removes a trait modifier from a player with the given name
    • `/skills trait list [player] [trait]` - Lists trait modifiers of a player
    • `/skills trait removeall [player] [trait] [silent]` - Removes all trait modifiers from a player
    • The functionality of these commands is almost identical to the modifier commands for stat modifiers
    • These commands use the existing auraskills.command.modifier permission
  • Add item and armor trait commands for adding trait modifiers to items
    • `/skills item|armor trait add <trait> <value> [lore]` - Adds a trait modifier to the held item, with lore by default
    • `/skills item|armor trait remove <trait>` - Removes a trait modifier from the item held
    • `/skills item|armor trait list` - Lists all trait modifiers on the item held
    • `/skills item|armor trait removeall` - Removes all trait modifiers from the item held
    • Where item|armor is shown above, only item or armor should be specified, not both
    • These commands use the existing auraskills.command.item.modifier or auraskills.command.armor.modifier permissions
    • Like stat modifiers, trait modifiers use PDC and do not depend on lore to function
  • Add item ignore commands to ignore interactions on specific items
    • This allows you to disable mana abilities on custom items to allow separate right-click functionality
    • `/skills item ignore add` - Adds the tag that ignores the held item from mana ability interactions
    • `/skills item ignore remove` - Removes the tag that ignores the held item from mana ability interactions
  • Add format_title option to menus to allow disabling color and MiniMessage parsing of menu titles
    • To use, manually add it to the options section of a menu file (create it if it doesn't exist)
  • Add PlaceholderAPI support to level up chat message
  • Add `%auraskills_xp_bar_[skill]%` placeholder that gets the XP progress bar shown in the menus
Changes
  • Optimize menus to significantly improve performance for idle open menus
  • Change the default skills and level_progression menu files to fully use block style YAML syntax
  • The default contexts materials of the skill template in the level_progression menu now match the materials in the skills menu
  • Add symbol placeholder support to item modifier lore message
  • Automatic backups will now be skipped if the server has too many users (uses new max_users config option)
  • Add ensure_scaling_disabled option to hp trait in stats.yml to disable health scaling if the trait is disabled (true by default)
  • Update Japanese, Polish, and Chinese Simplified messages
Bug Fixes
  • Fix Bleed and Absorption particle errors on 1.20.5+
  • Fix mana add command always setting mana to max
  • Fix hex colors in ability messages not working
  • Fix added contexts sections breaking some level_progression templates
  • Fix hp action_bar_scaling not applying to menus and chat
  • Fix multiplier permissions set to false not being ignored
  • Fix Disenchanter not working when shift clicking to remove an item with a different item on the cursor
  • Fix hide_attributes flag not working in 1.20.5+
  • Fix Alchemist duration lore stacking on the same potion
API Changes
  • Add job methods to SkillsUser
  • Add Trait#getMenuDisplay to get the trait value formatted as shown in the stats menu
  • Fix MenuManager#buildMenu not working when called multiple times to extend the same menu
----------, May 27, 2024

Note: If you are using the 15 skill legacy preset and previously updated to 2.0.8, your sources files for alchemy, agility, and enchanting may have been forcefully updated to include duplicate sources due to a bug in source updating. While this update fixes the bug going forward, you may have to manually remove sources that are duplicated with healing, endurance, and forging, respectively.

New Features
  • Add menu conditions system
    • Conditions on items are used to add requirements for viewing or clicking an item
    • View conditions will hide the item if not all conditions are met
    • View conditions are added with a `view_conditions` key under an item
    • Click conditions will prevent click actions or built-in click behavior from running if not all conditions are met
    • Click conditions are added using the `on_click_conditions` key, or for a specific button trigger like `on_right_click_conditions`
    • The syntax for any condition key is a map list of conditions that all must be met. This is similar to the click actions syntax.
    • Permission condition type:
      • Permission conditions check if the player has a permission
      • Uses `type: permission` (optional due to auto type detection)
      • Must specify a `permission` key for the permission node to check
      • An optional boolean `value` can be specified (defaults to true)
    • Placeholder condition type:
      • Placeholder conditions compare two values that can contain PlaceholderAPI placeholders
      • Uses `type: placeholder` (optional due to auto type detection)
      • Must specify a `placeholder` string key as the left side value to be compared
      • Must specify a `value` string key as the right side value to be compared
      • An optional `compare` string can be specified for the type of comparison operation to perform (defaults to equals)
        • `equals` checks for numerical or string equality
        • `greater_than` checks if `placeholder` is strictly greater than `value`
        • `greater_than_or_equals` checks if `placeholder` is greater than or equal to `value`
        • `less_than` checks if `placeholder` is strictly less than `value`
        • `less_than_or_equals` checks if `placeholder` is less than or equal to `value`
      • Any `compare` other than `equals` requires both `placeholder` and `value` to be evaluated to doubles
  • Add menu `on_open` and `on_close` actions for running actions when a menu is opened or closed
    • These are map lists of actions defined directly in the top-level of the menu file
    • `on_close` will run even if the player switches to a different menu immediately
  • Add sound menu action
    • Plays a sound for a player
    • Uses `type: sound` (optional due to auto type detection)
    • Must specify a `sound` string key as the sound type to player. This uses the vanilla names matching the /playsound command.
    • An optional `category` string can be specified (defaults to master)
    • An optional `volume` number can be specified (defaults to 1)
    • An optional `pitch` number can be specified (defaults to 1)
  • Add syntax to duplicate default menu items with placeholders
    • Creating a new item with a name in the format `item_name(1)` will replace all the display_name and lore placeholders exactly like the default `item_name`.
    • Any number can be used within the parenthesis
    • This is useful for duplicating default items across multiple slots with different materials and custom_model_data for resource packs
  • Add syntax for duplicating the exact same menu item easily across multiple slots
    • Specify a list of slot values with the `pos` key instead of a single value
Changes
  • Click action types will now be automatically detected, so specifying a `type` is no longer required
Bug Fixes
  • Fix duplicate source updating for legacy preset
  • Fix command actions not working without PlaceholderAPI
----------, May 3, 2024

New Features
  • Minecraft 1.20.5 and 1.20.6 support
  • Add hide_tooltip option to items in menus/loot to completely hide the tooltip
    • Tooltips are hidden automatically for menu fill items
    • Only works on 1.20.5+
Changes
  • Various optimizations for servers with high player counts
    • Optimize BlockLeveler with cache for sources
    • Optimize multiplier permission lookup with cache using LuckPerms events
    • Optimize Treecapitator
  • Treecapitator now gives XP for all blocks broken by default
    • This can be disabled in mana_abilities.yml by setting give_xp to false
  • Update Korean messages
Bug Fixes
  • Fix hex colors in skill names not working fully in menus
  • Fix mana ability is not loaded error
  • Fix Grappler ignoring region protection
API Changes
  • Slate is now relocated in the AuraSkills jar, so if you use dev.aurelium.slate packages with the api, you should relocate them to dev.aurelium.auraskills.slate using the Gradle Shadow or Maven Shade plugin
  • Add MainConfig#getStartLevel and getHighestMaxLevel
  • Add MenuManager#registerGlobalReplacer
----------, May 1, 2024

New Features
  • Add trait placeholders
    • `%auraskills_trait_[trait]%` gets the effective level of a trait
    • `%auraskills_trait_[trait]_bonus%` gets the bonus level of a trait (level excluding the base value)
    • `%auraskills_trait_[trait]_menu%` gets the trait in the same format displayed in the stats menu
  • Add mana ability placeholders (thanks Erik)
    • `%auraskills_mability_[ability]%` gets the player's mana ability level
    • `%auraskills_mability_[ability]_value%` gets the mana ability value
    • `%auraskills_mability_[ability]_active%` returns true if mana ability is active, false otherwise
  • Add MythicMobs hook to fix issues with damage (thanks Erik)
    • Add takeMana mechanic
      • Syntax: takeMana{m=number}
    • Add giveSkillXP mechanic
      • Syntax: giveSkillXP{xp=number,s=skill}
    • Add hasMana condition for MythicCrucible
      • Syntax: hasMana{m=number}
  • Add cause and excluded_cause options to entity source
    • These options can be optionally added to filter DamageCause
  • Add directly_to_inventory option to config.yml to make all bonus item drops from luck traits and loot always add directly to the player's inventory instead of being dropped in the world
    • This option does not affect vanilla item drops
Changes
  • Bleed no longer creates invulnerable damage frames
  • Add Turkish, Finnish, and Thai messages
Bug Fixes
  • Fix disabled abilities showing in level progression menu items
  • Fix hex colors in stat names not working in menus
  • Fix the WorldGuard hook not loading blocked_check_replace_regions option
  • Fix user data being reset in some cases
  • Fix block luck not applying to players in Adventure mode
  • Fix CustomSkill not showing defined messages in menus
API Changes
  • Add openMenu methods and registerContext to MenuManager
  • Add parseItem and parseMultipleItems to ItemManager, allowing parsing of ItemStack from a ConfigurationNode
  • Add passesFilter to ItemManager
  • Add loot API for accessing existing loot tables and registering new loot types
    • New loot tables can be loaded by using NamespacedRegistry#setLootDirectory
  • Add SourceManager API for getting sources of a type
  • Remove the extra repositories that were required to load the dependency in 2.0.6
----------, Apr 20, 2024

New Features
  • Add support for custom menus
    • Create a new file in the menus folder to create a custom menu
    • Follows the same format as existing menus, though templates and components will not work
    • Supports PlaceholderAPI and click actions like existing menus
  • Add openmenu command
    • Syntax: `/skills openmenu <menuName> [player] [properties] [page]`
    • If player is not specified, the menu opens for the sender
    • The properties argument is a JSON string required to open some menus
      • For example, `{"skill":"Skill:mining"}` should be passed when opening the level_progression, abilities, sources, and leaderboard menu
    • The page argument starts at 0 for the first page
    • Requires the auraskills.command.openmenu permission (defaults to op)
  • Add ability placeholders
    • `%auraskills_[ability]%` gets the ability level
    • `%auraskills_[ability]_value%` gets the ability value
    • `%auraskills_[ability]_value_2%` gets the secondary value of the ability if there is one
    • Replace `[ability]` with the default English name of an ability in lowercase
    • AuraSkills placeholders will now show in the tab completion of /papi parse
Bug Fixes
  • Disable level up chat message for empty string
  • Fix Minecraft version parsing error on initial releases like 1.20
  • Placed saplings that grow into logs will now give XP
  • Fix track option not working in level_progression menu
  • Fix LootDropEvent Cause being unknown for some loot tables
  • Fix ProtocolLib error with Geyser players
  • Fix Terraform crash with AdvancedEnchantments
API Changes
  • Add MenuManager API to extend existing and create custom menus
    • Accessible with AuraSkillsBukkit#getMenuManager
    • Can be used to define behavior for custom items and templates in default or custom menus
    • Add NamespacedRegistry#setMenuDirectory for loading external menu files, which are automatically merged with default menu files before being loaded
  • Make TerraformBlockBreakEvent accessible in the API
----------, Apr 10, 2024

New Features
  • Add track and use_track options to sources menu
    • Used to rearrange the source items in any way rather than just a rectangle
  • Add custom_model_data option to source item filter meta
    • To use, add it to a custom XP source item filter section for filtering a specific model data
Changes
  • Update messages and move identical messages across languages to global.yml
Bug Fixes
  • Fix Regions API errors
  • Fix hex colors not working in titles and boss bar
  • Fix trailing color codes not working in stat symbols
  • Fix user skill levels being below start_level when increased
  • Fix multiplier command displaying incorrect values
  • Fix newlines not working in reward chat messages
  • Fix Retrieval detecting tridents as arrows
  • Fix skill reset command not using config start_level
  • Fix Lightning Blade being activated by thorns
  • Fix Alchemist replacing lore and not working for custom effects
  • Fix hex colors not working in skill messages
  • Fix errors with WorldGuard 7.1
----------, Apr 6, 2024

New Features:
  • Add xp_format and percent_format boss bar options
  • Add options to sources menu to change source template area
Changes:
  • Reduce jar size by removing unnecessary libraries
  • Update it and ru messages (regen required to get changes)
Bug Fixes:
  • Fix mana ability cooldowns not being saved when re-logging
  • Fix placeholders not working after PlaceholderAPI reload
  • Fix NoSuchMethodError on older versions
  • Fix long delay in leaderboard updating on startup
  • Fix acf section of messages file not applying
  • Fix abilities showing in menus and messages above max_level
  • Fix trait max_mana is not loaded error
  • Fix mana ability is not loaded error
  • Fix formatting not working in menu titles
  • Fix stack overflow when opening skills menu with too much XP
  • Fix mana command help not showing parameter names
----------, Mar 27, 2024

New Features:
  • Add formula option to damage_reduction trait
  • Add scale_xp_with_health entity source option
    • This is true by default for entity sources with damage trigger
  • Add mana.enabled option to more easily disable mana
Bug Fixes:
  • Fix skills menu migration breaking
    • If you have already migrated and your skills menu is broken, delete your menus/skills.yml to let it regenerate
  • Fix permission-blocked skills increasing stat levels
  • Fix entity sources with damage trigger not scaling XP with damage
  • Fix Bleed not giving XP on entity death/damage
  • Fix disabled traits still showing in stats menu
  • Fix skill name commands not working
API Changes:
  • Add DamageXpGainEvent
----------, Mar 23, 2024

New Features:
  • Add excluded_enchantments option for Enchanted Strength in abilities.yml
  • Add lore_wrapping_width option in config.yml
Bug Fixes:
  • Fix NPCs being unable to attack mobs
  • Fix Fleeting not being removed after heal commands
  • Fix console error when using Vault without an economy plugin
----------, Mar 21, 2024

New Features:
  • Add formula support in money rewards
Bug Fixes:
  • Fix item modifier NBT conversion breaking items
  • Fix action_bar.enabled option not fully working
  • Fix message file headers
  • Fix rank command error
----------, Mar 19, 2024

The 2.0 update is a complete recode of the plugin codebase, overhauling existing systems to make everything more modular and customizable. The most visible change is that the plugin has been renamed to AuraSkills.

There are too many changes to list here, so read the full release notes.

If you are migrating from Beta, you must read the migration guide, not everything will migrate automatically!

As always, please report any issues to the Discord server.
----------, Mar 18, 2024

New Features:
  • Add support for Minecraft 1.20.4
Bug Fixes:
  • Fix revert_command executing normal command instead
  • Fix level progression menu items_per_page above 24 not working
  • Fix pierce level out of range error
  • Fix ManaAbilityActivateEvent cancellation not working
----------, Dec 27, 2023

New Features:
  • Add support for Minecraft 1.20.2
Bug Fixes:
  • Fix bug with mana and stat modifiers
----------, Sep 26, 2023

Bug Fixes:
  • Ensure all String case calls use ROOT locale to fix config bugs
  • Fix level progression menu bugs with non-default items_per_page
  • Fix multiplier permissions set to false being functional
  • Fix excessive health stat error
  • Fix disabled XP multiplier abilities applying in sources menu
  • Fix Archery spawner-multiplier option not working
  • Fix split slimes and magma cubes not applying spawner-multiplier
  • Fix Bleed applying when not unlocked
  • Fix XP multiplier abilities apply sometimes when not unlocked
  • Fix combined skill leaderboard placeholder not working
  • Fix empty sources menu pages with many disabled sources
  • Make source item base XP and multiplied XP rounding consistent
  • Fix Sorcery giving XP when blocked or disabled
  • Fix resethealth command not working with RCON
  • Fix MiniMessage hex color support in menus
  • Remove automatic loot file updating
  • Fix Wise Effect overflow mana when allow-over-max-mana is false
----------, Sep 9, 2023

New Features:
  • Add reset-xp-on-death option to reset skill xp when a player dies
Bug Fixes:
  • Fix nbt in menus not working in 1.20
  • Fix Piercing ability arrows bouncing on non-lethal arrow damage
----------, Jun 19, 2023

New Features:
  • Add support for Minecraft 1.20
  • New Foraging Sources:
    • Cherry Log
    • Cherry Leaves
    • Pink Petals
  • New Farming Sources:
    • Torchflower
    • Pitcher Plant
  • New Fighting/Archery Sources:
    • Camel
    • Sniffer
Changes:
  • Add Japanese messages
  • Delay update checking and improve logic so new updates aren't marked as outdated
  • Remove preemptive player skull loading since it is no longer necessary
  • Add disable_health_check option to Sharp Hook (false by default)
    • When true, Sharp Hook will activate regardless of whether the entity was actually damaged
  • Update Brazilian Portuguese and French messages
Bug Fixes:
  • Fix incorrect items being displayed in the level progression menu at some skill levels
  • Fix reset PlayerData not saving when save-blank-profiles was false
  • Fix modifiers not being removed when item is put in chest on login
  • Fix Farming XP being doubled when breaking crops
  • Fix desc_upgrade_value message not applying to mana ability item in abilities menu
  • Fix armor stands giving Fighting/Archery XP when damage-based is true
  • Fix some PlayerData memory leaks
----------, Jun 9, 2023

New Features:
  • Add PlaceholderAPI support to menu titles
  • Add support for context-specific display names and lore on template items
Changes:
  • Update Russian, Polish, and Simplified Chinese messages
Bug Fixes:
  • Fix AureliumAPI.addArmorMultiplier adding item multiplier instead of armor
  • Fix allow-over-max-mana set to false not working with Wise Effect
  • Fix errors with skull_meta.placeholder_uuid when PlaceholderAPI is not on the server
----------, Apr 18, 2023

Changes:
  • Add scale_base_chance option to Fishing and Excavation loot abilities
    • Option added to Treasure Hunter, Epic Catch, Metal Detector, and Lucky Spades abilities
    • If true, calculating drop chance will multiply ability value by base_chance in loot pool instead of adding
Bug Fixes:
  • Fix "Plugin is creating timing - this is deprecated behavior" warning on Paper
  • Fix command parameter names not showing in command help
----------, Apr 7, 2023

Bug Fixes:
  • Revert skill leveler event priority changes to fix placed block XP dupe
  • Fix Speed Mine and Treecapitator activating on placed blocks
----------, Mar 18, 2023

Changes:
  • Rename hooks config option from enable to enabled
Bug Fixes:
  • Fix armor modifiers to support 1.19.4 hotbar swap feature
  • Fix DecentHolograms name already exists error
  • Fix plugin not loading for Java 8-16
----------, Mar 18, 2023

New Features:
  • Add support for Minecraft 1.19.4
  • Add DecentHolograms support
    • Set which hologram plugin to use in the hooks section of config.yml
  • Add placeholder %aureliumskills_actionbar_status%
  • Add reset-skills-on-death option
Changes:
  • Update Polish messages
  • Switch to Gradle and reorganize codebase into submodule bukkit
  • Remove commons-lang usage from menu library
Bug Fixes:
  • Fix dispensers bypassing armor requirements
  • Fix transfer command corrupting YAML playerdata
  • Increase skill leveler event priority to fix incompatibilities
----------, Mar 16, 2023

Changes:
  • Add Dutch messages
    • Existing configs should add the 'nl' code to the languages list to load Dutch messages
API Changes:
  • The addXp methods in AureliumAPI will no longer grant XP for disabled skills
Bug Fixes:
  • Fix mana ability raise sending empty chat messages
  • Fix NaN showing on rank item when leaderboard is empty
  • Fix error when using boss bar single mode
  • Fix region memory leak when worlds are unloaded or deleted
  • Fix arrow duplication crash with some protected regions
  • Fix Bleed activating when it shouldn't in some protected regions
  • Fix error when using Archery damage-based leveler
  • Fix Disenchanter grindstone exp exploit
----------, Feb 19, 2023

New Features:
  • Add PlaceholderAPI support to boss bars
  • Add Terraform max_blocks option to change the number of blocks broken
  • Add transfer command to migrate player data between accounts
  • Add use-suffix option for action and boss bar to toggle level xp suffix formatting
  • Add WorldGuard flags for controlling each individual skill's XP gain
    • Flag name is aureliumskils-xp-gain-skillname
Changes:
  • No longer send ability chat messages if message string is empty
  • Make xp_gained placeholder work in boss bar messages
  • Remove unnecessary .0 in numbers with suffix formatting
Bug Fixes:
  • Fix memory leak with spawner multiplier option
  • Fix mana not regenerating due to Absorption activation not being removed
  • Fix potential NPE in SkillBossBar
  • Fix blank lines in menu for disabled abilities when using non-English languages
----------, Feb 2, 2023

Changes:
  • Add support for Minecraft 1.19.3
  • Update Simplified Chinese, Russian, and Korean messages
API Changes:
  • Add EntityXpGainEvent for modifying XP of Fighting/Archery before multipliers
Bug Fixes:
  • Cancel out block loot if Slimefun block
  • Prevent re-looting the same blocks over and over
----------, Dec 11, 2022

New Features:
  • Add values list option for XP requirements instead of an equation
  • Add average placeholders to get the average skill level of a player
    • Add %aureliumskills_average%, %aureliumskills_average_int%, and %aureliumskills_average_1% placeholders
Changes:
  • Sweeping attacks are now ignored when checking for Lightning Blade activation to reduce chat spam
  • Make upgrade description format in abilities menu configurable using 'menus.abilities.desc_upgrade_value' message
  • Allow leaderboard placeholders to work without specifying a player
Bug Fixes:
  • Fix some newer blocks not working as custom block XP sources
  • Fix boss bar memory leak
----------, Nov 20, 2022

New Features:
  • Add /skills profile skills and /skills profile stats commands to view the skill and stat levels of other players, including offline players
    • Requires aureliumskills.profile permission, op by default
API Changes:
  • Add getTotalLevel method to get combined skill level of a player
Bug Fixes:
  • Relocate Adventure API to fix warnings with other plugins that use Adventure
  • Set new player skill levels to 1 on first join
----------, Oct 17, 2022

Bug Fixes:
  • Fix NoSuchMethod MiniMessage error on some server versions
----------, Sep 11, 2022

New Features:
  • Add MiniMessage formatting support to menus
Changes:
  • Arrows created by the Piercing ability can no longer be picked up
  • Update action bar compatibility for 1.19
Bug Fixes:
  • Fix Sharp Hook logic error
  • Fix NoSuchMethod error on versions 1.14-1.14.3
----------, Sep 10, 2022

New Features:
  • Add cooldown_ticks option to First Strike ability
  • Add blocked-grindstone-enchants Forging option to stop XP gain from custom curses
  • Add aureliumskills-custom-loot WorldGuard flag to toggle custom loot table functionality
Bug Fixes:
  • Fix Piercing arrows multiplying by blocking shield
  • Fix sources menu showing multiplied XP incorrectly
----------, Aug 4, 2022

Bug Fixes:
  • Fix missing names in sources menu for 1.19 sources
----------, Jun 8, 2022

New Features:
  • Add 1.19 support
  • New Sorcery XP sources:
    • Sculk
    • Sculk Catalyst
    • Sculk Shrieker
    • Sculk Vein
    • Sculk Sensor
  • New Foraging XP sources:
    • Mangrove Log
    • Mangrove Leaves
    • Mangrove Roots
  • New Excavation XP sources:
    • Mud
    • Muddy Mangrove Roots
  • New Fighting and Archery XP sources:
    • Allay
    • Frog
    • Tadpole
    • Warden
  • New Mining XP source:
    • Reinforced Deepslate
Changes:
  • Update French messages
  • Add sorcery.check-cancelled option for new Sorcery block sources
  • Update NBT API to 2.10.0-SNAPSHOT
----------, Jun 8, 2022

New Features:
  • Add json NBT string parsing for loot and menus
Bug Fixes:
  • Fix loot and menu item nbt custom model data and nesting not working
----------, Jun 3, 2022

New Features:
  • Add ability to stack multiple stat modifiers using the same command
    • Set the optional stack argument at the end of the /skills modifier add command to true (must also specify silent argument)
    • This will create a new stat modifier with a numbered name in parenthesis at the end
  • Add loot pool option require_open_water to only give fishing loot if hook is in open water (prevents AFK fishing)
Changes:
  • Move loot system to new Loot Manager library
----------, May 30, 2022

Changes:
  • Update Polish messages
  • Update Spanish messages
  • Update Chinese Simplified messages
  • Deny skills menu from opening if player has no skills profile
Bug Fixes:
  • Fix sources messages spelling errors
----------, May 26, 2022

Bug Fixes:
  • Fix PlaceholderAPI not working in menus
  • Fix abilities menu displaying as maxed incorrectly
----------, May 25, 2022

The menu update is finally here! Added are three new menus, many more customization options, and configuration format changes. Your existing menus.yml will be automatically migrated into the new format in the menus folder. If you have any issues migrating your menus or encounter any bugs, please report them to the Discord immediately.

Be sure to read the entire changelog to see all the changes. If you need more info on how to configure menus, check out the wiki article.

Like the update? Consider donating to support the development of Aurelium Skills. Donations are much appreciated!

From this update forward, 1.12 will no longer be supported due to future plans, as well as being difficult to maintain.

New Features:
  • Sources menu:
    • The sources menu shows every way players can gain XP in a skill and how much XP they will earn for each source
    • Accessible by clicking the sources item (experience bottle) in the level progression menu or using /skills sources <skill> [sortType]
    • Each source item will show the base XP earned and the multiplied XP, which accounts for abilities and multipliers, if applicable
    • Sort the items in the menu by clicking on the hopper to cycle sorting modes
    • Available sort types: ascending by XP, descending by XP, alphabetical, and reverse alphabetical
    • The material shown for each source is generated by default but can be overridden by adding a context with the name of the source and a material field under it
    • Supports multiple pages if sources cannot fit in one page
    • Fully configurable in menus/sources.yml
  • Leaderboard menu:
    • Displays the top 10 players in a skill
    • Each item is a player head with the skin of the player and includes the player's username and level
    • Accessible by clicking the rank item (paper by default) in the level progression menu
    • Fully configurable in menus/leaderboards.yml
    • The head will be replaced with an alternate item in versions 1.12-1.16 to due to a vanilla bug that causes lag, can be disabled using the auto_replace_heads_on_legacy option
  • Abilities menu:
    • Displays information about each ability and mana ability in a skill
    • Includes the name, description, player level, unlock status, and level up progress of the ability
    • Accessible by clicking the abilities item (light blue dye) in the level progression menu
    • Shows different materials and information depending on whether the ability is unlocked or not
    • Fully configurable in menus/abilities.yml
  • New item options:
    • Add 'enchantments' key as a list of strings, formatted as 'name level', such as 'sharpness 5'
    • The key 'potion_type' has been renamed to 'potion_data', added the 'extended' and 'upgraded' optional boolean sub-keys
    • Add the 'custom_effects' key as a map list of effects with sub-keys 'type', 'duration', and 'amplifier'
    • Add the 'nbt' key to add custom NBT data to the item (automatically infers types and supports nested data)
      • Use CustomModelData under nbt to add custom model data
    • Add the 'flags' key to add item flags, such as 'hide_enchants' and 'hide_potion_effects'
    • Add the 'durability' key to set the durability of the item (0 means almost broken, goes up to the max durability to the item)
    • Add the 'skull_meta' key with either 'uuid', 'base64', or 'url' subfields to define the skin used
    • Add the 'key' key to use a registered item (/skills item register); 'material' and other item keys are not required if used
  • New options in level progression menu:
    • Item options are accessible under the options section of a menu configuration file
    • Add items_per_page option to control how many skill level items are shown per page
    • Add use_level_as_amount option to match the item amount with the corresponding skill level it represents
    • Add over_max_stack_amount option to control the amount shown if the skill level is higher than the max stack of the item (64)
    • The position of skill items can be overridden by adding context sections named after the level number (i.e. '10') and 'pos' keys under each
  • Click actions:
    • Define custom functionality when a player clicks an item in the menu
    • Supported actions:
      • Executing a command (either through the player or console)
      • Closing the menu
      • Opening another Aurelium Skills menu
      • Going to the next page or previous page
    • Supported triggers (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')
    • Actions are defined by adding a the key of a trigger listed about as a new field under any item or template
    • Actions are listed in map list format with certain fields used to define type and functionality:
      • type - required field that is either 'command' for executing a command or 'menu' for everything menu related
      • Command action fields:
        • command - The text of the command (without slash), supports {player} placeholder and all PlaceholderAPI placeholders
        • executor - The executor of the command, either 'console' or 'player' (defaults to console)
      • Menu action fields:
        • action - The action type, can be 'open', 'close', 'next_page', or 'previous_page'
        • menu - The name of the menu to open (only required for the 'open' action)
        • properties - A subsection of properties used to define variables when opening a menu ('open' action only)
          • A list of properties used to open each Aurelium Skills menu can be found in the wiki
          • Custom types can be used as a property using the 'type:value' format (see wiki for list of types and values)
  • Custom menu items:
    • Completely new items can be added to any menu simply by creating a subsection in the items section
    • The name of the section can be anything except item names already used in that items section
    • The format of custom items is exactly the same as default items (material, pos, display_name, lore, etc)
    • Add functionality to custom items using click actions mentioned above
    • Lore and display name supports PlaceholderAPI placeholders like all other items
  • Add hex color support to menus
Changes:
  • Menu file format changes:
    • menus.yml has been replaced by an individual file for each menu in the 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
    • The 'rows' menu entry has been renamed to 'size'
    • Material names are now in lowercase (uppercase is still allowed though)
    • 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 0)
      • The slot format, which is a single number for the slot number from 0 up to 53 (starting at the top left slot increasing left to right then top to bottom)
    • Each context (skill, stat) 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
      • For example, the path 'templates.skill.farming.material' in menus/skills.yml is the material used for Farming in the skils menu
    • 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
    • Legacy material data for 1.12 is still defined in the material field, using the material:data format
  • Reduce kelp XP from 0.5 to 0.3
  • Update NBT API version
  • Add Czech messages
  • Update German messages
  • Update Polish messages
  • Update Brazilian Portuguese messages
Bug Fixes:
  • Fix Lucky Catch not working with custom loot tables
  • Fix incorrectly named ACF message key
  • Fix missing percent in Runner description
----------, May 23, 2022

Changes:
  • Use new prevent-interact option for blocking item interactions for requirements instead of prevent-tool-use
Bug Fixes:
  • Fix PlayerHarvestBlockEvent does not exist error on versions below 1.16
  • Fix power placeholder not ignoring disabled skills
  • Fix stripped logs not working as a custom XP source if stripped with an axe
----------, Mar 24, 2022

Changes:
  • Disable item NBT functionality if version unsupported
  • Update NBT API for 1.18.2
  • Allow leveler message title and subtitle placeholders to be interchangeable
  • Update Spanish messages
  • Update Chinese (Simplified) messages
Bug Fixes:
  • Fix berries right click exploit in some protected regions
----------, Mar 3, 2022

Bug Fixes:
  • Fix critical item duplication exploit on 1.12 (does not affect newer versions)
----------, Feb 22, 2022

New Features:
  • Add alchemy.ignore-custom-potions option to disable duration boosts for custom effects
Changes:
  • Add Korean messages
Bug Fixes:
  • Fix Forging XP dupe exploit
  • Fix red sand, podzol, and coarse dirt blocks dropping with NBT tags when dug with silk touch and Bigger Scoop
  • Fix bamboo XP dupe and placed block inconsistency
API Changes:
  • Add missing LootDropEvent calls for fishing
  • Add methods to add item and armor multipliers
----------, Jan 17, 2022

Bug Fixes:
  • Fix Aurelium Skills action bar overriding other action bars (requires ProtocolLib)
  • Fix ItemListener memory leak
  • Fix Towny incompatibility
----------, Dec 18, 2021

Changes:
  • Add support for Minecraft 1.18
  • Update German messages
  • Update Spanish messages
  • Correct some Polish messages (requires message file regen)
Bug Fixes:
  • Fix Repairing resulting in negative durability
  • Fix disabled skills still showing in stats menu
  • Fix deepslate ores not in lucky_miner_applicable tag
  • Fix SlimeFun block placer bug
  • Fix MyPet error
----------, Nov 30, 2021

New Features:
  • Add hex color message support in &# format
  • Add Treecapitator max_blocks_multiplier option to scale the number of blocks broken
  • Add auto save for online players
    • Useful if your server experiences skill data losses due to server crashes
    • You must set auto-save.enabled to true and restart the server to enable it
    • The auto-save.interval-ticks option controls how often (in ticks) to auto-save
Changes:
  • Endurance XP gain is now disabled in spectator mode
Bug Fixes:
  • Add armor modifier timer options to fix rare bug where un-equipping armor did not remove modifiers
  • Fix some numbers and placeholders truncating instead of rounding half up
----------, Oct 9, 2021

New Features:
  • Add XP requirement equation customization:
    • Configure the expression used for XP requirements in the new xp_requirements.yml file
    • The "default" section configures the expression for all skills
    • The "expression" is used to calculate the XP required for each level. Supports any valid EvalEx expression. The level variable is the level that is unlocked upon reaching the required XP (starts at 2)
    • Custom variables are supported as long as their values (must be a number) are specified under the section (multiplier and base are examples of custom variables added by default)
    • Create different requirements for each skill by adding a "skills.[skillName]" section that will override the "default" section
  • Add item and armor XP multipliers:
    • 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
    • New commands (target can be either global or a skill name):
      • /skills armor multiplier add <target> <value> [lore]
      • /skills armor multiplier remove <target>
      • /skills armor multiplier list
      • /skills armor multiplier removeall
      • /skills item multiplier add <target> <value> [lore]
      • /skills item multiplier remove <target>
      • /skills item multiplier list
      • /skills item multiplier removeall
  • Add health.keep-full-on-increase option to keep full health when the health stat increases
Changes:
  • The /skills multiplier command will now show skill-specific multipliers if they are different from the global multiplier
  • Update Russian messages
Bug Fixes:
  • Fix stat and skill not found error messages being null
  • Fix custom loot giving negative XP
  • Fix deleted loot tables not being removed on reload
  • Fix Sharp Hook damage shown on skill item not using hp-indicator-scaling
  • Fix custom Foraging loot tables not working
----------, Sep 29, 2021

Changes:
  • Add Italian messages
  • Update Polish messages
  • Update Russian messages
API Changes:
  • Add getPlugin method to more easily get AureliumSkills instance (not official API, use at own risk)
Bug Fixes:
  • Fix sweet berry bush right click not checking for blocked situations
  • Fix glow berries XP dupe
  • Fix some skills resetting on Turkish systems
----------, Sep 12, 2021

New Features:
  • Add requirement.enabled to set whether requirements should checked
Changes:
  • Update French messages
  • Various performance optimizations
  • Update Chinese Simplified messages
Bug Fixes:
  • Fix loot selection "bound must be positive" error
  • Fix excessive velocity crash with Grappler
  • Fix lingering potion NoSuchMethod error on 1.12 and 1.13
  • Fix Revival stat bonuses not being removed on disconnect
----------, Sep 5, 2021

New Features:
  • Add /skills version command
  • Add durability item loot meta
  • Add placeholder support to reward messages
  • Add check-multiplier-permissions options to disable potentially laggy frequent permission checks
  • Add skull meta item loot parsing:
    • Create a skull_meta section and add one of the following keys
    • uuid - The UUID of the player's skin you want
    • base64 - The base64 texture string
    • url - The full Mojang texture link
  • Add ManaAbilityRefreshEvent for when a mana ability cooldown finishes
Changes:
  • Update French messages
  • Reduce default kelp XP
  • Optimize mana abilities and agility
  • Allow console to use item give command
  • Change default health.hp-indicator-scaling to 1 to be more consistent with Minecraft damage numbers
Bug Fixes:
  • Fix Terraform crash with EcoEnchants
----------, Aug 24, 2021

New Features:
  • Reworked loot tables:
    • Loot tables are now separated into files for each skill in the loot folder
    • Each loot table can have multiple pools, which are lists of loot entries
    • Pool 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 false)
      • chance_per_luck - The amount the chance should increase per luck stat level the player has (0.1 = 0.1% added chance per luck) (defaults to 0)
    • Each pool has a loot section containing a map list of the loot entries
    • Currently, there are two types of loot: item loot and command loot
    • Universal loot entry keys:
      • type - The type of loot, either item or command
      • weight - The weight of the entry compared to other loot in the same pool, higher weight means more likely to be selected (defaults to 10)
      • message - Chat message to send to player when they get the loot, supports color codes and PlaceholderAPI (optional)
      • sources - A list of sources or source tags that this loot should exclusively apply to (optional)
      • xp - The amount of skill xp to give when this loot is dropped (defaults to the original source amount if not specified)
    • Item loot keys:
      • amount - Controls the amount of item to give. This can either be a single number like '5' or a range of number such as '1-5', which gives a random amount from 1 to 5 (defaults to 1)
      • 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
      • 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 (optional)
    • 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
    • Add loot tables you can create for Mining and Foraging (create mining.yml or foraging.yml in the loot folder)
    • The existing loot.yml will be converted to the new format and the old file will be renamed to loot-OLD.yml
  • Add new Replenish options:
    • show_particles - display green bone-meal particles when a crop is replanted (defaults to true)
    • prevent_unripe_break - prevent breaking a crop that is not fully grown while Replenish is active (defaults to true)
  • Add haste_level option to Speed Mine to change the level of haste given
  • Add red particles when an entity is damaged by Bleed
  • Add new Bleed options:
    • base_ticks - The number of bleed ticks added when the entity is not bleeding
    • added_ticks - The number of bleed ticks added when the entity is already bleeding
    • max_ticks - The maximum number of bleed ticks (inclusive) that an entity can have stacked up
    • tick_period - The number of minecraft ticks between the activation of bleed ticks
    • show_particles - Whether or not to show bleeding particles
Changes:
  • Improve Treecapitator algorithm to work better with all tree types
  • Add new items to default loot tables (does not affect existing configs)
  • Re-enable idle action bar by default
  • Change HP in action bar messages to heart symbol
  • Tweak modifier command message format
  • Balance changes (does not affect existing configs):
    • Health modifier: 0.5 -> 0.4 (this makes it 1 Health = 2 HP)
    • Changed health.hearts to better match modifier (20 hearts at about max level in all skills)
    • Strength modifier: 0.63 -> 0.5
    • Crit Damage per level: 4 -> 3
    • First Strike damage per level: 10 -> 8
    • Bleed chance per level: 4 -> 3
    • Regeneration mana modifier: 0.25 -> 0.1
  • New players will not join with full mana
  • Mana regen shown in stats menu will now include base mana regen
API Changes:
  • Add AureliumAPI#getManaRegen
Bug Fixes:
  • Fix inconsistent wisdom experience multiplier with some plugins
  • Fix Healer and Forger abilities not working
  • Fix Sharp Hook activating when PVP/PVE was disabled
  • Fix health scaling reset when adding or removing health modifiers
  • Fix inaccurate damage hologram rounding
  • Fix level 0 Wise Effect stat modifiers being added
----------, Aug 1, 2021

New Features:
  • Add silent argument to xp commands to disable message (add true to the end of command)
  • Add healing.exclude-negative-potions option to disable potions that give negative effects from giving Healing XP
  • Add alchemy.give-xp-on-potion-combat option to give Alchemy XP when using splash/lingering potions to kill/damage mobs (follows archery options and xp source values)
Changes:
  • Splash/lingering potions will no longer give Archery XP
Bug Fixes:
  • Fix stat menu skills lore not updating based on rewards
  • Fix damage holograms not displaying for thrown tridents and other projectiles
  • Fix damage holograms displaying projectile damage on self
  • Fix strength not working on thrown tridents and special arrows
  • Fix item modifiers in offhand not being removed sometimes
  • Fix incorrect French stat_level message
  • Fix negative item modifiers not displaying properly
  • Fix skill-level-requirements-multiplier not rounding properly
  • Fix Replenish not replanting the first crop broken
----------, Jul 15, 2021

Changes:
  • Update es, fr, pl, ru, and zh-CN messages
  • Region saving will now use a 5 minute timer instead of on WorldSaveEvent
Bug Fixes:
  • Fix Russian language missing from default config
  • Fix error by deleting corrupt region files and prevent loading regions while saving
  • Fix Terraform broken blocks not giving loot drops
----------, Jul 10, 2021

New Features:
  • Add global.yml rewards file that applies rewards in it to all skills
  • Add boss-bar.display-maxed option to hide boss bar when skill is maxed
  • Add %aureliumskills_mana_max_int% placeholder
Changes:
  • Command rewards will now default to console if executor is not specified
  • Disenchanting enchanted books in a grindstone will now give Forging XP
  • Treecaptitator broken blocks will now give Foraging XP
Bug Fixes:
  • Fix extra line on skills menu when all stat rewards are removed
  • Fix error when playerdata file is missing uuid or empty
  • Fix NoSuchFieldError on 1.12
  • Fix Forging XP dupe
  • Fix Forging XP not being given in rare cases
----------, Jul 3, 2021

Changes:
  • Remove MythicMobs support:
    • MythicMobs has removed public access to their maven repository due to abuse
    • This makes it impossible for new users/machines and JitPack to build the plugin
    • This is a necessary change to keep the plugin open source and the AureliumSkills API working
  • Update aureliumskills.* permission with new permissions
Bug Fixes:
  • Fix mana ability cooldown_per_level not working
  • Fix modifier removeall ConcurrentModificationException
  • Fix missing aureliumskills.item.give permission
----------, Jun 22, 2021

New Features:
  • Add customizable rewards for leveling up skills (commands, permissions, stats, items, and money):
    • Rewards are configurable for each skill in the files in the rewards folder
    • Each rewards file name corresponds to the skill it defines rewards for (eg. farming.yml defines only Farming rewards)
    • See the example rewards file for syntax help: https://github.com/Archy-X/AureliumSkills/blob/master/src/main/resources/rewards/example_rewards.yml
    • Rewards files have two sections:
      • The 'patterns' section defines rewards that repeat multiple times
        • Each reward must have a 'pattern' section that can have a 'start', 'interval', and 'stop'
      • The 'levels' section defines rewards for individual levels
    • Each reward must define a 'type' key/value
    • Reward types:
      • command:
        • Executes a command on level up defined with 'command'
        • The 'executor' can define whether the command should be run through 'console' or by the 'player' (defaults to console)
        • Commands support {player}, {skill}, {level} placeholders and all PlaceholderAPI placeholders
        • Can optionally define a 'revert_command' and 'revert_executor' to execute when a player loses that level because of admin commands
        • Color codes will work using & unless escaped using \&
      • stat:
        • Levels up an Aurelium Skill stat (health, strength, luck, etc.) defined in the 'stat' value
        • The 'value' defines how much the stat should increase by (defaults to 1)
        • You can remove or change the default stats for each skill
      • permission:
        • Gives the player a permission (only works with LuckPerms right now) defined with 'permission'
        • Optional 'value' to specify true/false (defaults to true)
        • Permissions are automatically removed when skill levels are lost
        • Permissions are automatically added to players on join when a new permission reward is added to a level players already have unlocked
      • item:
        • Gives an item to the player defined with 'key'
        • The 'key' refers to a registered item registered using /skills item register [key]
        • The optional 'amount' defines the amount of the item to give, defaults to the amount of the originally registered item
        • If the player does not have enough inventory space to give the item, they can claim it using /skills claimitems
        • Unclaimed items are saved between restarts
      • money:
        • Gives the player money through Vault Economy
        • The 'amount' defines the amount of money to give
        • Messages are handled automatically and are compatible with legacy money rewards
    • Command, permission, and item rewards can define custom 'menu_message' and 'chat_message':
      • 'menu_message' is displayed in the level progression menu on the level the reward is unlocked at
      • 'chat_message' is displayed in chat with the other rewards when the player levels up
      • These can be either a literal string or refer to a custom message key in the messages file
      • Messages are optional and will just be an empty string if not defined
      • 'message' can be used as a shorthand instead when you want both menu and chat messages to be the same
      • Reward messages will not be displayed on new lines automatically, you must use \n if you want a new line
  • Add Lightning Blade mana ability for Fighting:
    • Increases attack speed by _% for _ seconds
    • Right click sword and attack mob to activate
  • Add item registry system:
    • Register the item in your main hand using /skills item register [key]
    • Unregister an item using /skills item unregister [key]
    • This system makes it easy to use items with complex lore and meta in item rewards
    • Registered items are stored in items.yml, this file should not be edited unless you know what you are doing
    • Registered items can be given to players using /skills item give [player] [key] (amount)
Changes:
  • Lore placeholders for skill items/templates in menus.yml have be changed for stat rewards compatibility
  • Update XSeries version
Bug Fixes:
  • Fix give-xp-on-takeout Alchemy option not working when using 1 ingredient
  • Fix six-sided wood and hyphae not giving Foraging XP
----------, Jun 21, 2021

New Features:
  • Add Alchemy option give-xp-on-takeout to reward XP when the potion is taken out of the brewing stand
  • Requirements can now disable fishing rod use
  • Add ssl option for MySQL
API Changes:
  • Move many internal classes to new packages, everything should still work as long as you only use the official API
Bug Fixes:
  • Fix Fleeting speed boost not being removed on server shutdown
  • Delay region saving status update by 20 ticks (hopefully fix errors)
----------, Jun 18, 2021

Bug Fixes:
  • Fix ProtocolLib action bar errors on 1.17
  • Fix Fleeting not being disabled properly
----------, Jun 15, 2021

New Features:
  • Add 1.17 support
  • New Fighting and Archery XP sources:
    • Axolotl
    • Glow Squid
    • Goat
  • New Mining XP sources:
    • Deepslate
    • Copper Ore
    • Tuff
    • Calcite
    • Smooth Basalt
    • Block of Amethyst
    • Amethyst Cluster
    • Deepslate Ores (coal, iron, copper, gold, redstone, lapis, emerald, diamond)
    • Dripstone Block
    • Ice (requires silk touch)
    • Packed Ice (requires silk touch)
    • Blue Ice (requires silk touch)
  • New Foraging XP sources:
    • Moss Block
    • Moss Carpet
    • Azalea
    • Flowering Azalea
    • Azalea Leaves
    • Flowering Azalea Leaves
  • Add Glow Berries as Farming XP source
  • Add Rooted Dirt as Excavation XP source
  • Add Source Tags:
    • Source tags are configurable lists of XP sources used for certain plugin mechanics, such as which blocks abilities work on
    • Loaded from new tags section in sources_config.yml
    • Three ways to define an entry in a source tag:
      • Use an exact source name defined in the sources section above (eg. 'dirt')
      • Use a '*' to add all the sources in the skill
      • Use a source name with an '!' in front, which removes the entry from the list (eg. '!dirt')
    • Tags added:
      • Farming: bountiful_harvest_applicable, triple_harvest_applicable
      • Foraging: lumberjack_applicable
      • Mining: lucky_miner_applicable, speed_mine_applicable
      • Excavation: bigger_scoop_applicable, metal_detector_applicable, lucky_spades_applicable, terraform_applicable
    • Note: This does not work for custom block/mob sources yet
Changes:
  • Rename quartz_ore to nether_quartz_ore in sources_config.yml
  • Recode internal sources system, add sources registry
  • Updated NBT API to 2.8.0
Bug Fixes:
  • Fix Archery damage based getting wrong xp amount
  • Fix Enchanting Enchanter ability not working
  • Fix Replenish changing blocks in protected regions
  • Fix MySQL table creation not working on older MySQL versions
----------, Jun 11, 2021

If you are updating from Alpha, please read the Important Information Before Updating to Beta

Changes:

  • Updated French (fr) messages
Bug Fixes:
  • Fix MySQL ClassNotFoundException when using older MySQL connector
  • Fix health being applied multiple times in skill commands
----------, Jun 10, 2021

If you are updating from Alpha, please read the Important Information Before Updating to Beta

Bug Fixes:
  • Fix multiple Forging XP exploits
  • Fix Disenchanter experience exploit
  • Fix global requirements not showing up in requirement deny messages
  • Fix incorrect item requirement use message
  • Fix MySQL deprecation warning on Java 16
----------, Jun 6, 2021

If you are updating from Alpha, please read the Important Information Before Updating to Beta

Bug Fixes:
  • Fixed Forging XP dupe
----------, Jun 3, 2021

If you are updating from Alpha, please read the Important Information Before Updating to Beta

New Features:

  • Added lingering potions as Healing XP sources (includes regular, extended, and upgraded options in sources_config.yml)
  • Added health_percent_required option for the fleeting ability to control the health the ability activates at
Changes:
  • Updated French (fr), Portuguese-Brazilian (pt-BR), and Spanish (es) messages
  • The skill levels required will now be listed in the message when players do not meet the requirements for an item
    • Requires adding {requirements} placeholder to 'commands.armor.requirement.equip' and 'commands.item.requirement.use' messages or regen of messages file to work
API Changes:
  • Added addItemModifier and addArmorModifier methods to API
Bug Fixes:
  • Fixed falling block (sand/gravel) dupe
----------, Jun 1, 2021

If you are updating from Alpha, please read the Important Information Before Updating to Beta

Changes:
  • Automatic backups will no longer try to save player data again on shutdown
  • The /skills save command now runs asynchronously
Bug Fixes:
  • Fixed duplication when mining placed Excavation or Luck double drop blocks
----------, May 31, 2021

Read the Important Information Before Updating to Beta (Storage and Breaking API Changes)

New Features:
  • Backups:
    • Save a backup with /backup save
    • Load a backup in the backups folder with /back load [file]
      • You must specify the exact file name with the file extension, such as /backup load backup-date_time.yml
    • Automatic backups will be taken by default at least 24 hours apart on server shutdowns
    • Added automatic-backups.enabled and automatic-backups.minimum-interval-hours options
  • Region storage:
    • Placed blocks are now stored on file, which means gaining xp for placed blocks after a restart is no longer possible
    • Stored in the regiondata folder organized by world and regions (32x32 chunk areas)
    • Regions are dynamically loaded and unloaded as they are used to conserve memory
  • Added new Farming XP sources:
    • Cactus
    • Brown/Red mushroom
    • Kelp
    • Sea pickle
    • Sweet berry bush
  • MySQL improvements:
    • Added mysql.load-delay option to delay loading player data from database until a certain number of ticks passes
    • Added mysql.always-load-on-join to load player data on join no matter if it is already cached in memory
  • Added custom WorldGuard flags:
    • Added aureliumskills-xp-gain flag to allow/deny XP gain in regions (works the same as blocked-regions in config)
    • Only works in WorldGuard 7.0+ (1.13+)
  • Added skill average leaderboards (/skills top average)
  • Added grindstone disenchanting as Forging XP source
  • Added check-for-updates option to toggle update checking
  • Added aureliumskills.checkupdates permission to toggle sending plugin update messages on join
  • Added replenish.replant_delay option in abilities_config.yml
Changes:
  • Moved Yaml player data into individual files for each player in the playerdata folder
  • Changed MySQL database format, NOT backwards compatible
  • Each player's data will now be loaded on join and saved on leave
  • Stat modifiers are now persistent
  • Mana is now persistent
  • Player language settings are now persistent
  • Certain ability data is now persistent
  • Complete recode and cleanup of the data and storage system
  • Abstracted skills and stats, created skill and stat registry system
  • Added Lithuanian (lt) messages
API Changes:
  • Renamed Stat enum to Stats
  • Renamed Skill enum to Skills
  • Skill and Stat are now interfaces that can represent more than just the default skills/stats
  • Moved util classes into more specific subpackages
Bug Fixes:
  • Fixed Replenish consuming wrong mana amount
  • Fixed players unable to do certain tasks (breaking/placing blocks) if their player data was not loaded
  • Added chipped_anvil, damaged_anvil, flower_pot, and signs to blocked materials when equipping armor with modifiers
  • Fixed wisdom.max-mana-per-wisdom changes not regenerating mana properly
----------, May 27, 2021

Changes:
  • Made default English not enough mana messages more specific to show current and max mana
  • Disabled idle action bar by default, changed default ability action bar messages
  • Added new mana ability options to mana abilities that raise/lower a tool:
    • Added check_offhand option to stop readying if a block is being placed in the offhand (true by default)
    • Added sneak_offhand option to allow the player to bypass the offhand block check by sneaking (true by default)
    • Added require_sneak option to require sneaking in all cases to ready an ability (false by default)
Bug Fixes:
  • Fixed loot dropping with Terraform in protected Towny regions (added Towny support)
  • Fixed melons dropping melon slices with silk touch in bountiful harvest/triple harvest abilities
  • Fixed gaining fighting and archery xp in disabled worlds/regions if damage_based is enabled
----------, Apr 3, 2021

New Features:
  • Added PlaceholderAPI support to menus:
    • Added menus.placeholder-api config option (true by default)
    • Works on all display names, lores, and messages used in menus
  • Added per skill multiplier permissions:
    • Format: aureliumskills.multiplier.[skill].[percent]
    • Reminder that percent is the percent extra xp, so aureliumskills.multiplier.farming.100 would give 100% (2x) more Farming XP
    • Added %aureliumskills_multiplier_[skill]% and %aureliumskills_multiplier_percent_[skill]% placeholders
  • Added potion_type and custom_effect data tags for loot
    • Format: potion_type:[PotionType]
    • Format: custom_effect:[PotionEffectType],[duration],[amplifier]
  • Added PlaceholderAPI support to loot commands
  • Added ManaAbilityActivateEvent
  • Added %aureliumskills_[stat]_int% placeholder to get stat levels as an integer
Bug Fixes:
  • Fixed Bleed not being removed on some deaths
  • Fixed enchanted book loot enchants not working in anvils
  • Sharp hook will no longer work if the attacker is too far away or in a different world
----------, Mar 14, 2021

New Features:
  • Added archery/fighting.damage-based options 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
    • These options are false by default
  • Added archery/fighting.spawner-multiplier options 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
  • Added defense.allow-shield-blocking option to allow Defense XP gain when blocking a shield (false by default)
  • Added cocoa as a Farming XP source
  • Added %aureliumskills_mana_int% placeholder for the mana of a player rounded to an integer
Changes:
  • Updated id messages
Bug Fixes:
  • Fixed server crash with the Terraform mana ability when using VeinMiner
    • Added TerraformBlockBreakEvent called when blocks broken with Terraform
  • Fixed mana ability max level not being displayed in menus
  • Fixed default language not setting on case sensitive operating systems with locales that specify a country code
  • Fixed tridents giving both Fighting and Archery XP (now only gives Archery)
----------, Feb 9, 2021

Changes:
  • Changed menu inventory click event priority to highest (should prevent plugin compat issues where players are able to take items out)
  • Updated zh-CN messages
Bug Fixes:
  • Exploding fireworks will now give Archery XP instead of Fighting
  • Fixed Disenchanter no enum constant error
  • Fixed action bar hp and max hp discrepancy
  • Fixed experience duplication death exploit
  • Players can longer earn Archery/Fighting/Defense XP by damaging/killing themselves
  • Fixed ability config migration error
----------, Feb 1, 2021

This update finally allows you to customize the amount of hearts displayed and fixes a few bugs.

New Features:
  • Added hearts customization:
    • Use the health.hearts in config.yml section 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.
  • Added CustomRegenEvent to the API for health regeneration when custom-regen-mechanics is enabled
Bug Fixes:
  • Fixed Fleeting speed boost not being removed if custom-regen-mechanics was enabled
  • Fixed grindstone Disenchanter ability error with Sweeping Edge
  • Fixed Recovery ability not working if custom-regen-mechanics was enabled
  • Fixed sugar cane Farming XP fast place duping (breaking any player placed sugar cane will not give XP for above blocks)
----------, Jan 24, 2021

This update fixes bugs related to leveler messages and updates a few languages. It is normal to see a lot of warnings in console when updating.

Changes:

  • Fully updated es, fr, and pt-BR messages (version 13)
  • Partially updated de, id, pl, tr, zh-CN, and zh-TW messages to fix format bug (version 9)
Bug Fixes:
  • Fixed level up message format issues on languages that did not have updated message files (every language except en)
  • Fixed doubled level up message when money reward was enabled
  • Fixed Terraform mana ability options not being on abilities_config.yml
Side note, if you want to help translate the plugin into other languages and update translations, do so here: https://crowdin.com/project/aureliumskills
----------, Jan 20, 2021

This update only contains a critical bug fix for Turkish specific systems that made the plugin unusable. If you do not experience this issue, you do not have to update.

Bug Fixes:

  • Fixed file loading issues (console spam) and other potential problems on systems with Turkish as the default language
----------, Jan 19, 2021

Bug Fixes:
  • The custom_model_data tag for the fill item now works
  • Fixed action bar NullPointerException
----------, Jan 18, 2021

This is a massive content update that adds 15 new abilities, 3 new mana abilities, and more ability customization options! Please read the entire changelog. Consider making a donation to support development: https://www.paypal.me/archydev. Report any bugs you find to the Discord immediately! Warning: API Breakages! If you have plugins that use the API, ask them to update them first.

New Features:
  • New abilities_config:
    • Moved ability options from config.yml to new abilities_config.yml file
    • Added 'unlock' option (the skill level the ability unlocks at)
    • Added 'level_up' option (every x levels the ability should level up)
    • Added 'max_level' option to control the maximum allowed ability level (set to 0 for no limit) (skill level limits still apply)
    • Added various specific options for some abilities such as 'enable_message', 'enable_sound', etc.
    • Changing the new options will automatically change the order on menus and level up messages
    • Your existing ability options will be automatically migrated to the new abilities_config.yml file when updating and old options will be deleted
  • Enchanting abilities:
    • XP Convert - Earn 1 Minecraft experience for every certain amount of skill XP you gain.
    • Enchanter - Earn more Enchanting XP.
    • XP Warrior - Mobs you kill have a chance of dropping double experience.
    • Enchanted Strength - Gain Strength for every unique enchantment on the item held.
    • Lucky Table - Items you enchant using the enchantment table have a chance of upgrading the enchantment level by 1 if not max level.
  • Healing abilities:
    • Life Essence - Instant Health potions heal more.
    • Healer - Earn more Healing XP.
    • Life Steal - Heal a percentage of the max HP of hostile mobs and players you kill.
    • Golden Heart - Damage done to your absorption hearts is reduced.
    • Revival - Gain Health and Regeneration stat boosts for 30 seconds after respawning.
  • Forging abilities:
    • Disenchanter - Gain more experience when disenchanting items using a grindstone. (1.14+ only)
    • Forger - Earn more Forging XP.
    • Repairing - Repairing items in an anvil using the raw material the item was made from repairs more durability.
    • Anvil Master - Increases the maximum repair cost of an anvil before it is too expensive. (1.13+ only)
    • Skill Mender - Gaining skill XP has a chance to repair a held item or worn armor piece with the Mending enchantment by 1 durability per 2 skill XP.
  • Terraform mana ability for 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
    • Blocks broken will call BlockBreakEvent so there shouldn't be plugin compatibility issues
  • Charged Shot mana ability for Archery
    • Arrows you shoot will deal more damage based on how far the bow was pulled back, consuming mana in the process.
    • Left click a bow to toggle charged shot mode
    • Damage percent increase is based on the amount of mana consumed, mana is consumed up to the max mana cost
  • Absorption mana ability for Defense
    • Incoming damage will decrease mana by 2x Minecraft damage instead of health for a duration.
    • Mana will not regenerate while Absorption is active.
    • Left click a shield and take damage to activate
    • New sounds and particle effects used
  • Added PlayerLootDropEvent to the api
  • Added custom model data support for menu items:
    • Add key value pair to the 'material' string
    • Ex: 'custom_model_data:5'
    • Only works in 1.14+
  • Added option wisdom.max-mana-per-wisdom
  • Added menu descriptor/message for max mana
  • Added new placeholders (only identifiers shown, use %aureliumskills_[identifier]%)
    • xp_required_formatted_[skill] - Gets the required XP for the next level of a player formatted with suffixes (ex: 5k)
    • xp_required_[skill] - Gets the required XP for the next level of a player as an exact number
    • xp_progress_int_[skill] - Gets the percent progress to the next level rounded to an integer
    • xp_progress_1_[skill] - Gets the percent progress to the next level rounded to 1 decimal place
    • xp_progress_[skill] - Gets the exact percent progress to the next level
    • xp_int_[skill] - Gets the current XP for a player rounded to an integer
    • xp_formatted_[skill] - Gets the current XP for a player formatted with suffixes
    • xp_[skill] - Gets the exact skill XP for a player
    • multiplier - Gets a player's permission XP multiplier rounded up to 2 decimal places (1 = normal, 2 = 2x XP)
    • multiplier_percent - Gets a player's permission XP multiplier as a percent more value rounded to an integer (40 = 40% more XP)
Changes:
  • Stat levels and mana now use double instead of int (decimal support)
    • API BREAKAGE (You must recompile plugins that use mana and stat methods!)
  • The level progression menu now supports unlimited pages
  • Moved api events to a new event package (API BREAKAGE)
  • Changed item/armor modifier and requirement format to a nested NBT compound structure
    • Items with the legacy format will auto convert if held in a player's hand by default (set modifier.auto-convert-from-legacy to false to disable)
    • All item data from this plugin is now stored inside the 'AureliumSkills' root tag
  • Default config.yml changes:
    • 'boss-bar.enabled' is now true
    • 'action-bar.xp' and 'action-bar.maxed' are now false
    • 'strength.use-percent' is now true and 'strength.modifier' has been increased to 0.63 (was 0.05)
    • The 'abilities' and 'mana-abilities' sections have been removed (moved to abilities_config.yml)
  • Wisdom anvil cost reduction now uses a curved percent, similar to Toughness calculations
    • newCost = originalCost * (1 - (-1 * 1.025^(-1 * wisdomLevel * wisdom.anvil-cost-modifier) + 1))
    • newCost is rounded to an integer, must be at least 1
  • Tweaked some messages to reflect stat mechanic changes
  • Updated NBT API version
  • Added items to the default loot table and nerfed some
  • Updated Spigot-API version to 1.16.5
  • Action Bar improvements
    • Added action-bar.ability option and action_bar.ability message for using the action bar instead of chat for ability messages
      • Ability messages include raise/lower tools, activate/worn off mana abilities, bleed, first strike, etc
      • action-bar.ability is true by default
    • Improved idle action bar performance
    • The action bar should no longer interfere with vanilla action bars, these include:
      • Bed messages (monsters nearby, only at night, too far away)
      • Jukebox playing messages
      • Height limit messages (may not work sometimes on older versions)
  • Code cleanup and optimizations
Bug Fixes:
  • Fixed Endurance abilities still working when ability is disabled
  • Fixed Foraging abilities still working when skill is disabled
  • Implemented swim_per_meter source in Endurance
  • Added missing items in Fishing leveler (nautilus shell and bamboo)
  • Fixed inaccurate attack damage percent in the stats menu when use-percent and display-damage-with-health-scaling are true
  • Fixed wisdom.allow-over-max-mana option not working sometimes when set to false
  • Fixed six-sided logs not giving Foraging XP in 1.12
  • Fixed the 'skill setall' command affecting disabled skills
  • Fixed Jungle Log not checking for block replace
  • Fixed Excavation abilities not working when Archery was disabled
----------, Jan 17, 2021

New Features:
  • Added mana commands:
    • /mana (player) - Displays your or another player's current and max mana
      • Displaying self requires 'aureliumskills.mana' permission (true by default)
      • Displaying other requires 'aureliumskills.mana.other' permission (op by default)
    • /mana add [player] [amount] (allowOverMax) (silent) - Adds mana to a player
      • 'aureliumskills.mana.add' permission (op by default)
    • /mana remove [player] [amount] (silent) - Removes mana from a player
      • 'aureliumskills.mana.remove' permission (op by default)
    • /mana set [player] [amount] (allowOverMax) (silent) - Sets the mana of a player
      • 'aureliumskills.mana.set' permission (op by default)
    • Notes:
      • The allowOverMax argument is true by default; however, in order to add/set over max 'wisdom.allow-over-max-mana' must be true in config.yml
      • Mana can never go below 0
Changes:
  • Option 'wisdom.allow-over-max-mana' is now true by default
  • Updated fr, id, tr, es messages
  • Deleted message files included in the plugin will now regenerate on /sk reload
  • Endurance now gives XP every 2 minutes instead of 1
Bug Fixes:
  • Fixed NullPointers with messages by using the English message if the default-language is set to a language with an outdated message file
  • Fixed primary skills word duplicate in stats menu
  • Fixed rare IndexOutOfBoundsException warning with action bar
  • Fixed Endurance not giving XP sometimes
----------, Dec 13, 2020

New Features:
  • Added 'skills resethealth' command that removes Aurelium Skills attribute modifiers from all offline players
    • This command can only be run through console and does not affect online players
    • Useful for uninstalling the plugin without extra health or luck
Bug Fixes:
  • Fixed instant health and damage potions giving an effect with duration
----------, Dec 2, 2020

Bug Fixes:
  • Fixed NoSuchMethodError with lingering potions on versions 1.12-1.13
  • Fixed Speed Mine cooldown being too short
----------, Nov 30, 2020

This update adds tons of new features, content, and fixes many bugs. A lot of time was put into this update so if you enjoy the plugin, consider making a donation: https://www.paypal.me/archydev

New Features:
  • Added Alchemy abilities:
    • Alchemist - Potions you brew have a percent longer duration.
    • Brewer - Earn more Alchemy XP
    • Splasher - Potions you splash gain a longer duration for each player affected.
    • Lingering - Lingering potions naturally decay slower and decay less per affected entity.
    • Wise Effect - Gain Wisdom for every unique active potion effect.
  • Added Sharp Hook Mana Ability for Fishing:
    • Deal damage to a hooked entity when left clicking with a fishing rod
    • Options to display-damage-with-scaling and enable-sound (both true by default)
  • Added Item and Armor Requirements:
    • Require at least a certain skill level to use modifiers on an item/armor
    • New commands for requirements:
      • /sk item requirement add
      • /sk item requirement remove
      • /sk item requirement list
      • /sk item requirement removeall
      • /sk armor requirement add
      • /sk armor requirement remove
      • /sk armor requirement list
      • /sk armor requirement removeall
    • Multiple requirements for different skills can be added on the same item
    • Added new messages for requirement commands and lore
    • Added new permissions for requirement commands (Ex: aureliumskills.item.requirement.add)
    • Added config section for requirements:
      • 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
      • armor:
        • 'prevent-armor-equip' - Whether armor should be unable to be equipped when a player does not meet a requirement
    • Global requirements:
      • Global requirements apply to every item of a specific material
      • Defined in the 'requirements.item.global' and 'requirements.item.global' as lists
      • Format: '- [material] [skill_1]:[level_1] [skill_2]:[level_2] ...'
      • Ex: '- IRON_PICKAXE MINING:10 ENDURANCE:5' <- This would require Mining 10 and Endurance 5 to use ANY iron pickaxe
  • Added new "sources_config.yml":
    • Options in this file will be used instead of the old options in the main config
    • You must migrate your old values to the new file
    • Archery and Fighting sources are now for every mob type
    • Mob types include all mobs up to 1.16
  • Added custom block XP sources:
    • Applicable to Farming, Foraging, Mining, and Excavation
    • Add "custom:" section under the specific skill section in "sources_config.yml"
    • In the custom section, keys are the block name and values are the xp amount
    • Use 1.13+ block names even if in 1.12
    • Example path: sources.mining.custom.sandstone: 4.0
    • Custom blocks are checked for block replace automatically
  • Item modifiers now support the offhand:
    • The same type of stat can have a modifier on both the main hand and offhand
    • The modifier name visible in /sk modifier list has a "-offhand" at the end to denote an offhand modifier
    • All existing item modifiers will work with both hands
    • Added option "modifier.item.enable-off-hand" to enable/disable
  • Added MythicMobs support:
    • Just like custom block XP sources, add the "custom:" section under fighting and archery in "sources_config.yml"
    • Under the section, the keys are the MythicMobs mob internal name and the value is the xp amount
    • Killing a MythicMob that is defined in the sources config will override the default value for that mob type
    • Killing a MythicMob that has not been defined in the sources config will give the default xp for that mob type
  • Added new 'strength.use-percent' option to use a percent increase damage system instead of adding:
    • This option makes the base weapon damage, enchantments, and attack cooldown more important because the percent is applied on the base vanilla damage (with enchantments).
    • In order to show the correct percent on the stats menu, disable 'display-damage-with-health-scaling'
    • Add a percent symbol in the message 'menus.stats_menu.attack_damage' for display
    • It is recommended to increase the 'strength.modifier' if this option is enabled, but do your own testing
  • Added new message languages:
    • IMPORTANT: To use these languages, you MUST add them to the languages list in config.yml!
    • Turkish (tr)
    • Polish (pl)
    • Portuguese, Brazilian (pt-BR)
    • Chinese, Simplified (zh-CN)
    • German (de)
Changes:
  • Updated es, fr, id, and zh-TW messages
  • SkillLoader optimizations
  • Bamboo implemented as a farming source (previously didn't work):
    • Every bamboo above that breaks from physics still gives XP
    • Reduced default XP amount to 0.25
  • Removed now unused skill xp types from "config.yml"
  • Added API methods with UUID parameters for each existing method when possible
  • Individual language files will now only update if the embedded language file for that language has a different file_version
  • Moved messages files to a new messages directory. If the directory does not exist yet, old message files will be moved to the new directory.
  • Mana Ability cooldowns now support decimals
  • Speed Mine will now activate on netherrack, basalt, and blackstone
  • Added spectral arrows, tipped arrows, and tridents as ways to level Archery and now work with the strength stat
Bug Fixes:
  • Fixed NPC null pointers
  • Fixed bug with item modifiers not removing stat modifiers when moving in inventory
  • The screen will now shake less often when applying health modifiers (will only shake if necessary)
  • Disabled skills will no longer display on the stats menu lists of primary and secondary skills
  • Money rewards are now formatted to 2 decimal places
  • Disabled abilities will no longer show up on menus
  • Embedded English messages will now be used when a message is missing in messages_en.yml (fixes NPEs)
  • Fixed encoding issues with updating message files
----------, Nov 29, 2020

New Features:
  • Added 'aureliumskills_rank' and 'aureliumskills_rank_<skill>' placeholders to get a player's leaderboard position
  • Added 'try-detect-client-language' option to disable trying to detect client language on join if player does not have a language set
Changes:
  • Updated NBT API to support 1.16.4
  • Updated spigot-api to 1.16.4
  • Plugin will no longer check for updates until 6 hours after the plugin is released
Bug Fixes:
  • Fixed default-language not working
  • Fixed error when adding large amounts of xp with boss bar enabled
  • Fixed boss bars not going away when gaining xp during a reload
----------, Nov 5, 2020

The long awaited update is finally here!
Make sure to read the full changelog before updating, and read this guide!
A full configuration guide is also on the wiki, along with updated command and permission wikis.
If you enjoy the plugin, consider supporting me by making a donation.

New Features:
  • New Messages System:
    • Each language is now in own separate file, old messages.yml is no longer used
    • Per-player multi language support (/sk lang <language>)
    • Universal color code and newline support
    • ACF, Action Bar, Leveler, prefix, and more messages supported
    • Integrated with new configurable menus
    • Guide to the new system: https://github.com/Archy-X/AureliumSkills/wiki/Messages-Guide
  • Configurable Menus:
    • All menus are now fully customizable in the new menus.yml fil
    • Change any item material, position, display name, and lore format
    • Change menu title, size, and fill item
    • Works with any language, as it is only to determine menu format, message placeholders are replaced with messages defined under the "menus" section of the new messages files
    • Items are used for single items, templates are used for repeating items
  • Mana Abilities:
    • Moved abilities that cost mana separate from regular passive abilities and added new mana abilities
    • Mana Abilities now show separate in menus
    • Mana Abilities unlock at level 7 and level up every 7 levels
    • Using Mana Abilities gives Sorcery XP
    • New Mana Abilities:
      • Replenish (Farming) - Automatically replants crops when harvested
  • New Abilities:
    • Valor (Foraging) - Grants strength while holding an axe
    • Stamina (Mining) - Grants toughness while holding a pickaxe
    • Light Fall (Agility) - Reduces all fall damage by a percentage
    • Jumper (Agility) - Earn more Agility XP
    • Sugar Rush (Agility) - Consumed and splashed speed and jump boost potions last longer
    • Fleeting (Agility) - Gain movement speed when under 20% health
    • Thunder Fall (Agility) - When sneaking during a fall, you have a chance to deal a percentage of the fall damage expected to mobs in a 3 block radius
  • Added options to change skill max levels (UNLIMITED LEVELS!)
  • Added leveler section to config:
    • Enable/disable the level up title, change fade in, stay, and fade out
    • Enable/disable the level up sound, change sound type, category, volume, and pitch
  • Added Boss Bars:
    • Boss Bars can be enabled and configured in the "boss-bar" config section
    • "mode" option 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" is how long the Boss Bar will 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
    • If "round-xp" is enabled, the current xp will be rounded to an integer
    • 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
  • Added "action-bar.round-xp" option to round current xp to an integer
  • Added new placeholders:
    • "aureliumskills_hp_max" - Gets max hp with scaling
    • "aureliumskills_mana_max" - Gets max mana
    • "aureliumskills_hp_percent" - Gets percent hp as integer
    • "aureliumskills_lb_power_<place>" - Gets the entry of the power leaderboard at a specified place formatted as <name> - <value>
    • "aureliumskills_lb_power_<place>_name" - Gets the username at the specified place in the power leaderboard
    • "aureliumskills_lb_power_<place>_value" - Gets the value at the specified place in the power leaderboard
    • "aureliumskills_lb_<skill>_<place>" - Gets the entry of a skill leaderboard at a specified place formatted as <name> - <value>
    • "aureliumskills_lb_<skill>_<place>_name" - Gets the username at the specified place in a skill leaderboard
    • "aureliumskills_lb_<skill>_<place>_value" - Gets the value at the specified place in a skill leaderboard
  • Added bStats
  • Added Stat methods to the API
  • Added Indonesion messages (id)
  • Added Spanish messages (es)
  • Added French messages (fr)
  • Added Chinese Traditional messages (zh-TW)
  • Added consuming golden apples and enchanted golden apples as a Healing XP source
  • Added command support to loot tables:
    • Prefix an entry with "cmd:" with a command right after (no /)
    • Commands will be run through console, use {player} placeholder to replace player username
    • You cannot have both a command and an item in the same entry
  • Added enchantment support for loot table items:
    • Add the "enchantments:" flag after the material name
    • Example: '1 1 ENCHANTED_BOOK enchantments: protection:3' (Without the space between : and p)
    • Generally any format of enchantment name is acceptable (in game names or bukkit names)
    • Multiple enchantments are seperated by a "|", for example: 'enchantments: protection:3|fire_aspect:2' (Also without the space between : and p)
  • Added PlaceholderAPI support for action bar messages
  • Added action-bar options to config:
    • "enabled" - Global action bar control (must be true to have action bar at all)
    • "idle" - Whether the idle action bar should be enabled
    • "xp" - Whether the action bar for gaining xp should be enabled
    • "maxed" - Whether the action bar for gaining xp in a maxed skill should be enabled
    • "update-period" - Same option as before, just moved locations
    • "placeholder-api" - Whether action bar should replace PlaceholderAPI placeholders, given PlacholderAPI is present
  • Added tab completion for modifier names for /sk modifier remove
  • Added "leveler.double-check-delay" option for the level up check speed for large xp gains
  • Added "wisdom.allow-over-max-mana" option for whether current mana retains when wisdom stat decreases lower than current mana
  • Added new leveler messages for mana abilities
Changes:
  • New internal config system
  • Players that have never gained any xp will no longer be saved and will be purged from data.yml file
  • Improved menu and action bar performance using faster String replace method
  • Health is now stored while in a disabled world and is set back when returning
  • The aureliumskills.lang permission is now true by default
  • Removed uncessary config options that have been moved to messages
  • Items dropped from abilities now drop with less speed/distance
  • Improved action bar performance
  • Changed default "modifier.item.check-period" to 3
  • A blank config will no longer be saved on server shutdown if the config was deleted
Bug Fixes:
  • Fixed XpGainEvent calling without permission multipliers
  • Treecapitator will no longer raise a wooden axe if WorldEdit is enabled
  • Fixed extra health not being removed when entering a disabled world
  • Fixed NPE in save command when switching to MySQL without restart
  • Fixed abilities dropping wrong item if using silk touch
  • Rank command no longer shows disabled skills
  • Fixed andesite not giving xp and diorite giving wrong xp on 1.12
  • Farming abilities now drop items from the center of the block (like all other abilities)
  • Fixed Defense XP not giving during PVP if damage is less than 'defense.max'
  • Fixed Forgaging XP not gaining for sideways oriented logs on 1.12
  • Added "health.update-delay" and "health.force-base-health" options to fix some plugin compatibility issues related to world switches
----------, Nov 1, 2020

Note about updates: Unless otherwise specified, your existing config options and messages will stay for all updates and new options/messages are added automatically. You will not lose any config options, messages, or loot tables.

New Features:
  • Added a basic API:
    • AureliumAPI class for static methods related to mana, xp, and skill level
    • XpGainEvent - Called when xp is gained internally (cancelable)
    • SkillLevelUpEvent - Called when a skill levels up (not cancelable)
    • ManaRegenerateEvent - Called when a player's mana regenerates (cancelable)
  • Added wood blocks (six sided logs) to the respective regular log xp source
  • Added /sk rank (/skillrank) command to see rankings
  • Added a ranking item in the level progression menu
  • Added a /sk toggle (/abtoggle) command to toggle your own skills action bar
  • Added a /sk save command to save skill data (async)
  • Added a /sk updateleaderboards command that updates and sorts the leaderboard forcibly (async)
  • New permissions:
    • aureliumskills.abtoggle (default: true)
    • aureliumskills.updateleaderboards (default: op)
    • aureliumskills.save (default: op)
    • aureliumskills.rank (default: true)
Changes:
  • Better and more optimized leaderboards:
    • Added pages for /sk top commands (/sk top <page> or /sk top [skill] <page>)
    • Leaderboard caching and asynchronous periodic leaderboard updating (configurable)
    • Message support for /sk top and /sk rank
    • /skilltop command alias for /sk top
    • Added sorting by XP if level is the same for more precise sorting
  • MySQL data saving is now much more efficient (recommended for large player counts)
  • Data saving to file is now asynchronous
  • Accessing/modifying skill and stat data is now thread safe
  • Mana no longer regenerates for offline players
  • Updated spigot-api version to 1.16.3
  • Mana now regenerates synchronously to support new ManaRegenerateEvent
Bug Fixes:
  • Fixed plugin disabling when loading skill data with an invalid format, added warning
  • Fixed action bar and regeneration not working for all players when a player is in a disabled world
  • Fixed action bar only displaying as white in some versions (requires ProtocolLib)
  • Fixed level progression menu in progress item displaying incorrect xp needed to level up and percent
  • Fixed wisdom description grammar
----------, Sep 22, 2020

New Features:
  • Stat Modifiers:
    • Stat modifiers add levels temporarily to a stat, and can be added/removed in a number of ways
    • Stat modifiers do not persist between restarts and are not stored on file
    • Every stat modifier has a name to identify it, the stat that it applies to, and a value for the amount levels it changes
    • Stat modifiers can be interacted with directly using commands:
      • /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 for 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 for a player.
  • Item Modifiers:
    • Stat modifiers can also be added to items, which will only apply when the item is held in a player's hand
    • Item modifiers behave like regular stat modifiers, they are just attached to a specific item and automatically added/removed
    • Item modifiers persist between restarts and are stored using NBT data on the item
    • Option to automatically add lore that describes the stat modifier
    • Commands:
      • /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:
    • Stat modifiers can also be added to armor, which will only apply when the item is worn
    • Stored exactly like item modifiers
    • Option to automatically add lore that describes the stat modifier
    • Option to block certain materials from adding modifiers when interacting (blocks that don't equip armor when right clicked), most blocks that don't equip armor are already blocked internally, this adds the option to block more
    • Works on skulls and heads too!
    • Commands:
      • /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 armor stat modifiers on the item held.
      • /sk armor modifier removeall - Removes all armor stat modifiers from the item held
  • Added XP multiplier permissions:
    • Use permissions to add XP multipliers for all skills!
    • Format: aureliumskills.multiplier.<mulitply_percent>
    • multiply_percent can be an integer or decimal describing by what percent XP is boosted by
    • For example, "aureliumskills.multiplier.50" is 50% more XP, or 1.5x
    • Multipliers can stack! The value for all multipliers is added together and applied at the same time, so a 50 and 100 multiplier together will yield 150% more XP (2.5x)
    • Multipliers are applied after abilities that increase skill XP
    • Check a player's current multiplier using the command /sk multiplier <player>
  • New permissions (Permission - Default):
    • aureliumskills.modifier.add - op
    • aureliumskills.modifier.remove - op
    • aureliumskills.modifier.list - op
    • aureliumskills.modifier.removeall - op
    • aureliumskills.item.modifier.add - op
    • aureliumskills.item.modifier.remove - op
    • aureliumskills.item.modifier.list - op
    • aureliumskills.item.modifier.removeall - op
    • aureliumskills.armor.modifier.add - op
    • aureliumskills.armor.modifier.remove - op
    • aureliumskills.armor.modifier.list - op
    • aureliumskills.armor.modifier.removeall - op
    • aureliumskills.multipliercommand - op
    • aureliumskills.multiplier - false (Does not do anything on its own, must specify value after)
    • aureliumskills.skills - true (Permission for Skills menu)
    • aureliumskills.stats - true (Permission for Stats menu)
    • aureliumskills.help - true
  • Added a help menu (/sk help)
  • Added damage hologram offset and randomization options
  • Added damage hologram decimal options
Changes:
  • Health will no longer update if there is no change in the amount of health
  • Added messages for modifier commands under the new modifier section
  • Added message for /sk multiplier command
  • Added option "modifier.item.check-period" to change how often held items will be checked (in ticks)
  • Added Drowned to Fighting and Archery common hostile groups
  • Updated Spigot API to 1.16.2
Bug Fixes:
  • Fixed error with empty loot tables
  • Fixed error with loot when both min and max are set to 0 (Now works properly)
  • Fixed aureliumskills.xp.remove mistakenly set to true by default (Now defaults to op)
----------, Sep 13, 2020

New Features:
  • Added MySql database support:
    • "mysql.enabled" must be set to true
    • "host, port, database, username, and password" must be filled out correctly
    • Database must already exist
    • MySql must be enabled at server startup for it to work (restart server to work)
    • Data saves periodically asynchronously based on "data-save-period", and at server shut down
  • Added better and customizable skill level up message
    • Edit "skill-level-up-message" in config, each list item is a line
    • Lines with certain placeholders will only show up if applicable (ex: Line with $secondary_stat_name$')
    • Multiple placeholders available, works with color codes
    • PlaceholderAPI placeholders work
  • Added Vault support for Skill level up money rewards
    • See "skill-money-rewards" to enable and configure
    • Calculation: Amount = level^2 * multiplier + base
    • "$money_amount$ placeholder in skill-level-up-message
  • Added "/sk xp set [player] [skill] [amount]" and "/sk xp remove [player] [skill] [amount]" commands
  • Added command feedback messages for xp commands
  • Added "disable-in-creative-mode" config option to disable skill xp gain in creative mode (false be default)
  • Added "base-mana" and "regeneration.base-mana-regen" options
  • Added options to change what items can apply critical hits ("critical.enabled")
  • Added "damage-holograms-scaling" option to enable/disable whether the damage shown should scale with HP on the action bar
Changes:
  • Combat changes:
    • Reordered and organized how damage is changed on attacks
    • New order, from first to last (Parenthesis indicates PVP only)
      • Strength -> Master Abilities -> First Strike -> Critical -> (Toughness -> Mob Master -> Shielding)
    • Toughness now only protects from entity attacks
    • Reduced base critical multiplier to 1.5 and added "critical.base-multiplier" option to change it
    • Applying bleed when the enemy is already bleeding now adds 2 bleed ticks instead of 3
    • Added new messages for when you start bleeding and when you stop
    • By default, axes, pickaxes, shovels, and hoes can now apply critical hits
    • Balance Changes (Highly recommend changing if updating)
      • Changes only default values, must change manually if updating from older versions and want these values
      • Reduced default strength modifier to 0.05
      • Reduced default toughness modifier to 0.25
      • Reduced regeneration saturated modifier to 0.007
      • Reduced regeneration hunger full modifier to 0.006
      • Reduced regeneration almost full modifier to 0.005
      • Increased default axe-master base and per-level values to 4.0 and 3.0 respectively
      • Reduced default mob-master base and per-level values to 2.0 and 3.0 respectively
      • Reduced default immunity per-level value to 0.4
      • Reduced default crit-damage per-level value to 4.0
  • Lucky Miner no longer works with Silk Touch on ores that don't usually drop in block form
  • Mana now regenerates at 1 mana/second by default if regeneration stat is 0
  • Action bar now displays xp removal with - sign
  • Added a check and warning in the skills menu for if player does not have a skills profile
  • Damage holograms now use the "health.hp-indicator-scaling" for scaling instead of the default of 5 if "damage-hologram-scaling" is set to true
  • Tweaked default excavation loot tables
  • Nerfed default metal-detector and lucky-spades values
Bug Fixes:
  • Bleed ticks now reset on death
  • Fixed bleed not working at high skill levels
  • Fixed obsidian, mycelium, gravel, nether-gold-ore, basalt, and blackstone not being checked for replace
  • Fixed magma-block not giving Mining XP
  • Fixed Shielding not working
  • Fixed holographic damage indicators showing up for non-living entities
  • Fixed master abilities slightly affecting damage when at level 0
  • Fixed health above max health when max health is reduced below health
----------, Aug 25, 2020

New Features:
  • Fighting Abilities:
    • Crit Damage (Increases critical hit damage by _%)
    • Fighter (Earn _% more Fighting XP)
    • Sword Master (Deal _% more damage with swords)
    • First Strike (Deal _% more damage on the first hit)
    • Bleed (_% chance to make the enemy bleed for 3 bleed ticks, dealing _ damage per tick.)
  • Endurance Abilities:
    • Anti Hunger (_% chance to stop hunger loss)
    • Runner (Earn _% more Endurance XP)
    • Golden Heal (Increases regeneration effect health gain by _%)
    • Recovery (Increases natural regeneration when at less than half health by _%)
    • Meal Steal (_% chance to steal 1 hunger point when attacking a player)
  • Added Skill Permissions:
    • 'aureliumskills.<skill>'
    • True by default
    • Players without that skill permission will not be able to level up the skill, access the level progression menu, or use its abilities
  • Added disabled-worlds feature:
    • Disabled worlds block xp gain, stats, action bar, or abilities from applying
  • Added aureliumskills.* permission
  • Added update checker
Changes:
  • Added messages for fighting abilities
  • Added config options for fighting abilities
  • Added custom messages for ability unlock, level up
  • Added new excavation blocks to ability checks
  • Made default messages load from embedded resource and removed hard coded messages
  • Getting custom message will no longer return null if not found
  • Optimized and cleaned up combat ability code
  • Tweaked console load messages (removed color)
  • Removed SmartInvs depend (Can delete from plugins folder, already included in plugin jar)
Bug Fixes:
  • Fixed Your Level custom message not working in stats menu
  • Fixed Agility Leveler not checking for blocked worlds
  • Fixed reload permission typo
  • Fixed potential null pointer with fishing leveler
  • Fixed inaccurate time elapsed displayed when loading ability options
  • Fixed netherite tools not working for mana abilities
  • Code cleanup and optimizations
----------, Aug 16, 2020

New Features:
- Added new XP sources:
  • Mining: netherrack, blackstone, basalt, nether-gold-ore, ancient-debris, end-stone, obsidian
  • Foraging: crimson-stem, warped-stem, nether-wart-block, warped-wart, block
  • Excavation: soul-soil, coarse-dirt, podzol, red-sand
- Added Skill Name Commands that go directly to that skill's level progression menu (can be disabled in config "enable-skill-commands")
Changes:
- Optimized block replace checking metadata adding
Bug Fixes:
- Fixed plugin failing to load if WorldGuard support failed to load
- Potentially fixed piercing arrow crashes?
----------, Aug 11, 2020

New Features:
Defense abilities:
  • Shielding (Decreases damage while sneaking)
  • Defender (Increases Defense XP gain)
  • Mob Master (Decreases damage from mobs)
  • Immunity (Chance to compelely negate an attack)
  • No Debuff (Chance to stop harmful effects from splash potions and fire aspect from being applied)
- Added Sugar Cane as a Farming XP source
- Added all naturally generated terracotta types as mining XP sources (Regular, White, Orange, Yellow, Light Gray, Brown, Red)
- Added players as Archery and Fighting XP Sources
- Added options to disable individual abilities (Disabled abilities will not appear on menus and have no functionality)
- Added option to disable luck double drop
Changes:
- Xp types set to 0 in config no longer send action bar message
- Block replace metadata is now removed the same tick the block is broken
- Added checks to remove block replace metadata from sugar cane indirectly broken
- Added block replace metadata setting to new Xp types
- New Xp types added to config.yml
- Added work in progress framework for better message and gui customization (coming later)
- Added new messages for defense abilities
- Added Zombie Pigman/Zombified Pigman to Archery and Defense Levelers as common-hostile
Bug Fixes:
- Fixed issue where disabling a skill would not disable that skill's abilities
- Fixed bug where Bountiful Harvest and Triple Harvest abilities applying in non-survival gamemodes
- Fixed bug where Agility XP was not rewarded if fall damage before modifiers was greater than player health
- Fixed inconsistent Defense XP gain amounts
- Fixed bug where playes could obtain defense xp when an attack kills them
- Fixed bug where players could obtain defense xp when taking fall damage
- Fixed Lucky Catch duplication glitch
- Fixed Luck double drops activating in areas where player could not break blocks
----------, Aug 8, 2020

New Features:
- Archery Abilities:
- Crit Chance - Increases chance of critical hit (x2 damage)
- Archer - Increase in Archery XP
- Bow Master - Increases damage from bows
- Piercing - Chance for arrows to shoot through mobs
- Stun - Chance to reduce movement speed of enemy by 20% for 2 seconds
- Added holographic damage indicators with HolographicDisplays support
- Disable with "damage-holograms"
- Special colors with critical hits (bows only currently)
- Scaled with hp indicator scaling
- Added options to change command message prefix "prefix-bracket-color" and "prefix-text"
Changes:
- Right Click Ability changes:
- Added mana cost
- Added seperate section mana-abilities in config, can now change mana-cost, mana-cost-per-level, cooldown, and cooldown-per-level
- Added strength modifiers for bow damage (can disable in config)
- Lucky Miner now drops items at the center of the block
- Lucky Miner now only works in survival mode
- Defense XP can no longer be gained while a shield is active
- Added new messages related to abilities
- Added mana regen info in /stats
Bug Fixes:
- Fixed treecapitator description being set to wrong language
- Fixed check-block-replace option in config not working properly
- Fixed NullPointerExceptions related to abilities
- Fixed Netherite tool compatibility with Speed Mine and Treecapitator
----------, Aug 1, 2020

New Features:
- Added PlaceholderAPI support:
- %aureliumskills_power% - Gets the combined level of all of a player's skills
- %aureliumskills_<skillName>% - Gets the skill level for a player
- %aureliumskills_<skillName>_roman% - Gets skill level as roman numerals
- %aureliumskills_<statName>% - Gets the stat level for a player
- %aureliumskills_hp% - Gets current hp with scaling as an integer
- %aureliumskills_hp_1% - Gets current hp with scaling to 1 decimal place
- %aureliumskills_hp_2% - Gets current hp with scaling to 2 decimal places
- %aureliumskills_mana% - Gets current mana
- No ecloud expansion needed, loaded with the plugin automatically
- Added /sk skill reset <player> [skill] - Resets the skill level for all skills or a specific skill
- Added /sk skill setall <player> <level> - Sets all skills to a level
- Added mana regen mechanics
- manaRegened = Stat.REGENERATION * "regeneration.mana-modifier"
- Mana regens once per second
- Fully asynchronous
- Shouldn't really be noticeable because player joins at max mana, and there is no way to lose mana yet
- Added defense.max and defense.min options
Changes:
- "regeneration.custom-regen-mechanics" is now false by default
- Player now joins with max mana if their mana isn't saved (Right after server restart)
- Nerfed default per level values for metal detector and lucky spades abilities
Bug Fixes:
- Fixed incorrect toughness damage reduction info in the stats menu
- Fixed incorrect wisdom xp boost info in the stats menu
- Fixed certain crops not giving farming xp on higher versions
- Fixed exploit with pistons that allowed repeated xp gain from the same block
- Fixed certain messages not formatted correctly in config
----------, Jul 26, 2020

Bug Fixes:
- Fixed plugin loading issues with World Guard on 1.14+
----------, Jul 25, 2020

New Features:
- Added Skill Leaderboards
- /sk top [skill]
- Shows the top 10 players in that skill, leave empty for all skill leaderboard
- Players have to log in to have the username show up
- Currently pretty inefficient, better implementation later
- Permission aureliumskills.top (defaults to true)
- Added new config options to disable block replace checking (all, worlds, regions)
Changes:
- Added ability-levels, skill-leaderboard, all-skills, unknown-skill, config-reloaded, language-set-to, language-not-found, and prefix messages
Bug Fixes:
- Fixed player getting message every time they are damaged by entity
- Fixed skill data loading/saving issues with certain locales
----------, Jul 25, 2020

New Features:
- Added a blocked-worlds option in config, which prevents skill xp gain in certain worlds
Changes:
- Config files should no longer delete unnecessary entries
- Removed RECORD_WAIT from the default loot.yml, this should prevent errors when loading different versions
- Added better error messages for invalid loot.yml entries
Bug Fixes:
- Fixed color codes not working in names and lore in loot tables
- Fixed incorrect drop chance for ability Lucky Spades
----------, Jul 24, 2020

New Features:
- Skill Abilities (Part 1):
- 5 abilities each for Farming, Foraging, Mining, Fishing, and Excavation
- Abilities are leveled along side the skill
- Some abilities are right click to activate
- Some abilities support custom loot tables ("loot.yml)
- Every ability's base value and per-level value can be modified in config
- Added more information in the stats menu /stats
- Added support for WorldGuard 7.0.3 ONLY
Changes:
- Max skill level increased to 97
- Removed the skill tree/skill point system, moved to new ability system
- Skill data now saves periodically
- Custom languages and messages have been moved to separate file ("messages.yml")
- Reworked toughness stat to prevent invincibility at high levels
- Tweaked health stat to use attribute modifiers (should help plugin compatibility)
- Numerous QOL changes
- Numerous new config options/messages

Full Changelog: https://github.com/Archy-X/AureliumSkills/wiki/Alpha-1.1.0-Changelog
----------, Jul 24, 2020

New Features:
- Added configuration for every action that grants Skill XP (change the amount of XP given per action)
- Added options to disable unnecessary skills and disable skill points
- Added Stat configuration, including level modifiers, health scaling options, custom regeneration options and more!
- Added basic Luck Stat implementation
- Increases generic_luck attribute
- Chance to double drop certain basic blocks (dirt, sand, stone)
- Added basic Wisdom Stat implementation
- Increases all experience gained
- Decreases anvil XP costs
- Added Polish translations (by Kaspian#8508 on discord)

Bug Fixes:
- Fixed wheat XP gain on 1.12
- Fixed glowing redstone XP gain on 1.12


Stats Info and Calculations:
https://github.com/Archy-X/AureliumSkills/wiki/Stats-Information-and-Calculations
----------, Jul 10, 2020

New Features:
Multi-Language Support/Custom Messages:
- Define your own languages in the config.yml under the "languages" entry as a list
- Write your own messages in the messages section, making the key the name of the language the same as one of the languages defined in "languages"
- Set the default language that displays for all players under "default-language"
- /sk lang <language> (Sets default language in game (Case-Sensitive))
Configuration Options:
- config.yml now provides many configuration options for the plugin
- /sk reload (Reloads config)
- Enable/disable action bar or parts of the action bar such as health or mana
- Change the colors of the action bar
- Change the skill XP requirements multiplier (Default: 100)
- Change the skill point rewards multiplier (Default: 1.032) (WARNING: Number scales very quickly, keep close to 1)
- Enable/disable roman numerals
----------, Jul 8, 2020

New Features:
Added support for versions 1.13-1.16!

- Plugin now supports all server versions from 1.12.2-1.16.1

Bug Fixes:
- Removed skill tree icon from unimplemented skill level progression menus
----------, Jul 7, 2020

Changed targeted version of SmartInvs to 1.2.7 for easier user download. Plugin still works with SmartInvs 1.3.0.
----------, Jul 5, 2020

Resource Information
Author:
----------
Total Downloads: 575,489
First Release: Jul 5, 2020
Last Update: Dec 15, 2024
Category: ---------------
All-Time Rating:
259 ratings
Find more info at wiki.aurelium.dev...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings