
PrivateChest 2.1
Chest protection plugin with anti-explosion and permission support.
PrivateChest v2.1 - Major Update Release
🆕 What's New
🔒 Enhanced Security System
- Complete Hopper Protection: Hoppers, droppers, and dispensers can no longer bypass chest protection
- Block Placement Protection: Players cannot place blocks adjacent to protected containers to bypass security
- Automatic Cleanup: Orphaned data from removed containers is automatically cleaned up to maintain performance
🏷️ Container Renaming System
- Custom Names: Give your locked containers custom names up to 16 characters
- Easy Commands: Use
/renamecontainer <name>
or/renamecontainer remove
- Smart Validation: Names are automatically validated for compatibility
📊 Advanced Limit System
- Container-Specific Limits: Set different limits for chests, barrels, and shulker boxes
- Granular Permissions: Fine-tune exactly how many of each container type players can lock
- Backward Compatible: Existing limit configurations continue to work unchanged
🌐 Cross-Platform Support
- Bedrock Edition: Full compatibility with Bedrock Edition players via Floodgate/Geyser
- Smart Messages: Messages automatically adapt for optimal display on each platform
- Universal Access: Java and Bedrock players can seamlessly interact with the same protected containers
🚀 How to Install
- Stop your server
- Replace the old PrivateChest.jar with the new v2.1 file
- Start your server - all configurations will be automatically updated
- No data loss - all existing locked containers remain protected
⚙️ New Commands
/renamecontainer <name>
- Set a custom name for the container you're looking at/renamecontainer remove
- Remove the custom name from a container
🔧 New Configuration Options
Add these to your config.yml
if you want to customize the new features:
# Container-specific limits (optional)
container-limits:
enabled: false # Set to true to use granular limits
types:
chest: 10
barrel: 5
shulker_box: 2
# Automatic cleanup (enabled by default)
auto-cleanup:
periodic-enabled: true
📋 New Permissions
privatechest.limit.chest.X
- Allows locking X chestsprivatechest.limit.barrel.X
- Allows locking X barrelsprivatechest.limit.shulker_box.X
- Allows locking X shulker boxes
🔄 Compatibility
- Minecraft: 1.16+ (Spigot/Paper)
- Java: 8+
- Bedrock: Supported via Floodgate/Geyser
- Existing Data: Fully compatible - no migration needed
📝 Notes for Server Owners
- All existing locked containers continue working without any changes
- Configuration files are automatically updated while preserving your custom settings
- The new features are optional - enable only what you need
- Performance improvements through automatic cleanup system
- Full backward compatibility with existing permissions and configurations
🐛 Bug Fixes
- Fixed rare cases where hoppers could access protected containers
- Improved double chest detection and protection
- Enhanced permission checking for edge cases
- Better error handling for corrupted data files
Download PrivateChest v2.1 and enjoy enhanced security with powerful new features! 🎉
What's New
Enhanced Security
- Password Encryption: All passwords are now securely hashed using SHA-256 with salt. Your old passwords will work and be automatically upgraded when used.
- Better Data Protection: Significantly improved security against potential data breaches.
Trust System
- Share Access Safely: Give other players access to your locked chests without sharing passwords
- New Commands: /trust <player> and /untrust <player>
- Easy Management: Use /trust list to see who you trust, /untrust all to remove everyone
Sign Protection
- Visual Locking: Place a sign with [Private] on the first line near your chest to lock it
- No Commands Needed: Perfect for players who prefer visual interactions over typing commands
- Break to Unlock: Simply break the sign to unlock your chest
Chest Limits
- Permission-Based Limits: Control how many chests players can lock based on their rank/permissions
- Perfect for Economy Servers: Reward VIP players with more chest locks
- Admin Control: Set custom limits from 1 to unlimited chests per player
⚡ Performance Improvements
- SQLite Support: Optional database storage for servers with many locked chests (better performance)
- Optimized Code: Faster chest interactions and reduced memory usage
- Smart Caching: Improved response times for large servers
Developer API
- Public API: Other plugins can now safely interact with PrivateChest
- Better Integration: Perfect for custom plugins and advanced server setups
Migration from v1.x
✅ Fully Automatic Migration
- All your existing locked chests will continue working normally
- Passwords are automatically upgraded to secure format when used
- No manual configuration needed - just replace the plugin file
- All new features are disabled by default for compatibility
Migration Steps:
- Backup your plugins/PrivateChest/ folder (recommended)
- Stop your server
- Replace the old PrivateChest.jar with v2.0.0
- Start your server
- Enable new features in config.yml if desired
⚙️ Configuration
New options in config.yml:
- storage-type: yaml (or "sqlite" for better performance)
- enable-sign-protection: true
- enable-chest-limits: false
- default-chest-limit: 5
Permission Examples
# Chest Limits (when enabled)
privatechest.limit.unlimited # No limits
privatechest.limit.100 # Up to 100 chests
privatechest.limit.25 # Up to 25 chests
privatechest.limit.10 # Up to 10 chests
privatechest.limit.5 # Up to 5 chests
- Fixed rare double chest synchronization issues
- Improved hopper protection reliability
- Better error handling for corrupted data
- Enhanced explosion protection
Perfect for survival servers, economy servers, and any server that wants secure, user-friendly chest protection!
Compatible with Minecraft 1.16.x - 1.21.5 | Tested on Paper, Purpur, Pufferfish
PrivateChest v1.6.3 - Changelog
This update focuses on fixing the long-standing double chest protection issue and brings several improvements to stability and usability.
🐛 Fixed
- Critical Double Chest Bug: Resolved the major issue where only one half of a double chest (large chest) would be protected. Now, both halves are correctly identified and secured during locking, interaction (
/unlockchest
), block breaking, and hopper interactions. This ensures complete protection for double chests and barrels.
✨ Changed / Improved
- Enhanced Hopper Protection: Hoppers are now reliably prevented from both pulling items from and pushing items into any protected container (single chests, double chests, barrels).
- Corrected
/clearchests
Logic: The/clearchests
command now functions as intended, specifically targeting and removing only "orphaned" entries fromdata.yml
(protections for containers that no longer exist or are invalid). It no longer affects valid, existing protections. - Improved
DataManager
: Added more robust error handling and console logging when loadingdata.yml
. This will help server administrators diagnose issues with corrupted or invalid location entries. - Auto-Updating
messages.yml
: Themessages.yml
file will now automatically add any new message keys from future plugin updates, preserving existing user customizations. - Refined Configuration Files:
config.yml
: Removed non-functional options (allow-double-chests
,unlock-duration-seconds
,allow-shared-access
) to prevent confusion. Added clearer comments.messages.yml
: Added new messages for recent changes, improved wording on existing ones, and added detailed comments to explain each message's purpose.
- Updated
plugin.yml
: Corrected version number and added/pc
as an alias for/privatechest
. - Code Refinements: General internal code improvements for stability and maintainability.
📢 PrivateChest 1.6.2 – Hopper Exploit Patch & Full Container Protection
🛡️ New Protections:
-
🚫 Hoppers can no longer extract items from any protected container.
-
🔐 Applies not only to chests and barrels, but automatically supports any future container types added to PrivateChest (like furnaces, droppers, shulkers, etc.).
-
🧠 Uses smart event handling via
InventoryMoveItemEvent
to detect and cancel unauthorized item transfers.
🔧 Technical Improvements:
-
Protection now checks container ownership via
ChestLocker.isChestLocked(...)
, ensuring consistent behavior. -
No performance impact; event runs only when hoppers are in use.
✅ Recommended For:
-
Any server using hoppers, redstone automation, or container protection systems.
-
Servers upgrading from 1.6.1 or earlier.
Thank you for using PrivateChest Free!
If you find the plugin helpful, please consider leaving a ⭐ review or joining our support community.
Support available in English and Spanish.
-
✅ Fixed: Admins with the privatechest.admin permission could not open locked chests they did not own.
-
🔓 Admins can now access any protected chest without being the owner, as originally intended.
-
🔔 Optionally shows a message when an admin accesses a chest (notify-admin-on-open in config).
-
This fix improves the reliability of admin control over protected containers.
-
No changes were made to the core protection or chest data structure.
-
Server owners, admins, moderators, and anyone with admin permissions.
If you enjoy the plugin, consider leaving a review and reporting bugs or suggestions.
Support is available in English or Spanish. 💬
📦 PrivateChest v1.6
🧹 New Feature: Smart Auto-Cleanup on Startup
• The plugin now detects and removes invalid chest entries from data.yml when the server starts.
• If a chest no longer exists in the world (e.g., was broken externally or by other plugins), it will be skipped and cleaned.
• Keep your data file clean and accurate without running manual cleanup commands.
🛠 Configurable Option:
• Toggle this behavior in `config.yml`:
auto-cleanup-on-start: true
📋 Console Feedback:
• [PrivateChest] Loaded locked chests: 48
• [PrivateChest] Auto-cleaned 3 invalid chest entries.
---
🌐 Multilingual Ready
• All messages and settings remain fully translatable via `messages.yml` and `config.yml`.
✅ Compatibility
• Minecraft Versions: 1.16.x → 1.21.5
• Supported Forks: Paper, Pufferfish, Purpur
📊 Plugin Statistics:
https://bstats.org/plugin/bukkit/PrivateChest
---
✨ Looking for More Power?
🔒 [PrivateChest Plus] is now available!
💎 Features include:
• Shared chest access with trusted players
• Timed auto-unlock
• GUI-based password input
• Holograms and visual effects
• Separate storage for Plus chests
• And much more...
Upgrade your protection system now 👉 [View Premium Version]
📦 PrivateChest v1.5
🆕 New Features:
✔️ Block Whitelist for Lockable Blocks
➤ You can now define which block types can be protected.
➤ Controlled via the new config section:
protectable-blocks:
- CHEST
- TRAPPED_CHEST
- BARREL
✔️ Player Feedback on Locked Chest Interactions
➤ Players who attempt to open a protected chest they don't own will now receive a configurable message.
➤ New config entry:
locked-chest-message: "&cThis chest is locked and you cannot open it."
📁 Configuration Changes:
• `config.yml` updated with new keys: `protectable-blocks` and `locked-chest-message`.
• Fully reloadable with `/privatechest reload`.
🌐 Multilingual Ready:
• All messages remain customizable in `messages.yml` and `config.yml`.
---
✨ **Looking for more power and features?**
🚀 [PrivateChest Plus is now available!]
Unlock premium features including:
✅ Shared chest access
✅ Timed auto-unlock
✅ GUI-based lock system
✅ Sounds and holograms
✅ And much more...
Level up your server protection with PrivateChest Plus!
---
✅ Fully tested on:
• Minecraft 1.16.x → 1.21.5
• Compatible with Paper, Purpur, Pufferfish
📊 Plugin stats: https://bstats.org/plugin/bukkit/PrivateChest
📦 PrivateChest v1.4
🆕 New: Public Developer API
• Introduced `PrivateChestAPI` under `me.tuplugin.privatechest.api`.
• Developers can now easily:
- Check if a block is locked ➔ `isLocked(Block)`
- Check if a player is the owner ➔ `isOwner(Block, Player)`
- Get the UUID of the owner ➔ `getOwner(Block)`
- Lock a block programmatically ➔ `lockBlock(Block, Player, String)`
- Unlock a block programmatically ➔ `unlockBlock(Block)`
• Static, safe, and ready for direct integration without touching internal classes!
📚 New: API Documentation
• Added a dedicated section in README.md showing how to use the PrivateChestAPI with examples.
🛠 Improvements:
• Better internal structure for future feature expansion.
• Clean and separated API to prevent future compatibility issues.
🌐 Multilingual Ready:
• All messages and configurations remain fully editable for translations!
✅ Tested and verified on:
• Minecraft 1.16.x → 1.21.5
• Paper, Pufferfish, Purpur forks
📊 Plugin Statistics:
• View anonymous plugin usage at: [bStats - PrivateChest](https://bstats.org/plugin/bukkit/PrivateChest)
---
🎯 Tip: Even though the plugin is in English by default, you can fully translate it by editing `messages.yml` and `config.yml`!
📦 PrivateChest v1.3
🆕 New Features:
✔ Added /clearchests command (Admin only)
↳ Automatically clears orphaned chest entries from data.yml if the chest no longer exists.
↳ Requires permission: privatechest.admin
✔ Added full prefix control in config.yml:
↳ New options:
- use-prefix: true/false
- prefix: "&7[&6PrivateChest&7] "
↳ Admins can now enable/disable or customize the plugin prefix easily.
🛠 Improvements:
• Messages.yml is now purely for messages, no longer holds prefix settings.
• Prefix changes and config updates are hot-reloadable using /privatechest reload.
• Internal optimizations for data and location handling.
• Cleaner Maven build with shaded and relocated bStats.
🌐 Multilingual Ready:
• While the plugin is by default in English, all messages are fully configurable.
• You can easily translate the plugin into any language by editing messages.yml and config.yml!
✅ Tested on:
• PaperMC 1.16.5 – 1.21.5
• Compatible with forks: Paper, Pufferfish, Purpur.
📊 View plugin usage stats at:
https://bstats.org/plugin/bukkit/PrivateChest
PrivateChest 1.2.1 - BugFix Update
Changes:
- Fixed a critical issue with bStats integration that caused the plugin to disable on server startup.
- No gameplay or feature changes. This is an internal fix only.
✅ Recommended for all users to update for full stability and proper metrics reporting.
Quick Summary:
- Compatible with Minecraft 1.16.x – 1.21.x.
- This update ensures PrivateChest runs correctly without startup errors.
Thank you for supporting PrivateChest!
If you enjoy the plugin, consider leaving a ⭐ on Spigot!
Have any issues? Feel free to report them!
PrivateChest v1.2
New Features:
✔ Added support for bStats! Now we can see anonymous stats like plugin usage and Minecraft versions.
✔ New admin command: /privatechest reload
↳ Allows reloading config.yml and messages.yml without restarting the server.
↳ Requires permission: privatechest.admin
Improvements:
• Internal code optimizations.
• Updated plugin metadata for better compatibility.
Bug Fixes:
• None in this release — everything is stable!
Permissions:
• privatechest.use → Allows use of /lockchest and /unlockchest
• privatechest.admin → Allows use of /privatechest reload
You can view usage statistics at:
https://bstats.org/plugin/bukkit/PrivateChest
✅ Tested on: Paper 1.16.5 – 1.21.5
✅ Update v1.1:
Added support for barrels (/lockchest now works on barrels too!)
Thanks for the feedback — more features coming soon!