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

Main 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.

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 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".

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 EcoCityCraft.
  • Do not download from any other source, do not use jars other people send you.
  • Changes by build number can be examined in the Jenkins changes list.
  • All commits can be seen in the GitHub commit history.
  • Plugin statistics are no longer reported to


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 ticket or add to an existing ticket.
  • To send information that is not to be seen by all, you can also reach us by PM to @asofold and @MyPictures. 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 MyPictures MyPictures May 15, 2014 at 19:34 UTC - 0 likes

    @Dy1an362: Go

    No. The only NC+ team MC accounts active atm are asofold and MyPictures.


  • Avatar of Dy1an362 Dy1an362 May 15, 2014 at 19:29 UTC - 0 likes

    @Dy1an362: Go

    its fake, nevermind.

  • Avatar of Dy1an362 Dy1an362 May 15, 2014 at 19:22 UTC - 0 likes

    Some guy logged in our server with the name NoCheatDev and said he was a developer for NCP. I assume and believe no but for clarification, is he?

  • Avatar of asofold asofold May 15, 2014 at 08:22 UTC - 0 likes

    @Darknessorising: Go

    @FabioZumbi12: Go

    Alright :).

    @StaNNiE0: Go

    Plugins reloading plugins has proven problematic in the past - reload seems to be ok-ish with NCP now, but we always had problems with plugin manager plugins. Not sure if we can do anyting to improve compatibility on that, but basically "ncp reload" or restarting should be the way to go. Could also be that plugins that hook into NCP have been written to only consider the case of all plugins getting disabled/enabled as it is with reload and restart.

    @LordKainzo: Go

    We are setting worlds to null for temporarily used Location instances. If such an object gets passed to any external API there would be trouble, because before other plugins could process it, the world would be set to null due to the cleanu (necessary to prevent memory leaks due to world references).

    I found a spot with passable violations (very common), which might pass a Location instance for which the world gets set to null. Not sure if this explains why there is the exception in the player-join handling of NCP, though. This is corrected in build 697.


    Latest release (1.7.2-1.7.10, approved) NoCheatPlus 3.11.1-RC-sMD5NET-b743
    (Development builds: Jenkins)

  • Avatar of LordKainzo LordKainzo May 15, 2014 at 04:04 UTC - 0 likes

    <<reply 2179815="">>

    The player is trusted. Its NCP triggering the kick and the errors - in my belief it could be something setting a world to null - but i have no idea what could be doing that.

    23:06:34 INFO: Version information
    23:06:34 INFO: #### Server ####
    23:06:34 INFO: #### NoCheatPlus ####
    23:06:34 INFO: Plugin: 3.10.9-RC-sMD5NET-b673
    23:06:34 INFO: MCAccess: 1.4.6|1.4.7|1.5.x|1.6.1|1.6.2|? / Bukkit-API

    Last edited May 15, 2014 by LordKainzo
  • Avatar of StaNNiE0 StaNNiE0 May 14, 2014 at 17:35 UTC - 0 likes

    <<reply 2181180>>

    NCP Version: 3.10.11-BETA-sMD5NET-b690
    Spigot Version: git-Spigot-1377 (MC: 1.7.5) (Implementing API version 1.7.5-R0.1-SNAPSHOT)

    After startup 0 errors.

    Edit: I think I screwed it up when reloading it with another plugin.
            All commands are working now.
            Not sure if the regen hack still works since I banned those hackers.


    Last edited May 14, 2014 by StaNNiE0
  • Avatar of FabioZumbi12 FabioZumbi12 May 13, 2014 at 21:48 UTC - 0 likes

    Yoo, '?' with quotes works!! ThankYou!!

    Area Z12 Brasil

  • Avatar of Darknessorising Darknessorising May 13, 2014 at 21:17 UTC - 0 likes

    @asofold: Go

    Thanks!! Helped a lot and now i know for next time!

  • Avatar of asofold asofold May 13, 2014 at 20:29 UTC - 0 likes

    @StaNNiE0: Go

    There seems to be some other problem then (permissions plugin or a startup error?). Did you check the startup log for errors? What's latest (build number?)? Which version of CraftBukkit/whatever are you using?

    The regen is not caught by NCP ?

    @jet315: Go

    Adding to @Darknessorising: The notifications give you an idea of what is happening, for big servers you will likely turn them off, rather. NCP is configured to prevent stuff by default, so usually the alerts mean that something has been prevented for the x-th time. Alerts usually don't appear with every violation, but after a certain amount/level of violations. Since server owners have a much different view on things, there is no "way to do it right" in general, though i would also prefer to rework the alerting/levels system, if i should find the resources to do it.

    We only use kicking where we are somewhat sure that false postiives are rare and also where we think that kicking is needed for performance reasons, or because an action means trouble for the server, e.g. crashing or extreme spamming. We don't bring in too much kicking also because NCP usually prevents enough to not need to kick. We don't encourage banning for similar reasons, specifically for checks that have false positives more often, e.g. if influenced by client-side or networking lag.

    Things differ a lot by type of server/players and size of servers, but kicking and banning is problematic, because Minecraft+Bukkit does not give too much means of verifying most things in an efficient way.

    @TheOnlyRealTGS: Go

    Our bakery license has expired!

    @Darknessorising: Go

    Alright: /? might work. Your problem is now that it shows the default Bukkit "no permission" message? If you add '/?' to the nopermission commands list, that is the default behavior - what do you want to reach or what do you expect to happen instead?

  • Avatar of Darknessorising Darknessorising May 13, 2014 at 19:17 UTC - 0 likes

    @asofold: Go

    ok So I entered "/?" into the config to block /? and it changes it to - /? which I understand but it still says the same boring message "Were sorry... Is a mistake" even after I do /ncp reload.


Date created
Apr 02, 2012
Last update
Sep 21, 2014
Development stage
GNU General Public License version 3 (GPLv3)
Curse link
Recent files