Compatibility
Minecraft: Java Edition
Platforms
Creators
Details
Changelog
✅ 1. Chest Logging System Added
New file: deathchests.yml
Logs every death chest with:
Player UUID
Chest location(s)
Timestamp
Double chest flag
Status (active, expired, etc.)
Added method: logDeathChest(...)
Added method: updateDeathChestStatus(...)
✅ 2. Compass Support Added
Config option: enable-compass (default true)
New command: /dc999 compass
Gives the player a lodestone compass pointing to their last death chest
Only works if death location is known
✅ 3. Double Chest Handling Improved
Added logic to:
Check if a DoubleChest really formed
If not, fallback to two single chests
Delayed chest merging validation: 3L delay
Each single chest is now saved and removed separately if not merged
Fixed: Duplicate saveChest() call removed
✅ 4. Chest Restoration Improved
All chest chunks are now force-loaded before restoration
Second chest block now validated before placing
Inventory contents now handled safely:
Trims or pads to match correct chest size
Prevents IndexOutOfBoundsException
✅ 5. Better Chest Protection
Owner can open the chest immediately after death ✅
Others are blocked during lock period ✅
Interaction events now notify non-owners of remaining lock time via chat
✅ 6. Safer File I/O
Config saving is now done asynchronously:
saveConfigAsync() for chest.yml
saveDeathChestsConfigAsync() for deathchests.yml
Reduces potential lag or I/O blocking
✅ 7. Config Reload Expanded
/dc999 reload now also reloads:
chest.yml
deathchests.yml
Properly updates all internal variables (lifetime, lock time, compass)
✅ 8. Minor Fixes & Cleanup
Removed redundant import statements
Cleaned up null checks and warnings:
If world doesn’t exist in config, now logs a warning
Death location loading now warns on invalid or missing world
Prevents chest placement in non-air blocks (fails gracefully)
InventoryInteract events now only check "DeathChest" name (not material)
✅ 9. Command Help Improved
/dc999 now shows relevant command list based on compassEnabled



