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 Jan 23, 2012@lishid :O
NoLagg's sending is already fixed. Now adding the latest fixes, completely ignoring Spout when sending chunks. It still sends it through this plugin though.
Chunk sending no longer has to be disabled to be compatible with this plugin, just before people get misinformed. :)
Also, did you fix the high memory rate or do I have to help you out? I know some very simple ways to speed it up, using a simple static byte array if you didn't already.
-
View User Profile
-
Send Message
Posted Jan 23, 2012EVERYONE! If it crash on 1.1, it's because you're using the 1.0.1 version! DOWNLOAD version 1.3.1-test4-fix to work with MC 1.1!!!!!!
@predawnia
NoLagg might have screwed up something. Try turning NoLagg's SendChunk function off.
-
View User Profile
-
Send Message
Posted Jan 23, 2012Bukkit 1797, Orebfuscator 1.3.1 test 4-fix with NoLagg 1.58.3 | CB1796
Getting this error repeatedly (and in-game cannot load chunks.. just hanging)
00:52:19 [SEVERE] [Orebfuscator] null
00:52:19 [SEVERE] java.lang.NullPointerException
00:52:19 [SEVERE] at lishid.orebfuscator.utils.Calculations.Obfuscate(Calculations.java:273)
00:52:19 [SEVERE] at lishid.orebfuscator.utils.Calculations.Obfuscate(Calculations.java:237)
00:52:19 [SEVERE] at lishid.orebfuscator.utils.OrebfuscatorThreadCalculation.run(OrebfuscatorT
hreadCalculation.java:74
-
View User Profile
-
Send Message
Posted Jan 23, 2012loveya plugin :) but it crashes sometimes with bukkit 1.1 dev hehe ;) Which version should fix this? test4? But this guy say it still crashes with test4, Katorine
-
View User Profile
-
Send Message
Posted Jan 23, 2012Please update for 1.1 (Soon is 1.2)
A server error bukkit((MC: 1.1) (Implementing API version 1.1-R1-SNAPSHOT)):
-
View User Profile
-
Send Message
Posted Jan 23, 2012@Katorone
test4-fix?
@netherfoam
Use a more stable CB version....
-
View User Profile
-
Send Message
Posted Jan 23, 2012Hi,
I've downloaded and tested the latest test4 again, however I'm still getting this error:
At the same time my client looses connection because of a "bad compression format" error. So it is possible that the error Orebfuscator generates is because i've already lost connection. I'm still looking for the plugin that's responsible for the bad compression format. (I'm on Debian with oracle java 7 64bit, CB 1796)
-
View User Profile
-
Send Message
Posted Jan 23, 2012Actually i ahve the same as this guy below me, just another error I think. Bukkit 1792 :)
12:30:56 [SEVERE] java.lang.IndexOutOfBoundsException: Index: 1043, Size: 1043 12:30:56 [SEVERE] at java.util.ArrayList.RangeCheck(Unknown Source) 12:30:56 [SEVERE] at java.util.ArrayList.remove(Unknown Source) 12:30:56 [SEVERE] at net.minecraft.server.World.tickEntities(World.java:1156) 12:30:56 [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527) 12:30:56 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:434) 12:30:56 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:465) 12:30:56 [SEVERE] Unexpected exception java.lang.IndexOutOfBoundsException: Index: 1043, Size: 1043 at java.util.ArrayList.RangeCheck(Unknown Source) at java.util.ArrayList.remove(Unknown Source) at net.minecraft.server.World.tickEntities(World.java:1156) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:434) at net.minecraft.server.ThreadServerApplication.run(SourceFile:465)
I get this error and it crashes my server ;) Btw I get this at 1 (default) and 2 ProcessingThreads,
When i set it to 3, the server kicks people out with an error.
-
View User Profile
-
Send Message
Posted Jan 23, 2012I'm getting this on 1.3.1 test4, cb rev 1796 - I don't know whats causing it, but it disconnects everyone online, and the server still thinks players are connected. Requires a restart to fix as far as I know. It also crashes and causes a bit of a rollback on the map itself xD
2012-01-23 05:03:34 [SEVERE] java.lang.NullPointerException 2012-01-23 05:03:34 [SEVERE] at net.minecraft.server.NetServerHandler.sendPacket(NetServerHandler.java:685) 2012-01-23 05:03:34 [SEVERE] at lishid.orebfuscator.utils.NetServerHandlerProxy.sendPacket(NetServerHandlerProxy.java:91) 2012-01-23 05:03:34 [SEVERE] at lishid.orebfuscator.utils.OrebfuscatorNetServerHandler.sendPacket(OrebfuscatorNetServerHandler.java:24) 2012-01-23 05:03:34 [SEVERE] at net.minecraft.server.EntityTrackerEntry.b(EntityTrackerEntry.java:191) 2012-01-23 05:03:34 [SEVERE] at net.minecraft.server.EntityTracker.updatePlayers(EntityTracker.java:144) 2012-01-23 05:03:34 [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:541) 2012-01-23 05:03:34 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:434) 2012-01-23 05:03:34 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:465) 2012-01-23 05:03:34 [SEVERE] Unexpected exception java.lang.NullPointerException at net.minecraft.server.NetServerHandler.sendPacket(NetServerHandler.java:685) at lishid.orebfuscator.utils.NetServerHandlerProxy.sendPacket(NetServerHandlerProxy.java:91) at lishid.orebfuscator.utils.OrebfuscatorNetServerHandler.sendPacket(OrebfuscatorNetServerHandler.java:24) at net.minecraft.server.EntityTrackerEntry.b(EntityTrackerEntry.java:191) at net.minecraft.server.EntityTracker.updatePlayers(EntityTracker.java:144) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:541)
-
View User Profile
-
Send Message
Posted Jan 22, 2012@Jshulmancloud
Read the pages of people coming with the exact same problem in the discussion. Also there's a bunch on the bukkit forums.
@supayoshi
Initial Radius is how much space to leave between a block and the air to be not obfuscated. 0 will hide all ore, while 1 or 2 will leave some space.
ProcessingThreads depends on the people you have on your server. Put it less than the number of cores you have available.
The seed does not matter much, it's just added to the real world seed when generating ores and other valuables, but the seed does not change the real world seed. This is used only with ChunkScrambler (integrated version)
Cache will make it faster, actually less processing by the CPU
Keep ChunkScrambler enabled, it doesnt 'rebuild' it change the routine when making new chunks so hackers will be confused. No visible changes anyways, unless you compare with/without.
-
View User Profile
-
Send Message
Posted Jan 22, 2012@lishid
What does the following mean?
Integers: UpdateRadius: 2 - What do you mean with this? Will this influence the load of chunks? InitialRadius: 1 - What does this mean? ProcessingThreads: 1 - for an i5 2300K what do you recommend? ScrambleSeed: 0 - IF i put a seed in here, will it make me able to fool xrayers showing just another seed ina chunk where the ores are or something? Or is this only used with Chunkscrambler? UseCache: true - WIth this its faster i think? Enabled: true UseChunkScrambler: true - I dont use that can i put it to false? (this is the plugin that rebuilds chunks right?) UpdateThread: true VerboseMode: false
-
View User Profile
-
Send Message
Posted Jan 22, 2012@lishid
I'm on 1.1... And read what? I don't see anything talking about 1.3.1-test4-fix
-
View User Profile
-
Send Message
Posted Jan 22, 2012@Jshulmancloud
You're not using the correct version of Orebfuscator on your server!!! The old version(1.2.9_1) is for 1.0.1 and the new version (1.3.1-test4-fix) is for 1.1... Gosh people can't read!
@erdrickk
What did you mean? (read my reply to the other guy on top if that's your question)
@supayoshi
Yes, the newer versions now have it somewhat working.
-
View User Profile
-
Send Message
Posted Jan 22, 2012@erdrickk
What happens if i edit the ProcessingThreads to 2? I have a core i5 would it use another core then for your plugin? !
-
View User Profile
-
Send Message
Posted Jan 22, 2012@lishid
any word on this new version yet?
-
View User Profile
-
Send Message
Posted Jan 22, 2012Would you mine making it clear what people are doing wrong when their entire world turns void. Theirs obviously a problem that many people are having and theres no clear answer... sorry if i sound rude but I'm just a little annoyed.
2012-01-22 11:27:08 [SEVERE] Could not pass event org.bukkit.event.player.PlayerJoinEvent to Orebfuscator
java.lang.NoSuchFieldError: a
at lishid.orebfuscator.utils.NetServerHandlerProxy.init(NetServerHandlerProxy.java:31)
at lishid.orebfuscator.utils.NetServerHandlerProxy.<init>(NetServerHandlerProxy.java:21)
at lishid.orebfuscator.utils.OrebfuscatorNetServerHandler.<init>(OrebfuscatorNetServerHandler.java:11)
at lishid.orebfuscator.OrebfuscatorPlayerListener.TryUpdateNetServerHandler(OrebfuscatorPlayerListener.java:57)
at lishid.orebfuscator.OrebfuscatorPlayerListener.onPlayerJoin(OrebfuscatorPlayerListener.java:20)
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:272)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:57)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:327)
at net.minecraft.server.ServerConfigurationManager.c(ServerConfigurationManager.java:129)
at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:121)
at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:40)
at net.minecraft.server.NetworkListenThread.a(SourceFile:94)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:536)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:434)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:465)
mc.warsofminecraft.info
-
View User Profile
-
Send Message
Posted Jan 22, 2012http://forums.bukkit.org/threads/sec-orebfuscator-1-2-9_1-anti-x-ray-1-0-1-r1-1-1-r1.38385/page-28#post-925220 That problem
-
View User Profile
-
Send Message
Posted Jan 22, 2012hey this plugin is working great but... it seems the ore scrambler is making ore alot easier to find . i was mining today and found like 8 nodes of diamonds in less than an hour all nearby and 3 of those nodes were on same tunnel and i didnt have to dig , they were already seen on the walls, it just seems like its alot easier to get ores . i ended up with 78 diamonds but my pickaxe had FORTUNE III and every time i mine so much good ore easily idk if im just extremely lucky or what
-
View User Profile
-
Send Message
Posted Jan 21, 2012The version of the link: - http://dl.dropbox.com/u/18947504/Orebfuscator/1.3.1-test4-fix/Orebfuscator.jar - is working good with - CraftBukkit experimental/dev build #1797 (MC 1.1) -
-
View User Profile
-
Send Message
Posted Jan 21, 2012@bergerkiller
Modifiable used to contain other stuff (the whole chunk data, including lighting and stuff), so I had to re-format it. Now it doesn't need to be that way anymore. I'll upload a new version later on.