NoCheatPlus

Detect and fight the exploitation of various flaws/bugs in Minecraft!
Introduction
NoCheatPlus attempts to prevent cheat clients from exploiting weaknesses of Minecraft or its protocol, making your server more safe. Checks cover a wide range of issues including flying and speeding, fighting hacks, fast block breaking and nukers, inventory hacks, chat spam and other types of malicious behaviour. For a more complete list have a look at the Features Page.
NoCheatPlus puts emphasis on configurability and allows you to customize actions that are carried out when a player fails a check (e.g. silent cancelling, executing commands, just logging). Bypass permissions allow to control what check to apply for which players, all checks can be deactivated in the configuration, also having the option for world-specific configuration files. Many checks allow more detailed configuration to adjust sensitivity.
Certainly NoCheatPlus is not a magical bullet, it uses a lot of heuristics and even guessing, so you will encounter false positives here and there and also not catch every single violation. Example video of how NoCheatPlus blocks cheats (outdated plugin version).
NoCheatPlus was introduced by NeatMonster, building on the code base of NoCheat by Evenprime.
Recommended
The following plugins might be useful to have a look at.
ProtocolLib
Allows NoCheatPlus to activate packet-level checks, covering a range of exploits that can't be monitored using ordinary means. Since roughly Minecraft 1.7.10, the fight.speed check can't work as expected anymore, due to changes in CraftBukkit. With ProtocolLib this can be repaired.
CompatNoCheatPlus (cncp)
Make plugins like mcMMO or MachinaCraft more compatbile with NoCheatPlus. Not all existing plugins are covered (yet), but you can leave a note or create an issue/ticket request for cncp. Phasing out: Citizens 2 should work with NCP out of the box, MagicSpells are working on compatibility too - rest will be integrated into NCP.
Orebfuscator
Orebfuscator fights all sorts of X-ray-hacks by altering the map information that is sent to the players, such that they have to mine blocks to actually reveal what is behind. Virtually a "must have". (Latest versions of Spigot contain features of Orebfuscator.)
Downloads and History of Changes
- Download officially approved versions on the Files page at BukkitDev.
- Development builds have been moved over to the Jenkins at md-5.net.
- Do not download from any other source, do not use jars other people send you.
- Change lists: Wiki (digest) | Jenkins (by build number) | GitHub (all commits).
- Source code
Plugin statistics are no longer reported to mcstats.org.
Support
Documentation Resources
- Consider first: Frequently asked Questions and Known Issues.
- Wiki (Configuration, Permissions, Commands)
- Developers might have a look at the page describing the API of NoCheatPlus.
Contact us
- Quick questions can be asked on this page,
or on IRC (Server: irc.spi.gt | Default-Port: 6667 | SSL-Port: 6697 | Channel: #nocheat | Web client: WebIRC) - For real issues or feature requests please create a new issue/ticket or add to an existing issue/ticket.
- To send information that is not to be seen by all, you can also reach us by PM to @asofold and @MyPictures. @IceAP (IRC: ICE) will also help or redirect the conversation. Please do not contact the user 'NoCheatPlus', it is for administrative purposes only and will likely not be answered in time. Keep to BukkitDev and GitHub for support, do not trust users on other forums or websites, also not if their nick names are the same as NCP staff on BukkitDev.
Please always state the output of the "ncp version" command to let us know versions in use (users of cncp also the "cncp" command).
-
View User Profile
-
Send Message
Posted Oct 11, 2012@MyPictures
@Serilum
As @MyPictures stated, NCP deals penalties for attacking. Problem is indeed the "one of the latest versions", development builds tend to change things.
So be sure to use the latest "mostly stable" or the latest non-broken dev-build, there have been some adaptions and balancing for the fighting stuff.
Also it might matter how "invincibility" is detected, apart from older builds that dealt out reach penalty too much, one should also consider that people that hit many times per second over a long time will get penalized. It is not just the all-beloved "15 attacks per second", over longer time 5 or few more attacks might be enough to trigger the improbable check. (Try to hit other players 5 times a second over a period of one or two minutes, it should be near impossible for realistic fighting situations). So users of pvp hacks tend to complain that they can't do this or that, so always try to gather enough information about complaints. For older builds the reach penalty was to heavy, though...
-
View User Profile
-
Send Message
Posted Oct 11, 2012@Serilum
NC+ doesn't make anyone invincible or anything like that. If you fail the "forcefield check" then NC+ will cancel all your hits that you try to make as "penalty". Any more info's?
-
View User Profile
-
Send Message
Posted Oct 11, 2012One of the last NoCheatPlus updates makes people randomly invincible in combat. This is very annoying since I'm running a pvp server. Any idea what causes this?
-
View User Profile
-
Send Message
Posted Oct 11, 2012@asofold
I think that did it. Its very hard to tell since I'm hosting locally as i'm not ready to rent out a server.
-
View User Profile
-
Send Message
Posted Oct 11, 2012@SaitoForte
The beta or the latest dev build (http://www.nocheatplus.org:8080/job/NoCheatPlus/153/) should prevent most of it, at most it will allow one block + jump, unless i am mistaken.
-
View User Profile
-
Send Message
Posted Oct 11, 2012Does your plugin take care of "lag climbing"?
-
View User Profile
-
Send Message
Posted Oct 10, 2012@promarcos
Fix WorldEdit and update NoCheatPlus to 3.7 (3.6.1 is for Minecraft 1.2.5)
Latest Beta build: http://dev.bukkit.org/server-mods/nocheatplus/files/26-nocheat-plus-3-7-3-b111/
Or you try latest bleeding edge build: http://www.nocheatplus.org:8080/job/NoCheatPlus/
-
View User Profile
-
Send Message
Posted Oct 10, 2012I found this error .. how to fix?
10.10 20:22:00 [Server] INFO [WorldEdit] Enabling WorldEdit v5.4.2 10.10 20:22:00 [Server] INFO at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) 10.10 20:22:00 [Server] INFO at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:377) 10.10 20:22:00 [Server] INFO at net.minecraft.server.DedicatedServer.init(DedicatedServer.java:140) 10.10 20:22:00 [Server] INFO at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:226) 10.10 20:22:00 [Server] INFO at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:276) 10.10 20:22:00 [Server] INFO at net.minecraft.server.MinecraftServer.i(MinecraftServer.java:297) 10.10 20:22:00 [Server] INFO at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:248) 10.10 20:22:00 [Server] INFO at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:266) 10.10 20:22:00 [Server] INFO at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) 10.10 20:22:00 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:374) 10.10 20:22:00 [Server] INFO at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) 10.10 20:22:00 [Server] INFO at fr.neatmonster.nocheatplus.NoCheatPlus.onEnable(NoCheatPlus.java:72) 10.10 20:22:00 [Server] INFO java.lang.VerifyError: (class: fr/neatmonster/nocheatplus/checks/chat/ChatListener, method: commandPreprocess signature: (Lorg/bukkit/event/player/PlayerCommandPreprocessEvent;)V) Incompatible argument to function 10.10 20:22:00 [Server] SEVERE Error occurred while enabling NoCheatPlus v3.6.1 (Is it up to date?) 10.10 20:22:00 [Server] INFO [NoCheatPlus] Enabling NoCheatPlus v3.6.1
-
View User Profile
-
Send Message
Posted Oct 10, 2012@BoonRebu The exempt-names stuff is a little more complex in use because it does not go for players names but java-class names. Not sure for which hook you entered that, better let those parts regenerate.
A BuildCraft entity should be an easy one to add to cncp, i will have a look...
@andrewkm
That issue should be fixed in build 153, it had been introduced back in build 149, thus i marked all in between broken. Reason was mostly that the "passable" property for a reused object was not being reset, causing it to stay whatever it had been first.
-
View User Profile
-
Send Message
Posted Oct 10, 2012@andrewkm
Yea would be very nice if you could test #153, I think it should be fixed there.
-
View User Profile
-
Send Message
Posted Oct 10, 2012Since #150 is marked broken im assuming that issue I had with no one being able to move is fixed? Unsure if should continue with dev builds/testing
-
View User Profile
-
Send Message
Posted Oct 10, 2012@BoonRebu
BuilCraft mod is not supported by NC+ 3.6 and 3.7, you cant also exempt block ids to be not checked at the moment. Maybe that will come later on but for now you cant really use NC+ with builcraft.
I don't know If CNCP can do that....
-
View User Profile
-
Send Message
Posted Oct 10, 2012@asofold
[BuildCraft] is the fakeplayer entity assigned by the BuildCraft mod. Under PermissionsEX, I've added the fakeplayer user [BuildCraft] and given it all permissions nodes. What happens, when it attempts to place the quarries framework, is that it triggers the fastplace event, and blocks the placement. [BuildCraft] should act as a player.
-
View User Profile
-
Send Message
Posted Oct 10, 2012@BoonRebu
What is "[BuildCraft]" ? A user gorup ?
-
View User Profile
-
Send Message
Posted Oct 10, 2012Hoping someone can help.
I've spent many hours trying to figure out a way to get [BuildCraft] to be exempt from blockplace events. I'm unable to get quarries to work on the server.
Using:
MC 1.2.5
craftbukkit-1.2.5-R4.1-SNAPSHOT.jar
NoCheatPlus v3.6.1 [1.1 - 1.2.5]
cncp 1.0.0
Under CNCP Config I've attempted to add: exempt-names: [BuildCraft] - This crashes the server and makes player actions unresponsive. [Buildcraft] has all blockbreak/place permissions. Is it just not possible with the later version of 1.2.5?
-
View User Profile
-
Send Message
Posted Oct 10, 2012@matagin
Don't trust every player who reports that issue and wants the check to be disabled/lowered. They will try to make you disable some checks for them so they can use there hacks like forcefield, so be always careful with such changes.
-
View User Profile
-
Send Message
Posted Oct 10, 2012@MasterGabeMOD
They are broken :9 - i would usually mark builds as broken if they contain bugs that are too annyoing or critical to use them. You can be quite sure that those bugs have been fixed in the next not-marked-as-broken build provided it has been there some more time, usually. The "mostly stable" builds indicate that they have been tested more and no critical bugs have been found, or im using that to indicate that the build should be preferred over the preceding non-broken ones, due to fixes or added functionality.
Also i am not only uploading 100% working builds onto jenkins to allow some people to test. There is nothing wrong with a more defensive downloading strategy, leaving out the "[bleeding]" ones or those which changes that you don't understand until one is marked as fixed or until a couple of commits only have done fixes and contain no "[bleeding]", which then is of course a little bit of guessing. The quality of error in build 149 was not intended for upload, but it can happen during these "fast forward" phases.
-
View User Profile
-
Send Message
Posted Oct 9, 2012@asofold
Thanks for the detailed reply. I decreased the penalty time to 250ms for fight:reach and also set fight:reach:reduce to false. I also increased the fight:speed:limit to 20. I am waiting for feedback from players and will let you know. I think it also has to due with how high their VLs are. Still learning more about NCP though. Thanks. This is build #145.
-
View User Profile
-
Send Message
Posted Oct 9, 2012@MyPictures
Ah i see.
Ok, thanks.
Was just shocked to see 4 builds go broke.
-
View User Profile
-
Send Message
Posted Oct 9, 2012@MasterGabeMOD
Check that one with the green chop that is marked as (Mostly stable).