Description
ReLootChest turns vanilla chests placed in your map into per‑player loot chests, without changing the map or adding custom blocks.
- Chests that are part of the map (pre‑built structures, dungeons, etc.) become ReLoot chests.
- Chests placed by players stay 100% vanilla and are never touched by the plugin.
Features
✅ Per‑player chest loot
Each player gets their own instance of the chest contents.
Loot is saved per player and per chest location.✅ Uses the chest’s default contents
ReLoot reads the vanilla inventory of the chest in the world and uses that as the “template” for the first opening.✅ Partial loot is remembered
If a player only takes some items and closes the chest, the remaining items are saved.
Next time they open that chest, they see exactly what they left.✅ One‑time loot per chest per player
When a player completely empties a chest, that chest is considered done for that player.
Re‑opening shows a configurable “already looted” message.✅ Automatic detection of map‑chests vs player‑chests
- Chests obtained from creative/loot and placed by players are detected (by their item id and a custom BlockState) and excluded from ReLoot.
- Only pre‑existing chests in the world are treated as ReLoot chests.
✅ Non‑blocking for normal gameplay
- Map chests are protected from breaking (optional behavior in the BreakBlock system).
- Player chests remain fully vanilla: normal open, break, and mechanics.
✅ Per‑player persistent storage
Player data (which chest they looted, and what remains inside) is saved in simple JSON files underplayerdata/.✅ Configurable messages
Message for “already looted chest” is configurable viaconfig.json.
Default (English):
You have already looted this chest.
if you have any issues contact me on discord: ender_griefeur99
Configuration
File: plugins/ReLoot/config.json
Generated automatically at first run:
```json { "alreadyLootedMessage": "You have already looted this chest." }


