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 asofold asofold Oct 30, 2014 at 00:36 UTC - 0 likes

    @kristijan260393: Go

    Realistically i would rather enable donations or payed services if i needed it for survival mode. We still do have some basic cost for keeping hold of some domain and other, so donations or even some payed extras are not 100% off the table. Don't expect the core to become private too easily though...


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

  • Avatar of kristijan260393 kristijan260393 Oct 29, 2014 at 18:59 UTC - 0 likes

    hello please take your plugin to spigot and set your plugin to premmium so people must pay for plugin because all kids can make server and that is big shit

  • Avatar of asofold asofold Oct 26, 2014 at 18:20 UTC - 0 likes

    @kangarkooo: Go

    Good :), the logs might be lengthy, most interesting might be what happens just before logout and just after login, until/from first teleport(s).

  • Avatar of kangarkooo kangarkooo Oct 26, 2014 at 15:36 UTC - 0 likes

    @asofold: Go

    Thank you. I will do more testing tomorrow on localhost.

  • Avatar of asofold asofold Oct 26, 2014 at 14:11 UTC - 0 likes

    @kangarkooo: Go

    Do you have logs of log-out locations or are the log-in locations logged before AuthME teleports players?

    If you can reproduce it locally or with very few players online, you can add "debug: true" to the moving section of the config of NCP (or even above in the checks section), which could give more hints about what happens, but it'll spam the logs for each and every player, so it's usually not an option for production servers.

  • Avatar of kangarkooo kangarkooo Oct 26, 2014 at 13:07 UTC - 0 likes

    @asofold: Go

    I have exact login loc. set to true, and I have enabled teleporting to spawn in AuthMe. After /login players are teleported back, but I am using sessions (12hours) and in my case player logged in time, so he wasn't teleported by authme.

  • Avatar of asofold asofold Oct 26, 2014 at 11:52 UTC - 0 likes

    @kangarkooo: Go

    Do you have the bukkit.yml set to use exact login locations? Do you have a plugin enforcing login locations related to last logout (not suggesting to have one in general though)?

  • Avatar of kangarkooo kangarkooo Oct 26, 2014 at 11:48 UTC - 0 likes

    @asofold: Go

    The issue is related when I cancel PlayerTeleportEvent, but I did some testing at it happens very rarely (that the event is not cancelled and player is teleported), and also rarely the player is kicked by NCP for flying and when he logs backs to game he appears to be on the roof or outside the wall (if possible)

  • Avatar of asofold asofold Oct 26, 2014 at 11:45 UTC - 0 likes

    @kangarkooo: Go

    I don't know - are the issues with NCP + cancelling ender-pearl teleport or in general? There could be something like the "inexact spawn position", but i can't tell by now.

    @UnwrittenPaper: Go

    Please cut that part and use a paste, e.g. with language set to "text only", for better readability, thanks :).

    Could it be you were using a plugin-manager plugin to reload NCP? Some are incompatible and in general it's dangerous ...

    Otherwise: Can you post the full output of the "ncp version" command too (and /cncp if available)? What permissions plugin are you using?

  • Avatar of UnwrittenPaper UnwrittenPaper Oct 26, 2014 at 10:28 UTC - 0 likes

    I've been switching a lot from NoCheatPlus to AntiCheat to no anti cheating plugin at all, and now I'm finally back with NoCheatPlus along with CompactNoCheatPlus.

    I absolutely love this plugin, and I do infact use it for my server at

    EDIT: I get all sorts of errors, even with a fresh NoCheatPlus folder, in the console: 26.10 05:13:30 [Server] INFO at [craftbukkit-1.7.10-3116.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks] 26.10 05:13:30 [Server] INFO at [craftbukkit-1.7.10-3116.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks] 26.10 05:13:30 [Server] INFO at net.minecraft.server.v1_7_R4.MinecraftServer.u( [craftbukkit-1.7.10-3116.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks] 26.10 05:13:30 [Server] INFO at net.minecraft.server.v1_7_R4.DedicatedServer.v( [craftbukkit-1.7.10-3116.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks] 26.10 05:13:30 [Server] INFO at net.minecraft.server.v1_7_R4.MinecraftServer.v( [craftbukkit-1.7.10-3116.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks] 26.10 05:13:30 [Server] INFO at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftScheduler.mainThreadHeartbeat( [craftbukkit-1.7.10-3116.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks] 26.10 05:13:30 [Server] INFO at [craftbukkit-1.7.10-3116.jar:git-Bukkit-1.7.9-R0.2-24-g07d4558-b3116jnks] 26.10 05:13:30 [Server] INFO at [?:?] 26.10 05:13:30 [Server] INFO at fr.neatmonster.nocheatplus.utilities.TickTask.updatePermissions( [?:?] 26.10 05:13:30 [Server] INFO java.lang.LinkageError: loader constraint violation: when resolving method "fr.neatmonster.nocheatplus.checks.CheckType.getConfigFactory()Lfr/neatmonster/nocheatplus/checks/access/CheckConfigFactory;" the class loader (instance of org/bukkit/plugin/java/PluginClassLoader) of the current class, fr/neatmonster/nocheatplus/utilities/TickTask, and the class loader (instance of org/bukkit/plugin/java/PluginClassLoader) for resolved class, fr/neatmonster/nocheatplus/checks/CheckType, have different Class objects for the type r/neatmonster/nocheatplus/checks/access/CheckConfigFactory; used in the signature 26.10 05:13:30 [Server] WARN Task #328398 for NoCheatPlus v3.11.1-RC-sMD5NET-b743 generated an exception

    Last edited Oct 26, 2014 by UnwrittenPaper Read More Here, here, here, or here.


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