GriefBeGone - Item/Block Disabler 2
Version 4.0 (Bukkit 1.7.2) is in beta testing!
Item/Block Disabler2 is a plugin designed to allow server administration to easily deny access to items and blocks. It allows you to choose what worlds you want items disabled in, and how you want the block disabled! It is extremely lightweight and is designed to have no exploits.
Configuration
On first run, a config.yml will be generated that looks like this:
Disable Crafting: message: '&4The force is not with you.' main: - '657:2' Disable Placing: message: '&4The force is not with you.' main: - '657:2' Disable Interact: message: '&4The force is not with you.' main: - '657:2' Disable Dropping: message: '&4The force is not with you.' main: - '657:2' Disable Pick-Up: message: '&4The force is not with you.' main: - '657:2' Disable Item In Inventory: message: '&4The force is not with you.' main: - '657:2' Disable Dispensing: main: - '657:2' Disable Spawning: main: - '657:2' Disable Brewing: main: - '657:2' Delete Item If Found: main: - '657:2'
The entries are self explanatory, but here's an example of how to disable items. Say I wanted to disable stone in the world "home", but not completely disable them. I only want to disable dropping and placing. I also don't want it to delete the disabled item should the plugin find one, and I want it to tell the player "You can not do that!" in dark red.
I also want wooden planks not being dispensed in the world "main". I also want it to clear the wooden planks out of the dispenser should it find some. My config would look like this:
Disable Crafting: message: '&4The force is not with you.' Disable Placing: message: '&4You can not do that!' home: - '1' Disable Interact: message: '&4The force is not with you.' Disable Dropping: message: '&4You can not do that!' home: - '1' Disable Pick-Up: message: '&4The force is not with you.' Disable Item In Inventory: message: '&4The force is not with you.' Disable Dispensing: main: - '5' Disable Spawning: Delete Item If Found: main: - '5'
The messages and item ids must be surrounded by apostrophes, not quotation marks! Make sure your messages don't have apostrophes, it will screw up the plugin!
Permissions
Item/Block Disabler2 Also supports permissions! This allows for administrators to apply disabling rules to only certain groups of people! Here are the permissions:
- disabler.reload - allows access to /disabler reload
- disabler.bypass.crafting.worldname.itemid - allows user to bypass crafting restrictions
- disabler.bypass.placing.worldname.itemid - allows user to bypass placing restrictions
- disabler.bypass.interact.worldname.itemid - allows user to bypass interacting restrictions
- disabler.bypass.dropping.worldname.itemid - allows user to bypass dropping restrictions
- disabler.bypass.pickup.worldname.itemid - allows user to bypass picking up restrictions
- disabler.bypass.inventory.worldname.itemid - allows user to bypass inventory restrictions
- disabler.bypass.delete.worldname.itemid - allows user to bypass item deletion
- disabler.bypass.all.worldname.itemid - allows users to bypass everything - New in V2.6
Note: With V3.1, you can use '*' as the item id to represent all item ids in the config and for permissions.
Say I wanted a player to not get their wooden planks deleted, but only a certain color of wooden planks in the world "main". I would give them:
disabler.bypass.delete.main.5:2
Miscellaneous
As mentioned before, I designed this to be extremely lightweight and exploit free. If you find a bug or an exploit, submit a ticket or shoot me a pm. I will fix it as fast as I can. Enjoy!
I realize this plugin may be used on Tekkit servers, but sadly, it was not designed for Tekkit servers. It is not my fault if there are bypasses on Tekkit servers. Update 23/4/13: Bukkit no longer accepts plugins compiled with 1.2.5. Versions compiled with 1.4.7 should still work on 1.2.5, but no guarantees!
Hi can you add the feature that allow to have or place certain amount of items per player?
i want this to allow only de usement of 10 block breakers per user.
ty a lo ve this plugin!
any update on this issue?
Did the config change?
@HaxtorMoogle
I'll have to look back at the old code to see what I changed.
well i had to rollback to version 1.0 as enchanted books were not being removed
I tried everything even every enchanted book with data values. Delete Item If Found: main: - Enchanted_Book - 403 - 403:0 - 403:1 - 403:2 - 403:3 - 403:4 - 403:5 - 403:6 - 403:7 - 403:16 - 403:17 - 403:18 - 403:19 - 403:20 - 403:21 - 403:33 - 403:34 - 403:35 - 403:48 - 403:49 - 403:50 - 403:51
1.0 works fine with Disabled Items: - 403
@chrislarsson
yes
is world
@superckl
I'll PM you the stuff when I get home, I am not home currently.
@Aishun
Could you tell me the file path of your java.exe?
Also, make sure you have java pointing to the right java.exe. You can change that in Control Panel -> java
@superckl
Install.
@Aishun
Did you update or install? Updating java 6 won't get you java 7.
@superckl
I already updated my java.
@ircopdd
Is your world named "world"? Make sure you have capitals correct too.
@Aishun
Install java 7.
I'm getting this error like everytime.
[SEVERE] Could not load 'plugins\Disabler.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.UnsupportedClassVersionError: me/superckl/disabler/Main : Unsupported major.minor version 51.0 at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:184) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230) at org.bukkit.craftbukkit.v1_4_6.CraftServer.loadPlugins(CraftServer.java:235) at org.bukkit.craftbukkit.v1_4_6.CraftServer.<init>(CraftServer.java:213) at net.minecraft.server.v1_4_6.PlayerList.<init>(PlayerList.java:52) at net.minecraft.server.v1_4_6.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_4_6.DedicatedServer.init(DedicatedServer.java:104) at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:849) Caused by: java.lang.UnsupportedClassVersionError: me/superckl/disabler/Main : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:80) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:173) ... 9 more
Disable Item In Inventory:
world:
- 322:1
Delete Item If Found:
world:
- 322:1
no work
@HaxtorMoogle
Could you explain a little more?
Having trouble disabling use of enchantment books on anvils?
I ended up having to roll back to 1.0 to have it remove the books
@HaxtorMoogle
Uploaded a fix.
I am getting this error randomly in console all I disable is the enchanted books.
13:45:41 [SEVERE] Could not pass event CraftItemEvent to Disabler v2.0 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:35) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462) at net.minecraft.server.v1_4_6.PlayerConnection.a(PlayerConnection.java:1204) at net.minecraft.server.v1_4_6.Packet102WindowClick.handle(SourceFile:31) at net.minecraft.server.v1_4_6.NetworkManager.b(NetworkManager.java:290) at net.minecraft.server.v1_4_6.PlayerConnection.d(PlayerConnection.java:112) at net.minecraft.server.v1_4_6.ServerConnection.b(SourceFile:39) at net.minecraft.server.v1_4_6.DedicatedServerConnection.b(SourceFile:30) at net.minecraft.server.v1_4_6.MinecraftServer.r(MinecraftServer.java:598) at net.minecraft.server.v1_4_6.DedicatedServer.r(DedicatedServer.java:224) at net.minecraft.server.v1_4_6.MinecraftServer.q(MinecraftServer.java:494) at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:427) at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:849) Caused by: java.lang.NullPointerException at me.superckl.disabler.Main.onItemCraft(Main.java:237) at sun.reflect.GeneratedMethodAccessor270.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 15 more
An idea I had. have each item configurable so you can disabled only in creative, survival or both.
@Remi_Scarlet
I agree, but I'm not exactly sure how I would implement that into this plugin. Perhaps I will make a new one for that.