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 Apr 21, 2012Thanks for the awesome update :) Loving the work/support you are putting into this! Makes me super excited for MC's anti-cheating future :D
-
View User Profile
-
Send Message
Posted Apr 21, 2012Could you add anti-radar? because many players seem to use the "Nodus" hack client.
Any way to just kill this whole hack? Like if you want to use it you have to press the Up arrow. and left right, down for scrolling trough the modes.
Hope there is a way to block these annoying hackers.
Thanks!
-
View User Profile
-
Send Message
Posted Apr 21, 2012@7007King0770
"without looking at you" might be just an impression (i had that very often on pvp servers), it could be cheating but it could also just appear as if, because of delay on both sides.
@NeatMonster Brainstorming about detection: NocheatPlus already counts the violation level for attack speed, also on medium term, but one could also try a long(er) term counting for if players have many attacking periods (or always have) with about the maximum number or even just some fixed high number of attacks per second. One could also try to alter the violation levels of some checks by some heuristic taking into account, if the attacked player moved during the attacks and how far. But that certainly needs some more consideration...
-
View User Profile
-
Send Message
Posted Apr 20, 2012hoooks!
-
View User Profile
-
Send Message
Posted Apr 20, 2012Hey,
I've noticed some users speeding around in boats, much faster than the normal speed. I'm really not sure how, but they go MUCH faster than is normally possible.
I believe that they can somehow sprint in the boat. Other than that, I have no more information...
Can anyone inform me if this is possible to stop with the current NoCheat version, or if they even know what I'm talking about? Or, if it is possible/worth implementing a boat speed check?
Thanks
-
View User Profile
-
Send Message
Posted Apr 20, 2012Players on my server are complaining that other players are useing Attack Aura. Does NoCheat+ have the ability to determine if people are useing Aura? I can't be sure if the person in question is useing Aura or not, NoCheat+ isn't picking up anything but after I got the person in question to hit me I did notice what the players on the server were talking about, he attacks you without looking at you to hit you but he still only hits things in a frontal cone of him, so I can't be sure if he is modding or not.
-
View User Profile
-
Send Message
Posted Apr 20, 2012@Spiritwo13
sorry :)
An old reflex.
-
View User Profile
-
Send Message
Posted Apr 20, 2012@asofold
I'm just talking about it blocking the usage of that mod, but not actually obfuscating the ores. Just like it stops players from even turning on zombe's cheat mod, do the same for the mods with that client.
-
View User Profile
-
Send Message
Posted Apr 20, 2012@Spiritwo13
Forget about NoCheatPlus fighting xray , use Orebfuscator for that or some ratio based tool like there are plenty...
What Orebfuscator does is highly effective but is way too much to add to NoCheatPlus.
-
View User Profile
-
Send Message
Posted Apr 20, 2012Would it be possible for you to add support to block use of xray and other mods that are associated with PlatinumClient?
-
View User Profile
-
Send Message
Posted Apr 20, 2012...We have a Guard for /pl
Now if I use this its Prints the Plugins and the Guards Text...
-
View User Profile
-
Send Message
Posted Apr 20, 2012@NeatMonster
Thanks for the quick fix, but players still glitch out when they collide with each other. Players are getting impatient with lots of reloading today, can you please test it before you upload it? Thanks.
-
View User Profile
-
Send Message
Posted Apr 20, 2012@asofold Added on my TODO! :D
@GioboiMC Replied.
A new version is out! You can find the changes here.
-
View User Profile
-
Send Message
Posted Apr 20, 2012Put in a couple tickets please check them out :)
-
View User Profile
-
Send Message
Posted Apr 20, 2012@asofold
This is a great idea! I hope NeatMonster adds this!
-
View User Profile
-
Send Message
Posted Apr 20, 2012@NeatMonster
(You need not answer on this one:)
I hope it was understandable - the suggested check rather helps against players fighting multiple other targets - i am sure it will add to cheat prevention even if configured optimistically, and have few false positives, the angle-reset-distance and the angle-max-sum should be configurable, the time frame may orient on some basic setting, not sure what is used there, should blend in with the direction and frequency checks.
Given that the client sends what it attacks and at what direction etc., then checking if a player does turn too much and at the same time hits accurately should make it possible to reach a higher accuracy easily than just limiting the attack frequency. It is not the number of targets to limit but the angles covered. This will not prevent attack rates within the thresholds of the other checks if the targets are in sight, but if the targets are scattered at 90 degrees, you will reach high sums of angles quickly, much higher than fast clicking and following the expected position of the other player.
A cute client might not randomly switch targets but make 7 attacks against the first one then and ten against the other, which might make this approach seem questionable, but that also reduces the force field effect, and might still leave new possibilities for refinement on this check.
I just find this seems actually pretty simple to implement, remembering the last reference attack angle, calculating the angle to the new one, and if bigger than threshold, add the difference to the sum and set the reference direction to the new one, otherwise ignore (later maybe do further heuristic). If time frame is done, reset this as witth the frequency check. If the sum gets bigger than the sum-threshold within the time frame, then Violation level is raised by "something".
It might be that the check is pretty much ineffective given a single target, for the "still" and most other cases, but i am sure it will make the counter-multiple-players cheats very difficult.
If those are not a problem anyway ... never mind, i'll think longer next time :)
-
View User Profile
-
Send Message
Posted Apr 20, 2012@asofold Hum... I'll do some testing to see if that kind of check is technically possible or not (we must absolutely avoid false positive). Thanks for the nice suggestion!
@deleted_7554077 A fix for this check will be in the next update. Please take the time to read the comments, especially mines.
@Pr07o7yp3 OK, thanks for the report! I have done the almost all my testing using Nodus. :D
-
View User Profile
-
Send Message
Posted Apr 20, 2012@NeatMonster
Ok, this aura is not a big problem. If you can check that.
With Nyan hack the players can snake and sprint in the same time. With nodus it doesn't work, NC+ stop it but with Nyan works. :(
-
View User Profile
-
Send Message
Posted Apr 20, 2012Is the unpushable feature a bit glitchy?
When we teleport to players we get stuck. We get stuck in walls. Hurt the other players and walking into each other is glitchy/jumpy.
Any improvement planned?
Thanks
-
View User Profile
-
Send Message
Posted Apr 20, 2012@NeatMonster
I think one might go beyond the simple direction + attack and number of attacks checks !
One way to extend that is to go for a heuristic evaluation of how many degrees a player changes the attack direction within some time frame - i can click ten times per second certainly, but changing the direction that often covering a total of 3x clockwise/whatever while always hitting some entity would probably be too much.
I will think about this more, the idea is to have a last-attack-direction, a sum of angles changes covered and an expiration timestamp (that is here anyway, probably), then accept clicks that are close in direction as one rather and then check the next click if it is outside the range, if yes add to the total covered angle, if not it is just is a click.
So for instance alternating attacks which are just unealistic will be sorted out, probably.