ChestLock
Version 1.7.1
NOTE: This plugin requires you have Vault enabled on your server
This is a very quick and easy way to protect your Chests. No commands needed (except for advanced features)
- When a chest is locked noone can open it, not even the owner.
- When a chest is unlocked everyone can open it.
- Only the owner can unlock/lock a chest.
- An admin* can however unlock a chest if he is holding dirt (configurable)
- Only the owner and admins* can destroy owned chests
- In order to disown a chest a player must punch it while holding dirt (configurable)
- admins are defined by having the permission node chestlock.admin (or isOp() if PermissionsEx is not installed)
Features:
- Supports all major Economies and Permission Plugins thanks to Vault
- You can customize what command this plugin uses by editing the plugin.yml (found inside the plugin jar file)
- MultiWorld support
- Configurable properties
- Custom messages
- Simple lock/unlock
- Quick to claim (no looking up confusing commands) Just Punch it!
- Lock Chests, Furnaces, Dispensers, Iron Doors, Wood Doors, Trap Doors, and Fence Gates
- Limit the amount of Chests/Furnaces/Dispensers/Doors Players can lock
- Configure which items unlock/own/disown
- In game tool list (/lock list tools)
- Add CoOwners who can also lock/unlock
- CoOwners can be a specific Player or a specific Permissions Group
- Make chests/doors unlockable so users can't claim them
- Doors can be locked so they can only be open using a specific key
- Hold an item and click on a Locked door to try to use that item as a key
- Players who do not log in to the server in a set amount of days will have their chests automatically disowned (optional)
Permission Nodes:
- chestlock.lock = Needed to own/lock/unlock a chest/furnace/dispenser/door (/lock)
- chestlock.usekey = Needed to open a locked door
- chestlock.list.chests = Needed to list how many chests/furnaces/dispensers you own and their locations (/lock list chests)
- chestlock.list.doors = Needed to list how many doors you own and their keys and locations (/lock list doors)
- chestlock.list.owner = Needed to see who the owner and CoOwners are of the target chest/furnace/dispenser/door (/lock list owner)
- chestlock.list.clear = Needed to disown all of your chests/furnaces/dispensers/doors (/lock list clear)
- chestlock.coowner = Needed to add a CoOwner to your chest/furnace/dispenser (/lock coowner)
- chestlock.free = Lock chests/furnaces/dispensers free of charge
- chestlock.admin = Needed to access other Players' chests/furnaces/dispensers/doors
- chestlock.limit.[type].[x] = limit the number of blocks a player can own (largest number is taken if player has more than 1 node)
- type = chest, furnace, dispencer, or door
- x = -1(no limit) or a number 0 through 100
- ex.
- chestlock.limit.chest.-1 = can own any number of chests
- chestlock.limit.furnace.23 = can own up to 23 furnaces
- chestlock.limit.dispencer.0 = cannot own any dispensers
- chestlock.limit.door.100 = can own up to 100 doors
Commands:
[] indicates a required field.
- /lock - Locks the target door with the specified Item. You then must use that type of item to open the Door. If you are not holding anything then the target Door will be set as unlockable
- /lock never - Sets the target Chest/Furnace/Dispenser as unlockable
- /lock coowner group add [Name] - Adds the specified Group as a Co-Owner of the target Door/Chest/Furnace/Dispenser
- /lock coowner group removes [Name] - Removes the specified Group as a Co-Owner of the target Door/Chest/Furnace/Dispenser
- /lock coowner player add [Name] - Adds the specified Player as a Co-Owner of the target Door/Chest/Furnace/Dispenser
- /lock coowner player add [Name] - Adds the specified Player as a Co-Owner of the target Door/Chest/Furnace/Dispenser
- /lock list tools - Lists all of the ChestLock tools that you may use to Own/Lock/etc. Chests, Furnaces, and Dispensers
- /lock list door - Lists all of the Doors that you own
- /lock list chest - Lists all of the Chests that you own
- /lock list chest - Lists all of the Furnaces that you own
- /lock list chest - Lists all of the Dispensers that you own
- /lock list owner - Lists the Owner and Co-Owners of the target Door/Chest/Furnace/Dispenser
- /lock list clear - Disowns all of your Doors, Chests, Furnaces, and Dispensers
Tutorials:
Setup:
To Lock a Chest:
- Place a chest
- Punch it - Now you are the owner and only you can lock/unlock it
- Punch it again - Now the chest is unlocked!
To Lock a Door:
- Target the door and type "/lock" - The item in your hand is set as the key
- Click on the door while holding the 'key' to open the door
Video:
Video by 0zyke
@deleted_7036002
@eldarstorm
@FaultlessWall
I uploaded version 1.6.0, fixed many things in preparation for 1.2 I added support for trap doors and fence blocks. I also added an option to disown a Player's Chests if they don't log on for a set amount of time.
@Codisimus
You just show the support and dedication of the bukkit community. I know us server admins can nag but we ourselves get nagged. We appreciate all what you do for us, and your continued support for projects you endeavor in. Thanks ever so much, Nazerb
@deleted_7036002
I am uploading the new version soon (hopefully b4 I have to go into work)
@Codisimus
Is this fixed? Yet as chests keep unlocking
@FaultlessWall
@eldarstorm
I finished testing on a few of my other plugins a new way to manage data that will fix these types of issues. I will add it to this plugin next.
Same issue here, its starting to become a rather large problem on our server.
Fix: The plugin dose not save players chests correctly. When I shut off my server and turn it back on every player has to re-buy the right to own there chest. Please fix this problem when you can.
Thanks,
FaultlessWall
@CrashNT
Is that happening? bc that should never occur.
@astartica
I will test the permissions when I get a chance
oh sorry. when i use the permissions i get the message that i dont have permissions
@Codisimus
Ok what if it was set to true and it says saving disabled? does that mean chestlock is not saving any new chests?
@astartica
What happens when you try to use them?
@hqt99
Only whole numbers are supported, I will try to fix this soon.
@CrashNT
locked Chests were somehow destroyed, these values are being deleted in the save file. You can just ignore these messages, maybe I will add an option to not post these messages.
2012-01-20 01:24:01 [SEVERE] [ChestLock] Invalid blocktype for MelvinJonas;CrashCraft;413;85;-880;true;[];[]; 2012-01-20 01:24:01 [SEVERE] [ChestLock] AutoDelete set to true, errored data deleted 2012-01-20 01:24:01 [SEVERE] [ChestLock] Invalid blocktype for MelvinJonas;CrashCraft;413;85;-878;true;[];[]; 2012-01-20 01:24:01 [SEVERE] [ChestLock] AutoDelete set to true, errored data deleted 2012-01-20 01:24:01 [SEVERE] [ChestLock] Invalid blocktype for happybootse123;wilderness;-92;49;84;true;[];[]; 2012-01-20 01:24:01 [SEVERE] [ChestLock] AutoDelete set to true, errored data deleted 2012-01-20 01:24:01 [SEVERE] [ChestLock] Invalid blocktype for happybootse123;wilderness;-95;51;86;true;[];[]; 2012-01-20 01:24:01 [SEVERE] [ChestLock] AutoDelete set to true, errored data deleted
How I get around this? Whats this mean? Thanks in advance
I am trying to make the price to lock a chest .75 (75 coins on my server) but when i set it lower then 1 i get
18:21:25 [SEVERE] Failed to load ChestLock 1.5.3 18:21:25 [SEVERE] java.lang.NumberFormatException: For input string: "0.75" 18:21:25 [SEVERE] at java.lang.NumberFormatException.forInputString(Unknow n Source) 18:21:25 [SEVERE] at java.lang.Integer.parseInt(Unknown Source) 18:21:25 [SEVERE] at java.lang.Integer.parseInt(Unknown Source) 18:21:25 [SEVERE] at com.codisimus.plugins.chestlock.ChestLock.loadSetting s(ChestLock.java:168) 18:21:25 [SEVERE] at com.codisimus.plugins.chestlock.ChestLock.onEnable(Ch estLock.java:75) 18:21:25 [SEVERE] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlug in.java:230) 18:21:25 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin( JavaPluginLoader.java:989) 18:21:25 [SEVERE] at org.bukkit.plugin.SimplePluginManager.enablePlugin(Si mplePluginManager.java:280) 18:21:25 [SEVERE] at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftSe rver.java:190) 18:21:25 [SEVERE] at org.bukkit.craftbukkit.CraftServer.enablePlugins(Craf tServer.java:173) 18:21:25 [SEVERE] at org.bukkit.craftbukkit.CraftServer.reload(CraftServer .java:443) 18:21:25 [SEVERE] at org.bukkit.Bukkit.reload(Bukkit.java:188) 18:21:25 [SEVERE] at org.bukkit.command.defaults.ReloadCommand.execute(Rel oadCommand.java:22) 18:21:25 [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCo mmandMap.java:168) 18:21:25 [SEVERE] at org.bukkit.craftbukkit.CraftServer.dispatchCommand(Cr aftServer.java:385) 18:21:25 [SEVERE] at org.bukkit.craftbukkit.CraftServer.dispatchCommand(Cr aftServer.java:381) 18:21:25 [SEVERE] at net.minecraft.server.MinecraftServer.b(MinecraftServe r.java:573) 18:21:25 [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServe r.java:550) 18:21:25 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftSer ver.java:434) 18:21:25 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(Sour ceFile:465)
Any ideas?
hy
i have a problem with the permissions of the plugin permission plugin is PermissionsEX
these permissions does not work chestlock.list.clear chestlock.list.chests chestlock.list.doors
@Codisimus
Thank you for all your help :) Worked perfect.
(I always use AutoDelete, so every single chest is in use. I know, they're hoarders...)
@watarimon
http://dl.dropbox.com/u/23866327/chestlock.save
There is the save file converted to the new format. no doubt it will bring up lots of errors (unless every single chest that is in the save file is still there) but you can set AutoDelete to true to get rid of these error-ed lines. after that a reload should produce no errors. let me know how it works out.
@Codisimus
Here is the save file http://dl.dropbox.com/u/6898448/chestlock/chestlock.save
Appreciate any help :)
@watarimon
You could send me the file and I could fix it or automate a fix for it. Or if you would rather do it yourself, the format is
Format for safes (chests/furnaces/dispensers)
Format for doors
basically you will want lockable to be set to true in most cases, and group will be left blank. If any of your chest have the coowner "unlockable" then set lockable to false.
Like I said, I might be able to modify the code the automatically change it as long as I can see what I'm dealing with.
@Codisimus
I tried the upgrade step by step idea and only got to about version 1.2.2 then started to get serious errors in console. If I delete and recreate the chestlock.save file it works like a charm but I'd like to convert the old one with 1300 lines of chests and doors.
old 1.1 chest: watar;Blenkebo;34;63;-107;,;
new 1.5.3 chest: watar;Blenkebo;34;63;-107;true;[];[];
The doors seems to be the same syntax both old and new so they should work untouched. Could you help me understand the syntax and I'll change the file by hand, line for line...
@Noppes
so what you are saying is that nothing should happen when you punch it, unless you're holding air?