Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
ChestObfuscator
Protect your server's loot from ChestESP hackers — without any client mod.
ChestObfuscator intercepts chunk and block packets at the network level, replacing container positions with stone for distant players. It also floods ChestESP tools with randomised fake containers, making it nearly impossible to identify real loot. No client mod required. Pure server-side.

✨ Features
🧱 Container Obfuscation
All storage blocks beyond 6 blocks from a player are replaced with Stone in the packets sent to that player. The real world is never touched — this is purely client-side deception at the packet level.
Protected block types:
- Chest / Trapped Chest
- Barrel
- Shulker Box (all 16 colours)
- Ender Chest
- Hopper
Block entity NBT (inventory contents, loot tables) is also suppressed for hidden containers, so no data leaks even through indirect packet inspection.
🎭 Fake Container Injection
For every chunk sent to a player, 5–12 randomised fake containers are injected underground (Y 20–50), placed only inside stone. Each player sees a different fake layout in the same chunk, so cross-player comparison cannot expose the real ones.
Fake types injected: Chest, Barrel, Shulker Box, Ender Chest.
Fakes disappear automatically when a player:
- Walks within 4 blocks of one
- Interacts (right-clicks) near one
- Unloads the chunk
🍯 Honeypot Detection
Players who repeatedly mine toward fake container positions are automatically flagged.
Trigger conditions:
- Mines within 3 blocks of a fake container
- Happens 3+ times within 10 minutes
On detection:
- Console log:
[ChestObfuscator] Possible ChestESP detected: PLAYERNAME - In-game alert to all players with
chestobfuscator.alertpermission
⚡ Performance
- Fake container positions are cached per-player per-chunk — no repeated world scans
- Cache is cleaned on chunk unload and player disconnect
- Packet handling is non-blocking and does not impact TPS
- Block override packets are sent 1 tick after chunk send — imperceptible to humans, effective against ESP tools
🛠️ Commands
| Command | Description |
|---|---|
/chestobfuscator reload |
Hot-reload config.yml without restart |
/chestobfuscator stats |
Show active fakes, flagged players, cached chunks |
/co reload |
Alias |
/co stats |
Alias |
🔑 Permissions
| Permission | Default | Description |
|---|---|---|
chestobfuscator.admin |
OP | Access to all commands |
chestobfuscator.alert |
OP | Receive ChestESP detection alerts |
⚙️ Config (config.yml)
reveal-radius: 6 # blocks — real container reveal distance
fake-count-min: 5 # min fake containers per chunk per player
fake-count-max: 12 # max fake containers per chunk per player
fake-y-min: 20 # lowest Y for fake placement
fake-y-max: 50 # highest Y for fake placement
fake-reveal-radius: 4 # blocks — fake disappear distance
honeypot-enabled: true
honeypot-mine-radius: 3
honeypot-trigger-threshold: 3
honeypot-window-seconds: 600
alert-permission: "chestobfuscator.alert"
📦 Requirements
| Requirement | Version |
|---|---|
| Paper | 1.21.1+ |
| ProtocolLib | 5.3.0+ |
| Java | 21+ |
⚠️ ProtocolLib is required. Download it from Modrinth or GitHub.
🗺️ Compatibility
| Platform | Supported |
|---|---|
| Paper 1.21.1 | ✅ |
| Paper 1.21.11 | ✅ Tested |
| Spigot | ❌ Not supported |
| Fabric | 🔜 Planned — see below |
| Forge | ❌ No plans |
| Client-side mod required | ❌ Never |
🔮 Roadmap
v1.1.0 (Planned)
- Per-world enable/disable toggle in config
- Configurable fake container types
- Whitelist: trusted players who always see real blocks
v1.2.0 (Planned)
- Persistent honeypot flag log (survives server restarts)
/co unflag <player>command- Webhook support for Discord alerts on detection
Fabric Version (Future)
A Fabric server-side port is in development under the name
ChestObfuscatorFabric. It will use Mixins to intercept
ServerPlayNetworkHandler.sendPacket and achieve the same obfuscation
without ProtocolLib. Target: Minecraft 1.21.1 with Fabric Loader 0.16+.
The Fabric version will be a separate Modrinth project and will share the same config format for easy migration.
❓ FAQ
Does this affect server performance? No. All obfuscation is done via lightweight packet overrides sent 1 tick after chunk load. No world scanning happens more than once per player per chunk.
Can players tell the fakes are fake? Not from ESP — fakes have valid block states and NBT. They disappear only when the player physically walks close, at which point they'd see real stone anyway.
Does this work with Spigot?
No. The plugin uses Paper-specific APIs (PlayerChunkLoadEvent). Spigot is not
supported and there are no plans to support it.
Will it conflict with other anti-cheat plugins? ChestObfuscator operates purely at the packet/visual layer. It does not interfere with movement checks, combat logging, or any other anti-cheat domain.
📬 Contact & Support
📧 Email | ☕ Buy Me a Coffee
Made by Penchi · Server-side only · No client mod required



