No X-Ray

This project is abandoned and its default file will likely not work with the most recent version of Minecraft. Whether this project is out of date or its author has marked it as abandoned, this project is no longer maintained.

No_Xray

Not Coming Back Yet

The author who said they were bringing back this plugin actually just stole Orebfuscator and re-published it. That is NOT going to happen under my watch.

NOTICE: I am officially deprecating this project (4/17/12)

What does this mean?

  • I believe that this project is too inefficient, too insecure, and too difficult for me to fix to correct these issues.

Why are you doing this?

  • I want to free my time for other projects. No need to be hung up here when better alternatives (for both you and me) are out there!

Where should I go now for anti x-ray?

Is development over?

  • Sort of. I won't be developing this plugin actively. I might come back to it later, either when I want to learn more about anti x-ray, although for a while, I will be spending my time elsewhere. I definitely won't be back till late June, due to exams and travel.

What needs to be done to fix the project?

  • Vision needs serious debugging. Sometimes, the vision doesn't calculate right.
  • Chunk sending needs to be overridden to hide all non-visible blocks on chunk load.
  • The efficiency of the ray tracing and searching algorithms need improvement. Perhaps the search could spider out rather than simply iterating through a cuboid?
  • Exposure hiding would be a big plus: hiding based on if a block is exposed to a transparent block.
  • Auto-shutdown of plugin if the server is getting too laggy.

Can I take over this project?

  • Be my guest! If you have submissions/fixes, please tell me. If you want full control of the development, I can give you/add you to the project.

Summary

No X-Ray by FalseVacuum is, as the name suggests, an anti-X-Ray hack plugin. No X-Ray is unlike some plugins in that it actually uses the line-of-sight of the player (sort of) to decide which blocks to hide. While many anti X-Ray plugins check if the given block is surrounded by opaque blocks, No X-Ray checks 8 different line-of-sight paths to the block. If all 8 paths are blocked at any point by an opaque block, the block's type is changed.

Configuration

There are 3 configuration nodes in config.yml:

  • objects.transparent - a list of all transparent (see through, non-opaque) objects (defaults to too many objects to list
  • objects.hidden - a list of all objects to hide (defaults to chest, diamond ore, moss stone, monster spawner)
  • objects.isactuallyopaque - Is the transparent list actually an opaque list
  • verbose - This is for debugging. Don't turn this on unless you're a developer
  • search.x, y, z - The x, y, and z search distances. These default to 100 each (search.x, search.y, search.z).
  • search.gothreadsafe - Choose to test out the experimental thread-safe method. This puts all changeBlockAt() calls in the main thread.

Commands

  • /noxray reload - Reload the configuration of the plugin
  • /noxray release - Release (disable) the plugin. This allows you to update the plugin without shutting down the server

Permissions

  • vacuum.noxray - Gives access to all noxray commands.
  • vacuum.noxray.hide - Give this permission to anyone from whom you want to hide things like chests, etc. This defaults to everyone but ops.

Known issues

No X-Ray occasionally will not determine if the desired block is visible or not. More often, it will decide a block is visible if it is not. This is often due to corners being transparent.

This application may or may not be thread-safe

I spoke with Lishid, author of Orebfuscator. He gave me some great tips, and I will do my best to get them into the next update. This will hopefully alleviate some of the issues with blocks appearing/disappearing when they shouldn't. He also spoke to me about some possible vulnerabilities. Implementing them will be a lot of work, but I will do my best to get this plugin up to speed with what it should be!

Performance

While it may seem appealing to make all diamond blocks (id = 56) hidden, remember that there are many, many diamonds. You might benefit from just searching for chests, monster spawners, and moss stone.

You can also try decreasing the search distances. You probably shouldn't go below 25 for any given direction (this gives a dimension of 50 for the cuboid because it is 25 forward, 25 backward)

Another thing you can try is reducing the number of people that have vacuum.noxray.hide. Set this permission to false on people you trust.

Source

Curious about how this plugin works? Ask in the comments below or dive into the source!


Comments

Posts Quoted:
Reply
Clear All Quotes

About This Project

Categories

Members

Recent Files

Bukkit