SuperLuckyBlock | The MOST CUSTOMIZABLE LuckyBlock Plugin | CUSTOM Surprises | Wands | 1.16 - 1.21.x icon

SuperLuckyBlock | The MOST CUSTOMIZABLE LuckyBlock Plugin | CUSTOM Surprises | Wands | 1.16 - 1.21.x -----

Create your own CUSTOM surprises, lucky blocks, wands, and more with SuperLuckyBlock!




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.
----------, Oct 5, 2024

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.
----------, Aug 31, 2024

Fixed
- Fixed a rare error that could happen when saving the "block broken" placeholder statistics to the SQLite database.
----------, Aug 11, 2024

- Fixed several performance issues with LuckyMining
----------, Jun 19, 2024

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.
----------, Apr 15, 2024

Fixed
- Fixed lore not being applied to material/block luckyblocks (non-skull luckyblocks)
----------, Jan 14, 2024

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
----------, Jan 2, 2024

Fixed
- Fixed an issue where the permission option did not work in any OpenMode that is not break. So it did not work when using click on placed and click in hand mode.
----------, Jan 2, 2024

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).
----------, Nov 11, 2023

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.
----------, Oct 7, 2023

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.
----------, Jun 21, 2023

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.
----------, Jun 10, 2023

Fixed
- Fixed an error on shutdown
- Fixed the placeholder sometimes not returning a number but a string
- Improved performance
----------, Jun 2, 2023

Changed
- SuperLuckyBlock now requires Java 17 or higher. This shouldn't affect most people as, according to BStats, only 9% of the servers use an incompatible version. If your server is still on an older version, please ask your hosting service to update.
- Some code refactoring.
- Updated the enchantment version compatibility layer.


Fixed
- Fixed resources/files not being closed after creating the default config files
----------, Apr 2, 2023

Fixed
- Fixed an error that would sometimes occur on startup
----------, Mar 7, 2023

Fixed
- Fixed the anvil not falling down in the AnvilTrap surprise
- Fixed the cooldown message spamming when holding left/right click when a wand is on cooldown
----------, Mar 5, 2023

Fixed
- Fixed the sign surprise on MC version 1.16 and higher.

Removed

- Removed support for any Minecraft version below 1.16. This is so I can implement new surprises and spend less time on mainting backwards support. Versions between 1.13 and 1.16 are also barely used by any servers.
----------, Aug 7, 2022

Added
- 1.19 is now supported.

Fixed
- Fixed an issue where wands could be duplicated when used in the offhand.
- Fixed an error with custom surprises.
----------, Jun 19, 2022

Fixed
- Fixed an error with the new LuckyMining timeout system.
----------, Feb 7, 2022

Changed
- Multiple performance improvements.

Fixed
- Fixed an issue where in some cases the plugin would be unable to start.
----------, Jan 18, 2022

Added
- Added a timeout feature to LuckyMining. This allows you to limit a player to, for example, receive only one luckyblock per 30 seconds while mining.
----------, Jan 15, 2022

Fixed
- Fixed an error when shutting down the server.
----------, Jan 2, 2022

Minecraft 1.18 is support by any 4.x version of SuperLuckyBlock. No updates required!
Added
- Added support for lore to Custom Item Surprises.
----------, Dec 10, 2021

Added
- Added the LuckyblockBreakEvent to the developer API.
----------, Nov 21, 2021

Fixed
- Fixed the built-in building surprises not working due to corrupt schematic files included with the plugin.
----------, Nov 19, 2021

Added
- Added obsidian cage surprise

Changed
- Support for 1.12 has been dropped, as announced a few months ago. This resulted in a bit of a cleanup and the removal of the XSeries dependency. This change was needed to make sure the plugin stays maintainable, as differences between 1.12 and 1.13 are huge and required a lot of "hacky" workarounds.
----------, Oct 25, 2021

Changed
  • Completely reworked how the /slb debug command works:
  • Debug reports are no longer uploaded to pastebin, but will instead be stored on my own server.
  • Debug reports are now encrypted locally before being uploaded. Only I will be able to decrypt and view them. This is just an extra security measure.
  • If uploading fails, the report will now be saved locally.
  • The command no longer gives you a pastebin link, but gives you a debug token instead.
These changed make it so you can more easily share debug reports with me, without letting anyone else look into your report.
----------, Oct 9, 2021

NOTE: Scripting is disabled by default! You will have to enable the feature in the settings.yml. Please only run scripts from which you fully know what they are doing!

About

This update adds support for the use of Lua scripts as custom surprises. This allows you to make custom surprises without the limitations of the configuration file (which only allows you to drop items, spawn entities, etc.). Lua scripts can freely access Java and Spigot methods, giving you way more options than your normal custom surprise.

I intended to add JavaScript support, but support for this was removed in newer Java versions. Adding support for JavaScript became a lot more complicated. I will be looking into adding support for JavaScript or other scripting languages in the future.

Sandbox
By default, all Lua scripts are considered untrusted, which means it will run in a sandbox. In this sandbox, the script only has access to a select few methods that I consider safe to use. When a script is marked as trusted in settings.yml, the script gets access to all Java and Spigot methods. This allows you to create any surprise you want!
If there are any methods that are not available in the sandbox, please contact me and I will look into making them available.

Using the script in a surprise
After you have created a script, you will have to add it to a luckyblock. You can do that like this:
default.yml
Code (YAML):

CustomSurprises
:
  Example
:
    Name
: Example
    Chance
: 100.0
    Permission
:
      Enabled
: false
    Commands
:
      Enabled
: false
    Items
:
      Enabled
: false
    Entities
:
      Enabled
: false
    Building
:
      Enabled
: false
    Blocks
:
      Enabled
: false
    Messages
:
      Enabled
: false
    Script
:
      Enabled
: true
      Script
: "example.lua"
 
Examples
When you enable scripting in the settings.yml file, and you restart the server, a new folder named "scripts" will be created. This folder contains 2 example scripts, showing you how everything works. They also contain a bunch of information at the top of the file. You can also find these examples below.

Untrusted Script Example(example.lua)
Code (Text):
--[[
Example script that can run untrusted.

The following variables are available to lua scripts. All of these variables are exact copies of their Java classes from Spigot:
- player - The player that broke the luckyblock. Documentation: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html
- loc - The location of the broken luckyblock. Documentation: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Location.html
- world - The world the luckyblock was broken in. Documentation: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/World.html
- scheduler - The bukkit scheduler which can be used to, for example, delay tasks: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/scheduler/BukkitRunnable.html
- All material enum values are available as global variables, prefixed with MATERIAL_. (For example, you can use MATERIAL_IRON_BOOTS to use the IRON_BOOTS Material). Materials: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Material.html
- All effect enum values are available as global variables, prefixed with EFFECT_. Usage is the same as the material values. Effects: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Effect.html
- All sound enum values are available as global variables, prefixed with SOUND_. Usage is the same as the material values. Sounds: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Sound.html
- All enchantment values are available as global variables, prefixed with ENCHANTMENT_. Usage is the same as the material values. Enchantments: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/enchantments/Enchantment.html

SuperLuckyBlock also provides a utils class, which allows you to do the following things:
- utils:createItemStack(material, amount) - Allows you to create a new ItemStack. Docs: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/inventory/ItemStack.html
- utils:colorText(text) - Converts values like &3 to their respective colors.
- utils:createEnchantment(name) - Creates an Enchantment object with the specified enchantment. Enchantments: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/enchantments/Enchantment.html

Methods on these variables can be called in 2 ways:
- player:setFireTicks(100)
- player.setFireTicks(player, 100)

As you can see, calling a method with a dot requires you to pass the variable(in this case player) alongside the other arguments. You don't have to do that when using the semicolon.

If you are missing access to any classes/methods, feel free to contact me and I will look into adding support for it.
]]

local name = player:getName()

if string.find(name, "i") ~= nil then
    local itemStack = utils:createItemStack(MATERIAL_DIAMOND_SWORD, 1)
    local itemMeta = itemStack:getItemMeta()

    itemMeta:setDisplayName(utils:colorText("&2&lSome &3&lRandom &4&lSword"))
    itemMeta:addEnchant(utils:createEnchantment("KNOCKBACK"), math.random(1, 10), true)
    itemStack:setItemMeta(itemMeta)
    world:dropItemNaturally(loc, itemStack)
else
    local fireTicks = math.random(100, 500)

    player:setFireTicks(fireTicks)
    player:chat("I'm on fire for " .. fireTicks .. " ticks!")
end
 
Trusted Script Example(example_trusted.lua)
Code (Text):
--[[
Example script that can only be ran in trusted mode.

The same methods as specified in example.lua are available in trusted mode. In addition to that, scripts that run in trusted mode have access to the following features:
- All Java and Spigot classes (Luajava library)
- Any file reading or writing
- The IO library
- The OS library
- Loading other scripts
- Creating coroutines

Luajava provides two important functions that make trusted mode so powerful, but also dangerous:
- luajava.bindClass("fully.qualified.class.name") - Example: luajava.bindClass("org.bukkit.Bukkit"). Allows you to call static methods, access static fields and enum values
- luajava.newInstance("fully.qualified.class.name") - Example luajava.newInstance("org.bukkit.inventory.ItemStack"). Creates a new instance of the specified class. Allows the methods of that class to be used.
]]

local bukkit = luajava.bindClass("org.bukkit.Bukkit")
local server = bukkit:getServer()
local itemstack = luajava.newInstance("org.bukkit.inventory.ItemStack", MATERIAL_DIAMOND_BLOCK, 4)

player:chat("Hello! Welcome to " .. server:getName())
world:dropItemNaturally(player:getLocation(), itemstack)
----------, Oct 2, 2021

Changed
- Changed event priorities from HIGHEST to HIGH for listeners related to luckyblocks. This should fix some incompatibilities with plugins, mainly a duplication exploit with ExcellentEnchants.
----------, Sep 13, 2021

Changed
- Updated XSeries/XMaterials to 8.4.0. This fixes multiple issues on 1.12
----------, Sep 1, 2021

Added
- Added an option to the built-in building/schematic surprises to ignore air when placing the building. This may help with buildings getting destroyed.

Changed
- Updated XMaterial to 8.2.0
----------, Jul 15, 2021

As promised I would release one update for 1.8, so that servers running 1.8 don't have to stay on the 3.x codebase. This will be the only update for 1.8.
----------, Jul 15, 2021

NOTE: 1.12 is still supported, despite me saying that the previous version would be the last one. Support will be removed in a future version.

Changed
- Improved performance, especially on bigger servers.
----------, Jul 6, 2021

Important: This will most likely be the last version to support 1.12, unless more bugs get reported.

Added

- Added an option to change the duration of how long data for the LuckyMining abuse protection will be saved. Settings this to -1 will save it until the server restarts.

Changed
- Changed the config for LuckyMining abuse protection a bit. Your old settings for this feature will be reset.
- LuckyMining abuse protection now only saves blocks that are used for LuckyMining

Fixed

- Fixed an error with the sign surprise.
----------, Jun 12, 2021

After some testing, it appears that everything works on 1.17 without an update.

I do want to note that support for 1.12 will be dropped after I fix a few of the bugs that were reported over the last few weeks. Maintaining the plugin for six Minecraft versions is just too difficult to do. Also, according to BStats, Minecraft 1.12 is only used by 8.8% of the servers.
----------, Jun 11, 2021

Fixed
- Fixed a seemingly random issue where a luckyblock that had a URL as SkullOwner would not work after a server restart.
----------, Jun 1, 2021

Added
- Added protection against players abusing LuckyMining by breaking and then placing the block again. This feature is enabled by default.
- Added a broadcast when a player breaks a luckyblock.
- Added a broadcast when a player finds a luckyblock while mining.

