COWMODSКаталог модов

SafeChest

Never lose your items again! SafeChest automatically saves your inventory in a protected chest when you die. Teleport or fetch it back with simple commands.

Автор: SicklySurgeon4350обновлён 14 мар. 2026 г.
Механики игрыХранениеУтилиты

Описание


📦 SafeChest v0.0.5 — The Ultimate Player Safety & Server Management System

Tired of losing everything when you die? SafeChest automatically saves your entire inventory, armor, and off-hand item into a chest at your death location. Recover it easily — no more rage-quitting after falling into lava!

Version 0.0.5 is a REVOLUTION. We’ve added professional admin tools, sound effects, animated holograms, PlaceholderAPI integration, pagination, live GUI updates, and fixed critical performance bugs. This isn’t just a Death Chest plugin — it’s the ultimate safety net and server management suite for your players and staff.


✨ Key Features — v0.0.5 Edition

🛡️ Auto-Protection & Anti-Griefing
Only you (or admins) can open or break your chest. Configurable protection from entity/block explosions. Breaking your own chest now instantly restores your inventory — no more misclicks!

⏳ Live Multi-Line Animated Hologram Timer
Floating display shows your name, item count, and real-time countdown. Survives server restarts.
✨ NEW: Holograms now blink in red/yellow when time is running out (configurable threshold and colors).
✨ NEW: Option to blink only the {time} placeholder for subtle, elegant alerts.

🧭 /sctp — Teleport to Chest (Index Support)
One click, and you’re back at your death spot. Use /sctp 2 to teleport to a specific chest from your list. Configurable "force teleport" if no safe spot is found.
🔊 NEW: Play a configurable sound on teleport.

🧲 /scfetch — Bring Chest to You
Perfect for deaths in the void, lava, or caves. The chest (and its hologram) move with you.
🔊 NEW: Play a configurable sound on fetch.

👁️ /scpreview — Live Peek Inside (Auto-Refresh & Close Button)
View chest contents without moving — safe and read-only. Fully customizable GUI.
✨ NEW: GUI auto-refreshes every 5 seconds from the database. If the chest expires while you’re viewing it, the GUI closes automatically.
✨ NEW: Dedicated BARRIER close button in slot 44 for explicit closure.

📋 /sclist — All Active Chests (With Pagination!)
Clickable list of all your chests. Teleport to any instantly. Sort by time, filter by world, show UUIDs.
✨ NEW: Results are now paginated (5 per page) with clickable [Previous] and [Next] buttons. Use /sclist 3 to jump to page 3.

💰 Vault Economy Support (With Logging)
Charge players for /sctp or /scfetch — configurable per group. Action Bar feedback on payment.
📝 NEW: All payments and chest interactions are now logged to the server console for auditing and debugging.

👥 Group-Based Configuration (With Custom Chest Materials!)
Define custom rules for default, vip, admin — different durations, limits, prices, and even chest materials (e.g., VIPs get Barrels, Admins get Shulker Boxes).

💡 Players are assigned to the first group they have permission for.

💬 Interactive Death Messages (With Dynamic Cost & Time)
After dying, get clickable buttons: [TP], [FETCH], [PREVIEW]. Fully configurable per button.
✨ NEW: Hover text for buttons now shows dynamic placeholders like {cost} and {time}. Example: "Cost: 50 coins. Expires in: 2m 30s."

💾 Persistence & Auto-Restoration
Supports SQLite or MySQL storage. Chests and holograms are restored on server start.
⚠️ IMPORTANT: Table name changed from angelchests to safechests — manual migration required on update.

⚙️ Ultra-Configurable
Control everything: particle types, action bar messages, GUI titles, button visibility, world restrictions, explosion protection, sounds, hologram animations, and much more — all editable in config.yml.

🔄 /safechestreload
Reload configs without restarting the server — essential for live admins. Safer than /reload.

🎨 Visual & Audio Feedback
❤️ Configurable particles on creation. ✨ Configurable particles on recovery. Optional Action Bar messages.
🔊 NEW: Configurable sounds on creation, restore, teleport, and expiration.

🌐 Multi-World Support
Enable or disable the plugin in specific worlds. Filter /sclist to show only the current world.
✨ IMPROVED: Configuration now uses behavior.disabled-worlds (a blacklist) for clearer logic.

🧠 PlaceholderAPI Integration
✨ BRAND NEW: Use placeholders like %safechest_time_left%, %safechest_item_count%, %safechest_location% in any plugin that supports PlaceholderAPI (scoreboards, chat, menus, etc.).

