Improvements:
• Minion tick uses a loaded-chunk set (chunk load/unload + world unload) so hot paths avoid repeated deepisChunkLoadedwork when chunks stay loaded
• Hologram LOD: skips sending duplicate “empty” TextDisplay updates when nobody is in range
New features:
• Boost shop in the main/minionsmenu — buy boost tokens with Vault, PlayerPoints, or CoinsEngine
• Apply a boost by right-clicking your minion with the token; duration and effects (work speed, range bonus, fuel pacing) come from each boost entry in config
• Configurable boost entries (e.g. 2× / 3× / 5× work speed) with separate shop lore and applicator item lore
Improvements:
• Minions / shop / skins GUIs: back button to main menu
• Minions can be broken again for pickup; damage is cancelled and the right player is detected
• Fuel: minimum charge limit removed so you can fill up to the max; config migration for that.
• Fisher: requires the correct tool and water (incl. waterlogged blocks); shared water check logic.
• Lumber: 2×2 mega trees replant four saplings
• Admin: copy SQLite minions into MySQL withmigrate sqlite-mysql(optionalreplaceto clear MySQL rows first); short note in main config.
• Worlds that load after the plugin (e.g. extra worlds): minions stay registered; reload/reconnect no longer leaves “ghost” stands with no plugin data; existing stands/holograms are re-used when possible.
• Shop: separate “not enough money” lines for minions vs skins.
•/perfminions reloadreloads minions from the database after reconnecting DB.
Bug fixes:
• Fixed "HikariDataSource has been closed" errors when saving minions during server stop or plugin reload
Bug fixes:
• Lumber minion now places all 4 dark oak saplings in a 2×2 after chopping a dark oak tree (so the tree can grow back)
• Lumber minion now replants pale oak
Bug fixes:
• Lumber minion now places saplings on the bottom log block (air after chop) instead of replacing the ground block
• Fisher minion no longer throws "Missing required parameters: minecraft:tool" – uses custom fish loot (raw cod/salmon/tropical/puffer) instead of vanilla fishing loot table
New features:
• Slayer damage is configurable per level in minions/slayer.yml under upgrades.(level).damage (defaults 4–14 for levels 1–10)
• Max minions per chunk: config option max-minions-per-chunk (0 = unlimited) to reduce lag in dense areas
• Admin backup: /perfminions export all writes all minions to a timestamped CSV in exports/
• Admin restore: /perfminions import all [filename] imports from backup CSV (or latest backup if filename omitted)
Improvements:
• Slayer upgrade GUI lore shows Damage: (current) » (next) when the minion type defines damage per level
• Placeholder (damage/next_damage) in upgrade lore is filled from type config for Slayer; other types show "-" or MAX
Bug fixes:
• Fixed "Must use teleportAsync while in region threading" errors on Folia when using teleport-related commands or features
Technical:
• All player and entity teleports now use teleportAsync and schedule follow-up actions (messages, sounds, cooldowns) on the correct region or global scheduler for full Folia compatibility
Bug fixes
Performance
- Fixed NPEs when linking minions and in GUI config handling
- Fixed database resource leak and async thread usage
- Fixed thread-safety and export file extension
- Added indexes for faster lookups (owner, entity, chest)
- Batched saves and cached water checks and fuel list
- Optimized world unload and log trimming
