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 Dec 4, 2013@janjanjan11111
Have you looked at the Jenkins?
-
View User Profile
-
Send Message
Posted Dec 4, 2013When will you update to 1.7.2 ?
-
View User Profile
-
Send Message
Posted Dec 2, 2013@asofold
Thanks for keeping up all the good work!
-
View User Profile
-
Send Message
Posted Dec 2, 2013@horsetears
nocheatplus.command.notify is for toggling with the command. If given, you also do receive notifications.
nocheatplus.notify is just to receive notifications.
If "notify off" shows usage, it means that you don't have the nocheatplus.command.notify permission. Docs might need updating, commands could also use more clear messages.
-
View User Profile
-
Send Message
Posted Dec 2, 2013Every time I type /ncp notify off all it does it spew out the list of ncp commands, also have the alerts turned of via permissions but they're still popping up, any ideas?
-
View User Profile
-
Send Message
Posted Dec 2, 2013@Bodyash
I think i scheduled it for doomsday, or vice-versa. It is not often requested, so i suggest you upvote the Corresponding Ticket, and probably get other people to upvote it as well, this might put it on higher priority for us. There are other things on the lists as well and of course severe bugs come first. Things like this and what we were confronted with recently need a lot of testing, potentially - if we don't have enough time, then progress is slower on adding features like this.
So concerning when it might be added i can't promise much, because we have to ensure that 1.7.2 works well. Then we have the fighting checks iteration pending and the documentation still needs updating. Then still an iteration about moving checks is planned, this could fit in there, though i am not mentioning the next major plugin version requiring a full recode for about everything.
-
View User Profile
-
Send Message
Posted Dec 2, 2013Hi, how long we must wait for item lore stats fix? D:
I wait more that month.. and bug still here :C
-
View User Profile
-
Send Message
Posted Dec 2, 2013@Puremin0rez
File a ticket please, we would want to fix velocity. We do need "ncp version" output and a rough idea of what your plugin does (trampoline is too rough - does it lead to adding velocity repeatedly, what amounts of velocity? Does it trigger "moved too quickly" if exempted from NCP?). A way to help us find a way to fix it would be to provide us with a moving trace (set moving.debug to true, reproduce a couple of times, paste the log - using TestNCP would be even better because it logs a little more but the trace would get us most far).
You could also hook into NCP to exempt the player temporarily and reset with a delayed task, however that does not fix the problem.
-
View User Profile
-
Send Message
Posted Dec 1, 2013I have a "trampoline" plugin I made myself and I simply apply velocity towards a player upwards. NoCheatPlus does not like this. What's the easiest remedy?
-
View User Profile
-
Send Message
Posted Dec 1, 2013@j1752s
Check out our development builds, we are adjusting to 1.7.2 - however there can still be a lot of bugs/problems. Also the CraftBukkit builds should not be trusted to run on a production server unless you have backups and quick reactions.
-
View User Profile
-
Send Message
Posted Dec 1, 2013Update for 1.7.2 Please ?
-
View User Profile
-
Send Message
Posted Nov 30, 2013@MinecrafrGi
Please provide more information, consider filling in a ticket.
We do need:
Could use:
(Please send by PM if not meant public.)
-
View User Profile
-
Send Message
Posted Nov 30, 2013This plugin causes my server to take a long time to start up. Please fix this!
-
View User Profile
-
Send Message
Posted Nov 30, 2013@Jleeevinnn
What makes you think that NoCheatPlus is causing this lag? The timings you provided there just confirm that it runs absolutely smooth on your server. I honestly think that the issue relies on the network/connection here or you didn't record timings long enough. Also Spigot builds which implement a compatible protocol for Minecraft 1.7.x aren't supported by the Spigot developers, so we are limited in providing minimal support for it anyways. You run it on your own risk and it probably contains a lot of bugs which can cause huge lag spikes, crashes or random kicks and NPEs.
-
View User Profile
-
Send Message
Posted Nov 29, 2013@dotapurex1
Thanks, we will have to go over god modes again. Though it seems that the versions with staying totally passive (lava/water) might be detectable as well, unfortunately the ways to deal damage properly with Bukkit are limited (in fact there is none that accounts for all the enchantments and armor, unless i missed something for a couple of months).
@Magiciangoh
Usually not - typically ncp "lags" when your server lags, but that is another effect. You should however adjust the logging/notification settings to focus on what you need, these create more overhead especially for bigger servers, since they are not done asynchronously (yet). NCP is designed to run "smooth", so it should not create lag spikes on its own, still it is not exactly light-weight.
@Jleeevinnn
To reduce any impact of NCP itself, the first thing to do is to reduce logging as much as possible (e.g. turn off console logging or all file logging), just to have mentioned it.
I don't see your impression backed up by the data, though. On the one hand you present way too few events covered (200k moving events is still about 10 fold too few for a somewhat reliable statement), on the other hand i do not see anything in the data that shows that NCP is taking too much of resources. I rather suspect the number of 60 (in addition to 1.7 hacks) to cause lag rather.
NCP is kicking people periodically ? Do the logs / kick messages indicate that? If your server is lagging anyway, it might happen due to Minecraft accepting moving events from before a teleport, then leading to extreme moves with latency. If that happens a lot, you should set the vl needed for the kick action to something significantly higher (e.g. 10000 instead of 1000). That way players hovering would not get kicked, but overly simplistic moving hacks would still lead to a kick, so the cheater can't create too much server load.
High on the list does not necessarily mean lag... of course you can replace NCP by 3 to 5 "chicken run" or "silly hat" plugins, but they just don't protect against too many things (except maybe boredom).
@Jleeevinnn EDIT: Not sure, but the "lag effect" might be players lagging back repeatedly after moving off spawn or positions just teleported to? In that case we would have the "extrem moves" resulting from latency + Minecraft not being able to drop moving events that were sent by the client before a teleport happend on server side and which arrive before the client received the teleport (see above description to lessen the teleporting by NCP - do note that Minecraft itself could set back the players as well on such occasion).
-
View User Profile
-
Send Message
Posted Nov 28, 2013NoCheatPlus is currently lagging my server out and kicking everyone periodically.
Timings Report indicate it is the highest resource using plugin out of the 60 on my server.
This is a terrible reputation to have as a plugin developer and I wish you to fix it.
I am however running Spigot Protocol hack, this could have some reasoning behind it.
Timings WHILE lagging: http://aikar.co/timings.php?url=6492478
Timings without lag: http://aikar.co/timings.php?url=6492570
-
View User Profile
-
Send Message
Posted Nov 28, 2013Will NoCheatPlus causes lag to server cause i know that some anticheat plugins will cause lag!
-
View User Profile
-
Send Message
Posted Nov 28, 2013@asofold
Okay, i've done that and got the results:
moving.survivalfly VL 32
-
View User Profile
-
Send Message
Posted Nov 28, 2013@dotapurex1
Please test again, but first do "ncp remove PLAYERNAME" and after testing with getting set back one or more times do "ncp info playername" right away - if NCP sets you back, then this will show something which we are interested in.
Also check the server log for "moved to quickly", just to be sure.
As far as i can see the plugin uses velocity + "setAllowFlight", so this should usually be a bug in NCP rather, because we want NCP to process both correctly. You do have a lot of plugins, which might need us to do dig deeper., though.
-
View User Profile
-
Send Message
Posted Nov 28, 2013@asofold
No, im not getting any alerts, im just placed back into my original position on which i started to jump from.