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 Jun 12, 2013Hey, I have been encountering a problem with many users that use mobile phone apps to connect to the server as a live chat application. They cause NCP to spam warnings and eventually kick the player. Is there some way we can fix this? Thanks, Fudool8.
-
View User Profile
-
Send Message
Posted Jun 12, 2013@hotshot0101
If you mean players not getting knocked back by velocity (from getting hit):
Do you know a plugin that does it?
Technically you can not block it. One might be able to detect if a player has moved roughly as he should have, and in order to prevent false positives you would have to also detect if the player could have moved at all, which then means more complex checking and overhead.
Edit: the problem is that the client tells the server where the player is moving, if the client does not move, the server can detect it, but calculating where the player should have gone is potentially heavy and likely to end in failure due to latency and other factors. It might be possible to catch simple cases like standing still with all air around though receiving a lot of velocity, but it is not certain that it will even be possible to detect moving players not using any velocity, because often the effect of knockback is similar to moving normally, just into another direction, so the usefulness of a reduced check will be questionable, while a check that really catches stuff will be pretty complicated and potentially heavy.
-
View User Profile
-
Send Message
Posted Jun 12, 2013why doesnt it block antiknockback?
-
View User Profile
-
Send Message
Posted Jun 11, 2013@Michael_Nolan
Most checks are configurable in several ways.
You can make some less strict and for some it might be ok to not count low violation levels. Which one is good to do depends on the check. Violation level 1 can be like nothing for some checks (one millisecond), but for others it can mean something more significant (like one time failure or one second gained for one block mined).
You have to be more specific about what alerts happen and what they get kicked for, those are not random at all. If just the spam is a problem, you can alter for which violation levels or if-at-all alerts are sent to in-game chat. next release will also allow to turn off notifications by a command on the fly. But to judge which checks to make less strict you should have a closer look at what alerts actually happen. There is no global switch to do 10% less or something like that.
Edit: Can't go deeper into it right now, will return next day...
-
View User Profile
-
Send Message
Posted Jun 11, 2013Hello, I was wondering if there was a way to make it a bit more lenient with the nc flags, we have some people from different countries, and their internet isn't very good. They will often have trouble mining because of their bad internet and NCP trying to stop them from doing something. We get spammed with lvl 1 ncp flags, and the players get kicked for sending too many. It takes them a lot of tries to get back on. So is there any way to raise the limit for the server or something so that we don't get lvl 1 NCP flags from stuff like that?
-
View User Profile
-
Send Message
Posted Jun 11, 2013@DeadDragons
NCP has configuration for the chat checks, allowing to allow more pace for short-term (few seconds) and medium term chat (>30 seconds covered). Follow the configuration link above, the check you are interested in should be "chat.text".
However there can also be incompatibilities with other plugins so more info is needed to judge that aspect. You could pm a plugin list so @MyPictures and me have a look at it. Also more precise info about what actually happens might be useful (players try to chat how fast, how fast do they get violations, example log messages and similar).
-
View User Profile
-
Send Message
Posted Jun 11, 2013i wonna ask this quick alot ppl on my server are annoyed by being kicked. from chating to much is there a config about this? if not then sorry much be somerthing els i have
-
View User Profile
-
Send Message
Posted Jun 11, 2013@1337ingDisorder
Can't tell what it is. Can you fill a ticket with versions (ncp / cb), plugins if possible (might pm those if not public) and with example log messages/alerts ?
-
View User Profile
-
Send Message
Posted Jun 11, 2013Been having an ongoing problem intermittently. Not sure if it's a bug of if the default config is just a bit over-zealous, but here's the details:
Most of the time people can play fine, but some players are immediately kicked for SurvivalFly as soon as they log in. Their tempban expires, they log back in, and are immediately SurvivalFly kicked again.
This proceeds indefinitely until they give up, and when they come back the next day (after the server's nightly restart) they're able to connect and play just fine without being kicked for false-positives.
Interestingly enough, if I'm online while this is happening to someone, sometimes I can /tphere them as soon as they try a login, and after being teleported they are able to play without the false positives.. But if I don't /tphere them and let them continue to spawn wherever they were when they previously logged out, they continually get kicked for false-positive SurvivalFly checks.
-
View User Profile
-
Send Message
Posted Jun 11, 2013@collinserver1
Please make a ticket and describe what you mean in more detail.
Removed due to: wild claims, shortened links.
-
View User Profile
-
Send Message
Posted Jun 10, 2013@XHawk87
Can you find entries in the log for the player, before you issued the info command?
Both server log and log file would be interesting (if available, specifically: block type broken, warnings about time running backwards, but also other).
Could be a bug, an attempt to break something pretty unbreakable, or a plugin incompatibility.
-
View User Profile
-
Send Message
Posted Jun 10, 2013One of the players on my server managed to get this violation level: NCP: [09:08:11] blockbreak.fastbreak VL 2947699195891231 (n45a65504426575361m2947699195891202)
What does this mean in practical terms?
-
View User Profile
-
Send Message
Posted Jun 10, 2013@JoLong
You can use permissions, there is no simple configuration switch, at present.
If you really want to turn off all checking, start off with giving the nocheatplus.checks permission.
Though usually i would not recommend turning off everything, but to turn off individual checks rather. You can also create a world-config and turn off checks there, which spares your server a bit of permission checking, but using permissions should be most simple to maintain.
-
View User Profile
-
Send Message
Posted Jun 9, 2013how can i diattivate nocheatplus in one world? i use multiworld.
-
View User Profile
-
Send Message
Posted Jun 9, 2013@greaperc4
This issue is already known and seem to be a incompatibility with the Spout plugin. More informations:
http://dev.bukkit.org/bukkit-mods/nocheatplus/tickets/506-ncp-spout-many-blocks-cant-be-walked-into/
http://dev.bukkit.org/bukkit-mods/nocheatplus/tickets/435-halfslabs-trigger-survivalfly-violations/
However as @asofold said: We need more informations to be able to help you.
@Marium0505
This feature has been requested by @Cobi: https://github.com/NoCheatPlus/NoCheatPlus/pull/14
Proper documentation will follow ASAP but I really need @asofolds help to finish those right. They will be here when @asofold got enough time again to help me out: https://github.com/asofold/NCPDocs
-
View User Profile
-
Send Message
Posted Jun 9, 2013usesubscriptions: false
What does that mean?
Can you please add more documentation about that type of things in the config?
-
View User Profile
-
Send Message
Posted Jun 9, 2013@greaperc4
Can't judge it from the given information, it is not like this in the general case.
Please make a ticket for it and state cb and ncp versions, plugin list if possible (pm if not public), and more info about what you get as console and ingame output for when this happens.
-
View User Profile
-
Send Message
Posted Jun 9, 2013i think there is a bug in this plugin, when peoplewalk over slabs that are on the top of a block, not ON the block.. they get tp'd back could u fix this and then they get kicked for no reason.. regards greaperc4
-
View User Profile
-
Send Message
Posted Jun 9, 2013@ThunderWaffeMC
Your configuration if formated invalid so NoCheatPlus fails to read it. Use the www.yaml-online-parser.appspot.com to verify that the configuration is valid beforehand. You can also simply delete the config of NC+ and do /ncp reload or /reload and it should generate a new fresh working one for you.
-
View User Profile
-
Send Message
Posted Jun 8, 2013@asofold
http://pastebin.com/LirHXQUE
On reload (/reload) I get this error in the cmd.