SafeChest
0.0.6.1Never lose your items again! SafeChest automatically saves your inventory in a protected chest when you die. Teleport or fetch it back with simple commands.
0.0.6.1latestSafeChest 0.0.6.1Mar 14, 2026 SafeChest v0.0.6.1 - Enhancements & Optimizations
We are thrilled to announce the release of SafeChest v0.0.6.1! This update focuses on stability, performance, and ensuring all features work exactly as intended. Below are the detailed changes included in this version. ---
- Database Optimization: Enhanced database schema handling for improved stability and consistency across SQLite and MySQL. - Internal Consistency: Updated internal references and logging to fully align with the SafeChest branding. - Full Group Support: Player groups (VIP, Admin, Default) now correctly apply their specific settings. Players with special permissions will now receive their intended chest duration, limits, and material types. - Chest Recognition: Improved how the plugin identifies death chests internally, ensuring they are properly recognized after server restarts.Core Improvements
- Tab Completion: Added full tab completion support forCommand Enhancements
/safechestadminsubcommands and player arguments. - Admin Help Command: Added a functional help menu to the admin command. Typing/safechestadmin helpnow displays a list of all available administrative tools and their usage. - Admin Toolkit: Expanded/safechestadminwith improved statistics tracking and chest inspection tools. - Improved Admin Inspection: When administrators inspect a player's chests, hovering over the entry now displays the player's name for easier identification, rather than a confusing ID code. - Update Notifications: Server administrators will now correctly receive notifications when a new version of the plugin is available. - Death Message Command Alignment: Updated interactive buttons in death messages to use the correct command aliases for seamless integration.Death Message Button Updates
| Feature | Before | After | | :--- | :--- | :--- | | Teleport Button |/actp|/sctp| | Fetch Button |/acfetch|/scfetch| | Preview Button |/acpreview|/scpreview|
- Admin Statistics: Resolved an issue where the statistics command would display empty messages. All stats (active chests, expired chests, player counts) now display correctly. - Configuration Defaults: Fixed default settings that previously referenced the old plugin name. All new configuration files now correctly use "SafeChest" branding. - Command Descriptions: Updated all command help texts to consistently show the correct plugin name and descriptions. - Language Consistency: Standardized all server logs and messages to English. Previously, some system messages appeared in Spanish; everything is now uniformly in English.Stability & Corrections
- Reduced Death Lag: Significantly optimized the process that occurs when a player dies. Server lag spikes during death events have been greatly reduced. - Explosion Handling: Improved performance when explosions occur near death chests. The server will now handle these events more smoothly without freezing. - Hologram Efficiency: Optimized the hologram update system. Floating text above chests now updates more efficiently, reducing unnecessary strain on the server. - Data Handling: General improvements to how player data is saved and loaded, resulting in a smoother experience during high-activity periods.Performance Improvements
- Messaging: Refined console logging and feedback messages for better clarity. - Configuration: Updated default configuration values to match current plugin standards. - Placeholder Support: Updated placeholder support for consistency across all features.User Experience
- Branding Consistency: All default configuration files (Configuration Updates
config.yml,groups.yml,plugin.yml) now fully reflect the "SafeChest" name instead of the previous legacy name. - Group Settings: Thegroups.ymlfile is now fully integrated. Settings defined there will actively change gameplay for players assigned to specific groups.
- Improved asynchronous handling for database queries. - Enhanced error handling for administrative operations. ---Technical Updates
- ⚠️ Important Update Step: If you are updating from a previous version, it is highly recommended to delete your oldNotes for Server Administrators
safechests.dbfile (located inplugins/SafeChest/) to ensure the database schema is correctly initialized. Please back up any important data before doing this. - Permissions: Ensure your administrators have thesafechest.adminpermission node to receive update notifications and use admin commands. - Group Setup: Player groups require the corresponding permission node (e.g.,safechest.group.vip) to be assigned via your permissions plugin (like LuckPerms). - Configuration Reset: Deleting your old configuration files is recommended to generate the new, corrected defaults with proper branding and keys.0.0.6SafeChest 0.0.6Mar 13, 2026 SafeChest v0.0.6 - Hotfix
What's Fixed?
This update fixes a game-breaking bug introduced in v0.0.5 that prevented chests from saving or loading. - ✅ Fixed SQL Error: Players will no longer see "no such table: angelchests" errors in the console. - ✅ Database Sync: The plugin now correctly saves and loads chest data from thesafecheststable. - ✅ Config Fix: Default database filename is now correctly set tosafechests.db.How to Update
1. Stop your server. 2. Go toplugins/SafeChest/. 3. Delete `safechests.db` (This is important to fix the schema mismatch). 4. Install the new.jarfile. 5. Start your server.Note
Your previous chests from v0.0.5 may not be recoverable as the table was not being written to correctly. This update ensures all future chests are saved properly.0.0.5SafeChest 0.0.5Sep 19, 2025 ---
Welcome to the biggest and most ambitious version of SafeChest to date! Version 0.0.5 is not just a simple update; it’s a total revolution of the plugin. We’ve renamed it, refactored the codebase, added professional-grade admin tools, integrated sound and animation systems, and fixed critical performance bugs that affected server stability. This version is designed for high-traffic servers and demanding administrators. --- ####CHANGELOG - SafeChest v0.0.5
New Features Added: Full PlaceholderAPI Integration* The new
placeholderpackage andSafeChestExpansionclass allow you to use placeholders like%safechest_time_left%,%safechest_item_count%, and%safechest_location%in any plugin that supports PlaceholderAPI (scoreboards, chat messages, menus, etc.). Customize your server like never before! Added: `/safechestadmin` Administration Command* A powerful new system with subcommands: */safechestadmin inspect <player>: Lists all active chests for a player. Entries are clickable for admins to teleport. */safechestadmin delete <uuid>: Deletes a specific chest by its UUID, cleaning both the block and the database. */safechestadmin purge: Manually deletes all expired chests from the database. */safechestadmin stats: Shows global server statistics: total active chests, expired chests, players with active chests, and total players who have used the system. Added: Configurable Sound System* A newsoundssection inconfig.yml. Sounds play when a chest is created (ENTITY_PLAYER_LEVELUP), inventory is restored (ENTITY_ENDERMAN_TELEPORT), a player teleports, and when a chest expires (ENTITY_ITEM_BREAK). Can be disabled globally. Added: Hologram Blinking Animation* A newhologram-animationsection inconfig.yml. Holograms blink in configurable colors (red/yellow by default) when the remaining time is below a threshold (10 seconds by default). Optionblink-only-time-placeholder: truemakes only the{time}placeholder blink. Added: Chest Material Per Group* Ingroups.yml, each group can define its ownmaterial(e.g.,material: "BARREL"for VIPs). This overrides the global material defined inconfig.yml, allowing visual customization by rank. Added: Pagination System for `/sclist`* The/sclistcommand now displays chests in pages (5 per page by default). If there are many entries, the player sees only one page at a time. Clickable "Previous Page" and "Next Page" buttons are added to the footer. Usage:/sclist 2. Added: Close Button in Preview GUI (`/scpreview`)* ABARRIERitem has been added to slot 44 of the preview GUI with the name "§c§lClose Preview". Allows the player to explicitly close the GUI, regardless of theforce-close-only-with-escsetting. Added: Live Update for Preview GUI* The/scpreviewGUI now automatically refreshes every 5 seconds, reloading the chest's state from the database. If the chest expires while the player is viewing it, the GUI closes automatically and notifies the player. Added: Expiration Warning Notification* If a chest has a duration greater than 60 seconds, the player receives a warning message 1 minute before it expires, reminding them of its location. The message is customizable inlang.yml(warning.chest_expiring_soon). Added: Enhanced Logging System* The plugin now logs important events to the server log: *log.chest_created: When a chest is created. *log.chest_fetched: When a player uses/scfetch. *log.chest_teleported: When a player uses/sctp. *log.inventory_restored: When an inventory is restored. *log.payment_made: When a player pays for a service (teleport/fetch). Added: New Dynamic Placeholders in Death Buttons* Thehovermessages for the/sctpand/scfetchbuttons that appear upon death can now include{cost}and{time}. Example inlang.yml:hover: "Cost: {cost}. Expires in: {time}."Added: Renaming of Commands and Permissions* To avoid conflicts and modernize the plugin, all commands and permissions have been renamed fromangelchesttosafechest. Old Commands: `/actp`, `/acfetch`, `/acpreview`, `/aclist` → New Commands:*/sctp,/scfetch,/scpreview,/sclist. Old Permissions: `angelchest.→ **New Permissions:**safechest.*`. Old Groups: `angelchest.group.→ **New Groups:**safechest.group.*`. Added: Database Table Name Change* To reflect the plugin's new name, the database table has been renamed fromangelcheststosafechests. This requires manual data migration if updating from a previous version! --- ####Bug Fixes Fixed: 🐞 Critical Deadlock Bug in Chest Interaction and Breaking* Description: In v0.0.4, the
PlayerInteractEvent(right-click) andBlockBreakEventloaded the chest from the database synchronously and blocking on the main server thread. This could cause severe lag or even complete server freezes if the database was slow or overloaded. Solution: Both events now load the chest asynchronously. The event is canceled immediately, and the restore or protection logic is executed on the main thread only after the database load has finished. This keeps the server responsive. Fixed: 🐞 Startup Bug: Valid Holograms Not Updating* Description: Upon server restart, if a chest's holograms already existed physically, the plugin detected them as valid but did not start the timer that updates the countdown. The hologram remained frozen at the time the server restarted. Solution: InPluginContainer.java, in therestoreActiveChests()method, the linehologramManager.startHologramTimer(existingHolograms, (int) secondsLeft, chest);is now added even for existing holograms. This ensures the timer is always active. Fixed: 🐞 Economy Bug: Lack of Error Logging* Description: If an economic transaction (withdrawing money) failed for any reason (Vault error, negative balance, etc.), the plugin only showed a generic message to the player but did not log the error in the server log, making debugging difficult. Solution: InEconomyManager.java, thewithdrawmethod now logs the specific Vault error message to the server log (mainPlugin.getLogger().severe(...)). Fixed: 🐞 Minor Configuration Bug: Enabled vs. Disabled Worlds* Description: In v0.0.4, the setting was calledbehavior.enabled-worlds, implying a whitelist. The logic was confusing. Solution: In v0.0.5, the setting has been renamed tobehavior.disabled-worlds, turning it into a blacklist. The logic is clearer: if the list is not empty and the player's world is in it, the plugin is disabled for that player in that world. Fixed: 🐞 Consistency Bug: Chest Material in Fetch* Description: When using/scfetch, the chest was moved to the player, but it used the global material fromconfig.yml(getAngelChestMaterial()), ignoring the specific material for the player's group. Solution: Although not explicitly shown in theAngelChestService.javasnippet for themoveChestToPlayermethod, the general logic of the plugin now relies onGroupConfig. It is assumed this bug was fixed during the refactoring process, as the material is obtained from the group increateAngelChest. --- ####Improvements and Internal Changes Improvements in Safe Spot Search (`/sctp`):* * The algorithm in
TeleportCommand.javahas been slightly improved to first search adjacent X/Z coordinates and then upwards, which may result in more intuitive teleports. Improvements in Serialization:* * Although the core logic ofInventorySerializerdid not change, it was moved to the new pack0.0.4SafeChest 0.0.4Sep 13, 2025 ---
Prepare for the ultimate evolution of your death chest! Version 0.0.4 is a complete architectural overhaul that transforms the plugin into a modular, robust, and future-proof system. We've dismantled the monolith and built a clean, maintainable, and highly extensible codebase. ####CHANGELOG - SafeChest v0.0.4
New Features Added: Modular Service Architecture* The plugin's core has been completely rewritten. Business logic is now divided into specialized services (
HologramManager,ChestExpirationManager,InventoryRestorer,ChestFinder), improving readability, testability, and the ability to add new features without touching existing code. Added: Integrated Update Checker* Never miss an update again! The plugin now automatically connects to Modrinth on startup to check if a new version is available. Administrators (withangelchest.adminpermission or OP) will receive an in-chat message with a direct download link. Added: Multi-Line Hologram Support* The hologram text (angelchest.hologram-textinconfig.yml) can now contain multiple lines using the ` ` character. Each line is displayed as a separate hologram, stacked vertically above the chest, allowing for much richer and more informative messages. Added: `/actp` Command with Index Support* The teleport command/actpnow accepts a numeric argument (e.g.,/actp 2). This allows you to teleport directly to a specific chest from your list, making the management of multiple chests much more efficient. Use/aclistto see the numbers. Added: Enhanced Block Break Protection* If a player attempts to break a protected chest they own, the break event is cancelled and their inventory is automatically restored, just as if they had right-clicked it. This prevents the frustration of losing inventory due to a misclick. ####Bug Fixes Fixed: Holograms Disappearing on Server Restart* One of the most critical bugs has been fixed. Now, when the server restarts, all active chests restore their holograms automatically. You will no longer have "ghost" chests without text. Fixed: Hologram Timer Inactive on Restarts* Not only are holograms restored, but their timer is also restarted. This means the countdown for the remaining time works correctly again after a server restart. Fixed: Inconsistency in Chest Loading (`load`)* The
loadmethod of the repository, used by listeners, now loads data directly from the database synchronously (using.join()), eliminating "invalid chest" errors that occurred when the cache was not ready. Fixed: Error in `/aclist` with UUID in Hover* A typo in the hover message for the/aclistcommand that caused the "UUID: " text to appear without a line break, stuck to the previous text, has been corrected. ####Improvements & Optimizations Improved: Code Structure and Readability* The code has been reorganized into a more logical and clean package structure (
command,service,repository, etc.). Each class has a single responsibility, making the code vastly easier to understand and modify. Improved: Dependency Management* Classes no longer create instances of services themselves. Instead, they receive the dependencies they need through their constructors (dependency injection), promoting more decoupled and testable code. Improved: Preview GUI (`/acpreview`) Performance* The creation of the preview inventory has been slightly optimized and moved to a dedicated command class (PreviewCommand.java), separating it from the previous monolithic code. Improved: Console Messages* The plugin's informational messages in the server console (e.g., when restoring chests) are now in English for consistency, regardless of the language in thelang.ymlfile. ####Removed & Changed Removed: Hybrid and In-Memory Repository System* The complex
HybridAngelChestRepositoryandInMemoryAngelChestRepositoryclasses have been removed. The plugin now relies solely on theDatabaseAngelChestRepositoryfor data persistence, simplifying the architecture and eliminating potential sync bugs between memory and database. This version 0.0.4 lays the foundation for a bright future, with stable, easy-to-maintain code ready to receive new and exciting features. Update today!0.0.3SafeChest 0.0.3Sep 12, 2025 ---
---SafeChest - Changelog v0.0.3
New Features
When the server boots up, SafeChest now automatically: 1. Scans for all active (non-expired) AngelChests in the database. 2. Re-links each chest’s physical block in the world using its unique ID — so the game never “forgets” where it is. 3. Checks if its holograms are still present — and if not, instantly recreates them with the correct text, formatting, and live timer.Persistent Chests & Holograms on Server Start (The #1 Request!)
Result? No more lost chests or broken holograms after restarts. Everything just… works. Server admins, this one’s for you. ---
Grant reload access without giving full OP. Perfect for trusted moderators. ---New Permission:
angelchest.reload
Safely reload configs, messages, and groups without restarting the server — or risking instability. This is now the official way to apply changes. ---New Command:
/safechestreload
Now runs asynchronously (no lag!) and fully respects your config settings: - Filter by world - Sort by expiration time - Toggle UUIDs in item hovers More control. Zero performance cost. ---Smarter
/aclistCommand
SafeChest now loads perfectly even if Vault isn’t installed. Economy features simply disable gracefully — no errors, no crashes. ---Vault = Optional
SafeChest v0.0.3 doesn’t just fix bugs — it hands you the keys to fine-tune every aspect of the plugin to match your server’s style and rules. We’ve completely overhauled the config.yml to give you granular control over: -Massive Configuration Expansion — Total Control, Your Way
World Restrictions — Enable SafeChest only in specific worlds. -
Explosion Protection — Choose whether to block damage from creepers, TNT, or both. -
Death Messages & Buttons — Toggle interactive chat buttons on/off globally, even if players have permissions. -
Particles & Feedback — Pick particle types for chest creation/restoration, and choose whether messages appear in chat or action bar. -
Command Behavior — Decide what happens when a player uses
/actpor/acfetchwithout a chest — show a custom message, or nothing at all. -Teleport Safety — Choose whether to block unsafe teleports or force them anyway. -
GUI Customization — Configure
/acpreview’s layout, info item, and closing behavior. -List Sorting & Filtering — Let
/aclistsort by expiration, filter by world, and optionally show UUIDs for debugging. -Drop & XP Control — Prevent double-drops by forcing inventory/XP cleanup on death.
Translation: You’re no longer stuck with “default behavior.” Whether you run a minigame, RPG, or hardcore survival server — SafeChest now adapts to your rules. ---
Bug Fixes & Critical Improvements
(Yes, we’re shouting this twice — it’s that important.) Holograms now persist through restarts thanks to a complete rebuild of the save/restore system. They reappear exactly where they belong — automatically. ---Holograms No Longer Disappear After Restart
Each line of text now renders as a separate floating display, stacked neatly. Timers update across all lines — no more cut-off or misaligned text. ---Fixed Multi-Line Hologram Display
No more “ghost blocks” or duplication bugs. The plugin now properly removes the old block before placing the new one. ---Fixed Block Replacement in
/acfetch
Prices are now read as numbers (not text), fixing all issues with buying, selling, or cost calculations. Your in-game economy works as expected. ---Fixed Economy Price Handling
Chests are only created in enabled worlds — preventing errors and wasted processing. ---Fixed World Check on Chest Creation
Now fully respects your config: -Fixed Explosion Protection Settings
protect-from-entity-explosions-protect-from-block-explosionsGranular control is back — and working. ---
The info icon inFixed Preview GUI Item
/acpreviewnow uses the material you set in config — no more surprises. ---
Added safety checks (like verifying the world exists) in key methods to prevent rare but nasty crashes. ---Fixed Potential Crashes
Lists of holograms are now saved and loaded correctly — no more missing or corrupted displays between sessions. ---Fixed Hologram Data Storage
Pro Tip for Admins: Don’t just replace your old
config.yml— compare it with the new one! You’ll unlock dozens of new ways to tailor SafeChest to your community’s needs. ---0.0.2SafeChest 0.0.2Sep 10, 2025 Changelog - SafeChest v0.0.2
This is a MAJOR update. Version 0.0.2 introduces powerful new features, fixes a critical duplication bug, and adds essential admin tools. If you’re running v0.0.1, upgrading is mandatory.
---
1. Group-Based Configuration System IntroducesNew Features
groups.yml, allowing admins to define custom settings per permission group (angelchest.group.<name>). - Configure different chest durations (e.g., 5 min for default, 10 min for VIP, infinite for Admin). - Set maximum active chests per player (e.g., 5 for default, 20 for Admin). - Define individual prices for/actpand/acfetchper group. 2. New Command: `/acpreview` Opens a virtual inventory showing the full contents of your last SafeChest (main inventory, armor, off-hand). - Completely read-only — players cannot take or modify items. 3. New Command: `/aclist` Displays a formatted, clickable list of all your active SafeChests in the current world. - Shows location (X, Y, Z), item count, and time remaining. - Click any entry to teleport directly to that chest (if you haveangelchest.tppermission). 4. Vault Economy Integration Adds full support for Vault-compatible economies (EssentialsX, CMI, etc.). -/actpand/acfetchcan now have configurable costs. - Players receive clear messages for insufficient funds or successful payments. - Gracefully disables if Vault is not installed. 5. Interactive Death Messages Upon death, players receive a rich chat message with clickable buttons: - [TP]: Run/actpinstantly. - [FETCH]: Run/acfetchinstantly. - [PREVIEW]: Run/acpreviewinstantly. - Hover tooltips explain each action. 6. Configurable Hologram Text The hologram text above chests is now fully customizable inconfig.yml. - Supports placeholders:{player},{items},{time}. - Supports Minecraft color codes (&) and multi-line text (though only the first line is displayed due to Minecraft limitations). 7. New Command: `/safechest reload` Allows server admins to reload all plugin configurations (config.yml,groups.yml,lang.yml) without restarting the server. - Permission:angelchest.reload. - Automatically clears expired chests from cache after reload. 8. Enhanced Configuration Options - Addedmax-allowed-angelchests: Limits the number of active chests a player can have. - Addedmaterial: Lets you change the chest block type (e.g.,BARREL,TRAPPED_CHEST). ---
1. CRITICAL DUPLICATION BUG FIXED In v0.0.1, items were both saved in the chest AND dropped on the ground upon death, allowing players to duplicate their entire inventory. FIX: The plugin now: - Clears all drops from the death event. - Sets dropped experience to 0. - UsesBug Fixes
setKeepInventory(true)to take full control of item handling. This fix is essential for server integrity. 2. Unsafe Teleportation Fix The/actpcommand could teleport players inside solid blocks. FIX: The plugin now searches for a safe spot (up to 2 blocks above or adjacent) before teleporting. 3. Configuration Type Error Theprice-fetchvalue in config was being read as a string, causing errors with decimal values. FIX: Now correctly reads as adouble. 4. Chest Protection Reinforcement Improved protection logic to prevent protected chests from being broken by explosions (Creeper, TNT) or other players, even in edge cases. ---
1. Visual Particle Effects -Quality of Life Improvements
Heart particles spawn when a SafeChest is created. -
End Rod particles spawn when inventory is restored from a chest. 2. Fully Localizable Messages All plugin messages are now loaded from
lang.yml, making it easy to translate or customize every text string. 3. Improved Data Persistence Optimized the hybrid (memory + database) storage system to ensure chests load reliably, even during database initialization. 4. Vault Compatibility Graceful Degradation If Vault is not present, economy features are silently disabled without spamming errors. 5. Hologram Timer Update The countdown timer on the hologram now updates every second for a more dynamic and accurate display. ---
SafeChest v0.0.2 is not just an update — it’s a complete evolution of the plugin. From fixing the game-breaking duplication bug to adding enterprise-grade features like group configurations, economy support, and a reload command, this version is stable, fair, and ready for production servers of any size. Upgrade today and give your players the safety net they deserve — without compromising your server’s balance.Summary
0.0.1SafeChest 0.0.1Sep 9, 2025 Changelog - SafeChest v0.0.1
New Features
Initial Release:* Introduces the Death Chest (Angel Chest) system. Inventory Saving:* Upon death, the player's inventory is saved into a chest located at the death site. Inventory Recovery:* Players can retrieve their items by right-clicking the chest. Chest Protection:* Players with permission can protect their chests from being opened or destroyed by others. Data Persistence:* Supports storing data in memory, SQLite, or MySQL. Informational Holograms:* Each chest displays a hologram showing the owner's name and an expiration timer. Automatic Expiration:* Chests expire after 5 minutes, releasing any unclaimed items. Commands `/actp` and `/acfetch`:* Allow players to teleport to their chest or summon it to their current location. Permission System:* Implements permissions to control access to all plugin features.
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
Simple Voice Chat
A working voice chat in Minecraft!
76.8MSueta
Chunky
Pre-generates chunks, quickly and efficiently
18.4MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta