I made a Paper plugin that hides chests from storage ESP and base finders (Krypton etc.)

  • Thread starter Thread starter /u/DevBigLife
  • Start date Start date
U

/u/DevBigLife

Guest
Paper's anti-xray works well for ores, but it doesn't do anything about chests. A chest goes into the chunk packet twice: once as a block, and once in a separate block entity list with its coordinates. Anti-xray only changes blocks, so the list goes out untouched, and with engine-mode 2 the chest block leaks too. That list is what storage ESP and the "stash finder" / "base finder" modules in clients like Krypton read.

So I built OutOfSight. It removes containers from the chunk packet until the player is within 48 blocks and has a line of sight to them, then sends them. If you walk into your own base, your chests are there. If you're standing on a hill above someone's base, or scanning from 150 blocks away, they aren't.

It covers chests, barrels, shulkers, spawners, furnaces, hoppers, beds, signs and banners, plus chest and hopper minecarts and chest boats. It's off by default and has a test mode that only affects you, so you can check your own chests before turning it on for everyone. There's also /oos advise, which reads your Paper config and tells you what anti-xray is missing (by default ancient_debris isn't in hidden-blocks, so netherite finders work as if anti-xray were off).

What it doesn't do: movement and combat cheats. I left those to Grim on purpose, since doing it properly takes movement simulation. It also can't hide tunnels, because the client needs the terrain to walk on.

Every commit gets tested on real Paper servers running 1.21.11, 26.1.2, 26.2 and 26.3, with the same jar. A headless client joins, decodes the packets and checks what got through, and then runs the same scene with the shield off to make sure the test actually catches a leak. The 26.x runs go through ViaVersion, so that combination is covered too.

It's a beta and hasn't been on a busy server yet, so I'd really like people to try it on a test server and tell me what breaks. Paper or Purpur 1.21.11 to 26.3, needs PacketEvents, GPL-3.0.

LLM disclosure (Rule 9): I wrote the core plugin myself (the shield, the packet audit, the reach check and the decoys). For the testing and release stage I used Claude Opus 5.5 (Anthropic) through Claude Code. It fixed bugs I hadn't caught (the shield broke in the Nether and End), added the minecart/boat hiding and the config checker, and wrote the CI tests against real Paper servers, about 30% of the current code. It also helped write the docs and this post, and made the logo. I reviewed its changes and the test results.

GitHub: https://github.com/tunaseckin/outofsight

Modrinth: https://modrinth.com/plugin/outofsight

submitted by /u/DevBigLife
[link] [comments]

Continue reading...
 
Back