NoCheatPlus Christmas and New Year


Detect and fight the exploitation of various flaws/bugs in Minecraft!

Features Permissions Commands Configuration Jenkins


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.

The following plugins might be useful to have a look at.


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, Citizens, MagicSpells 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.


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


Documentation Resources

Contact us

  • Quick questions can be asked on this page,
    or on IRC (Server: | 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).

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of asofold asofold Feb 12, 2016 at 21:42 UTC - 0 likes

    @uncovery: Go

    NCP supports the haste enchantment and also efficiency enchantments.

    With a lot of lag (client side / network congestion / possibly a combination with server side lag, there could be many block breaks within very short time. To account for more lag, one could adjust the fastbreak configuration to allow more mining too fast (time per block vs. time mined too fast per ~ 90 seconds or so).

    Now the question is which check actually prevents block breaking ... this should be tested, so you don't turn off protection needlessly. There is a chance that the blockbreak.frequency check prevents things here, because it doesn't keep track as long term as fastbreak does, and blockbreak.frequency has hard limits like ~ 40 for survival, and possibly a shortterm limit too. First you should ensure which checks are actually posting trouble ('ncp info player_name' can give a hint, you could also activate the allviolations hook to log to console, to get precise results).

    Consider checking out the wiki, like @MarkElf2204: Go noted, the wiki has a search feature, which at least allows you to search for checks/titles.


    Latest beta release (1.8.x, this site) 3.13.0-BETA-sMD5NET-b878
    (Development builds, 1.8.x: Jenkins)

  • Avatar of MarkElf2204 MarkElf2204 Feb 12, 2016 at 20:27 UTC - 0 likes

    @uncovery: Go

    I believe this page can assist you till @asofold gets a chance to reply.

  • Avatar of uncovery uncovery Feb 12, 2016 at 04:14 UTC - 0 likes

    I am getting quite some complaints from users saying that the fastbreak is preventing them from breaking blocks when they use eff5 with a mining beacon. Are the default configs set up for that vanilla usage? Or do I have to assume that they just have a laggy connection?

  • Avatar of Chevels Chevels Feb 11, 2016 at 17:48 UTC - 0 likes

    @asofold: Go

    Ok! Thank you for your answer :)

  • Avatar of asofold asofold Feb 10, 2016 at 22:09 UTC - 0 likes

    @Chevels: Go

    Piston + slime is still not fixed. Current focus is fight checks (infrastructure, then starting to make use of it). We're all having pistons in mind, it'll eventually be fixed - so i'm afraid it'll need a little bit of patience till.

  • Avatar of Chevels Chevels Feb 10, 2016 at 15:56 UTC - 0 likes

    Hello, sorry if this is a redundant question, but how can we allow the use of slime block with pistons (propulsion) without disabling the control SurvivalFly? I know you work on this concern, but since the time the members of my server are impatient ^^

    Anyway, thank you for your excellent work on NoCheatPlus :) This is definitely a great plugin that I use for years!

  • Avatar of asofold asofold Feb 10, 2016 at 09:59 UTC - 0 likes

    @Maxetto: Go

    Looks like PlotSquared is teleporting players asynchronously.

    Possibly their teleportation method is intended to synch into the main thread:

    Asked on their page:

    Currently not sure if that's an issue with CB/Spigot or PlotSquared, or if the task is run in a time slice/slot where tasks run anyway, though this is highly problematic as plugins hardly can know if it's danmgerous to access Bukkit API, so they'd have to cancel off-primary events of those types of events that are usually fired within the primary thread.

    @latestduo: Go

    It's about to get released. Still need to see which version of Minecraft it supports officially (same as 3.6.4?).

  • Avatar of MarkElf2204 MarkElf2204 Feb 10, 2016 at 00:22 UTC - 0 likes

    @latestduo: Go

    I've modified my configuration with fully custom strings (minus a few). I've never had an issue where I had to update protocol lib to a Dev build.

  • Avatar of latestduo latestduo Feb 09, 2016 at 19:55 UTC - 0 likes

    For anyone having issues with errors after adding custom strings you need to upload ProtocolLib to the latest build (build #222) it will soon be released under the version 3.6.5

  • Avatar of Maxetto Maxetto Feb 09, 2016 at 15:34 UTC - 0 likes


Date created
Apr 02, 2012
Last update
Jan 31, 2016
Development stage
GNU General Public License version 3 (GPLv3)
Curse link
Recent files



Optional dependency