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 Mar 22, 2012@lishid
Yes i did try clear cache but it stopped for around a few minutes but then proceeded
-
View User Profile
-
Send Message
Posted Mar 22, 2012Anyone getting the error here:
Failed to handle packet: java.lang.NullPointerException java.lang.NullPointerException
This was just fixed in the latest CB and will be on the next beta build for MC 1.2.4
-
View User Profile
-
Send Message
Posted Mar 22, 2012@luna0316
Not this plugin's fault, it's CraftBukkit
-
View User Profile
-
Send Message
Posted Mar 22, 2012This is happening to me. not sure if it is you plugin but it says obfuscator in the error
17:49:22 [WARNING] Failed to handle packet: java.lang.NullPointerException java.lang.NullPointerException at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockBreakEvent(Cr aftEventFactory.java:548) at net.minecraft.server.ItemInWorldManager.breakBlock(ItemInWorldManager .java:210) at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:1 04) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:625) at lishid.orebfuscator.hook.NetServerHandlerProxy.a(NetServerHandlerProx y.java:91) at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:117) at lishid.orebfuscator.hook.NetServerHandlerProxy.a(NetServerHandlerProx y.java:60) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:7 8) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:554) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452) at net.minecraft.server.ThreadServerApplication.run(SourceFile:490) 17:49:31 [INFO] PLAYERNAME [PLAYERIP] logged in with entity id 3143 at ([survival] 176.97768249779458, 66.0, 183.1150469110759) 17:55:18 [INFO] me DEOPing SOMEONE 18:10:42 [WARNING] Failed to handle packet: java.lang.NullPointerException java.lang.NullPointerException at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockBreakEvent(Cr aftEventFactory.java:548) at net.minecraft.server.ItemInWorldManager.breakBlock(ItemInWorldManager .java:210) at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:1 04) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:625) at lishid.orebfuscator.hook.NetServerHandlerProxy.a(NetServerHandlerProx y.java:91) at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:117) at lishid.orebfuscator.hook.NetServerHandlerProxy.a(NetServerHandlerProx y.java:60) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:7 8) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:554) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452) at net.minecraft.server.ThreadServerApplication.run(SourceFile:490) 18:11:14 [INFO] PLAYERNAMEHERE [PLAYER IP] logged in with entity id 5919 at ([survival] 169.81016378447723, 64.0, 182.69544560966204)
-
View User Profile
-
Send Message
Posted Mar 22, 2012@egladius
Update to latest.
@quickclay
Spout has problems in itself with class identification.
-
View User Profile
-
Send Message
Posted Mar 22, 2012got errors with writing to cache on shutdown of orebfuscator: 2012-03-22 10:40:16 [INFO] [Orebfuscator] Disabling Orebfuscator v1.4.1-beta8 2012-03-22 10:40:16 [INFO] [OFC] Version 1.4.1-beta8 disabled! 2012-03-22 10:40:16 [SEVERE] java.io.IOException: Stream Closed 2012-03-22 10:40:16 [SEVERE] at java.io.RandomAccessFile.seek(Native Method) 2012-03-22 10:40:16 [SEVERE] at net.minecraft.server.RegionFile.a(SourceFile:366) 2012-03-22 10:40:16 [INFO] [Minequery] Disabling Minequery v1.5 2012-03-22 10:40:16 [SEVERE] at net.minecraft.server.RegionFile.a(SourceFile:313) 2012-03-22 10:40:16 [SEVERE] at net.minecraft.server.ChunkBuffer.close(SourceFile:262) 2012-03-22 10:40:16 [SEVERE] at java.util.zip.DeflaterOutputStream.close(Unknown Source) 2012-03-22 10:40:16 [SEVERE] at java.io.FilterOutputStream.close(Unknown Source) 2012-03-22 10:40:16 [SEVERE] at lishid.orebfuscator.cache.ObfuscatedCachedChunk.setData(ObfuscatedCachedChunk.java:134) 2012-03-22 10:40:16 [SEVERE] at lishid.orebfuscator.cache.ObfuscatedCachedChunk.Write(ObfuscatedCachedChunk.java:102) 2012-03-22 10:40:16 [SEVERE] at lishid.orebfuscator.obfuscation.Calculations.Obfuscate(Calculations.java:476) 2012-03-22 10:40:16 [SEVERE] at lishid.orebfuscator.obfuscation.Calculations.Obfuscate(Calculations.java:194) 2012-03-22 10:40:16 [SEVERE] at lishid.orebfuscator.obfuscation.Calculations.Obfuscate(Calculations.java:153) 2012-03-22 10:40:16 [SEVERE] at lishid.orebfuscator.threading.OrebfuscatorThreadCalculation.run(OrebfuscatorThreadCalculation.java:134) 2012-03-22 10:40:16 [INFO] [WorldEdit] Disabling WorldEdit v5.3-SNAPSHOT
-
View User Profile
-
Send Message
Posted Mar 22, 2012@lishid
What version of Spout are you using? I get this error in their latest dev build:
2012-03-22 15:31:05 [INFO] [Orebfuscator] Enabling Orebfuscator v1.4.2
2012-03-22 15:31:05 [SEVERE] Error occurred while enabling Orebfuscator v1.4.2 (Is it up to date?)
java.lang.NoClassDefFoundError org/getspout/spoutapi/packet/listener/PacketListener
at lishid.orebfuscator.Orebfuscator.onEnable(Orebfuscator.java:126)
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:215)
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:336)
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:250)
at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:232)
at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:184)
at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:53)
at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:156)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:490)
Caused by: java.lang.ClassNotFoundException org.getspout.spoutapi.packet.listener.PacketListener
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:41)
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:29)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 11 more
-
View User Profile
-
Send Message
Posted Mar 22, 2012@UnitedFactions
Just tested with latest dev version. Works fine.
-
View User Profile
-
Send Message
Posted Mar 22, 2012@deleted_7536780
NOT caused by this plugin. Comes from a bug in CB.
@UnitedFactions
What's broken?
-
View User Profile
-
Send Message
Posted Mar 22, 201206:12:39 [WARNING] Failed to handle packet: java.lang.NullPointerException java.lang.NullPointerException at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockBreakEvent(CraftEventFactory.java:548) at net.minecraft.server.ItemInWorldManager.breakBlock(ItemInWorldManager.java:210) at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:104) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:625) at lishid.orebfuscator.hook.NetServerHandlerProxy.a(NetServerHandlerProxy.java:91) at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:117) at lishid.orebfuscator.hook.NetServerHandlerProxy.a(NetServerHandlerProxy.java:60) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:554) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452) at net.minecraft.server.ThreadServerApplication.run(SourceFile:490)
-
View User Profile
-
Send Message
Posted Mar 22, 2012@lishid Broken with 1.2.4 dev :) >< Can u work ona fix please as soon as u can make some time :O
-
View User Profile
-
Send Message
Posted Mar 22, 2012@Silarn
Oh hoho it does not just use the bukkit API, it manages and overrides many of the CraftBukkit stuff. I only know spout good for its good client-side features, such as server-controlled GIU's, etc.
-
View User Profile
-
Send Message
Posted Mar 22, 2012Okay, well. Since Spout is ultimately just a plugin using the bukkit API, it's not required for anything, but dozens of plugins use its features or at least use the API rather than writing all said methods from scratch. And having support for plugin-based GUI elements is a nice feature, even if you do have to use their client program to see any of it.
-
View User Profile
-
Send Message
Posted Mar 22, 2012@Silarn
As far as I know, spout doesn't really enhance anything, it causes small bugs and crashes here and there.
Your error is most likely caused by using a somewhat unstable CraftBukkit, or it's a craftbukkit issue on itself.
If you were to remove my plugin, it would happen but without the reference to my plugin.
@Adrenalineq
/ofc disable cache
@Harry_baggs
read FAQ section.
-
View User Profile
-
Send Message
Posted Mar 22, 2012@lishid
-
View User Profile
-
Send Message
Posted Mar 21, 2012@Silarn
You're using a dev version of bukkit, bro. There are going to be issues.
-
View User Profile
-
Send Message
Posted Mar 21, 2012@lishid
Then what exactly is causing it? Your plugin is the only one I see referenced in that traceback. This is NOT the Spout error. This is an entirely different error. Spout is not installed.
I use Spout to enhance about a half dozen other plugins. But I don't use anything that requires it.
--
I have not added any plugins. I only updated several things, Bukkit in particular. There was an McMMO update related to this, however. Maybe that will fix it.
-
View User Profile
-
Send Message
Posted Mar 21, 2012@Silarn
Again, this is not caused by my plugin.
Why do you need Spout btw?
-
View User Profile
-
Send Message
Posted Mar 21, 2012@lishid
Hey man. On the newest versions of Bukkit my players occasionally get disconnected with this error. It may or may not also be conflicting with Spout, but I'd rather remove Spout for a while than Oreb so that's what I did. (Players are getting kicked with an error when breaking blocks when Spout is installed.)
-
View User Profile
-
Send Message
Posted Mar 21, 2012@noxturno
Not sure what happened there... It wouldn't bypass anything since it does not interact with the chest itself but rather sends fake stuff to clients. You might be having some other plugin also interacting with chests?
For the update on damage thing, I'm still not sure why it only lags on your server...
@gertjan206
This anti-xray counters every possible x-ray hack. If you can see through with the x-ray, you might be experiencing config problems. Do you see a pale blue message on login with [OFC]?
@thatiswackson
You mean you log file. Did you try /ofc clearcache?
@LordKainzo
Increment ProcessingThreads. Basically, so many players asking for chunks but only one CPU core working on the chunks, this cause players to have to wait for the queue to process to their chunks.