ReAntiXray
Per-block, raytrace-based anti-xray with entity, tile, and custom-block culling.
Instead of hiding ores by obfuscating whole chunk packets, ReAntiXray decides visibility per block using real line-of-sight raytracing from each player's eye. An ore is only shown once it is genuinely exposed and in view - everything else is rendered as stone/deepslate on the client. The real world data on the server is never touched.
DOCUMENTATION!
Per-block, raytrace-based anti-xray with entity, tile, and custom-block culling.
Instead of hiding ores by obfuscating whole chunk packets, ReAntiXray decides visibility per block using real line-of-sight raytracing from each player's eye. An ore is only shown once it is genuinely exposed and in view - everything else is rendered as stone/deepslate on the client. The real world data on the server is never touched.
DOCUMENTATION!
Features
- Raytrace ore obfuscation - per-block exposure + line-of-sight test; hidden ores render as a configurable replacement block and reveal the instant they're exposed.
- Fake ore veins - client-side-only decoy veins buried in solid stone to bait x-ray users. Re-rolled on a timer so repeated scans can't be diffed to learn the pattern.
- Entity culling - hides mobs, players, minecarts, item frames and dropped items behind terrain via occlusion raytracing, countering ESP. Players are only culled while sneaking (nameplates render through walls otherwise).
- Tile culling - renders occluded chests, barrels, furnaces and shulkers as air client-side, defeating container ESP. Configurable blacklist (campfires, beacons...) is never hidden.
- Custom-block support - obfuscates and culls custom ores/tiles from ItemsAdder, Oraxen and Nexo through the same engine. No hard dependency.
- Per-world configuration - a default profile plus optional per-world overrides (overworld + nether examples included).
Built for performance
- Chunk-based ore index so reveal passes iterate only nearby ore blocks, never scan terrain.
- Event-driven: only blocks near a player's edit are re-checked - never the whole world.
- Hard ray budget per player per tick, so total cost scales with online players, not world size.
- Fast voxel traversal (Amanatides & Woo DDA) that stops at the first wall.
Commands & permissions
- /antixray reload - reantixray.command.reload
- /antixray toggle [world] - reantixray.command.toggle
- /antixray status - reantixray.command.status
- reantixray.bypass - trusted players are never sent obfuscated data
Compatibility
Paper or Spigot 1.20.6 - 26.x, Java 17+. No required dependencies, no ProtocolLib.
Optional custom-block integrations: ItemsAdder, Oraxen, Nexo (see Dependencies).
Setup
- Drop the jar in "plugins/" folder and start the server once.
- Edit "config.yml" and the files in "worlds/".
- Run "/antixray reload".
