2.2
AuraSkills 2.2 Release Notes
AuraSkills 2.2 adds the anti-AFK system for detecting and stopping AFK XP gain and macros. Also added is the entity loot type for catching entities while fishing. Additionally, a breaking API change was made.
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 configThere 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
sectionSpecific checks can be toggled with the
enabled
optionThe
min_count
option is the number of identical XP gain conditions in a row for the player to be blocked from gaining XPThe
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
optionThe
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 caughtVanilla 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 attributeThe
damage
key overrides the entity attack damage attributeThe
level
key can be used to define the AuraMobs or MythicMobs levelThe default vertical and horizontal velocities when caught can be overridden with
velocity.horizontal
andvelocity.vertical
The keys
hand
,off_hand
,feet
,legs
,chest
, andhead
are used to define equipment on the spawned entityThe 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 ofcommand
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
Last updated