Support will only be provided to buyers of the premium version!
I now have a
discord server for my free plugins! It is meant for people to discuss things related to my plugins, share config files/snippets, Lua scripts, help each other or come up with new ideas/suggestions. You can join here:
https://discord.com/invite/D2VfXUYsSg
Do not expect support in this discord server for my free plugins!
SuperLuckyBlock is a luckyblock plugin that gives you FULL control over its features. You are able to create your own surprises, create your own custom luckyblocks, create your own wands, modify almost every single part of the plugin, and much more! You are able to use SuperLuckyBlock in any way you want!
(Premium Only) Custom Surprises Exclusive to SuperLuckyBlock: create your own surprises and modify them to your own likings. Spawn mobs, drop items, create buildings, execute commands, or all of these at once!
Lua Surprises SuperLuckyBlock allows you to create surprises in the Lua scripting language. This allows you to create surprises in any way you want! You are able to fully interact with the Spigot API, allowing you to create any surprise you want!
Untrusted Script (All scripts are untrusted by default, runs in a sandbox):
Code (Text):
--Example script that can run untrusted.[/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE]
[SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5]
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()
player:setFireTicks(fireTicks)
player:chat("I'm on fire for " .. fireTicks .. " ticks!")
end
Trusted Script (does not run in a sandbox):
Code (Text):
--Example script that can only be ran in trusted mode.[/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE]
[SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5][SIZE=6][SIZE=5]
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)
(Premium Only) Unlimited LuckyBlocks SuperLuckyBlocks allows you to create unlimited CUSTOM luckyblocks. You are able to set the skin of the skull, require permission, create custom surprises, and more! You are able to use these as lootbox, a donation perk, or just a block that is craftable. NOTE: The free version can only have ONE luckyblock!
(Premium Only) Wands Wands are special weapons which all do different, special things. They can shoot entities, spawn lightning, or even heal the player. All wands can be found in the spoiler below:
- Slime Wand - Lets the player shoot a slime of configurable size. - TNT Wand - Shoots a primed TNT. - Blaze Wand - Shoots a blaze entity. - Fireball Wand - Shoots a configurable amount of fireballs with a 0.5-second delay. - Lightning Wand - Strikes lightning on the block the player is aiming at. - Heal Wand - Heals the player with the configured amount of health.
(Premium Only) Custom Wands Do you not like the built-in wands or are there any missing wands? SuperLuckyBlock allows you to create your own wands that can do the following things: - Throw blocks - Spawn entities - Execute commands
Chance Based Surprises Surprises in SuperLuckyBlock aren't just randomly selected, they use a chance system so you can decide which surprises are rarer than the other ones! Don't want to see everyone walking around with a pretty strong lucky sword? No problem! Just lower the chance and it should be solved!
(Premium Only) LuckyActions Only getting luckyblocks from crafting would be boring, right? That's why SuperLuckyBlock contains a system named LuckyActions!
LuckyActions gives your players a configurable chance to get a luckyblock while performing certain actions in the game. This makes being active on your server more fun and rewarding. Currently, supported actions are: - Mining - Other actions will be added later!
Custom Messages SuperLuckyBlock allows you to add a message to each surprise, including custom surprises!
Crafting Recipe LuckyMining isn't the only way to get luckyblocks. You are able to enable and customize a crafting recipe, so your players are able to craft the luckyblocks.
(Premium Only) Shop SuperLuckyblock allows you to buy or sell Luckyblocks using a GUI. You can set any price you want.
PlaceholderAPI support PlaceholderAPI can be used to display information of SuperLuckyBlock and the player data collected. More info can be found in the compatibility section.
Full control SuperLuckyBlock allows you to change and manage a lot of things. You can disable luckyblocks in a specific world, you can set permissions, change the skull skin, customize the sound and particles on break, and a lot more.
Survival In my opinion, luckyblocks make survival way more fun. Players like testing their luck. Will they get a lucky sword, or maybe an explosion? It makes their experience a bit more unique and fun.
Lucky Skywars You can give your skywars minigame a unique twist by adding luckyblocks to it. I recommend adding some extra custom surprises like buildings so it's even more fun!
Prison With the use of sponge mode, you can use sponges in your prison mines to make mining a lot more interesting, fun, and rewarding for your players!
Other Minigames You can use SuperLuckyBlock with any minigame that allows you to break blocks as long as it saves your map or rolls it back.
Lootboxes You know, those boxes most popular servers use? Not that unique right? What if you give your players luckyblocks as a reward? They can use them anywhere they want and get a nice (or not so nice) surprise.
Fun Of course, you can use luckyblocks just for fun. You could play with your friends, create maps or staircases with luckyblocks and do a luckyblock race or just see who is the luckiest. Everything is possible!
Requirements Minecraft 1.13 or higher is required. Java 8 or higher is required. Other plugins listed below are optional.
PlaceholderAPI SuperLuckyBlock contains one placeholder at the moment: %superluckyblock_luckyblocksbroken% - allows you to display the number of blocks broken.
Vault SuperLuckyBlock supports the buying and selling of luckyblocks via the /slb shop command. You will need Vault and an economy plugin(you can just use essentials if you don't know one).
WorldEdit WorldEdit is required to spawn buildings when using custom building surprises.
<> = required, [] = optional /slb give <luckyblock name> <player> [amount] - Gives the specified luckyblock to the specified player. /slb giveall <luckyblock name> [amount] - Give a luckyblock to all players currently online. /slb help - Displays this page. /slb reload - Reloads the configuration. Might not reload all options, so please restart your server if this happens.
- superluckyblock.help - gives you permissions to use /slb help - superluckyblock.give - gives you permission to use /slb give - superluckyblock.giveall - gives you permission to use /slb giveall - superluckyblock.reload- gives you permission to use /slb reload