🛠️ Admin Command Suite (/safechestadmin)
✨ BRAND NEW: A powerful toolkit for server staff:

  • inspect <player>: List all active chests for a player (click to teleport).
  • delete <uuid>: Delete a specific chest by its UUID.
  • purge: Manually purge all expired chests from the database.
  • stats: Show server-wide statistics (total active/expired chests, players with chests, etc.).

⚠️ Critical Bug Fixes:

  • 🐞 Fixed: Deadlock on Chest Interaction/Breaking — No more server freezes when clicking or breaking chests. Operations are now fully asynchronous.
  • 🐞 Fixed: Hologram Timer Inactive on Restart — Holograms now start their countdown timer correctly after a server reboot.
  • 🐞 Fixed: Economy Errors Not Logged — Payment failures are now logged to the server console for easy debugging.

📘 Wiki: How to Use SafeChest v0.0.5

🧭 1. Basic Usage (For Players)

💀 When You Die

  • A chest will automatically appear at your death location.
  • All your items (inventory, armor, off-hand) are stored inside.
  • You’ll receive a configurable chat message with clickable buttons:
    • [TP] → /sctp — Teleports you to the chest. Hover shows cost and time remaining.
    • [FETCH] → /scfetch — Brings the chest to you. Hover shows cost and time remaining.
    • [PREVIEW] → /scpreview — Shows chest contents without moving. Hover shows time remaining.

📥 To Recover Your Items

  • Walk to the chest and right-click it to restore your inventory.
  • Or use /sctp to teleport to it.
  • Or use /scfetch to bring it to you.

👀 Preview Your Chest (No Movement Needed)

/scpreview
  • Opens a virtual inventory showing all your stored items.
  • Completely safe — you can’t take or modify anything.
  • The GUI updates live every 5 seconds. If the chest expires, the GUI closes automatically.
  • Click the red BARRIER in the bottom row to close it manually.

📋 List All Your Active Chests (Paginated!)

/sclist
  • Shows all your active chests in pages of 5.
  • Configurable: Filter by current world, sort by expiration time, show UUID in hover.
  • Click any entry to teleport directly to that chest (if you have permission).
  • Use /sclist 2 to jump to page 2.

⚙️ 2. Configuration (For Server Admins)

📁 Files You Can Customize

  • config.yml — Main settings: storage, chest material, hologram text, particle types, death message buttons, GUI options, world restrictions, explosion protection, sounds, hologram animations, logging, and much more.
  • groups.yml — Define player groups (e.g., default, vip, admin) with custom durations, chest limits, command prices, and chest materials.
  • lang.yml — Translate or customize every message in the plugin, including new messages for pagination, admin commands, and logging.

🎯 Example: Creating a VIP Group

In groups.yml:

vip:
  safechest-duration: 600      # 10 minutes
  max-allowed-safechests: 10   # Can have up to 10 active chests
  price-teleport: 50.0         # Costs 50 coins to teleport
  price-fetch: 100.0           # Costs 100 coins to fetch
  material: "BARREL"           # ✅ NEW: VIPs get Barrels instead of Chests!

Then, give players the permission:
safechest.group.vip

💡 Players are assigned to the first group they have permission for.

🖋️ Customizing the Hologram & Death Message

In config.yml:

angelchest:
  hologram-text: "&a&l[SafeChest]&r\n&b{player}\n&7{items} items / {time}"

# ✅ NEW SECTION: HOLOGRAM ANIMATION
hologram-animation:
  enabled: true
  threshold-seconds: 10 # Start blinking when 10 seconds or less remain
  color-on: "RED"
  color-off: "YELLOW"
  blink-only-time-placeholder: true # Only blink the {time} part

death-message:
  enabled: true
  show-buttons: true
  show-button-tp: true
  show-button-fetch: false # Disable fetch globally
  show-button-preview: true

Placeholders (for hologram-text, lang.yml, and death message hovers):

  • {player} — Player’s name.
  • {items} — Total number of items in the chest.
  • {time} — Time remaining until expiration.
  • {cost} — Cost of the action (for death message hovers).

✅ Multi-line holograms are now fully supported and restored on server restart.

🎮 Customizing the Player Experience

In config.yml:

messages:
  use-action-bar: true # Show "Chest Created!" in action bar instead of chat
  use-particles: true
  particle-on-create: "HEART"
  particle-on-restore: "END_ROD"

# ✅ NEW SECTION: SOUNDS
sounds:
  enabled: true
  on-create: "ENTITY_PLAYER_LEVELUP"
  on-restore: "ENTITY_ENDERMAN_TELEPORT"
  on-teleport: "ENTITY_ENDERMAN_TELEPORT"
  on-expire: "ENTITY_ITEM_BREAK"

