Skip to content

yourcatismine/Emporium-RayTraceAntiXray

Repository files navigation

Emporium RayTraceAntiXray

A high-performance Minecraft Paper plugin that enhances anti-xray protection through server-side asynchronous multithreaded ray tracing. This plugin works in conjunction with Paper's Anti-Xray engine-mode 1 to hide ores that are exposed to air, providing superior protection against x-ray cheats.

Features

  • Advanced Ray Tracing: Uses sophisticated ray tracing algorithms to determine block visibility from the player's perspective
  • Asynchronous Processing: Multi-threaded ray tracing ensures minimal impact on server performance
  • Third-Person Support: Optional ray tracing for third-person camera views
  • Dynamic Block Management: Automatically reveals blocks as players explore and hides them when out of sight
  • Configurable Block Selection: Customize which blocks are protected by ray tracing
  • Folia Support: Compatible with Folia servers for optimal performance
  • ProtocolLib Integration: Seamless packet manipulation for real-time block updates

Requirements

  • Minecraft Version: 1.21+
  • Server Software: Paper (with Anti-Xray engine-mode 1 enabled)
  • Dependencies:
    • ProtocolLib
  • Java Version: 17+

Installation

  1. Download the latest release JAR file
  2. Place the JAR in your server's plugins folder
  3. Ensure ProtocolLib is installed
  4. Restart your server

Building from Source

git clone <repository-url>
cd Emporium-RayTraceAntiXray
mvn clean package

The compiled JAR will be located in Emporium RayTraceAntiXray/target/.

Configuration

The plugin uses a comprehensive configuration system. Key settings include:

  • Ray Trace Threads: Number of threads dedicated to ray tracing calculations
  • Update Ticks: Frequency of block update checks
  • Ray Trace Distance: Maximum distance for ray tracing calculations
  • Block Selection: Specify which blocks to protect (ores, minerals, etc.)
  • Third-Person Mode: Enable/disable ray tracing for third-person views

See config.yml for detailed configuration options and examples.

Commands

  • /raytraceantixray timings (on|off) - Enable/disable performance timing logs
    • Permission: raytraceantixray.command.raytraceantixray

Performance Considerations

  • Adjust ray-trace-threads based on your server's CPU cores
  • Monitor ms-per-ray-trace-tick to ensure calculations complete within tick time
  • Use max-ray-trace-block-count-per-chunk to balance protection vs performance
  • Consider disabling third-person ray tracing if performance is critical

Compatibility

  • Paper Anti-Xray: Required - this plugin enhances Paper's built-in anti-xray
  • Folia: Fully supported for regionized server architectures
  • ProtocolLib: Required for packet manipulation

Credits

  • Original Author: stonar96
  • 1.21+ Updates: Fixed and updated by h2ph

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For issues, feature requests, or contributions, please visit the project's GitHub repository.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages