Demonstration 1

Orebfuscator - Anti X-RAY:


This plugin is used to counter X-RAY Client mods.

It modifies data that are sent to clients to hide blocks of your choice, such as Ore, chests, dungeons, etc.

It does not manipulate blocks in the world file, thus is safe to use.

ProximityHider is a feature that hides chests that are far from players.


Configuration Guide





Dropbox link removed due to Bukkit regulations. Latest version should be on BukkitDev, if not, then the dropbox link is still in the forum thread.

Please also download ProtocolLib and install it in the plugins folder. Download link: http://dev.bukkit.org/server-mods/protocollib/


  • Advanced algorithm that hides ore, chest and and anything you specify in the configuration
  • Spout compatible, but optional
  • No modifications to CraftBukkit.jar is needed
  • Customize the blocks you want to hide
  • HIDES DUNGEONS and other blocks that are in the dark
  • Different hiding mode, or scrambling.
  • Extensive configuration. Change updating methods depending on your bandwidth and processing speed.
  • Hide hidden chests and furnaces until a player is close to it.


Install: Copy "Orebfuscator.jar" to your plugins folder, and restart/reload your server.


See this: https://github.com/lishd/Orebfuscator/wiki


See this: https://github.com/lishd/Orebfuscator/wiki


See this: https://github.com/lishd/Orebfuscator/wiki

Source Code

Here you go! (Hosted on Github)


  • This plugin utilises Hidendra's plugin metrics system, which means that anonymous information of your OS and setup will be collected and sent to mcstats.org
  • Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.


  • This plugin uses an Auto-updater to fetch the latest version from BukkitDev automatically. It can be disabled in the configuration file.


  • AFFORESS, major help on code optimization and spout support!
  • raphfrk, helped with packet processing
  • Many donators!


  • None ATM


  • A command that generates the world cache for the existing chunks.


Version 2.1.3
  • Updated to MC1.7.8
Version 2.1.2
  • Fixed cast exception.
Version 2.1.1
  • Update to MC1.7.5.

Full history: https:github.com/lishd/Orebfuscator/wiki/Version-History




CPU testing with Initial radius and Caching:


A quick donation is always appreciated :D




You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of lishid lishid Dec 07, 2013 at 07:11 UTC - 0 likes

    @Kademlia: Go

    @Kademlia: Go

    @FatFreeSMP: Go

    Looking into the problem.

  • Avatar of FatFreeSMP FatFreeSMP Dec 07, 2013 at 07:01 UTC - 0 likes


    I am getting an error using your plugin and Bukkit 1.7.2 (#2943). I am using the new version of Orbfuscator that you linked below, and I have tried running the server with ONLY your plugin running. Players connecting are being booted once they start moving around with the following error:

    Internal Exception: io.netty.handler.codec.DecoderException: java.io.Exception: bad compressed data format

    Note: I am not seeing ANY error messages in console, thanks for looking.

  • Avatar of redundantgaming redundantgaming Dec 07, 2013 at 06:49 UTC - 0 likes

    @Bobcat00: Go

    Aside from the errors is the build stable?

  • Avatar of Kademlia Kademlia Dec 07, 2013 at 03:14 UTC - 0 likes

    If a setting can produce the error it does not mean another one cant ;) Deactivate everything except "Enabled: true" afaik that will result in not processing the faulty packages

  • Avatar of Bobcat00 Bobcat00 Dec 07, 2013 at 02:06 UTC - 0 likes

    I set UseProximityHider to false and I still get the bad compressed data error.

    <<size 0px>>BFAK:90822802,6b4abae79b787c1912d57328d2ee06a4477abe07c121d09ab07a5e797ef765be<</size>>

  • Avatar of Kademlia Kademlia Dec 07, 2013 at 01:55 UTC - 0 likes

    I was able to narrow down the problem described by bobcat00:

    It will only occur if a PacketPlayOutMapChunk is thrown or a Packet51 in your case. From 1.6.4 to 1.7.2 in PacketPlayOutMapChunk the values of "e" and "inflatedBuffer" were switched. At least the second return in https://github.com/lishid/Orebfuscator/blob/master/src/com/lishid/orebfuscator/internal/v1_7_R1/Packet51.java will not make sense, as it is a boolean.

    I was unable to locate the real problem, but disabling processing of PacketPlayOutMapChunk solves the Issue.

    Reproduction: You will need to have a user connected non-op and change more than 64 blocks on a single Chunk (dirtyFlag has to be set). The most effective way was selecting an area of about 200 blocks and do replace air water. This will crash the non-op user if ProximityHider is active.

    About the wrong Spawner-Types: This can be fixed by adding this in ProximityHider.java

    if (b.getState() instanceof CreatureSpawner)
             CreatureSpawner spawner = (CreatureSpawner) b.getState();
    Last edited Dec 07, 2013 by Kademlia
  • Avatar of Bobcat00 Bobcat00 Dec 06, 2013 at 23:09 UTC - 0 likes

    I'm getting a lot of "bad compressed data" errors. Any suggestions on what I can do for this?

    Using Bukkit 1.7.2 build 2940, your new Orebfusicator from D.B., engine mode 2, compression level 1. No clearlag plugins, no protocolib.

    EDIT: Error happens with compression levels 0, 1, and 2. Seems to happen when exploring new areas (perhaps uncached, perhaps newly generated, I'm not sure).

    Last edited Dec 07, 2013 by Bobcat00
  • Avatar of lishid lishid Dec 06, 2013 at 10:26 UTC - 0 likes

    @CatsyLady: Go

    You need to wait until bukkit approves the file or grab it from the forum i linked a little below.

  • Avatar of CatsyLady CatsyLady Dec 06, 2013 at 09:32 UTC - 0 likes

    sorry, wrong spelled...
    yes i mean 1.7.2 and i mean what CB-dev build
    this is the most important plugin i use,
    i wont update without it

    Last edited Dec 06, 2013 by CatsyLady
  • Avatar of lishid lishid Dec 06, 2013 at 00:13 UTC - 0 likes

    @Bobcat00: Go

    That is correct. I am looking into the issue.

    @CatsyLady: Go

    Use the dev build linked below (from the forum) if you're trying to use MC1.7.2, otherwise, there is no need to upgrade at the moment.


Date created
Sep 24, 2011
Last update
Apr 13, 2014
Development stage
  • enUS
GNU General Public License version 3 (GPLv3)
Curse link
Recent files