commands:
  preview-gui:
    title: "&6My Items - SafeChest" # Change the GUI title
    info-item-material: "BOOK" # Change the info item
    force-close-only-with-esc: true # Only close preview with ESC key

  aclist:
    show-only-current-world: true # Only show chests in the player's current world
    sort-by-expiration: true # Show expiring chests first
    show-uuid-in-hover: false # Hide UUID (useful for debugging if true)

🛡️ Advanced Behavior Control

In config.yml:

behavior:
  # ✅ RENAMED: From 'enabled-worlds' to 'disabled-worlds'
  disabled-worlds: ["world_the_end"] # Disable plugin in The End
  protect-from-entity-explosions: true # Protect from Creepers
  protect-from-block-explosions: false # Allow TNT to destroy chests
  force-clear-drops-on-death: true # Fix double-drop bug

💰 3. Economy Setup

SafeChest integrates with Vault. Make sure you have a compatible economy plugin installed (e.g., EssentialsX, CMI).

💵 Charging for Commands

In groups.yml or config.yml, set prices:

price-teleport: 50.0
price-fetch: 100.0

Players will be charged automatically when using /sctp or /scfetch.

✅ If Vault is not installed, these features are silently disabled — no errors. (softdepend: [Vault]).


🔄 4. Reloading Configurations

As an admin, you can reload all configurations without restarting the server:

/safechestreload

Required Permission: safechest.reload

This command:

  • Reloads config.yml, groups.yml, and lang.yml.
  • Clears expired chests from cache.
  • Reinitializes the plugin container.
  • Does NOT break active chests or holograms.

🚫 Warning: Avoid using /reload during heavy server activity. /safechestreload is much safer.


🛡️ 5. Permissions (Renamed!)

PermissionDescriptionDefault
safechest.useAllows using the Death Chest systemtrue
safechest.protectAllows protecting your chest from otherstrue
safechest.protect.ignoreAllows opening SafeChests protected of other playersop
safechest.tpAllows using /sctptrue
safechest.fetchAllows using /scfetchtrue
safechest.group.<name>Assigns player to a group (e.g., safechest.group.vip)—
safechest.reloadAllows using /safechestreloadop
safechest.admin✅ NEW: Allows using /safechestadminop

✅ Use LuckPerms, PermissionsEx, or any other permission manager to assign these.


❓ 6. FAQ & Troubleshooting — v0.0.5

Q: Why aren’t my items being saved?
A: Make sure you have permission safechest.use. Also, check if the world is NOT listed in behavior.disabled-worlds in config.yml.

Q: The hologram disappeared after a restart!
A: Fixed in v0.0.3 and perfected in v0.0.5! Holograms are now automatically restored and their timers are restarted on server start. If they’re still missing, check server logs for errors.

Q: I get “Initializing... try again later”.
A: The database is still loading. Wait a few seconds and try again.

Q: Can I change the chest to a Barrel or Shulker Box?
A: Yes! In config.yml, set globally:

material: "BARREL"

Or per-group in groups.yml:

vip:
  material: "SHULKER_BOX"

Q: How do I disable the death message buttons?
A: In config.yml, set death-message.show-buttons: false, or disable individual buttons like show-button-fetch: false.

Q: My players are complaining about double drops!
A: Enable behavior.force-clear-drops-on-death: true in config.yml to fix this.

Q: How do I make /sctp work even if there’s no “safe spot”?
A: Set commands.teleport-unsafe-behavior: "force" in config.yml.

Q: How do I upgrade from v0.0.4?
A: CRITICAL: You must rename your database table from angelchests to safechests before starting the server. Also, update all permissions and commands from angelchest to safechest.

Q: How do I see server stats?
A: Use the new admin command: /safechestadmin stats.

Q: How do I delete a specific chest?
A: Use /safechestadmin delete <uuid>. You can find the UUID via /safechestadmin inspect <player>.


Последние версии

Все версии →
alpha

SafeChest 0.0.6.1

