- Added powerup magnet (magnet in privatemines/powerups-config.yml): players with its permission claim mine powerups from further away, with optional levels (level + levels) read from a placeholder such as a variable
- Added booster backpack (disabled by default): /boosters backpack stores booster items, activate them from there and sort them by boost, currency, duration or amount; booster items given with /boosters giveitem or picked up go straight into it
- Added /boostersbackpack command (aliases /boostersbp, /boostbp, /boostsbp) to open the booster backpack directly
- Added lucky block backpack (disabled by default, backpack in luckyblocks/config.yml): /luckyblocks backpack (or /lbbp) stores up to 100 lucky blocks that keep charging while you mine like the ones in your inventory; open them, open all charged ones or take them out from the menu, and lucky block auto-open (e.g. EdUpgrades) opens them too; lucky blocks given with /luckyblocks give go straight into it (give-to-backpack) and the player is told to open it with /lbbp
- Added keep-slots-on-restore to autominers.yml so autominer slots (e.g. bought in a store) survive /pinna restore and /pinna restoreall
- Added %pinnaprison_autominer_slots% and %pinnaprison_autominer_slots_max% placeholders
- Changed page arrows in paged menus (mailbox, gangs, milestones, mine members...) to switch page in the open menu instead of re-opening it: no blink, no open sound, only the page items change
- Fixed currencies/masterypoints.yml being recreated on every restart/reload when masteries are disabled in mastery.yml
- Changed currencies, leveling and gang challenge files so deleted ones are no longer recreated: the default files are only generated when their folder (currencies/, leveling/, gangs/challenges/) doesn't exist yet
- Added enabled option to backpacks.yml: when false, /backpack is disabled, the backpack item is removed from players and never given, and mined blocks are sold on the spot
- Fixed typing amounts with huge exponents (like 1e999999999) in commands freezing or crashing the server
- Fixed buying a fraction of a level (e.g. /rankup 0.99) giving free levels, level amounts must now be whole numbers
- Fixed /mine tax accepting NaN, which stopped player data from saving
- Fixed amounts like 1,5k or 2.5k being read as 15k / 25k, commas and dots only count as thousands separators in real thousands positions
- Fixed manual rankups or rebirths at the same moment as automatic ones granting levels, rebirths and rewards twice
- Fixed decimal numbers in placeholders showing a comma on Spanish/German servers, which made GUI requirements compare them wrongly
- Fixed GUI requirements not understanding amounts with suffixes (1.5k) or decimal commas
- Fixed active mine bosses disappearing on server restart
- Fixed mines failing to load when their stored upgrade tier was renamed or removed, players are moved to the first tier instead
- Fixed autominers mining an invisible old mine after /pinna restore
- Fixed autominers still running after being disabled with a reload
- Fixed Speed/Haste enchant effects staying on players forever after disabling the enchant and reloading, or unloading the plugin
- Fixed proc-blocks enchants sometimes activating twice when mining and an AFK block/autominer broke blocks at the same time
- Fixed custom enchants with large zero-delay loops crashing with a StackOverflowError
- Changed '*' in gang role-permissions so it no longer grants transfer and disband, list them by name to give them to a role
- Fixed adding or reordering milestones letting players claim rewards again, claims are now saved per milestone and existing claims are migrated automatically
- Fixed EdPerks perk boosters staying on players after a restart when the perk was removed
- Fixed right-clicking armor swapping off the locked armor set and deleting the player's own armor
- Fixed the armor set being re-equipped outside the mines after respawning in another world, and saved armor not being returned
- Fixed saved armor being lost if the server crashed while a player was in the mines
- Fixed enabling armors with only-in-mine: false deleting players' worn armor, it now goes to the inventory or mailbox
- Fixed the pickaxe being lost on death, in item frames or on armor stands when allow-drop is false
- Fixed /pinna givepickaxe and the first-join pickaxe deleting the item in the pickaxe slot or giving a second pickaxe
- Fixed progress being lost when a player reconnected quickly after a crash or timeout
- Fixed offline balance lookups and payments (Vault, auctions, coinflip) keeping players in memory, slowing their next login and sometimes losing an offline payment
- Fixed personal boosters losing time while the player was offline
- Added optional multiplier and time arguments to /boosters giveitem (/boosters giveitem <player> <item-id> [amount] [multiplier] [time-in-sec]), with {multiplier}, {factor} and {duration} placeholders for the booster item name and lore
- Fixed running global boosters not showing in the /boosters menu lists, they now show with a Global tag (gui-global-booster-name in boosters.yml)
- Added gui-plain-booster-names to boosters.yml: removes each source's own colours from the /boosters lists so boosters, global boosters, addon boosts, gang upgrades and enchant multipliers all share one format
- Added gui-booster-time-suffix and gui-booster-blocks-suffix to boosters.yml to change the time / blocks left shown after a booster in the /boosters lists
- Added charge tokens ({blocks}, {required}, {percent}, {ready}, {bar}) and [if] lines to the lucky block backpack entry-lore, and drop-item-lore-lines to hide the lucky block's own right-click hint in the backpack (right click takes it out there)
- Added affect-gemgreed to bombs.yml: bombs can pay the Gem Greed enchant bonus per broken block like they already do with Token Greed
- Added {enchant} to hide-maxed-material in config.yml so every maxed enchant can show its own icon (e.g. its icon with a MAX badge) instead of one barrier
- Fixed a mine powerup hologram (without its model) getting stuck outside the mine when leaving the mine just as the powerup spawned
- Added affect-instant-currencies to bombs.yml and the break API (addons like PinnaTridents): instant currencies like beacons are paid once per block really broken by default instead of being multiplied by affect-autosell
- Added Low Boost and Low Chance modes to the crystals menu sort button (boost-low, chance-low in crystals.yml), and players start on the first sort mode when default is not in the list
- Added POP animation for AFK block proc holograms (default): they pop out to different sides of the block, float and shrink away, so procs no longer overlap; animation: RISE keeps the old one
- Added shift-right-click-gui to pickaxe/config.yml to open a different menu (e.g. EdUpgrades) when shift + right clicking the pickaxe
- Added disable-hunger to privatemines/config.yml: players' food bar stays full inside the mines world
- Added mining-threads to config.yml performance: manual mining (rewards, enchant procs, mine resets) runs on its own threads so heavy enchants can't lag other players' connections
- Added gui-click-cooldown-ms to config.yml performance (150 ms by default) so spam-clicking plugin menus can't flood the server
Modified files: config.yml pickaxe/config.yml privatemines/config.yml crystals.yml autominers.yml backpacks.yml bombs.yml boosters.yml messages.yml guis/boosters.yml guis/booster-backpack.yml (new) guis/luckyblock-backpack.yml (new) luckyblocks/config.yml privatemines/powerups-config.yml gangs/config.yml afk-block.yml