Removed
- Removed leftover debug messages.
----------, May 23, 2021

Fixed
- Temporarily disabled worldedit related features for servers that run on 1.12 and use FastAsyncWorldEdit. It seems like there are some issues there that I have not been able to figure out.
- Fixed sign surprise on 1.12.
----------, May 6, 2021

Fixed
- Fixed an issue where the guardians surprise would spawn ghasts instead of guardians.
----------, Apr 21, 2021

Changed
- Updated XMaterials for bug fixes and potential performance improvements on 1.12.
- Removed left over experimental version warning.

Fixed
- Fixed multiple performance issues related to wands and luckyblocks, some of which could cause a lot of lag on bigger servers. Updating is recommended!
----------, Apr 18, 2021

Fixed
- Fixed an issue where a player could infinitely open luckyblocks by holding luckyblocks in their offhand while using clickhand mode.
----------, Mar 31, 2021

Fixed
- Fixed minerals surprise.
- Fixed messages not working for custom surprises.
- Fixed an issue where a block below the player would break on opening a luckyblock with clickhand mode.
----------, Mar 20, 2021

4.0.0 has officially been released! This means that support for version 3.x will be immediately dropped. I intended to add more surprises, but I did not have enough time, so expect some more soon.

Upgrading from 3.x to 4.0.0
Config files from 3.x are NOT compatible. You can find instructions on how to convert you config files from 3.x to 4.0.0 here: https://wiki.sickskillz.org/installation#upgrading-from-3x

Wiki
There is a work in progress wiki with some information on getting started and the default configuration files. You can find it here: https://wiki.sickskillz.org/

Changes since 4.0.0-RC3

- Added messages to /slb convert and /slb reload.
- Made /slb shop a bit more configurable. Expect more options in the future.
- Added minerals surprise.
- Removed sentry

Changes since 3.x

- The plugin has been written with multiple luckyblocks in mind in contrast to the current stable version. This means that most features can now be used for each luckyblock instead of only on the default one(like luckymining).
- The plugin should be more stable and I can add new features more easily.
- LuckyMining can now be enabled/disabled individually for each custom luckyblock.
- CustomSurprises are now as common as normal surprises. Before they would be really rare due to how they worked internally.
- Blocks can now have separate LuckyMining chances(for example stone has a 1% chance to reward a luckyblock, diamond ore has a 5% chance).
- Every single message is now configurable.
- There are currently only 10 built-in surprises. I plan to add more in the next few alpha versions.
- More settings for built-in surprises.
- Increased performance.
- More stable WorldEdit implementation.
- All surprises have been reworked. Not all surprises from 3.x are available in 4.0.0. These will be added in later updates.
- Added multiple new features to custom surprises.
- Reworked Wands
- Added the option to make Custom Wands
- Replaced the buy/sell sign with a Shop GUI (/slb shop)
- Added storage of player statistics(blocks broken) using SQLite or MySQL (required for PlaceholderAPI).
- Added an API that can be used by developers. There currently is no wiki and there are no examples, but all method have been documented with Javadoc comments. You can find it + install instructions here: https://github.com/SickSkillz/SuperLuckyAPI
- Added support for animations on break. Currently only possible using the developer API.
- Probably some more changes I forgot.
----------, Mar 7, 2021

Fixed
- Fixed multiple errors with surprises that required WorldEdit.
----------, Feb 25, 2021