0.0.6.1
14 мар. 2026 г.92Minecraft: 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
# 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. --- ## 🚀 Core Improvements - **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. ## 🛠️ Command Enhancements - **Tab Completion:** Added full tab completion support for `/safechestadmin` subcommands and player arguments. - **Admin Help Command:** Added a functional help menu to the admin command. Typing `/safechestadmin help` now displays a list of all available administrative tools and their usage. - **Admin Toolkit:** Expanded `/safechestadmin` with 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` | ## 🐛 Stability & Corrections - **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. ## ⚡ Performance Improvements - **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. ## 🎨 User Experience - **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. ## ⚙️ Configuration Updates - **Branding Consistency:** All default configuration files (`config.yml`, `groups.yml`, `plugin.yml`) now fully reflect the "SafeChest" name instead of the previous legacy name. - **Group Settings:** The `groups.yml` file is now fully integrated. Settings defined there will actively change gameplay for players assigned to specific groups. ## 📦 Technical Updates - Improved asynchronous handling for database queries. - Enhanced error handling for administrative operations. --- ## 📝 Notes for Server Administrators - **⚠️ Important Update Step:** If you are updating from a previous version, it is **highly recommended** to delete your old `safechests.db` file (located in `plugins/SafeChest/`) to ensure the database schema is correctly initialized. *Please back up any important data before doing this.* - **Permissions:** Ensure your administrators have the `safechest.admin` permission 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.
release

SafeChest 0.0.6

0.0.6
13 мар. 2026 г.74Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
# 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 the `safechests` table. - **✅ Config Fix:** Default database filename is now correctly set to `safechests.db`. ## How to Update 1. Stop your server. 2. Go to `plugins/SafeChest/`. 3. **Delete `safechests.db`** (This is important to fix the schema mismatch). 4. Install the new `.jar` file. 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.
release

SafeChest 0.0.5

0.0.5
19 сент. 2025 г.134Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Скачать
Что нового
--- ### 📜 CHANGELOG - SafeChest v0.0.5 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. --- #### ✨ **New Features** * **Added: Full PlaceholderAPI Integration** The new `placeholder` package and `SafeChestExpansion` class 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 new `sounds` section in `config.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 new `hologram-animation` section in `config.yml`. Holograms blink in configurable colors (red/yellow by default) when the remaining time is below a threshold (10 seconds by default). Option `blink-only-time-placeholder: true` makes only the `{time}` placeholder blink. * **Added: Chest Material Per Group** In `groups.yml`, each group can define its own `material` (e.g., `material: "BARREL"` for VIPs). This overrides the global material defined in `config.yml`, allowing visual customization by rank. * **Added: Pagination System for `/sclist`** The `/sclist` command 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`)** A `BARRIER` item 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 the `force-close-only-with-esc` setting. * **Added: Live Update for Preview GUI** The `/scpreview` GUI 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 in `lang.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** The `hover` messages for the `/sctp` and `/scfetch` buttons that appear upon death can now include `{cost}` and `{time}`. Example in `lang.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 from `angelchest` to `safechest`. * **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 from `angelchests` to `safechests`. **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) and `BlockBreakEvent` loaded 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:** In `PluginContainer.java`, in the `restoreActiveChests()` method, the line `hologramManager.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:** In `EconomyManager.java`, the `withdraw` method 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 called `behavior.enabled-worlds`, implying a whitelist. The logic was confusing. **Solution:** In v0.0.5, the setting has been renamed to `behavior.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 from `config.yml` (`getAngelChestMaterial()`), ignoring the specific material for the player's group. **Solution:** Although not explicitly shown in the `AngelChestService.java` snippet for the `moveChestToPlayer` method, the general logic of the plugin now relies on `GroupConfig`. It is assumed this bug was fixed during the refactoring process, as the material is obtained from the group in `createAngelChest`. --- #### 🛠️ **Improvements and Internal Changes** * **Improvements in Safe Spot Search (`/sctp`):** * The algorithm in `TeleportCommand.java` has 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 of `InventorySerializer` did not change, it was moved to the new package and its compatibility with the new structure was ensured. * **Improvements in Configuration:** * Dozens of new options have been added to `config.yml` for the new features (sounds, hologram animation, logging, etc.). * The `groups.yml` file now includes the `material` field. * **Improvements in Messages (`lang.yml`):** * Dozens of new messages have been added for the new features (admin command, pagination, logging, close buttons, etc.). * A specific error message for `/scpreview` when no chest exists was added: `error.no_chest_preview`. --- #### ⚠️ **Important Notes for Updating** * **Name Change:** This is a rename from `AngelChest` to `SafeChest`. All commands, permissions, and the database table have changed. * **Data Migration:** To update from v0.0.4, you will need to: 1. Back up your database (`angelchests.db` or the `angelchests` table in MySQL). 2. Rename the table from `angelchests` to `safechests` in your database. 3. Update all permissions and command aliases on your server and in permission plugins (like LuckPerms). --- Version 0.0.5 transforms SafeChest from a functional plugin into a **robust, professional, and feature-rich premium tool**! The fix for the deadlock bug is crucial for server stability, and the new features like pagination, the dynamic GUI, and the admin command make it an indispensable tool for any serious server. Update today!
release

SafeChest 0.0.4

0.0.4
13 сент. 2025 г.36Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8bukkit, paper, purpur, spigot
Скачать
Что нового
--- ### 📜 CHANGELOG - SafeChest v0.0.4 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. #### ✨ 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 (with `angelchest.admin` permission or OP) will receive an in-chat message with a direct download link. * **Added: Multi-Line Hologram Support** The hologram text (`angelchest.hologram-text` in `config.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 `/actp` now 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 `/aclist` to 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 `load` method 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 `/aclist` command 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 the `lang.yml` file. #### 🗑️ Removed & Changed * **Removed: Hybrid and In-Memory Repository System** The complex `HybridAngelChestRepository` and `InMemoryAngelChestRepository` classes have been **removed**. The plugin now relies solely on the `DatabaseAngelChestRepository` for 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!
release

SafeChest 0.0.3

0.0.3
12 сент. 2025 г.25Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8bukkit, paper, purpur, spigot
Скачать
Что нового
--- # 📜 SafeChest - Changelog v0.0.3 --- ## ✅ New Features ### 🌟 Persistent Chests & Holograms on Server Start *(The #1 Request!)* 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. ➡️ **Result?** No more lost chests or broken holograms after restarts. Everything just… *works*. Server admins, this one’s for you. --- ### 🔐 New Permission: `angelchest.reload` Grant reload access without giving full OP. Perfect for trusted moderators. --- ### 🔄 New Command: `/safechestreload` Safely reload configs, messages, and groups without restarting the server — or risking instability. **This is now the official way to apply changes.** --- ### 📋 Smarter `/aclist` Command 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. --- ### 💸 Vault = Optional SafeChest now loads perfectly even if Vault isn’t installed. Economy features simply disable gracefully — no errors, no crashes. --- ## 🎨 **Massive Configuration Expansion — Total Control, Your Way** 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: - 🌍 **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 `/actp` or `/acfetch` without 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 `/aclist` sort 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 ### ✅ Holograms No Longer Disappear After Restart *(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. --- ### 📄 Fixed Multi-Line Hologram Display 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 Block Replacement in `/acfetch` No more “ghost blocks” or duplication bugs. The plugin now properly removes the old block before placing the new one. --- ### 💰 Fixed Economy Price Handling 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 World Check on Chest Creation Chests are only created in enabled worlds — preventing errors and wasted processing. --- ### 💥 Fixed Explosion Protection Settings Now fully respects your config: - `protect-from-entity-explosions` - `protect-from-block-explosions` Granular control is back — and working. --- ### 🖼️ Fixed Preview GUI Item The info icon in `/acpreview` now uses the material you set in config — no more surprises. --- ### 🛡️ Fixed Potential Crashes Added safety checks (like verifying the world exists) in key methods to prevent rare but nasty crashes. --- ### 💾 Fixed Hologram Data Storage Lists of holograms are now saved and loaded correctly — no more missing or corrupted displays between sessions. --- 📌 **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. ---
release

SafeChest 0.0.2

0.0.2
10 сент. 2025 г.29Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8bukkit, paper, purpur, spigot
Скачать
Что нового
## 📜 **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. --- ### ✅ **New Features** 1. **Group-Based Configuration System** Introduces `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 `/actp` and `/acfetch` per 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 have `angelchest.tp` permission). 4. **Vault Economy Integration** Adds full support for Vault-compatible economies (EssentialsX, CMI, etc.). - `/actp` and `/acfetch` can 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 `/actp` instantly. - **[FETCH]**: Run `/acfetch` instantly. - **[PREVIEW]**: Run `/acpreview` instantly. - Hover tooltips explain each action. 6. **Configurable Hologram Text** The hologram text above chests is now fully customizable in `config.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** - Added `max-allowed-angelchests`: Limits the number of active chests a player can have. - Added `material`: Lets you change the chest block type (e.g., `BARREL`, `TRAPPED_CHEST`). --- ### 🐛 **Bug Fixes** 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. - Uses `setKeepInventory(true)` to take full control of item handling. *This fix is essential for server integrity.* 2. **Unsafe Teleportation Fix** The `/actp` command 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** The `price-fetch` value in config was being read as a string, causing errors with decimal values. **FIX:** Now correctly reads as a `double`. 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. --- ### 🎨 **Quality of Life Improvements** 1. **Visual Particle Effects** - ❤️ **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. --- ## 🚀 **Summary** 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.
release

SafeChest 0.0.1

0.0.1
9 сент. 2025 г.45Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8bukkit, paper, purpur, spigot
Скачать
Что нового
# 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.