Quick Links
Download | Configuration | Wiki | GitHub | Special Features
Transfer between Lockette & LockettePro
Where did you go?
Download | Configuration | Wiki | GitHub | Special Features
Transfer between Lockette & LockettePro
Update from January 31, 2021:
I am restarting this project very soon. I saw several forks updating the project thru 1.14 (the version that breaks the plugin).
I will start officially restart maintaining this plugin again before 1.17 get released.
Want to contribute and update the plugin now? PR in GitHub!
17w47a Snapshot Concerns
In the latest snapshot, Mojang introduced a feature to allow any chests to be placed adjacent to each other. This may cause issue in the further Minecraft versions (1.13+). I will remove this warning as soon as the problem is addressed.
What is 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 completely customizable.
Why LockettePro?
I love Lockette, but as time goes by, I get deeply depressed with it. 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.
LockettePro - Pros
* No database. All information required for a lock is recorded on the sign.
* Switch to LockettePro and switch back to Lockette worry-free anytime.
* Absolutely better performance. Performance test comparison below.
* Language files are editable, with UTF-8 support.
* Able to disable "bloat" features easily with no affect to performance.
* Customizable. For instance, you can set lockable for every single block.
* Just saying original Lockette's UUID support is not working between server restarts...
LockettePro - Cons
* Lack of admin snooping alert and I am not likely to add this soon.
* (Well seems like I have resolved every other cons, great!)
Performance
Spoiler: LockettePro vs Lockette Performance - Using Timings v2
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. A hopper tries to pull an item from a chest ever 8 ticks, resulting ~1250 interactions per tick.
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
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
Dependency
ProtocolLib if you use UUID support. Soft-depended supported plugins could be found as a list below.
How to Use LockettePro?
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.
Spoiler: Advanced Usage
Even more information, please see
Wiki.
Share the chest with another user:
After claiming the chest, you can add another user on the sign. First, right click the sign, then enter /lock 3 <user name>
Share the chest with everyone:
Same as above, you just use [Everyone] (with brackets) in the username.
Add another sign:
If one sign is not enough, you may hold a sign and right click on another surface. It will snap on the surface and become a [More User] sign automatically. Placing the sign while holding SHIFT will bypass the sign creation.
Timer with doors:
I have no idea why Lockette is doing this, but I am adding this feature anyways. If you add a line [timer:X] (with brackets, and X means an integer) to a door lock, the door will automatically close after X seconds.
After claiming the chest, you can add another user on the sign. First, right click the sign, then enter /lock 3 <user name>
Share the chest with everyone:
Same as above, you just use [Everyone] (with brackets) in the username.
Add another sign:
If one sign is not enough, you may hold a sign and right click on another surface. It will snap on the surface and become a [More User] sign automatically. Placing the sign while holding SHIFT will bypass the sign creation.
Timer with doors:
I have no idea why Lockette is doing this, but I am adding this feature anyways. If you add a line [timer:X] (with brackets, and X means an integer) to a door lock, the door will automatically close after X seconds.
Commands and Permissions
Main command is /lock. Aliases contains /lockit, /lockette and /lockettepro.
* All players have the permission to lock a chest and edit a chest by default.
* In order to stay consistent with original Lockette, Towny server players need "lockettepro.towny.wilderness" in order to lock chests in the wilds.
* Edit a sign: /lock <line number> <player>
* Reload configuration: /lock reload, requires permission lockettepro.reload
* Admin break lock permission: lockettepro.admin.break
* Admin use block (snoop chests) permission: lockettepro.admin.use
* Admin override placing interference blocks permission: lockettepro.admin.interfere
* Admin edit any sign permission: lockettepro.admin.edit
* More info please see the wiki page.
Configuration
DO NOT TURN ON FEATURES THAT YOU ARE NOT FAMILIAR WITH BEFORE READING THE PROPER SECTION ON WIKI!
Head to GitHub wiki page for configuration. [ config.yml] [ lang.yml]
It is currently NOT recommended to use lock expiry feature since it will be changed. Please avoid using it in order to prevent conflicts.
Source
https://github.com/connection-lost/LockettePro
Supported Plugins & Special Lock Line Features
WorldGuard & Residence:
If a player does not have the "break" permission to a block due to WorldGuard or Residence, then he cannot lock it.
Towny:
If a sign has a user line formatted "[SomeName]", this means any player in town or nation "SomeName" will have access to this chest.
Players are not allowed to lock a chest in the wilderness unless he has permission lockettepro.towny.wilds
Factions (from MassiveCraft):
If a sign has a user line formatted "[FactionName]", this means any player in faction "FactionName" will have access to this chest.
SimpleClans:
If a sign has a user line formatted "[clantag]", this means any player in that clan will have access to this chest.
Vault:
If a sign has a [GroupName] in user line, anyone in that group could access it. The group is taken according to Vault.
Scoreboard Teams:
If a sign has a [TeamName] in user line, anyone in that team could access it. The team is Bukkit's scoreboard.
Other plugins:
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.
If you want some plugin to be supported, that plugin must be at least non-trivial with proper API. If that plugin is a premium plugin, source or a free copy of that plugin (from author) is required for me to test it properly as well.
Issues
Please post issues to GitHub issue page if possible or leave a comment at discussions. Critical issues (exploits) please PM @connection_lost . Make sure to bring as many information as possible, such as error log, existing plugins etc..
Known Issues & FAQ
Spoiler: In the spoiler
1. I have issues with LockettePro + UUID Support + Minecraft 1.8.8...
Please note there is an issue with ProtocolLib, not LockettePro. A fixed version of ProtocolLib by my friend can be found here: http://ci.yumc.pw/job/ProtocolLib/
2. FactionsUUID is not supported...
Soon
Please note there is an issue with ProtocolLib, not LockettePro. A fixed version of ProtocolLib by my friend can be found here: http://ci.yumc.pw/job/ProtocolLib/
2. FactionsUUID is not supported...
Soon
Braggins
The goal of LockettePro is to deliver a high-quality, and high performance sign-based lock plugin that can replace original Lockette. My server uses LockettePro too, and I will take full responsible for this plugin.
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!
* My English is not very good, if I made some errors please don't laugh at me
Special Thanks
> bookone, CharltonJay, clovisd, HotpotKnight, Jiong8799, 小小马 for discovering critical issues.
> Alarar for Spanish translation (lang_es.yml)
> Maxetto for Italian translation (lang_it.yml)
> And all pull requests on GitHub!
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.8, 1.9, 1.10
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
LockettePro - UUID Support [Abandoned - restarting] is a free Minecraft Java mod. Compatible with Minecraft 1.8, 1.9, 1.10, 1.11 and newer. Downloaded 128,162 times (via Spigot). Download it and open it directly in the game.