Added
- Added a message to LuckyMining(I don't know why this was missing).

Changed
- Added a fallback on 1.13 or above when 1.12 material names are used. It will now convert these material names to the correct name for your version.
- Updated XMaterial.

Fixed
- Fixed a few issues with the new random number option.
- Fixed a few issues with the newly added surprises on 1.12.
----------, Feb 20, 2021

This will most likely be the last release before I fully release 4.0(if everything goes well). Although I haven't been able to add as many surprises as I wanted, but I feel like it is time to fully release 4.0.

Added

- Added the option to use a permission for LuckyMining
- Added the possibility to use random values in the config by typing "random:min:max" anywhere where a number is used (min being the minimum value, max being the maximum value. For example. Amount: "random:1:64").
- Added Bob the Zombie surprise.
- Added EXP Bottle Rain surprise.
- Added Sign surprise.
- Added Minecart and Rails surprise.
- Added Netherstar surprise.
- Added Obsidian surprise.
- Added Knockback Stick surprise.
----------, Feb 14, 2021

Removed
- Removed the dependency downloader. Everything is included in the jar now(also the reason for the size increase).

Fixed

- Fixed some issues with certain users getting ClassDefNotFound errors when the plugin tried to load dependencies.
----------, Feb 2, 2021

Fixed
- Fixed an error with the blaze wand when more than one luckyblock was used.
- Fixed an issue where the plugin wouldn't work when the server was not using PaperSpigot.
----------, Jan 25, 2021

Fixed
- Sentry is now included in the jar. This should hopefully prevent conflicts with certain other plugins.
- [ SUPERLUCKYBLOCK-3M] Fixed Enderchest surprise.
- [ SUPERLUCKYBLOCK-3N] Fixed guardians surprise.
----------, Jan 8, 2021

Fixed
- [ SUPERLUCKYBLOCK-3F] Fixed Giant Magma Cube surprise not working.
----------, Jan 6, 2021

Added
- Added enderchest surprise.
- Added guardians surprise.
- Added giant slime surprise.
- Added giant magma slime surprise.
- Added lightning creeper surprise.
- Added giant zombie surpise.
- Added lucky helmet surprise.
- Added lucky chestplate surprise.
- Added lucky leggings surprise.
- Added lucky boots surprise.

Fixed
- Fixed multiple issues with materials on 1.12.
----------, Jan 5, 2021

Fixed
- Fixed an error on luckyblock break when no animation was installed. Players would not get rewarded because of this.
----------, Dec 28, 2020

Added
- Added an API that can be used by developers. There currently is no wiki and there are no examples, but all method have been documented with Javadoc comments. You can find it + install instructions here: https://github.com/SickSkillz/SuperLuckyAPI
- Added support for animations on break. Currently only possible using the developer API.

Changed
- Refactored some things.
----------, Dec 25, 2020

Please consider voting on the following poll: https://www.strawpoll.me/42293517

I am thinking about making it possible to use scripts(like Javascript files or Lua files) for custom surprises to give you more control over what you want to happen. These scripts could also be shared with other users in the discord. These scripts would be able to interact with parts of the Bukkit/Spigot API or the (upcoming) SuperLuckyBlock API.

Added

- Added Enderdragon surprise.
- Added Enderpearls surprise.
- Added Enderman surprise.
- Added Flying TNT surprise.
- Added Flying Skeletons surprise.
- Added Flying EXP Bottle surprise.
- Added Slimehouse surprise.
- Added Lava trap surprise.
- Added Anvil trap surprise.
- Added Luckychest surprise.

Fixed
- [ SUPERLUCKYBLOCK-17] Any CustomSurprise section(Like entities, items etc.) is now optional and can safely be deleted from the config, without the plugin throwing NullPointerExceptions.
----------, Dec 17, 2020

NOTE: I recommend everyone to update to Beta ( even when on stable!) unless you heavily rely on built-in (non-custom) surprises. I consider the beta to be way more stable than the stable branch (ironically) and beta currently has even more features than beta. The only things missing are a lot of built-in surprises(only 40 or so).

Beta plans
I don't expect the beta phase to last long as it seems pretty stable. The only feature additions that will be done are adding new surprises, wands and LuckyActions. After that 4.0 will be released as stable and support for 3.0 will be dropped immediately.

Upgrading from 3.0
1. Stop your server (DO NOT reload or use plugman!).
2. Fully back up the /plugins/SuperLuckyBlock folder and keep it somewhere safe.
3. Remove the /plugins/SuperLuckyBlock folder.
4. Replace the old stable jar with the new beta jar.
5. Start your server and wait for it to fully boot.
6. Create a folder in /plugins/SuperLuckyBlock called convert. (Full path will be /plugins/SuperLuckyBlock/convert).
7. Put the old config you just backed up into the convert folder.
8. Run /slb convert via the console. (This will currently not send a message telling you the conversion is done, but it should be done almost instantly.)
9. Go over all config files in /plugins/SuperLuckyBlock and /plugins/SuperLuckyBlock/luckyblocks and see if everything converted correctly. If not, please try again or contact me.
10. You can now safely delete the convert folder you just created.
11. Change settings if you wish.
12 Restart your server (DO NOT reload or use plugman!).

Added

- Added storage of player statistics using SQLite or MySQL (required for PlaceholderAPI)
- Added PlaceholderAPI support.
- Added %superluckyblock_blocks_broken% placeholder which displays the amount of luckyblocks a player broke.

Changed

- Updated Sentry to 3.2.0. This may fix a few compatibility issues with other plugins using Sentry.
----------, Dec 8, 2020

Added
- Instead of the signs in 3.x, I decided to go with a buy and sell menu that can be accessed by executing /slb shop (luckyblock). Currently the menu isn't configurable as I may change it in the future.
- Added vault support for economy related features.
- You can now fully customize /slb help in messages.yml.

Changed
- /slb help now only displays commands the user has permission to use.
----------, Nov 21, 2020

From now on support will only be provided via my new discord server or via PMs. You can join the discord server here: https://discord.gg/MW9EFbe

Jira Servicedesk will no longer be used as it didn't work as well as I had hoped.
----------, Aug 30, 2020

Version 4.0.0-ALPHA-5
Added

- Added the /slb reload command.
- Added experimental 1.12 support.

Fixed
- [ SUPERLUCKYBLOCK-H] Fixed a NullPointerException when mode has been set to click.
- [ SUPERLUCKYBLOCK-K] Fixed a NullPointerException in CustomSurprises.
- [ SUPERLUCKYBLOCK-N] Fixed a rare NullPointerException when a luckyblock was broken.

Version 3.6.4
Fixed

- Removed some left over debug messages.
----------, Aug 23, 2020

Added
- Added the /slb reload command. This command will also be added to Alpha version in the next update.
----------, Aug 16, 2020

Added
- Added an option to disable error reporting to sentry.
- Added multiple new features to custom surprises. Please see the example at the bottom of this update for more info.

Changed
- Completely reworked the CustomSurprise configuration so more features can be added. You may have to either regenerate all luckyblock configs or update the customsurprises manually. See the example at the bottom of this update for some documentation on the changes. I am working on writing a wiki about customsurprises as creating them may be a bit confusing.

Fixed
- Fixed an issue where sentry caught exceptions thrown by other plugins.

Code (YAML):
# You can create an unlimited amount of custom surprises. See the examples below for information on how to do this.
CustomSurprises
:
  Example
:
    # Name used in broadcasts, titles, actionbars etc.
    Name
: "Example"
    # Set to 0.0 to completely disable a surprise.
    Chance
: 0.0
    Permission
:
      # When enabled, only players with the specified permission will be able to get this surprise.
      Enabled
: false
      Permission
: "superluckyblock.custom.permission"
    # Commands that will be executed. DO NOT include the slash(/).
    Commands
:
      Enabled
: true
      Commands
:
       - 'give %player% minecraft:dirt 2'
        - 'give %player% minecraft:cobblestone 4'
    # Items that will be dropped by this surprise.
    Items
:
      Enabled
: true
      # Each surprise can have an unlimited amount of items. Make sure to follow the examples below.
      Items
:
        EmptyBucket
:
          # Valid material names: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
          Material
: "BUCKET"
          # The amount of times this item will be dropped.
          Amount
: 3
          # Set to "none" to disable.
          DisplayName
: "none"
          # Enchantments that will be applied to the item. There are no enchantment level restrictions.
          Enchantments
:
            Enabled
: false
            # The enchantment name is the vanilla name, all in lowercase and spaces replace by a _. Example: sweeping_edge:2
            Enchantments
:
             - "ENCHANTMENT:level"
        Coal
:
          Material
: "COAL"
          Amount
: 1
          # Set to "none" to disable.
          DisplayName
: "&4&lSpecial Coal"
          Enchantments
:
            Enabled
: true
            Enchantments
:
             - "sharpness:2"
              - "unbreaking:1"
    # Entities that will be spawned by this surprise.
    Entities
:
      Enabled
: true
      # Each surprise can have an unlimited amount of entities. Make sure to follow the examples below.
      Entities
:
        Pig
:
          # Valid entity names: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EntityType.html
          Entity
: "PIG"
          # The amount of times this entity will be spawned.
          Amount
: 1
          # Set to "none" to disable.
          Name
: "none"
          # Potion effects that will be applied to the entity after it has been spawned.
          PotionEffects
:
            Enabled
: false
            # Valid potion types: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/potion/PotionEffectType.html
            # Duration is the effect duration in seconds.
            PotionEffects
:
             - "POTION_TYPE:level:duration"
        InvisibleSheep
:
          Entity
: "SHEEP"
          Amount
: 3
          Name
: "Invisible Sheep"
          PotionEffects
:
            Enabled
: true
            PotionEffects
:
             - "INVISIBILITY:1:60"
    # Pastes a schematic. This feature will only work if WorldEdit is installed.
    Building
:
      Enabled
: false
      # Name of the schematic that should be spawned
      Schematic
: example.schem
      # When true, air blocks will not be pasted.
      IgnoreAir
: false
      # Values:
      # player - paste the center of the schematic at the player's location
      # block - paste the center of the  schematic at the luckyblock's location
      Location
: block
    Blocks
:
      Enabled
: true
      # The height the blocks will fall from. Make sure that this is higher than the amount of blocks specified in FallingBlocks.
      FallHeight
: 15
      # The delay in ticks before the next falling block in the list will spawn. Should be at least one.
      # 20 ticks = 1 second
      FallDelay
: 10
      # The block at the top will be the first to fall.
      # Valid material names: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
      FallingBlocks
:
       - "IRON_BLOCK"
        - "GOLD_BLOCK"
        - "EMERALD_BLOCK"
        - "DIAMOND_BLOCK"
    # Message that will be sent to the player. Completely remove if you don't want this in your surprise.
    Messages
:
      Enabled
: true
      Messages
:
       - "Enjoy the test surprise!"
        - "&aYou can even send multiple messages!"
----------, Aug 7, 2020

Version 4.0.0-ALPHA-3
Added
- Added sentry for automatic error reporting. This will help me fix issues faster.
- Added an update checker.

Version 3.6.2
Changed
- Updated XSeries to the latest version. This should improve performance and fix some issues as some performance improvements have been added in v7.
----------, Aug 1, 2020

Version 3.6.1
Fixed

- Fixed an issue where DontAllowCreative doesn't work when OpenOnRightClick was enabled.

Version 4.0.0-ALPHA-2
Added

- Added a new open mode: click on a placed luckyblock. When this mode has been selected, the luckyblock will open when a player clicks on it.
- Added a new open mode: click while holding a luckyblock in hand. When this mode has been selected, the luckyblock will open when a left or right clicks while holding a luckyblock in their hand.
- Added options to block users in creative mode from getting rewards from and duplicating luckyblocks.
- Added an option to disallow players in creative from getting luckyblock rewards while mining.
- Added tab complete for all commands, including command arguments.
- Added 10 new surprises.

Fixed
- Fixed LavaHole surprise throwing an error when WorldEdit wasn't installed. The surprise will now be disabled when WorldEdit isn't installed.
- Fixed an issue where having more than one luckyblock would prevent the plugin from starting
----------, Jul 8, 2020

Added
- Added BStats.

Fixed
- Fixed an issue causing SLB not being able to start up due to something going wrong while writing a schematic file.
----------, Jul 6, 2020

Minecraft 1.12 will no longer be supported starting with version 4.0.0!

NOTE: This is an experimental version. There are a lot of missing features and there might be bugs. Please report any bugs you find at: https://jira.sickskillz.org/. Suggestions should also be posted on there. I am looking forward to your feedback :)

About

Version 4.0.0 is a complete rewrite of SuperLuckyBlock. Everything has been re-coded from scratch. ALPHA-1 still lacks a lot of features compared to the current stable version, but the most important features are there and they are fully functional. Because of this, I do not recommend to use this in a production environment without extensive testing! When you update to 4.0.0-ALPHA-1, make sure to backup and delete all of your current configuration files! A lot of changes have been made causing old configuration files to not be compatible. Custom surprises from the stable version can be copied over to the alpha version without much effort. You will have to make a few changes, please see default.yml for more information.

Changes
A lot of things have changed so I will give you a short summary:
- The plugin has been written with multiple luckyblocks in mind in contrast to the current stable version. This means that most features can now be used for each luckyblock instead of only on the default one(like luckymining).
- The plugin should be more stable and I can add new features more easily.
- LuckyMining can now be enabled/disabled individually for each custom luckyblock.
- CustomSurprises are now as common as normal surprises. Before they would be really rare due to how they worked internally.
- Blocks can now have separate LuckyMining chances(for example: stone has a 1% chance to reward a luckyblock, diamond ore has a 5% chance).
- Every single message is now configurable.
- There are currently only 10 built-in surprises. I plan to add more in the next few alpha versions.
- More settings for built-in surprises.
- Hopefully increased performance. There is unfortunately no way to test this for myself.
- No compatibility layer for older versions which should increase performance and solve some issues.
- More stable WorldEdit implementation.
----------, Jul 5, 2020

Changed
- Updated XSeries to support 1.16 and fix some minor issues. 1.16 materials can now be used in custom surprises.

Fixed
- Fixed colors not working in titles.
----------, Jun 30, 2020

I have tested the plugin on 1.16.1 and I can confirm that the current version(3.5.10) is working correctly. Please keep in mind that minor issues may occur. If you experience any issues, please report them at my servicedesk: https://jira.sickskillz.org/servicedesk/customer/portal/3
----------, Jun 25, 2020

Fixed
- Fixed an issue which caused some players to not get rewarded after opening a luckyblock because of a NullPointerException. A lot of users experienced this issue so please update if you are still experiencing this.
- Fixed broadcast, actionbar and title on break not working for the right click to open feature.
----------, Jun 20, 2020

NOTE: This update includes some big changes to the code. You should not notice these, but this may have introduced a few new bugs. If you find a bug, please report it at my servicedesk.

Changes
- Now using XSeries instead of Remain as XSeries is more up to date. This should fix a few issues and optimize a few things. If you were experiencing any issues, please try this update.

Fixed
- Fixed luckymining PlaceInsteadOfDrop not working on 1.12
----------, May 29, 2020

Important! Please read!
Support for Minecraft versions 1.8 until 1.11.2 have been dropped! It is way too difficult for me to support 8 major Minecraft version. A lot of issues reported in the past few weeks have been 1.8 only. 1.8 is also 5 years old by now(6 years in September!). Because it's this old, a lot of API methods that exist on newer versions are missing on older version. I would like to utilize those without breaking support for older versions. This version(3.5.8) will always be available for download in the version history tab if you want to stay on 1.8.

Fixed

- Fixed particles erroring on minecraft 1.8. I can't promise they will work properly as 1.8 is missing a proper API for particles.
- Fixed luckyblock not being removed from the player's inventory when selling or when using OpenOnRightClickInHand on MC 1.8.
- Did some small performance improvements

Removed
- Removed debug messages as they are not useful anymore.
----------, May 14, 2020

WARNING: Support for the version 1.8-1.11 will be dropped in the near future! These versions are old and maintaining the plugin for these versions is really difficult. Old versions of SuperLuckyBlock will still be available for these older version to use once support has been dropped.

Added

- Added back the update checker made by Choco as it's working again(updated by ItsMeGlare). You can find it here: https://www.spigotmc.org/threads/an-actually-decent-plugin-update-checker.344327/

Improvements
- Listeners of disabled features will no longer be registered. This should improve performance a little.
- Reorganized logic in a few listeners to improve performance by reducing the amount of code running when it's not needed.
- The creation of player data files is now async.
- Player data saving is now async.
- Some other minor performance improvements
----------, May 5, 2020

Changed
- LuckyMining is now disabled by default (only for new installations).

Removed
- Removed update check because spiget does not appear to be working after a cloudflare change.
- Removed /slb reload as it isn't working correctly. This will be added back once I get it working.

Fixes
- [ SLB-2] LuckyMining PlaceInsteadOfDrop Places Creeperhead
- [ SLB-3] Removed obfuscation and antipiracy. You should see some performance improvements now.
----------, Apr 15, 2020

I'm sorry for posting two empty updates in a row but I kinda have to post this one.

Please fill in this survey so I can continue to improve SuperLuckyBlock and add new, requested features. Responses are anonymous and it only takes 5-10 minutes.

Due to the current coronavirus pandemic everything regarding school has been a bit chaotic. Due to this I will be able to only release a limited amount of updates in the next few weeks, so if you have contacted me about an issue or suggestion, I request you to wait a little bit longer until everything settles down a bit. I am trying to get back to actively updating ASAP.

I have moved away from freshdesk and set up Jira Servicedesk, please redirect all support requests to https://jira.sickskillz.org/servicedesk/customer/portal/3

Bugs are now publicly tracked at https://jira.sickskillz.org/projects/SLB/issues/. You will not be able to submit bugs through this page, you have to use the servicedesk for that.
----------, Mar 23, 2020

To improve the quality of support and to prevent me from forgetting to do certain things, support will only be provided at https://sickskillz.freshdesk.com/ from now on.
I will usually respond within 24 hours.
Please create an individual ticket for each question, issue or feature request that you have.

If you have contacted me about an issue that has not been fixed yet or if you contacted me about a feature request that has not been implemented yet, please create a ticket!

If you have a really simple question(example: "What command should I use to give someone a luckyblock?"), you can also ask it on our discord: https://discord.gg/Pqtfn8v
----------, Mar 15, 2020

Fixed
- Fixed an error which prevented the plugin from starting when the config had to be updated.

Changed
- Changed obfuscation techniques to comply with the new spigot rules.
----------, Mar 7, 2020

Added
- Added a few debug messages(disabled by default) to fix an issue I can't seem to reproduce. This will also help fixing future issues. More debug messages will be added later.

Changed
- Improved performance a bit.
----------, Feb 29, 2020

Added
- You can now use decimal numbers for customsurprise chances.
----------, Feb 9, 2020

Fixed
- Fixed an error when a player left clicks.
- Removed debug messages I left in (caused the left click error).
----------, Jan 30, 2020

Changes
- Updated CompMaterial (Remain) with 1.15 materials.
- Updated CompSound (Remain) with 1.15 sounds.
- Updated CompParticle (Remain) with 1.15 particles.

Fixed
- Fixed multiple issue with buy/sell signs.

API Changes
- LuckyActionTriggerEvent now fires before SuperLuckyBlock calculates the chance of the player being rewarded. Before it would only run if a player received a luckyblock as a reward.
- LuckyActionTriggerEvent is now cancellable.
- Added getChance and setChance to LuckyActionTriggerEvent so you can programatically change the chance.
----------, Jan 30, 2020

Added
- Added OpenOnRightClickInHand option which allows luckyblocks to be opened when you right click while holding one.

Fixed
- The config now updates properly when a change has been made by me.
----------, Jan 12, 2020

Added
- You can now specify which luckyblock you want to give to all players (/slb giveall <amount> [luckyblock name])

Fixed
- Fixed multiple issues with OpenOnRightClick. This feature should work correctly now.
----------, Jan 4, 2020

Fixed
- Fixed ClassDefNotFound error which caused luckyblocks and some other functions to not work at all.
- Plugin should now work properly on 1.15.
----------, Dec 25, 2019

Fixed
- Fixed the Developer API. They were being renamed by the obfuscator causing the API to be unusable.
- [ #20] super luckyblock errors v3.4.1 - spigot 1.15.1.
- [ #21] Default settings.yml in your .jar lacks a key at 'Wands' error.
----------, Dec 24, 2019

Fixed
- Fixed issue on startup on Java 11.
- Fixed an issue where surprises would still be executed even though their chance is 0.
- Fixed unexpected behavior when a surprise chance was a negative number.

Removed
- (Temporarily?) removed Sentry error reporting to fix Java 11 boot.
- Because Sentry was removed dependencies won't be downloaded on startup as they are no longer needed. You can remove the lib folder if you want.
----------, Dec 23, 2019

Changed
- Not really a change, but I confirmed that the plugin works on 1.15!

Fixed
- Fixed Custom Surprises not working since the latest update.
----------, Dec 15, 2019

Change
- Reworked the config cache to greatly improve the overall performance in the plugin. Memory usage was also reduced because of this.

Fixed

- Fixed an issue where the plugin would error and disable when no internet connection was available and dependencies were present in the lib folder.
- Fixed a big performance issue on luckyblock break. Especially the servers with a lot of custom luckyblocks experienced big performance impacts.
- Hopefully fixed the reload command (haven't tested this one yet).
----------, Dec 6, 2019

Fixed
- The plugin will no longer throw an error on startup when my webserver is down for whatever reason.
----------, Nov 29, 2019

Changed
- Dependencies will now be downloaded on first run instead of included in the jar. This will reduce the jar size a bit.
- Optimized some things. Might see a slight performance boost.

Fixed
- Fixed an error on boot.
- Re-enabled PreventWaterBreak as that wasn't the issue of the error.
----------, Nov 23, 2019

Wasn't tokenenchant, compatibility re-enabled. PreventBreakingByWater temporarily disabled. Error should be fixed now.
----------, Nov 23, 2019

TokenEnchant broke again, compatibility temporarily removed.
----------, Nov 23, 2019

Fixed
- Fixed color codes not working in lores.
- Fixed error on boot in version 3.3.6
- Fixed TokenEnchant compatibility.
----------, Nov 23, 2019

Downgraded the plugin to 3.3.5 as 3.3.6 has issues booting. I will try to fix this asap.

Sorry for the inconvenience.
----------, Nov 4, 2019

Fixed
- Fixed TokenEnchant compatibility, for real now(I hope).
----------, Nov 2, 2019

Fixed
- Fixed TokenEnchant compatibilty.

Note: I am aware of a small performance issue and am working on it. If you are experiencing a performance issue accoding to your timings, please contact me with a link to the timings.
----------, Oct 19, 2019

Fixed
- Fixed the error on startup introduced in 3.3.3 which caused users to not be able to use the plugin.
----------, Oct 9, 2019

Many users seems to be experiencing an error after "SLB >> Initializing Sentry...". This error was caused by a last minute change, so I missed it while testing. If you are experiencing this error, please downgrade to version 3.3.2, which can be found here: https://www.spigotmc.org/resources/...ou-full-control.48837/download?version=294733

I have temporarily changed the latest version to 3.3.2 in case you want to downgrade.

Please don't report this error again! I am aware of it and working on fixing it!
----------, Oct 7, 2019

Added
- Added experimental support for TokenEnchant blockexplode.

Fixed
- Don't obfuscate the API so plugins relying on it won't break.
- Don't exclude slf4j from shading to prevent an error on startup on some servers.
- Fixed an issue where the plugin would execute surprises from the default luckyblock if a (custom) surprise from a custom luckyblock didn't exist.
- [ SUPERLUCKYBLOCK-D] IllegalArgumentException: bound must be greater than origin when no wands are enabled or being used.
- [ SUPERLUCKYBLOCK-P] java.lang.NullPointerException: null when saving data of a player that is no longer offline.
----------, Oct 6, 2019

Changed
- Updated Remain as I was a lot of versions behind(kangarko moved it into foundation). Will probably fix a lot of issues and improve some things.
- Removed Methods and Classes from remain that I don't need. This should slightly reduce jar size.
- Reduced jar size by ~100kb.
- Sentry now works properly and won't overwrite the SentryClient of other plugins.
- Yaml comments will now be removed from /slb debug reports to make the reports smaller and easier to read.
- Made some slight changes to the startup message.
- Created an exception handler which will properly report caught exceptions to Sentry and provides the user with info about the error and what to do with it.

Fixed
- [ SUPERLUCKYBLOCK-4] Fixed the "A plugin is using Remain but forgot to call Remain.setPlugin()" error by updating Remain.
- Fixed Sentry warnings on startup.
----------, Sep 20, 2019

Added
- You can now disable all wands in certain worlds in the wands.yml file.
- Added Sentry error tracking so I can find unreported issues and allows me to fix issue more quickly. This means that when an error has been thrown some data will be sent to sentry. This can NOT be disabled. You can find more info on their website and in their privacy policy.
----------, Sep 15, 2019

Sorry for the huge delay of this update, I wanted to complete it earlier but it suddently became pretty hot in my country and things can only go wrong when I code when it's too hot... :)

Added
- You can now use any block as luckyblock for the default.yml luckyblock, instead of only sponges. If you use SPONGE you will have to change it to block:SPONGE!!! Usage:
Code (YAML):
HeadOwner : block:ITEM_NAME
- You can now use armorstand in custom surprises! Example:
Code (YAML):
CustomSurprises:
  CustomSurprise1
:
    Chance
: 100
    # A list of Entities that will be spawned when this surprise is ran.
    # You can find the valid values here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EntityType.html
    # You can also spawn armorstands with armor by using ARMOR_STAND!HELMET!CHESTPLATE!LEGGINGS!BOOTS!WEAPON.
    # Example: ARMOR_STAND!DIAMOND_HELMET!GOLDEN_CHESTPLATE!IRON_LEGGINGS!LEATHER_BOOTS!STONE_SWORD
    # WEAPON can be left empty if you don't want to use it.
    Entities
:
   - ARMOR_STAND!DIAMOND_HELMET!GOLDEN_CHESTPLATE!IRON_LEGGINGS!LEATHER_BOOTS!STONE_SWORD
----------, Sep 1, 2019

Changed
- Rewrote the worldedit support for 1.12 and below as I lost the source of that after my windows decided to make itself unbootable(was a small jar I shaded into SLB for simplicity).

Removed

- (Temporarily?) Removed obfuscation. You should notice a performance improvement.
- Removed the antipiracy that didn't work since 3.0.

Fixed

- Fixed an issues with surprises using schematics not working on 1.12 and below.
----------, Aug 17, 2019

Hello buyers,

As I am currently on a vacation until August the 5th of August, I will not be able to push new updates. This means that if you find a bug, I unfortunately can't fix it. I will also be able to only provide limited support, as I don't have access to a pc here. This means I am not always able to help you with everything. Support may also be delayed by 3 days max. I will still try to reply to you as fast as possible.

Because I can't push updates, I decided to start a survey. This allows me to make better decisions when I come back and also allows me to implement the things you want. Please fill in this survey if you want. It should only take 5-10 minutes and helps me a lot with developing this plugin.
Survey link: https://survey.sogosurvey.com/r/3ef9lJ
Oh and the survey is complete anonymous, unless you decide to enter your spigot name in the last question.
----------, Jul 26, 2019

Added
- You can now apply enchantments to customsurprise items:
Code (YAML):
# If you want to enchant an item, use the following format(please note that you CAN'T specify an amount!):
# {ITEM}!{enchantment_name}-{LEVEL}
# The enchantment name is the vanilla name, all in lowercase and spaces replace by a _.
   Items
:
   - DIAMOND_SWORD!unbreaking-2!sharpness-1
Changed
- The update checker has been improved. I'm now using the UpdateChecker made by @Choco which is way better than mine.

Fixed
- Fixed a NPE when using the : character to specify the amount in items for customsurprises.
- Hopefully fixed the crashing issue with custom surprises.
----------, Jul 16, 2019

Fixed
- Didn't properly disable the customsurprise permissions in the previous update, which resulted in crashes still occuring.
- Jar dependencies won't be minimized anymore while shading which should fix some rare issues.
----------, Jul 11, 2019

Removed
- (Temporarily) disabled permissions for custom surprises as it seems to be causing crashing. I will try to find a better way of handling them or may remove them completely, I'm not sure yet.
----------, Jul 9, 2019

Changed/Fixed
- In the default luckyblock config created when SLB is used for the first time, CustomSurprise2 (the one with the dirthouse schematic) is now disabled by default. When that surprise got triggered and the schematic didn't exist, SLB would spam the console with the following message, freeze the server and after a while the server would crash:
Code (Text):
SLB >> The schematic in custom surprise 'CustomSurprises.CustomSurprise2' does not exist. Please make sure you configured it the right way
This change will only happen to new users or when the plugin directory has been deleted. If you experience this crash, please set the chance of CustomSurprise2 to 0.
----------, Jul 1, 2019

Fixed
- Fixed an issue when open on right click was enabled, right clicking a luckyblock would remove the item in the player's hand instead of breaking the luckyblocks. Players would be able to infinitely "break" the luckyblock at the cost of only one item.
----------, Jun 29, 2019

Fixed
- Fixed an error which occured when LuckyMining was enabled. This should fix the error a lot of people reported to me.
----------, Jun 22, 2019

Changed
- Disabled Particles on 1.8 as they were causing too many issues.

Fixed
- Fixed an issue with the explode protection.
- Fixed a possible NullPointerException when the RightClickOpen feature was enabled.
----------, Jun 8, 2019

Changed
- Updated Remain to 3.2.0.

Fixed
- Fixed luckyblock skin from url for versions under 1.13.
- Fixed an issue where the plugin wouldn't work if worldedit wasn't installed.
- Updating Remain fixed some errors with certain Materials.
----------, May 22, 2019

I am still trying to fix the last few bugs that came through the beta. After I did this, new features, surprises and wands will be added :).

Added
- Added support for Minecraft 1.14.1 by updating Remain to 3.1.1.

Changed

- Updated Remain to 3.1.1

Fixed
- Fixed an issue where luckyblocks wouldn't work when particles were disabled.
- Hopefully (again) fixed particles on 1.8, I don't know why it constantly errors on 1.8 and I hope I fixed it.
- Fixed possible startup issues on 1.12 by updating Remain(I never experienced these myself).
----------, May 18, 2019

Fixed
- Fixed an error when right click open was enabled.
- Fixed a possible error when right click drop was enabled.
- Hopefully fixed particles on 1.8.
----------, May 15, 2019

Changed
- Updated Remain to version 3.0.2

Fixed
- A lot of broken features on 1.14. They should work now because Remain got updated.

Removed
- Removed my broken 1.14 support.
----------, May 13, 2019

I haven't received any issue reports about the beta over the past few days so I think it is stable enough to release.

Support for any version below 3.0.0(even the alphas and beta) have been dropped! Update ASAP. You will lose your previous configs and data but it's worth it!

Additions since BETA 1
- Added back SpongeMode. I didn't realize it was used this much. You can only activate it for the default luckyblock by setting the headowner to SPONGE (all capital letters).
- Added the ability to give luckyblocks textures from URLs(you can use heads from minecraft-heads.com for example by using the Minecraft-URL: http://prntscr.com/nn8hv2). This replaces the removed HeadDatabase feature, which will still be added back at some point. Thanks @mmuziek for suggesting this and helping me with implementing this feature!

Fixes since BETA 1
- Fixed the config update system for (custom) luckyblocks. Before it wouldn't update the files.

Full changelog since 2.18.3
- Worldedit and PlotSquared features now work on 1.13. They will still be working on 1.12.2 and below(unlike I said earlier on discord) because of a custom addon I wrote and shaded into the jar.
- Renamed plugin folder from SuperLuckyBlock-Pro to SuperLuckyBlock. (old folder will be moved to a backup folder in the new folder).
- Redesigned configs.
- PluginSettings.yml has been renamed to settings.yml.
- Messages.yml has been renamed to messages.yml(removed capital letter).
- Surprises.yml and CustomSurprises.yml have been removed. These options are now available in custom luckyblocks.
- The default luckyblock(that you normally configured via the removed files and some settings in PluginSettings) has now been moved to the luckyblocks folder. This should make things more clear.
- Custom luckyblocks got some new features.
- Surprise settings are now configurable per luckyblock.
- The custom luckyblock files(files in the luckyblocks folder) will now be updated when new values are added by me, just like the settings.yml file!
- You can now specify the number of items you want to drop when using the Items section in a custom surprise. Example can be found at the bottom of this update.
- Added PlaceholderAPI placeholder support for all configurable messages.
- Implemented a base for me to create wands.
- Added Slime Wand which shoots a slime.
- Added TNT Wand which shoots a primed TNT.
- Added Blaze Wand which shoots a blaze.
- Added Fireball Wand which shoots the configured amount of fireballs with a delay of 500 milliseconds in between.
- Added uses system for wands. Wands are now able to have an limited amount of uses before breaking.
- Added lightning wand.
- Added heal wand.
- Added LuckyBlockUtils#getLuckyBlockItemStack()
- Added LuckyActionType enum for the LuckyActionTriggerEvent.
- Added Wand interface, can later be used to code custom wands.
- Added WandManager to manage wands.
- LuckyMiningEvent has been changed to LuckyActionTriggerEvent(change was made in a previous alpha but forgot to note).
- LuckyBlockUtils#giveDefaultLuckyBlock() has been deprecated. LuckyBlockUtils#giveCustomLuckyBlock() should be used instead.
- SurpriseUtils#pickSurprise() has been deprecated. SurpriseUtils#pickSurprise(String) should be used instead.
- Added SuperLuckyAPI#getWandManager() which contains all methods for wands.
- Added experimental 1.14 support. Most features should work but some may error. If you get any errors, please disable the feature and report it to me. I had to create a workaround because Remain hasn't been updated yet.
- Added protection against players abusing the LuckyMining system by constantly placing blocks and breaking them. This is not recommended for bigger servers as all placed blocks are stored in memory until broken or until the server restarts. Smaller servers should probably enable this in the config.
- Added %surprise% variable to broadcast and the newly added feature. This variable will be replaced with the executed surprise. The names are currently hardcoded but may be configurable in the future.
- Added actionbar on break (doesn't work on 1.14 yet).
- Added title on break (doesn't work on 1.14 yet).
- Added an option to placer the luckyblock instead of dropping it when getting a luckyblock from luckymining. This is especially useful for prison servers or servers where you can't build yourself.
- Probably some other things I forgot.
----------, May 11, 2019

Added
- Added protection against players abusing the LuckyMining system by constantly placing blocks and breaking them. This is not recommended for bigger servers as all placed blocks are stored in memory until broken or until the server restarts. Smaller servers should probably enable this in the config.
- Added %surprise% variable to broadcast and the newly added feature. This variable will be replaced with the executed surprise. The names are currently hardcoded but may be configurable in the future.
- Added actionbar on break (doesn't work on 1.14 yet).
- Added title on break (doesn't work on 1.14 yet).
- Added an option to placer the luckyblock instead of dropping it when getting a luckyblock from luckymining. This is especially useful for prison servers or servers where you can't build yourself.

Fixed
- Fixed an issue where particles on luckyblock break causes an error on 1.8.
- Fixed an issue where particles on l causes an error on 1.8.
- Fixed an issue where when sounds were enabled when getting a luckyblock while mining, it would error and not reward the player.

Beta information
As most of the features I wanted to implement are implemented now, I have decided that it is time for the beta. This means that (big) features will not been added until release. I will focus on fixing the last few bugs before fully releasing it. This still means that I do not recommend this build on production servers, but the bugs are significantly less than in the alpha version.

HeadDatabase
I have decided to not re-add headdb support yet. For some reason the API doesn't like me, or more likely, I am doing something wrong. I will still try to find a way to add this back, but after the full release of 3.0.0
----------, May 7, 2019

NOTE: Almost all planned features have been added, only a few remaining. After this the plugin will go into beta where I will try to fix all left over bugs. After that we can release!

Added

- Added experimental 1.14 support. Most features should work but some may error. If you get any errors, please disable the feature and report it to me. I had to create a workaround because Remain hasn't been updated yet.

Fixed
- Fixed an error which caused many features to not work correctly and error.
----------, May 6, 2019

This update contains some changes that were needed for the API to function. No features have been added

API Additions
- Added LuckyBlockUtils#getLuckyBlockItemStack()
- Added LuckyActionType enum for the LuckyActionTriggerEvent.
- Added Wand interface, can later be used to code custom wands.
- Added WandManager to manage wands.

Most of these additions have not been documented yet.

API Changes
- LuckyMiningEvent has been changed to LuckyActionTriggerEvent(change was made in a previous alpha but forgot to note).
- LuckyBlockUtils#giveDefaultLuckyBlock() has been deprecated. LuckyBlockUtils#giveCustomLuckyBlock() should be used instead.
- SurpriseUtils#pickSurprise() has been deprecated. SurpriseUtils#pickSurprise(String) should be used instead.
- Added SuperLuckyAPI#getWandManager() which contains all methods for wands.

The javadocs have been updated. You can find them here: https://sickskillz.org/plugins/superluckyblock/javadocs/
----------, May 3, 2019

Added
- Added uses system for wands. Wands are now able to have an limited amount of uses before breaking.
- Added lightning wand.
- Added heal wand.

Fixed
- Fixed a memory leak introduced in the previous update. Please upgrade ASAP if you run ALPHA 7.
----------, Apr 27, 2019

Added
- Added PlaceholderAPI placeholder support for all configurable messages.
- Implemented a base for me to create wands.
- Added Slime Wand which shoots a slime.
- Added TNT Wand which shoots a primed TNT.
- Added Blaze Wand which shoots a blaze.
- Added Fireball Wand which shoots the configured amount of fireballs with a delay of 500 milliseconds in between.

More wands will be added in the coming updates as it's pretty easy for me to create them now. An API for this will also be added at a later point so you can program your own wands.

Fixed
- Fixed drop on right click(for real now).
- Fixed open on right click.
----------, Apr 26, 2019

100% the download works now.
----------, Apr 24, 2019

Added
- You can now specify the number of items you want to drop when using the Items section in a custom surprise. Example can be found at the bottom of this update.
- Buy and sell signs are working again!

Changed
- Custom luckyblocks are no longer case-sensitive.
- Made the plugin a bit more drag-n-drop friendly by disabling the most destructive surprises by default.
- /slb debug pastes now expire after 7 days instead of 30 days.

Fixed
- Fixed the right click to open feature
- Fixed possible NullPointerException when right clicking heads.
- Fixed a lot of errors because I forgot to remove a lot of code regarding the removed spongemode feature.

Removed
- Removed old config files that weren't used by the plugin from the jar.

Example:
Code (YAML):
    # A list of items that will be dropped when this surprise is ran.
    # If you want to drop the item multiple times, use the following format:
    # {ITEM}:{AMOUNT}
    # You can find the valid values here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
    Items
:
   - BUCKET:2
    - COAL:6
----------, Apr 24, 2019

So, I imagine I will get this question a lot the following days. I'm pretty sure I will get it, so I will answer it here.

Does SuperLuckyBlock support 1.14?
No, not yet. Some changes have been made in 1.14 that will (partially) break this plugin, but this is not the only reason I won't support it. 1.14 didn't even release yet! It's a pre-release version. Also, the spigot build is a development build and is not meant for use on production servers. Once the libraries I use get updated(Remain is one of them), Mojang releases 1.14 and spigot becomes a bit more stable, I will update SuperLuckyBlock with 1.14 support and support this version. Until then NO support will be provided for 1.14. You are free to try it on 1.14, but you have been warned.

I will be able to create new updates and fix some of the known issues starting Wednesday, as I get back home today.
----------, Apr 23, 2019

Changed
- The custom luckyblock files(files in the luckyblocks folder) will now be updated when new values are added by me, just like the settings.yml file!

Fixed
- The change stated above might have fixed some issues introduced in ALPHA 4, but I wasn't able to test if this is true.
- Fixed custom surprises not working and printing errors to the console.
----------, Apr 19, 2019

Just a small fix, not really worth a version bump.

Fixed
- Hopefully fixed an issue with luckymining still rewarding luckyblocks in worldguard regions which deny breaking blocks.
----------, Apr 15, 2019

NOTE: As this update is really big ALL configs will be reset. A lot of things have been renamed or have changed. Not all features may function yet, but 80% should. Please report any bugs you find as there will probably be a few. The configs still have to be optimized for versions other than 1.13, but the plugin should still function with almost no errors. Not every feature has been fully tested. If you find a bug, please report it to me.

Changed
- Renamed plugin folder from SuperLuckyBlock-Pro to SuperLuckyBlock. (old folder will be moved to a backup folder in the new folder).
- Redesigned configs.
- PluginSettings.yml has been renamed to settings.yml.
- Messages.yml has been renamed to messages.yml(removed capital letter).
- Surprises.yml and CustomSurprises.yml have been removed. These options are now available in custom luckyblocks.
- The default luckyblock(that you normally configured via the removed files and some settings in PluginSettings) has now been moved to the luckyblocks folder. This should make things more clear.
- Custom luckyblocks got some new features.
- Surprise settings are now configurable per luckyblock.
- Probably some other things I forgot.

Removed
- SpongeMode has been removed. Makes it easier for me to maintain the plugin.
- Temporarily removed the HeadDatabase until I implemented a better system.
- The banning system has been removed. It was pretty useless.
----------, Apr 14, 2019

Added
- Added experimential headdatabase compatibility. Due to some issues I had implementing it, it only works like the RightClickOpen feature(right click with block in hand to open), this will change later.

Fixed
- Fixed an issue which caused blank lines getting send if a message was empty.
----------, Apr 6, 2019

Fixed
- CompatBridge has been updated to 2.1.2 to fix some errors/NPEs
----------, Mar 27, 2019

Version 3.0 is currently in ALPHA and WILL contain bugs! Do not use this on production servers! I am not responsible for any damage done like said in point 3 of the TOS!

Changed

- Worldedit and PlotSquared features now work on 1.13. They will still be working on 1.12.2 and below(unlike I said earlier on discord) because of a custom addon I wrote and shaded into the jar.
- Updated CompatBridge to 2.1.1

Why 3.0, why is the plugin in Alpha?
This update looks small, and yes it is. I plan to add more and more features and make big changes spread over multiple alpha versions so it's easier to test everything. I have some pretty cool features planned.

What are these features?
I don't have everything worked out yet. Some planned features are:
- Wands
- Titles
- Actionbars
- Config redesign
- Improved performance
- Improved data storage

When will the plugin leave alpha?
When it's done. I'm not sure as I have limited time available at the moment. This is alos the reason why there are less updates than before.
----------, Mar 23, 2019

Added
- 1.13 sound names can now be used on any minecraft version in the config. Before, you would get an error if you did.

Changed
- Updated CompatBridge to version 2.1.0. Some really nice things have been added to CompatBridge so I might try to implement some features that usually were version independent and difficult to maintain. (Thanks @kangarko for the update, it's really nice :))
----------, Mar 17, 2019

Changed
- Custom luckyblocks now work with the rightclick to open feature.
----------, Mar 10, 2019

Fixed
- Fixed an error on startup when placeholderapi wasn't installed.
----------, Mar 2, 2019

Added
- Added the /slb debug command. This command will generate a debug report which allows me to fix issues or bugs more easily. When reporting a bug, be sure to include this report.
- Added superluckyblock.debug permission.
----------, Mar 1, 2019

Added
- Players can no longer use luckyblocks in anvils, because that will break them.
- Added an option to set the minimum Y level(height coordinate) the player has to be on or below, before the player can get LuckyMining rewards.
----------, Feb 17, 2019

Added
- You can now use decimal numbers for surprise chances.
----------, Feb 10, 2019

Fixed
- Fixed an issue which caused all block places in a disabled world to be denied, instead of only denying the placement of a luckyblock.
----------, Jan 28, 2019

It should work now.

Changed
- Rewritten custom surprises, there should be less bugs now and they are easier to maintain for me. You don't have to change anything or reconfigure them.
- Some small things I forgot. You shouldn't notice anything.

Fixed
- Prevent luckyblock place in disabled world wasn't working.
----------, Jan 26, 2019

The previous update has been removed due to an issue that caused the plugin to not start correctly. It will be back up within a day.
----------, Jan 25, 2019

Changed
- Rewritten custom surprises, there should be less bugs now and they are easier to maintain for me. You don't have to change anything or reconfigure them.
- Some small things I forgot. You shouldn't notice anything.

Fixed
- Prevent luckyblock place in disabled world wasn't working.
----------, Jan 25, 2019

Fixed
- Fixed an issue which caused custom luckyblocks to not work.

Removed
- Removed UUID support for the headowner field as it didn't work correctly.
----------, Jan 16, 2019

Added
- Added an in-memory config cache. This should greatly increase performance. Related to #12 .
----------, Jan 11, 2019

Changed
- OpenOnRightClick now spawns particles and plays the configured sounds when enabled.
- Prepared some code for the next update.
- PlotSquared protection will not work on 1.13 until I decide on how to solve issue #13 .
----------, Jan 4, 2019

Fixed
- Removed a few left over debug messages. Most of them get displayed rarely but still, might be annoying.

Happy new year everyone! 2018 was a good year for SuperLuckyBlock. Let's make 2019 even better.
----------, Jan 1, 2019

Changed
- Changed the way OpenOnRightClick works. It now opens the luckyblock when you have it in hand and right click on a block or in the air. Surprises will be spawned at the player's location.

Fixed
- [ #10] Surprise is null error
----------, Dec 29, 2018

Fixed
- Removed a debug message on startup. May be pretty big when you have a lot of custom luckyblocks.
----------, Dec 28, 2018

Changed
- Changed the code to give more info when the error in issue #10 occurs so I can fix this issue. I have seen more people reporting this.

Fixed
- Fixed a minor bug I can't remember anymore as it has been a few days since I fixed it.
----------, Dec 27, 2018

Fixed
- Open on right click should actually work now.
----------, Dec 25, 2018

Added
- Added open on rightclick option in the config.
- EXPERIMENTAL Added support for UUIDs as headowner. May not work correctly in all cases yet.

Fixed
- Fixed errors because the default configurations contained invalid sound names.
----------, Dec 24, 2018

Changed
- Made some small changes in the code. You shouldn't notice much, however this makes things easier for me.

Fixed

- [ #8] error javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
----------, Dec 23, 2018

Added
- Added an option to toggle the drop on luckyblock receive introduced in the previous update.
----------, Dec 20, 2018

Somehow uploaded the wrong version. Should be fixed now.
----------, Dec 17, 2018

Changed
- Luckyblocks now drop on the ground when your inventory is full. This also counts for custom luckyblocks.
----------, Dec 17, 2018

Changed
- Plot squared protection now doesn't cancel breaking the blocks. It drops the block instead of not breaking it at all leaving no way to remove it.
----------, Dec 14, 2018

Fixed
- Fixed multiple issues and errors when breaking a luckyblock.
----------, Dec 12, 2018

Changed
- Improved the config update system a lot. You will NEVER have your config reset anymore, even when upgrading from really old versions!
----------, Dec 11, 2018

Changed
- Improved the API a lot. The API has changed a lot and old methods don't work anymore! It's way more developer friendly now, but not that big. It will be expanded in the next few updates.

Javadocs with updated methods: https://sickskillz.org/plugins/superluckyblock/javadocs/

The plugin also uses this API so if you as a server owner have any issues, please report them to me. The new API also makes it easier for me to update things.
----------, Dec 9, 2018

Added
Made it possible to add lores to custom luckyblocks.
Make sure to add the following lines and edit them under Settings, otherwise issues may occur:
Code (Text):
  Lore:
    - "This is line one"
    - "&aLook! You can use colors!"
    - "This is my favorite line, wait it's not..."
Example:
Code (Text):
Settings:
  HeadOwner: "template_please_change"
  DisplayName: '&e&lTemplate Block'
  Lore:
    - "Line"
    - "Another line"
    - "&aLine with &bcolors"
  CraftingRecipe:
    # When disabled, you will not be able to craft the luckyblock.
    Enabled: true
    # Here you can set the crafting recipe. 1 is at the top left and 3 is at the top right.
    # 7 is down left and 9 down right.
    Slot1: IRON_INGOT
    Slot2: IRON_INGOT
    Slot3: IRON_INGOT
    Slot4: IRON_INGOT
    Slot5: DROPPER
    Slot6: IRON_INGOT
    Slot7: IRON_INGOT
    Slot8: IRON_INGOT
    Slot9: IRON_INGOT
  Particles:
    Enabled: true
    # Effect names can be found here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Particle.html
    ParticleEffect: FLAME
    # The amount of particles.
    ParticleAmount: 200
  Sounds:
    Enabled: true
    # Sound names can be found here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Sound.html
    # For 1.9 and 1.8 they can be found here: http://docs.codelanx.com/Bukkit/1.8/org/bukkit/Sound.html
    Sound: BLOCK_NOTE_PLING
 
Surprises:
  Chances:
    # When a chance is set to 0, the surprise will be disabled.
    # The chance can be any number you want. The total of the chances DON'T have to be 100.
    Apples: 100
    Blaze: 100
    Bookshelfs: 100
    Buckets: 100
    CraftingTable: 100
    DiamondBlock: 100
    DiamondTools: 100
    Dirt: 100
    ElderGuardian: 100
    EmeraldBlock: 100
    EnchantmentItems: 100
    EnderChests: 100
    EnderDragon: 100
    EnderPearls: 100
    Explosion: 100
    FallingTNT: 100
    FlyingSkeletons: 100
    FlyingTNT: 100
    FlyingXPBottles: 100
    Food: 100
    Furnace: 100
    Ghast: 100
    GhastArmoredGiant: 100
    GhastTear: 100
    GiantMagma: 100
    GiantSlime: 100
    GiantZombie: 100
    GoldBlock: 100
    GoldenApples: 100
    GoldTools: 100
    Guardian: 100
    Husk: 100
    IronBlock: 100
    IronTools: 100
    Launch: 100
    Lava: 100
    LavaHole: 100
    Lightning: 100
    LightningCreeper: 100
    LuckyBow: 100
    LuckyPickaxe: 100
    LuckySword: 100
    Materials: 100
    MineCart: 100
    NetherStar: 100
    Obsidian: 100
    ObsidianCage: 100
    Pistons: 100
    PolarBear: 100
    PrimedTNT: 100
    RandomBlocks: 100
    RedstoneBlocks: 100
    RedstoneDust: 100
    RottenFlesh: 100
    SlimeBlocks: 100
    SoulSand: 100
    Stick: 100
    StickyPistons: 100
    StoneCage: 100
    StoneTools: 100
    Stray: 100
    SugarCanes: 100
    TamedOcelot: 100
    TamedWolf: 100
    TNTItems: 100
    UsefulBlocks: 100
    VillagerTower: 100
    Witch: 100
    Wither: 100
    Wood: 100
    WoodenTools: 100
    Zombies: 100
    KnockbackStick: 100
    UselessSword: 100
    CustomSurprises: 100
 
CustomSurprises:
  # CustomSurprise example with all modes used, except a building surprise.
  # For the building surprise see CustomSurprise2
  # This surprise is not enabled.
  CustomSurprise1:
    # Chance works the same as for normal surprises.
    Chance: 100
    # A custom permission required to get this surprise
    Permission: "superluckyblock.custom.permission"
    # A list of commands that will be executed when this surprise is ran.
    Commands:
    - 'give %player% minecraft:dirt 2'
    - 'give %player% minecraft:cobblestone 4'
    # A list of items that will be dropped when this surprise is ran.
    #You can find the valid values here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
    Items:
    - 'BUCKET'
    - 'COAL'
    # A list of entitites that will be spawned when this surprise is ran.
    # You can find the valid values here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EntityType.html
    Entities:
    - 'PIG'
    - 'SHEEP'
    # A message that will be sent after the surprise ran.
    # PluginSettings.MessagePrefix will be used in front of it.
    Message: "Enjoy the test surprise!"

  # This surprise will not be triggered unless you install WorldEdit and create the schematic file.
  # I recommend to remove or edit this surprise, as it's just an example.
  # Schematics should be saved in plugins/SuperLuckyBlock-Pro/schematics
  CustomSurprise2:
    Chance: 100
    # Name of the schematic that should be spawned
    Schematic: dirthouse.schematic
    # Location accepts the following values: player and block. This field is REQUIRED for building surprises.
    # When you select player, it will spawn the building at the player's location.
    # When you select block, it will spawn it at the block's location.
    Location: player

  CustomSurprise3:
    # The luckyblock will be changed into this block after the surprise is ran. If this option is removed the luckyblock will become AIR.
    # You can find the valid values here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
    Block: DIRT
    Permission: "this.is.another.permission"
   
----------, Dec 7, 2018

Added
- Added Winter icefloor surprise. This surprise replaces all grass and sand blocks in a 7 block radius with packed ice.

Fixed
- Fixed an issue which caused winter surprises to miss from the config on 1.8 and 1.9.
- Fixed an issue which caused winter surprises to be executed all at once when breaking a luckyblock.
----------, Nov 30, 2018

Removed
- Removed the saving of luckyblocks. The worlddata folder can safely be deleted now.
- Removed the break ban system.

I thought some cleanup was needed. I never used the worlddata and to my knowledge the ban system wasn't used.
If you want to clean your config from anything ban system related, please delete PluginSettings.yml and Messages.yml (both are optional, only do if you want to clean up).
----------, Nov 28, 2018

Fixed
- Fixed an issue which caused right click to drop to not work on heads placed on a wall.
----------, Nov 25, 2018

So, I forgot to announce this, but my new plugin ActionPoints released a few days ago!
Have you already seen it?(50% off, yay!)

AP-Header.png

ActionPoints is a plugin that rewards your players in a way that is pretty unique.
Players earn ActionPoints for every action they do. Think about mining, crafting, eating etc.
These points will be converted into rewards you configure!
It makes playing minecraft way more rewarding, no matter the type of your server.

Get ActionPoints now with 50% OFF! ONLY 48H REMAINING FROM NOW! https://www.spigotmc.org/resources/...ay-to-reward-players-for-their-actions.62317/
----------, Nov 23, 2018

Added
- Made some small API which gives access to my utility classes containing most methods for luckyblocks. It's currently undocumented and not that big. All methods are static and located in the SuperLuckyBlockAPI class.
----------, Nov 22, 2018

Added
- Added winter snowman surprise.
- Added winter snowballs surprise
- Added winter snowblocks surprise
I will probably add more and better winter surrpises soon, I just have to work out some ideas.

Fixed
- Fixed an issue which caused the surprises.yml to always reset.
----------, Nov 19, 2018

Fixed
- Finally fixed the warning on paperspigot. Was something with registering custom luckyblock recipes.
----------, Nov 14, 2018

Added
- Added plotsquared road protection. This feature will automatically enable when PlotSquared is detected. If a luckyblock is broken in a radius of 3 blocks it will deny and not break. This is so the road isn't destroyed by any buildings.
----------, Nov 10, 2018

Added
- Started with the implementation of an API.
- Done some preparations for my new upcoming plugin. (I am still searching testers for this. More info below. Form: https://goo.gl/forms/KVXUCsNQdKsGcIK42)

Changed
- Updated BStats to 1.4.

Testers needed
I am currently working on a new plugin named ActionPoints. It allows you to reward players for almost all their actions. There are also other ways to get points and they can be converted into reward. Although the plugin is still in the early stages, I am searching for a lot of feedback and I want to make the launch as bug free as possible. If you are interested, please fill in the small form: https://goo.gl/forms/KVXUCsNQdKsGcIK42

The most active testers will get a free copy of the plugin!
----------, Nov 9, 2018

The "old" discord server will be made read only next Monday!
I am moving to a new discord server.
A short time ago Just contacted me about the prodigy support team discord server.
They are trying to create one discord server where you can get support for multiple plugins you bought, so you don't have to join hundreds of support servers.
There are already 8 other developers on the team.
Take a look at the server here: https://discord.gg/4bjtDjT
They use an automatic verification system so we can be sure we provide support to buyers.
To verify yourself, please take a look at #verification. After you did this, read the instructions in #proof-purchase.
Hope to see you there soon :).
Support won't be provided on my previous server after monday!

https://discord.gg/4bjtDjT
----------, Nov 7, 2018

Fixed
- [ #6] Give player LuckyBlock from console wrong message.
----------, Nov 4, 2018

Changed
- Improved version detection when adding the crafting recipe. This should fix the warning on startup on paperspigot.
----------, Nov 3, 2018

Changed
- SuperLuckyBlock now requires the latest placeholderapi if you want to use the placeholder.
----------, Oct 29, 2018

Added
- Custom chances per permission for LuckyMining. This means you can give a specific group the permission you specified so they have a higher chance of getting a luckyblock while mining.
----------, Oct 26, 2018

Fixed
- Fixed a bug which allowed players to leave and join the server to bypass the LuckyMining timeout.
- Changed and optimized the code a bit, you won't notice anything.
----------, Oct 23, 2018

Added
- Added Halloween-Bats surprise
- Added Halloween-InvisZombie surprise(name isn't really right, but I couldn't think about anything better. It's more a floating pumpkin).
- Added Halloween-Lantern surprise.

I might add more halloween surprises later, but currently I'm out of ideas.
I plann to add more of these "event" based surprises like winter/christmas, some based on special days etc.
----------, Oct 21, 2018

Fixed
- Fixed an error on startup when worldedit wasn't found.

Changed
- re-enabled BStats
----------, Oct 19, 2018

Changed
- SuperLuckyBlock now checks if the blockbreakevent is cancelled before executing the surprise. This means that luckyblocks won't break if the player isn't allowed to break blocks.
----------, Oct 15, 2018

Added
- Added the ability to use a shapeless recipe instead of a shapedrecipe. Shapless means that you can put the materials anywhere in the grid, but you will still be able to craft it as long as the player uses the specified materials.
----------, Oct 14, 2018

Fixed
- Fixed an issue which caused /slb give to always give only one luckyblock.
- Fixed an issue which caused /slb givecustom to always give only one luckyblock.

Removed
- Removed the obfuscation. This should improve the performance a lot!
----------, Oct 14, 2018

Removed
- Temporary removed BStats because of an error it caused on startup. Will be added back when I solve it.
----------, Oct 13, 2018

Added
- Added the ability to create custom luckyblocks. Instructions can be found in the template file which is located in the luckyblocks folder in the plugin folder.
- Re-enabled building surprises. Only works on 1.8-1.12.2 and with any worldedit version lower than 7. I will be looking into 1.13 support soon.
- Added /slb givecustom <player> <luckyblock filename> <amount> to give a player a custom luckyblock.

Fixed
- Fixed a bug which would cause the plugin to fail while starting up.

Removed
- Removed MVdWUpdater compatibility until I fix the issues with it,
----------, Oct 13, 2018

NOTE: This is a beta version and the new feature will contain some bugs! Please report them to me! Other features should still be stable.

Added
- Added custom luckyblocks. To create a custom luckyblock, go to the luckyblocks folder, copy the template and configure it!

To do
- Create a command to give the custom block. The only way to get a custom luckyblock at this moment is by crafting it.
- Make custom surprises work with the custom luckyblocks.
- Fix bugs.
----------, Oct 8, 2018

As I forgot to add this to the previous update I'll post it now. A TLDR can be found at the bottom.

As some of you may know, I'm always trying to improve SuperLuckyBlock. Because of this I will sometimes need some help of you guys, as I don't always know what everyone wants.

If you want to help on improving SuperLuckyBlock, please fill out the following survey as honest as possible. It only takes 2-4 minutes to finish it and it would help me a lot, and it will improve your experience with SuperLuckyBlock too!
Survey link: https://www.survio.com/survey/d/I9F1E3A9R9Y2J1U5Y

The data you enter is fully anonymous!


TLDR: I need your help to improve SuperLuckyBlock. Please fill out this survey: https://www.survio.com/survey/d/I9F1E3A9R9Y2J1U5Y
It only takes a few minutes.
----------, Oct 5, 2018

Added
- Added an auto updater. To be able to use this feature you have to install MVdWUpdater and configure it. Info about the installation can be found on it's resource page.
----------, Oct 5, 2018

Added
- Added KnockbackStick. This surprise will drop a stick with knockback 10.
- Added UselessSword. This surprise drops a diamond sword which breaks after one hit.

Your Surprises.yml will be updated automatically!
----------, Oct 3, 2018

Added
- Added tab completion for the commands. This allows you to tab through the sub commands and players.

Changed
- Made some changes you won't notice.
----------, Oct 2, 2018

50% off until the 2nd of October.
The price of the plugin will be changed to 6 euro afterwards!
----------, Sep 29, 2018

1.8 has now been tested and looks stable, so I decided to fully release 2.1. It is stable now!

Full Changelog

Changed

- 1.12 and lower and 1.13 now use the same jar.
- Falling block surprises and FallingTNT are now compatible with 1.8 and 1.9.

Fixed
- Fixed some bugs I found
- Disabled a few more surprises on 1.8 because they were incompatible.

Changelog for BETA 3
Fixed

- Disabled a few more surprises on 1.8 because they were incompatible.

Credits
I want to thank @kangarko for his awesome library named CompatBridge. This library made it possible for me to merge 1.12 and 1.13 support. You can find it here: https://github.com/kangarko/CompatBridge
----------, Sep 26, 2018

Changed
- All falling block surprises and the FallingTNT surprise are now compatible with 1.8 and 1.9. If you are on those version, reset your Surprises.yml to enable the surprises.

Fixed
- Fixed the FallingTNT surprise on 1.12.2 and lower.

The plugin should be stable (enough) on 1.10/1.11/1.12 now. Every surprise has been tested on this version.
I haven't tested 1.8 and 1.9 yet!

USE THIS BUILD AT YOUR OWN RISK!
----------, Sep 24, 2018

Fixed
- Fixed an issue where most parts of the plugin failed to work on 1.8 when a skull was used as luckyblock.

DO NOT USE THE BETA ON A PRODUCTION SERVER!
1.8 AND 1.9 HAVEN'T BEEN TESTED YET!
----------, Sep 23, 2018

SLB 2.1 BETA merges the 1.12 and 1.13 jar into one.

The beta build hasn't been fully tested and WILL contain bugs. Please use the stable if you don't want bugs or run a production server.
Please report all bugs to me.

Full changelog will be published once fully released.
----------, Sep 23, 2018

A ticket system has been added to the server!
If you want to get support, have a question etc. But don't want to ask it publicly or you prefer to use tickets, take a look at the #ticket-info channel for information about how to create a ticket.
I will answer as quickly as possible.

Discord link: https://discord.gg/TvwexSk
----------, Sep 19, 2018

Added
- Added an option to disable the saving of user data. This is useful for minigame and bigger servers. This will disable banning and placeholders.

Known issues
- The reload command doesn't work.
----------, Sep 15, 2018

Fixed
- [1.13 ONLY] Fixed an issue which caused luckyblocks placed on a wall to not be added to the worlddata.
- [1.13 ONLY] Fixed an issue which caused luckyblocks on a wall to not drop when right clicked.
- [1.13 ONLY] Fixed an issue which caused luckyblocks placed on a wall to break by water when PreventBreakingByWater was enabled.

Removed
- Removed message check on boot, errors because I didn't renew my server.
----------, Sep 10, 2018

Added
- Added reload command (got a lot of requests for this).

I also found some bugs with skulls placed on walls when using 1.13, but didn't have enough time to fix them in this update. They will be fixed in the next update.
----------, Sep 9, 2018

Changed/Fixed
- Fully reworked the compatibility system. It also doesn't remove comments in the config anymore. This should fix most of the issues users have on 1.8

If you use 1.8 or 1.9 you will have to manually delete Surprises.yml and PluginSettings.yml for the fix to work! The plugin will NOT automatically do this.

This update doesn't change anything for 1.10 and above!

Edit: I know I made a typo in the update title
----------, Sep 7, 2018

This version will automatically reset and back up your pluginsettings.yml!

Added

- Added the option to add custom messages to each surprises.
- Added Messages.yml. These include the plugin's message that were previously stored in PluginSettings.yml and the new custom messages.

Changed
- Surprises are now alphabetically sorted in Surprises.yml
- Message are now alphabetically sorted in Messages.yml

Fixed
- The autoupdater should fix itself with this update. I just wanted to note that.
----------, Aug 31, 2018

Finally after 11 alpha versions and 1 beta version, SuperLuckyBlock 2.0.0 has been finished and is ready for the full release!

SuperLuckyBlock is a rework of the plugin. Although I didn't rework it from scratch, a lot has been changed, reworked and improved.

I recommend that everyone updates to 2.0.0!
1.41 contains some bugs I can't and won't fix!
Support for any version below 2.0.0(yes, the alphas and betas count too) will be dropped!


Changelog since beta-1
- Fixed an issue which caused luckyblocks that were placed on a wall to not drop a surprise.

Full changelog of 2.0.0
- Added native 1.13 support(separate jar).
- The surprise system has been reworked and is chance based now. Set a surprise to 0 to disable it.
- Custom surprises have been reworked, you can now combine the modes.
- A message option has been added to custom surprises, they also have chances you can set.
- Commands have been reworked, you will probably not notice anything, but it will make it easier to update for me.
- Fixes an issue which causes changes to the config to be wiped(exist since I added the compatibility layer, which is somewhere around 1.30)
- The config.yml has been replaced by PluginSettings.yml, Surprises.yml and CustomSurprises.yml. I have done this so that I don't have to wipe your surprisesettings and customsurprises when I have to update the config etc.
- Added an option that stops players with creative mode from breaking luckyblocks.
- Added an option that stops players with creative mode from getting luckyblocks while mining.
- Added an option that stops players with creative mode from buying or selling luckyblocks.
- Some other improvements and maybe even bug fixes.

Thanks to everyone who helped me with testing the alpha and beta versions and reported bugs to me!
----------, Aug 28, 2018

- Added back the folder layout in the zip file to make it more clear which jar to choose.
----------, Aug 26, 2018

Added
- Added a message option to custom surprises, this will send a message to the player after running the custom surprise.

Changed
- You can now combine the customsurprise modes! The mode option will be ignored from now on and it will just take the right options. Examples can be found in CustomSurprises.yml on a new installation or when you reset it. You can find the default CustomSurprises.yml on the plugin page.
- Reworked the commands class. It was a mess and had to be cleaned up. You won't notice anything, but it's more helpful for me.
- The Item mode now takes an unlimited amount of different items. Before it could only take one type.

Removed
- Removed the chance check for custom surprises on boot.

Known issues
- Luckyblocks placed on the wall will not give surprises on 1.13
- Luckyblocks won't stack after a reboot.

Beta information
As the latest alpha has been pretty stable, I have decided to change from alpha to beta. Some of the planned features will be added after the release of 2.0.0.
This beta should be stable enough to run on production servers, but please note that I am still not responsible for any damage done!
If I or someone else doesn't find any bugs in this beta for a few days, I will take a look at the known issues, try to fix them and release 2.0.0 as stable!
----------, Aug 26, 2018

Added
- Added an option that stops players with creative mode from breaking luckyblocks.
- Added an option that stops players with creative mode from getting luckyblocks while mining.
- Added an option that stops players with creative mode from buying or selling luckyblocks.

Fixed
- Fixed a bug where PluginSettings.yml wasn't replaced witht he newer version after backing it up. This shouldn't have affected anyone, unless you manually changed the ConfigVersion.

Note
I'm still working on new features and fixing known bugs, but I'm a bit busy so I am/was able to do less than I wanted to.
----------, Aug 21, 2018

Fixed
- Fixed an issue where sell signs said you didn't have luckyblocks

Known issues
- When a luckyblock is placed on the wall it will just drop the skull and possibly throw an error.
----------, Aug 18, 2018

Fixed
- Fixed an error on luckyblock break caused by a default config value being outdated. If you use Alpha 9 and still experience this issue, please update and wipe PluginSettings.yml.
----------, Aug 14, 2018

Fixed
- Fixed an issue which caused the 1.13 alpha version to only work on 1.12 and below.
----------, Aug 14, 2018

Added
- Added chances to custom surprises. A chances option will be added automatically to your existing custom surprises on first run.
- Added a blacklist mode for the Explode Protection feature.
- Added extra bstats data. This will help me make choices in future updates.

Fixed
- Fixed compatibility layer (for real now).
- LuckyBlock locations will now be removed from the world data.

Note
I am still working on the ability to select multiple surprise modes!
These will be added as soon as I am able to.
----------, Aug 13, 2018

Changed
- The config will no longer be loaded everytime the plugin needs a config value. This should improve performance a bit.

Fixed
- Hopefully fixed the compatibility layer(will be replaced at a later point).
- Fixed messages not having %target% and %player% replaced.
- Fixed prevent luckyblock from breaking by water
----------, Aug 11, 2018

Today exactly three years ago, the first version of SuperLuckyBlock was released.
That should be celebrated!
Enjoy a 50% sale until the 9th of August!
----------, Aug 6, 2018

I am currently busy with reworking parts of the plugin. Because of the changes I am going to make I will change the plugin version to 2.0.0. While I am reworking the plugin I will be releasing alpha versions for you to test. Please report bugs you find at the bugtracker.

Added
  • A chance system. You can now specify the rarity of a surprise in the config!

Note
While version 2.0.0 is still in alpha, SuperLuckyBlock will be delivered in a ZIP file.
This file contains an alpha folder and a stable folder.
The alpha folder contains the 2.0.0 version of SuperLuckyBlock with the newest version, but hasn't been fully tested.
It will probably contain bugs and you SHOULDN'T use it on a production server.
The stable folder contains the latest stable version of SuperLuckyBlock.

I AM NOT RESPONSIBLE FOR ANY DAMAGE CAUSED BY THE STABLE OR ALPHA VERSION.
----------, Jul 4, 2018

Added
- Custom block surprise. This will place the specified block at the luckyblock's location. I will add more modes soon.

Changed
- Reworked the CustomSurprises. I made it easier to add new modes and added new checks to prevent errors.

Fixed
- Fixed a bug where the config would take the default values for custom surprises when you had less than 4 surprises. It took the values from the config embedded in the jar, this way you could never have less than 4 custom surprises.

Other Info
I will slowly start reworking parts of the plugin because a part of the code base is more difficult to work with right now because of how I coded it in older versions.
----------, Jul 3, 2018

Added
- Added buckets surprise. This will drop a lava bucket, a water bucket and a milk bucket.
- Added falling emeraldblock. This surprise will be disabled on 1.9 and 1.8.
- Added new bstats statistic.
----------, Jun 29, 2018

Added
- Added an option to prevent players from placing luckyblocks in disabled worlds.
- Added an option to prevent players from breaking luckyblocks in disabled worlds.
- Added customizable messages for these options.

Changed
- Disabled world is now case-insensitive. This should resolve the issues some users were having with worlds not being disabled.
- [ #6] Player data will be instantly written to the playerdata instead of every 15 minutes. There is now reason to keep the data in memory. This also fixes a random error on playerdata write (I wasn't able to reproduce this).

Removed
- Removed some unused messages from the config.
----------, Jun 26, 2018

Fixed
- Fixed a problem where luckyblocks wouldn't give you surprises on 1.8 and 1.9 when using the default settings.
----------, Jun 23, 2018

Fixed
- Fixed a bug where the config would be almost empty on 1.8 and 1.9.
- Fixed an error when registering the crafting recipes on versions lower than 1.12.
----------, Jun 23, 2018

Added
- Added support for 1.8 and 1.9. When you use one of these version incompatible surprises will be disabled.

Because of API changes some surprises will be disabled on 1.8 and 1.9.
These surprises are:
  • FallingTNT
  • Husk
  • Stray
  • PolarBear
  • Guardian
  • ElderGuardian
  • GoldBlock
  • IronBlock
  • DiamondBlock
On 1.8, particles on break and on luckymining will also be disabled.

NOTE: This is still in beta!
----------, Jun 22, 2018

Added
- [ #2] Added an option to spawn water under the guardian surprise.
- [ #3] Added a way for me to send an important message to all plugin owners(will appear in console).

Fixed
- [ #1] Fixed console error on shutdown and when writing player data.
- Fixed ElderGuardian surprise spawning a Guardian.
----------, Jun 17, 2018

Added
- The plugin will now log all lucky block locations. I will need this for future updates. It is recommended that you update to this version, because at some point all non-logged luckyblocks will be useless.

Changed
- /slb uploadreport now sends a message with a link to my bug tracker. It will be removed in the future.

Announcement
From now on I will be using a bugtracker where people can report bugs and post suggestions. I will also post bug reports myself and use it as my todo list.
You may still report bugs in DM or on discord, but I prefer to use the bug tracker.
You don't need an account to use it.

Link to the website: https://sickskillz.xyz/bugtracker/
Report bugs here: https://sickskillz.xyz/bugtracker/bug_report_page.php

For suggestions use the suggestion category.
----------, Jun 13, 2018

33% off for a limited time.
Plugin costs $4 instead of 6$ while the sale is active!
----------, Jun 10, 2018

- Added Guardian surprise.
- Added ElderGuardian surprise.
- Fixed error on player data write.
----------, Jun 6, 2018

- Fixed /slb uploadreport on Linux systems. Most server hosts use a Linux OS.
----------, Jun 2, 2018

- Fixed an error while writing playerdata.
- Fixed the Husk surprise.
- Fixed the Stray surprise.
- Fixed the Polar Bear surprise.
----------, May 26, 2018

- Added Husk surprise.
- Added Stray surprise.
- Added Polarbear surprise.
----------, May 23, 2018

- Added a Tamed Wolf surprise
- Added a Tamed Ocelot surprise
----------, May 22, 2018

- Fixed a bug which caused the crafting recipe to always return a sponge regardless of the spongemode option.
----------, May 12, 2018

Fixed
- Fixed a bug where the disabled worlds setting was ignored.
- Fixed a bug which caused all skulls to be luckyblocks.
----------, Apr 26, 2018

- Fixed some errors when not using the sponge mode
----------, Apr 22, 2018

Added
- Added sponge mode setting (PluginSettings.SpongeMode). When enabling this all luckyblocks are sponges instead of skulls. Added for compatibility with arena minigames.
----------, Apr 22, 2018

30% OFF for a limited time!

Poll
I need your opinion. Please go to https://www.strawpoll.me/15168614 and choose option 1 or 2

**Option 1**
Open source SuperLuckyBlock so other developers can submit pull requests to add features and fix bugs. People will be able to get the plugin for free if I do this, but they will have to do this by themselves. I will not provide support to people who got it for free, only to the ones who paid for it (except for bug fixes as this will help the paying people too). People who paid will be able to get the compiled version.

This will also make it easier for you or your developer to modify the plugin.

**Option 2**
Keep it closed source like it is now.
----------, Feb 28, 2018

- Fixed config error on startup which causes the plugin to stop.

NOTE: If you downloaded and used 1.24 and get an error on startup, please delete your old config!
----------, Feb 14, 2018

- Added drop on right click (disabled by default)
- Added option to add the luckyblock to your inventory instead of dropping it on right click.
----------, Feb 9, 2018

I am planning to rewrite the whole plugin because I think my coding improved and because some classes are a bit messy/difficult to manage right now.
The version number of the rewrite will be 2.00.

But I need some information/feedback from users of the plugin about features I need to add/remove etc.

If you want, you can find a survey with some questions here: https://www.surveymonkey.com/r/2JQ2XLY
The survey is completely anonymous!
I will also destroy the data after I analyzed it.
----------, Jan 10, 2018

  • Fixed error when breaking luckyblocks for luckymining.
  • Fixed luckymining timeout.
  • Removed leftover debug messages
----------, Jan 9, 2018

  • Improved luckymining timeout performance, especially on large servers.
  • Created a better config update system. Missing values will be added automatically when you upgrade from the latest version. If you are not on the latest version it will reset your config.
----------, Jan 7, 2018

NOTE: This version will reset your config! I am currently working on a better way to handle config updates.
  • Added a giveall command. This commands gives all players in the server a luckyblock
  • Added superluckyblock.giveall permission
----------, Jan 1, 2018

  • Removed the pastebin upload option. This will result in a smaller JAR file.
  • The plugin is now built with maven so it is easier for me to manage dependencies.
  • Other small improvements which I forgot. I don't think you'll notice them.
----------, Dec 28, 2017

- Added support for WorldEdit.

- When you have WorldEdit installed, you can create custom surprises with the building mode.

- Added custom building surprises.

Building Surprise Example
Code (Text):
# This surprise will not be triggered unless you install WorldEdit and create the schematic file.
  # I recommend to remove this surprise, as it's just an example.
  # Schematics should be saved in plugins/SuperLuckyBlock-Pro/schematics
  # Location accepts the following values: player and block
  # When you select player, it will spawn the building at the player's location.
  # When you select block, it will spawn it at the block's location.
  CustomSurprise4:
    Mode: building
    Schematic: example.schematic
    Location: player
----------, Dec 7, 2017

NOTE: This update will reset and back up your old config. I made some important changes to it!

- Added a piston drop surprise.

- Added a sticky piston drop surprise.
----------, Dec 5, 2017

The new documentation is up!

You can find the documentation at https://sickskillz.xyz/docs/index.php?title=Main_Page.
Currently, it explains everything about the configuration and how to configure custom surprises. Feel free to contribute to the wikipages.
----------, Dec 1, 2017

Resource Information
Author:
----------
Total Downloads: 703
First Release: Nov 5, 2017
Last Update: Oct 5, 2024
Category: ---------------
All-Time Rating:
57 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings