High performance sign-based lock plugin, highly customizable
https://www.spigotmc.org/resources/lockettepro-uuid-support.20427/
Download | Configuration | Wiki | GitHub
Transfer between Lockette & LockettePro
Remember the sign-based lock plugin Lockette that is popular for years? LockettePro is a deep remade & rewrite of the original Lockette. It has massive performance enhancement, fixed bugs and very customizable. LockettePro's behavior is 100% same as Lockette. You may switch between those plugins anytime.
I am deeply depressed with the original Lockette. Its codebase is messy, performance is bad, unnecessary checks are everywhere... It also uses legacy deprecated methods, having a piston-related bug for years... It is not very possible to fix all the issues, so I started to start a brand new plugin. And today, I am proudly to present you the ultimate sign lock plugin, LockettePro.
This test is focused on the most serious performance issue caused by hoppers InventoryMoveItemEvent. The event happens when hoppers are trying to pull items from the container above. Test is performed on my server with a monstrous Chest-Hopper rig consisting 10000 sets of locked chest and hoppers.

Lockette: 41.8 microseconds per event

LockettePro without cache: 19.4 microseconds per event

LockettePro with cache set to 10 seconds: 4.3 microseconds per event

The usage of Lockette and LockettePro are exactly the same. For players, just hold a sign in your hand, then right click a chest or any lockable block. If you want to lock a door, you may put a sign on the block above or below the door too. You may also SHIFT+RIGHT CLICK the block to prevent it get automatically locked, or you can write [Private] text manually on signs as well. After locking, you may add a second sign on chest/block will add a [More Users] sign so you can add more users to a chest/block. In order to add another user name on a sign, first right-click to select a sign, then enter /lock <line number> <name>. For server owners please take a look at the configuration below.
Main command is /lock. Aliases contains /lockit, /lockette and /lockettepro.
https://github.com/connection-lost/LockettePro
If a player does not have the "break" permission to a block due to WorldGuard or Residence, then he cannot lock it.
If a sign has a user line formatted "[TownName]", this means any player in town "TownName" will have access to this chest. Players are not allowed to lock a chest in the wilderness unless he has permission lockettepro.towny.wilds
If a sign has a user line formatted "[FactionName]", this means any player in faction "FactionName" will have access to this chest.
Some plugins are born to compatible with Lockette/LockettePro thanks to Bukkit's event priority mechanics. Players are not able to lock a chest/block that has already protected by another plugin. Known compatible plugin includes ChestShop.
The goal of LockettePro is to deliver a high-quality, and high performance sign-based lock plugin that can completely replace original Lockette. Like LockettePro? Missing features? Issues or bugs? What can I help to make it better? Leave a comment in the discussion, I want to know!