Orebfuscator
Orebfuscator - Anti X-RAY:
For all releases of 1.9/1.9.1/1.9.2/1.9.4/1.10/1.11/1.12.x/1.13.x: Version 4.4.3
Now with support for CraftBukkit 1.9/1.9.1/1.9.2/1.9.4/1.10/1.11/1.12.x/1.13.x!
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.
As of 4.3.3, Proximity Hider has been enhanced to use line-of-sight checks, not just proximity! Upgrade today.
Configuration Guide
https://github.com/lishid/Orebfuscator/wiki/How-to-properly-configure-Orebfuscator
https://github.com/lishid/Orebfuscator/wiki/Configuration-File
FAQ
https://github.com/lishid/Orebfuscator/wiki/FAQ
DOWNLOAD
Please read compatibility information before downloading as not all releases work with all versions of CraftBukkit.
Latest version should be on BukkitDev, or as a release on the Github page: https://github.com/lishid/Orebfuscator/releases
Please also download ProtocolLib and install it in the plugins folder.
- Is compatible only with version 4.0.0 or newer.
- For 1.9.4 support, you must use build 277 or newer of Protocollib 4.0
- For 1.10 support, you must use build 293 or newer of Protocollib 4.0
- For 1.11 support, please use latest stable builds of ProtocolLib for 1.11.
- For 1.12 support, please use ProtocolLib 4.3.0 or newer.
- For 1.13 support, please use ProtocolLib 4.4.0 or newer.
- Download link: https://www.spigotmc.org/resources/protocollib.1997/
- Legacy Link: http://dev.bukkit.org/server-mods/protocollib/
Features
- 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.
- Hide hidden chests and furnaces until a player can see it.
Usage
Install:
- Copy "orebfuscator-4.4.3.jar" to your plugins folder
- If you're upgrading from Orebfuscator.jar, move the contents of the "Orebfuscator3" folder to the "Orebfuscator4" folder
- Restart your server.
Configuration
See this: https://github.com/lishid/Orebfuscator/wiki
Commands
See this: https://github.com/lishid/Orebfuscator/wiki
Permissions
See this: https://github.com/lishid/Orebfuscator/wiki
Source Code
Here you go! (Hosted on Github) - please post issues and requests for help there
Metrics
- This plugin utilizes 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.
Thanks!
- Aleksey_Terzi, single-handedly updating to CraftBukkit 1.9, 1.11, and 1.12!
- DevotedMC for taking over management of the project
- AFFORESS, major help on code optimization and spout support!
- Lishid, for years(!) of maintaining this plugin, and MarioG1 for recent patch support
- raphfrk, helped with packet processing
- Many donators!
Bugs
- See the issues page for any outstanding problems.
TODO
- A command that generates the world cache for the existing chunks.
Changelog
Version 4.4.3
- Support for Minecraft 1.13.2 latest builds (CraftBukkit/Spigot/etc)
Version 4.4.2
- Fixes for reported issues during use -- please update
Version 4.4.1
- Support for Minecraft 1.13 and 1.13x (CraftBukkit/Spigot/etc)
- Some enhancements under the covers, including better support for tile entity hiding and state management
Version 4.3.3
- Includes fixes for portions of #164
- NEW FEATURE: Gaze based proximity hiding. If you can't see it due to blocks in the way, it stays proximity hid, regardless of your physical closeness! For full details, read here: PR#16
- New example configs! Find them here: https://github.com/lishid/Orebfuscator/tree/master/Plugin/src/main/resources/resources
Version 4.3.0
- Support for Minecraft 1.12 (CraftBukkit/Spigot/etc)
Version 4.2.1
- #135 : Resolved issue that plugin doesn't work unless you delete the config and force reload and clear cache after startup
Version 4.2.0
- Support for Minecraft 1.11 (CraftBukkit/Spigot/etc)
- Remove ChunkReloader due to performance issues at scale.
- Addressed #66. Limit Cache retention configuration options added.
- Proximity Hider blocks are by default orebfuscated, if both are active.
- Implemented #62. Per World Configuration -- have unique configurations per world.
- Addressed DevotedMC#8. Allow for unique proximity Y height per material hidden.
- Fixed #113. Item frames sometime disappeared.
- Fixed #124. Glitches when used FastAsyncWorldEdit.
- Fixed #125. Prevent obfuscation for NPC, for ex. NPC from plugin Citizens.
- Fixed #128. EntityChangeBlockEvent was not causing block updates.
Version 4.1.4
- Fixing ChunkLoader error: https://github.com/lishid/Orebfuscator/issues/110
- Improving performance of ChunkReloader
Version 4.1.2
- It is now possible to use Worlds list either as blacklist (i.e. all worlds are subject for obfuscation excluding listed) or as whitelist (i.e. only listed worlds are subject for obfuscation)
- Fixed bug with using ProximityHider and Signs. It is now possible to add WALL_SIGN and SIGN_POST to ProximityHider obfuscation.
- Updated wiki so commands and configuration pages are matching to the current Orebfuscator.
Version 4.1.1
- Various Small fixes
- Fix which might resolves problem described in https://github.com/lishid/Orebfuscator/issues/100
- Config file now supports block names additionally to IDs
Version 4.1.0
- Support for CB 1.10 - thanks Asgarioth!
Version 4.0.14
- Single jar supports all releases of 1.9.x now!
- Some chunk reload issues are corrected (on teleport, etc.)
Version 4.0.12.1
- Add support for 1.9.4 - this release does not support prior versions.
Version 4.0.12
- Fixed entity list reload issue
Version 4.0.11
- Fixed failure to deobfuscate along chunk boundaries under specific conditions.
Version 4.0.10
- Fixed crash for PaperSpigot servers
Version 4.0.9
- Fixed crash when chunk section (16 x 16 x 16) has more than 127 different block types
- Implemented different "transparent block" lists for Engine Mode 1 and Engine Mode 2. For now only difference is with lava block, for mode 1 it is non-transparent, for mode 2 it is transparent.
- Implemented possibility to specify which blocks are transparent and not in the config file, sections: TransparentBlocks and NonTransparentBlocks.
- Fix which may have solved java.util.ConcurrentModificationException
- Fix for phantom blocks (visible after chunk reloaded) when player is digging straight line on the chunk border.
Version 4.0.7-beta
- Corrected transparent block list. For example, lava blocks marked as transparent and therefore adjacent blocks are not obfuscating anymore
- Improved performance of ProximityHider function
Version 4.0.5-alpha
- Fixes teleport / join in the End causing client-side crashes.
- Fixes failure to deobfuscate immediately on join.
Version 4.0.3-alpha
- Updated to MC1.9.
Full release notes: In Github Release
Version 3.0.5
- Updated to MC1.8.3.
Full history: https:github.com/lishd/Orebfuscator/wiki/Version-History
A quick donation is always appreciated :D
Devoted Patreon or General Inquiry
-
View User Profile
-
Send Message
Posted Aug 8, 2012@midnightfang22
The blocks are fake...so they shouldn't get suffocation damage. If they do then it means that the blocks are real and caused be another plugin...
-
View User Profile
-
Send Message
Posted Aug 8, 2012@lishid
Most of the time yes. When we first went to 1.3.1 (around mid-recommended build) it happened after breaking every 5 blocks or so using the unstable build. We first noticed it breaking trees. We had to turn it off until you updated out of the orebdusicator dev build.
This goes away after relogging so its easy to fix, but people can get suffocation damage from it if it happens suddenly.
Edit: Actually, we accidentally got a video of it. We were recording testing a anti-hack plugin and I mixed up the recording/not recording phases...noob move but lucky got this bug in it lol. Ignore the last part of the video; the quack was at the anti-hack plugin we tried since everything went though without any alerts. http://www.youtube.com/watch?v=Ec6AMFz8r5E&feature=youtu.be
-
View User Profile
-
Send Message
Posted Aug 8, 2012@shaan94
Weird... I'll investigate. Could you look for elsewhere about NullPointerException (search in your log)
-
View User Profile
-
Send Message
Posted Aug 8, 2012@lishid
There is literally nothing else printed on the console, only those 2 lines:
[SEVERE] [OFC] java.lang.NullPointerException [SEVERE] java.lang.NullPointerException
Normally when I got a plugin error it gives some more information than this, but this is all that's there. 5 minutes after this appears I get "Read timed out"
Thanks
-
View User Profile
-
Send Message
Posted Aug 8, 2012@shaan94
When the error appears there should be a stacktrace in the beginning. Could you locate the parts where it says "at XXXXX(file.java:
)"?Thanks.
-
View User Profile
-
Send Message
Posted Aug 8, 2012@midnightfang22
And it happens when you use WorldEdit?
-
View User Profile
-
Send Message
Posted Aug 8, 2012@lishid
I just got a screenshot of the bug with the chunk. http://i867.photobucket.com/albums/ab233/flyffphotoshop/2012-08-08_224801.png http://i867.photobucket.com/albums/ab233/flyffphotoshop/2012-08-08_224753.png
-
View User Profile
-
Send Message
Posted Aug 8, 2012Hey,
Firstly thanks for your work on the plugin, couldn't run my server without it!
After updating to 1.5.7, my server gets Read timed out after around an hour of being online.
Every time before it goes offline this appears: [SEVERE] [OFC] java.lang.NullPointerException [SEVERE] java.lang.NullPointerException
Is there any fix for this?
Thanks
-
View User Profile
-
Send Message
Posted Aug 8, 2012@mrloaxx
Try this and please tell me if it fixes it. https://dl.dropbox.com/u/18947504/Orebfuscator2.jar
Thanks.~
-
View User Profile
-
Send Message
Posted Aug 8, 20121.5.7 has been working like a charm, except that this error pops up once in a while and boots people out, but I think it's bukkit related.
2012-08-07 03:08:31 [SEVERE] [OFC] java.lang.NullPointerException 2012-08-07 03:08:31 [SEVERE] java.lang.NullPointerException 2012-08-07 03:08:31 [SEVERE] at com.lishid.orebfuscator.obfuscation.Calculations.sendTileEntities(Calculations.java:508) 2012-08-07 03:08:31 [SEVERE] at com.lishid.orebfuscator.obfuscation.OverflowPacketQueue.sendOut(OverflowPacketQueue.java:70) 2012-08-07 03:08:31 [SEVERE] at com.lishid.orebfuscator.obfuscation.OverflowPacketQueue.run(OverflowPacketQueue.java:135)
-
View User Profile
-
Send Message
Posted Aug 8, 2012@Jadedwolfs
Ok, I'll look into the stream error.
-
View User Profile
-
Send Message
Posted Aug 8, 2012@lishid
... It's causing enough server lag, and I have the best dedicated box you can probably pay for.
With a new ivy bridge processor, SSD, etc..
-
View User Profile
-
Send Message
Posted Aug 8, 2012@Jadedwolfs
You could disable cache.
-
View User Profile
-
Send Message
Posted Aug 8, 2012<<reply 859441>
Every time this error happens, which happens alot, the server freezes for a sec and causes can't keep ups, with low tps.
2012-08-08 18:07:08 [SEVERE] java.io.IOException: Stream Closed
2012-08-08 18:07:08 [SEVERE] at java.io.RandomAccessFile.seek(Native Method)
2012-08-08 18:07:08 [SEVERE] at net.minecraft.server.RegionFile.a(SourceFile:327)
2012-08-08 18:07:08 [SEVERE] at net.minecraft.server.RegionFile.a(SourceFile:279)
2012-08-08 18:07:08 [SEVERE] at net.minecraft.server.ChunkBuffer.close(SourceFile:230)
2012-08-08 18:07:08 [SEVERE] at java.util.zip.DeflaterOutputStream.close(DeflaterOutputStream.java:241)
2012-08-08 18:07:08 [SEVERE] at java.io.FilterOutputStream.close(FilterOutputStream.java:160)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.cache.ObfuscatedCachedChunk.setData(ObfuscatedCachedChunk.java:160)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.cache.ObfuscatedCachedChunk.Write(ObfuscatedCachedChunk.java:120)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.obfuscation.Calculations.Obfuscate(Calculations.java:387)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.obfuscation.Calculations.ComputeChunkInfoAndObfuscate(Calculations.java:149)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.obfuscation.Calculations.Obfuscate(Calculations.java:106)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.threading.OrebfuscatorThreadCalculation.run(OrebfuscatorThreadCalculation.java:162)
2012-08-08 18:07:08 [SEVERE] java.io.IOException: Stream Closed
2012-08-08 18:07:08 [SEVERE] at java.io.RandomAccessFile.seek(Native Method)
2012-08-08 18:07:08 [SEVERE] at net.minecraft.server.RegionFile.a(SourceFile:327)
2012-08-08 18:07:08 [SEVERE] at net.minecraft.server.RegionFile.a(SourceFile:279)
2012-08-08 18:07:08 [SEVERE] at net.minecraft.server.ChunkBuffer.close(SourceFile:230)
2012-08-08 18:07:08 [SEVERE] at java.util.zip.DeflaterOutputStream.close(DeflaterOutputStream.java:241)
2012-08-08 18:07:08 [SEVERE] at java.io.FilterOutputStream.close(FilterOutputStream.java:160)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.cache.ObfuscatedCachedChunk.setData(ObfuscatedCachedChunk.java:160)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.cache.ObfuscatedCachedChunk.Write(ObfuscatedCachedChunk.java:120)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.obfuscation.Calculations.Obfuscate(Calculations.java:387)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.obfuscation.Calculations.ComputeChunkInfoAndObfuscate(Calculations.java:149)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.obfuscation.Calculations.Obfuscate(Calculations.java:106)
2012-08-08 18:07:08 [SEVERE] at com.lishid.orebfuscator.threading.OrebfuscatorThreadCalculation.run(OrebfuscatorThreadCalculation.java:162)[/i
[i]Also, edit: I'm getting the same worldedit errors as this guy midnightfang22
-
View User Profile
-
Send Message
Posted Aug 8, 2012@Bimmr
Only if you hit/break a block will it reveal the real blocks around.
@Tommy_Mansell
Heh I know when I changed my code...
@SuperPyroManiac
Chests appear when users are in a 8 block radius away from them unless your server CPU is full.
Also, what the hell did you do to the config?
@midnightfang22
The error can be safely ignored, and i don't know why it's still poping out. I specifically wrote that it should be ignored and not printed out...
by huge chunk did you mean 16x16x16?
All blocks go invisible... Yes he is using x-ray. He clearly is pointing at a block hidden by x-ray (look at the black wireframe)
-
View User Profile
-
Send Message
Posted Aug 8, 2012having a REALLY weird bug happen using the dev build 2322 This is the error I can find in the logs http://pastebin.com/xaY8UFqj One bug is every time the server owner does world edit, a huge chunk appears into thin air that is scrambled and he has to relog for it to disappear. Another bug that one player has is that all blocks just go invisible. (http://i.imgur.com/tH8yz.png) The player does not have xray installed, but they were messing with their view distance when it happened. Not sure if that can be the cause of it.
-
View User Profile
-
Send Message
Posted Aug 8, 2012Can't use it, causing all of my users chests to be stone and they can't use them, and causes all of my users to get Out Of Memory crashes.
-
View User Profile
-
Send Message
Posted Aug 8, 2012@lishid
My bad sorry, i could of swore i had 1.5.7 as it worked on 1.3.1, but thank you :)
-
View User Profile
-
Send Message
Posted Aug 8, 2012@lishid But couldn't u still use the if update radius?
-
View User Profile
-
Send Message
Posted Aug 8, 2012@1born2kill
I have exactly the same problem.