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 Aug 15, 2014Hey,
I'm curretenley working on a plugin, that requires bypassing NCP for 3 - 5 seconds. How would I go along with this? Do you have an API with a method for it or anything like that?
Thanks, Niknea.
-
View User Profile
-
Send Message
Posted Aug 15, 2014When a player gets hits while in a corner, he can bypass fly. He gets teleported back but after each time he can fly higher before getting back to the previous location.
-
View User Profile
-
Send Message
Posted Aug 15, 2014Hi There,
I currently run a minecraft server that has over 2k players and currently are the biggest cracked server in the world. I am having some issues with my server and as the authors of this plugin have done an amazing job i was wondering if maybe i can get some help with issues im having. Yes i am willing to pay as i am very desperate in getting these issues fixed. My skype name is chrisbadaoui2000 if you would like to skype me or my email is bosscraftmc@live.com
Thank you so much for your time and i hope i am able to get in contact with you! Thanks So Much, Cheers.
ChrisBadaoui99
-
View User Profile
-
Send Message
Posted Aug 14, 2014@sexyrussian
The config looks ok - i think you are seeing 11000 in the "ncp info" output, however that is the sum of all indivdual violation levels added during play. it can not compared to the violaton level used in the actions, that latter one is also shown in the alert messages.
This discrepancy might lead to us changing th violation history, but currently the most interesting part of the violation history should be the n value, i.e. the number of violations.
Not sure this is the problem - to find a good value for banning (though we don't recommend banning), you'd best compare what values are reached with ingame (or file/console) alerts.
-
View User Profile
-
Send Message
Posted Aug 14, 2014@asofold
Just to clear up any formation questions you might have, here is a full config paste. Thanks for your help.
http://pastebin.com/jqVFcR3C
-
View User Profile
-
Send Message
Posted Aug 14, 2014So I changed it to this.
<<codeimprobable: active: true level: 300 actions: cancel log:improbable:2:8:if vl>5000 cancel log:improbable:2:8:if cmd:ban>>
There was someone hacking last night, they had 11,000 improbs, and were not banned. What's wrong with the above configuration?
-
View User Profile
-
Send Message
Posted Aug 14, 2014@sexyrussian
Your actions show the entry "cmd:ban", so it will execture the "ban" entry in the strings section:
If you want to use your "essentialsban" definition you need to put cmd:essentialsban in the actions list and the "essentialsban" entry into the strings section:
Not sure you aleady have put it so, the YAML fragment you posted doesnot seem to be complete in terms of showing the sections of the configuration.
-
View User Profile
-
Send Message
Posted Aug 13, 2014@sexyrussian
You can simply put the eban command with variables in the string section, that should do the trick. Essentials might put in the bans in the bukkit ban list json for compatibility also.
Just asked Hobbits and he confirmed:
<@Hobbits|away> MyPictures: yes, although depending on your version, the reason might not be populated
<@Hobbits|away> devbuilds populate the reason, stables dont
-
View User Profile
-
Send Message
Posted Aug 13, 2014@asofold Hello, I don't actually use 'ncp ban'. What I use is this.
And it makes people get banned via bukkit.
So generally, you suggested for me to use a custom command?
like
Anyway i learned more information that you should know. A player was '/tempban'-ed on the server, and he got onto the bukkit banned-players.json because of it. Another player has been banned, and they actually have the appropriate ban message, the custom ban message "Hacking detected -autoban" in their essentials /who. This means everyone in banned-players.json has been banned by essentials and by bukkit. Anyway to use essentials only? or to disable bukkit bans?
-
View User Profile
-
Send Message
Posted Aug 13, 2014@sexyrussian
The "ncp ban" command needn't be used, you can define your own command using name or uuid and whatever text. The "ban" entry in the strings section of the configuration is not actually used by NCP, you can alter the entry according to your needs and use cmd:ban then.
-
View User Profile
-
Send Message
Posted Aug 13, 2014I am making my nocheatplus ban players over 200,000 improb. It currently uses bukkit bans, this causes issues with unbanning people since our essentials plugin bypasses bukkit unban and uses essentials unban. Is there any possible way to make nocheatplus use the essentials bans system instead of the bukkit ban system?
-
View User Profile
-
Send Message
Posted Aug 10, 2014@GoldenEagle1995
Please create a ticket for us, we need a lot more information to solve your issue.
-
View User Profile
-
Send Message
Posted Aug 10, 2014people can fly in the latest version...
-
View User Profile
-
Send Message
Posted Aug 8, 2014@Meastrofer5
What do you mean with banning system? NC+ has no banning system, neither banning actions.
-
View User Profile
-
Send Message
Posted Aug 7, 2014can i download this plugin without banning system ?
-
View User Profile
-
Send Message
Posted Aug 3, 2014@Brisk568
Please just post the text output opf the "ncp version" command. It will show the server version (including Minecraft) and the version of NoCheatPlus in use. Some server mods migth be incompatible, so we need the full version info to judge things.
@AkashRulez
I don't see a point in giving users -nocheatplus.*, can you post/pm a link to a paste with your permissions file?
Otherwise:
Are your server, PEX and NoCheatPlus versions (reasonably-) up to date? For any CraftBukkit versions from 1.4.5-R1.0 on, the latest version of NCP should be used. For Minecraft 1.7.10 an upload is pending approval, it can also be obtained from the jenkins site that is linked above.
Can you post the oputput of "ncp version"?
-
View User Profile
-
Send Message
Posted Aug 3, 2014@Brisk568
You mean 3.10.9? Thats outdated, please update and try again.
-
View User Profile
-
Send Message
Posted Aug 3, 2014My No Cheat Notifications are going public. All players are getting notifications. They do not have the appropriate permissions. In fact they have the permissions -nocheatplus.* (Using PEX)
-
View User Profile
-
Send Message
Posted Aug 2, 2014@asofold
I just said 1.10.9
-
View User Profile
-
Send Message
Posted Aug 2, 2014@Brisk568
What server version are you using ? You can get it with the "/version" command or with "/ncp version".