I am aware that this is a long changelog, but it is recommended to read everything before updating!
Despite this being a major release (4.0 -> 5.0), there should not be many noticeable changes other than increased stability and consistency in surprises.
Important:
- Minimum required Spigot version has been changed to 1.20.6 and above.
- Minimum required Java version has been changed to 21, which you should already be running when using 1.20.6 or above.
- Lua surprises/scripting surprises have been deprecated and will be removed in either the next update or the update after.
- The API is temporarily unavailable and out-of-date while I rework certain parts of the plugin. It should return in the future.
- Enchantments in your config may have broken by some changes, as Spigot changed the names of enchantments at some point. Make sure your enchantments in the config, especially those of custom surprises, match the enchantments on the list here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/enchantments/Enchantment.html#field-summary
Changed
- Completely reworked how surprises are created and handled inside the code. This change should improve stability, consistency, and will help create new surprises in the future more quickly. It is also the base for some future changes I have planned.
- Made possible due to the rework, all surprises and their configuration values are validated upon plugin start. Misconfigured surprises are skipped and a warning will be printed in the console. In the past, misconfigured surprises would cause errors in the console and do nothing, making it so players didn't get rewards.
Future updates
I am planning on implementing the following features based on this rework:
- More custom surprise features, allowing for more creative custom surprises
- A new way of creating custom surprises through scripting that should be easier, while also being more powerful. It will be powered by this reworked system.
- New and more interesting surprises
Added
- Added automatic error reporting and performance tracking using Sentry. This is enabled by default to assist me in solving errors quickly. You disable it in the settings.yml by setting Settings.Sentry.Enabled to false. It will also send a copy of your SuperLuckyBlock configs by default (except for settings.yml as it may contain database credentials). This behavior can be disabled by setting Settings.Sentry.SendConfigs to false.
Fixed
- Fixed luckyblocks with a URL set as skull owner causing an error on startup.
Fixed
- Fixed an error that would occur on giving a player a luckyblock when your luckyblock's file name was too long and you were using a URL as a SkullOwner.
Added
- Added an option to disable spawing any surprises involving buildings below a certain Y level (-50 by default, automatically enabled by default and after updating). This option has been added to prevent bedrock from being broken by buildings.
Fixed
- Fixed lore not being applied to material/block luckyblocks (non-skull luckyblocks)
Fixed
- Fixed luckyblocks no longer working properly if the player doesn't have permission for any of the luckyblocks, when using multiple luckyblocks. Caused by a small oversight in 4.13.1
Added
- Added player kill and mob kill LuckyAction. A player has a small chance to be awarded a luckyblock when killing a mob or a player (enabled by default!).
Fixed
- Fixed skins from URLs no longer being properly applied (happened on at least on 1.20, not sure if it happened on older version).
Added
- Added fireball rain surprise.
- Added a DisableAllBuiltInSurprises option that is the equivalent of setting all built-in surprise chances to 0.0.
- Added a DisableAllCustomSurprises option that is the equivalent of setting all custom surprise chances to 0.0.
Fixed
- Fixed the default.yml not being updated with new config options.
Added
- Added a Teleport wand which teleports the player to a block they are looking at, as long as it is within the configured range.
Fixed
- Fixed an issue where /slb givewand was not showing wands that were not added as a surprise to at least one luckyblock
- Fixed an issue where the lightning wand would be set on cooldown and have a use consumed if the selected block was out of range for the lightning strike.
Added
- Particles when breaking a LuckyBlock are now centered.
- Added a configurable X, Y, Z offset for the particles that spawn when breaking a LuckyBlock.