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 Oct 14, 2012@ni_r3ng3r_ni
If you updated from 1.2.5 to 1.3.2 then it will likely be just the outdated NCP version.
If you're using cncp + Spout, you might have to do without either for the moment, unfortunately. (Not sure that is 100% so, but some users had problems with that combination.)
-
View User Profile
-
Send Message
Posted Oct 14, 2012@ni_r3ng3r_ni
Try latest version from here: http://nocheatplus.org:8080/job/NoCheatPlus/
If it still provide a plugin list with CB and NC+ version.
-
View User Profile
-
Send Message
Posted Oct 14, 2012Hi, Since 1.3.2 bukkit version people are able to fly in my server :/ I haven't touched any of the options, and they weren't able to fly before the 1.3.2 update! Please help!
-
View User Profile
-
Send Message
Posted Oct 14, 2012@chopstick121
This version of NoCheat+ is 100% clean and you can trust us with that since it got approved by the dev.bukkit staff. NoCheat has force op leak, so just get NC+ from this side and you should be fine.
-
View User Profile
-
Send Message
Posted Oct 14, 2012@chopstick121
As long as bukkit approves a file that means it is free of Piracy,Malware,ForceOps, and anything harmful.
-
View User Profile
-
Send Message
Posted Oct 13, 2012will this disable Force Op people are saying this can force op
-
View User Profile
-
Send Message
Posted Oct 13, 2012@ciretaorg
You use outdated versionof NC+. for 1.3.1 you have to use at least 3.7.3 (Build 111) Beta or better the latest one from here: http://nocheatplus.org:8080/job/NoCheatPlus/
-
View User Profile
-
Send Message
Posted Oct 13, 20122012-10-13 20:16:50 [INFO] [NoCheatPlus] Enabling NoCheatPlus v3.6.1
2012-10-13 20:16:51 [SEVERE] Error occurred while enabling NoCheatPlus v3.6.1 (Is it up to date?)
java.lang.VerifyError: (class: fr/neatmonster/nocheatplus/checks/chat/ChatListener, method: commandPreprocess signature: (Lorg/bukkit/event/player/PlayerCommandPreprocessEvent;)V) Incompatible argument to function
at fr.neatmonster.nocheatplus.NoCheatPlus.onEnable(NoCheatPlus.java:72)
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217)
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:374)
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:266)
at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:248)
at net.minecraft.server.MinecraftServer.i(MinecraftServer.java:297)
at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:276)
at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:226)
at net.minecraft.server.DedicatedServer.init(DedicatedServer.java:140)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:377)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:539)
-
View User Profile
-
Send Message
Posted Oct 13, 2012@Xenoex
OK, nice be always sure that your NC+ version matches the CB version you use.
-
View User Profile
-
Send Message
Posted Oct 13, 2012@Xenoex
yeah it's working now, thanks a lot
-
View User Profile
-
Send Message
Posted Oct 13, 2012@MyPictures
I think it works, i don't get that error anymore i'm gonna ask someone to try using a hacked client and tell me if it works
-
View User Profile
-
Send Message
Posted Oct 13, 2012@Xenoex
What version of NC+ and CNCP do you use?
CraftBukkit version?
Do you use spout?
Are the permissions set right?
-EDIT: That in the screenshot looks like a outdated version of NC+, get the latest one from here:
http://nocheatplus.org:8080/
-
View User Profile
-
Send Message
Posted Oct 13, 2012I really want to use nocheat+ on my server, i do use mcmmo so i think i'm right about how i went at this. I download both nocheat+ and compatnocheat+ right? I have both of those in my server but nocheatplus isn't stopping people from using any hacks and when i type /nocheatplus to check commands it says "Configuration file(s) - Needs additional permissions" and I have no idea how to fix this. Any help?
-
View User Profile
-
Send Message
Posted Oct 13, 2012@R3N3PDE
We do use have events for check failures anymore.
You can register a hook with NCP (hooks package: NCPHookManager) which will be called for check failures. If several hooks are installed it might happen that one hook wants the violation handling to be cancelled, so other hooks will not be called anymore.
Some examples and also convenience implementations might be found in CompatNoCheatPlus.
There are links to GitHub in the "Downloads and more" secttion on the page above.
It is also possible to use the actions to log violations, or to call a custom command with them, filling in things like player name, check type and violation level.
-
View User Profile
-
Send Message
Posted Oct 13, 2012There in NCP events?
E.g.
public void onCheat (NoCheatPlusCheatEvent e) {
this.getLogger().info(e.getPlayer() + "has cheat!" Type: "e.getCheatTyp() +", VL: "+ e.getVL());"
}
-
View User Profile
-
Send Message
Posted Oct 12, 2012Build #154 is running nice and smooth. Keep it up guys :-)!
-
View User Profile
-
Send Message
Posted Oct 12, 2012@Thrownalive
@H8llfire
It depends on the check how many false positives you can reach with normal game play and more important what violation levels you can reach.
Swing can randomly alert for low violation levels. Fastbreak depends on the version - i recommend the latest dev build which is closing in on a release candidate ()http://www.nocheatplus.org:8080/job/NoCheatPlus/154/) - some earlier versions including the bukkitdev downloads have bugs so people can reach higher violation levels with certain tool/block combinations.
Also the fastbreak violation level represents milliseconds that people have gained by mining too fast within the last too minutes (roughly). So naturally for people that try to mine too fast constantly you would rech different levels, for a blunt nuking apporoach very high levels. But you can have false positives for lower vls on lag. 2000 ms are allowed as lag-contention by default, if your server gets lag spikes of several seconds it can happen that it appears to the server that they broke some blocks instantly.
We will make some attempts to improve the documentation on reasonable vls and lag effects for the individual check types in future.
-
View User Profile
-
Send Message
Posted Oct 12, 2012@Thrownalive
Yeah, but there are so many false positives in NCP that you will burn lots of innocents. For example lagging would trigger burning pretty heavily..
-
View User Profile
-
Send Message
Posted Oct 11, 2012Hi, I love the plugin. I was hoping someone could give me an example of what the line would look like to add the cmd action to /burn the player who is triggering alerts.
Thanks
UPDATE: I think I figured it out. For anyone that's interested, you have to create a string for the function first then type it int othe action line for the check. I added 2 different duration burn penalties for different types of violation. creating the strings; burn1: burn [player] 2 and then burn2: burn [player] 6 The shorter burn1 (which burns violating player for 2-seconds) is for fastbreat, swing, place violations while the longer burn2 (burns for 6-seconds) is for the quick inventory and alerts that are severe but not repetitive. Works like a charm...
-
View User Profile
-
Send Message
Posted Oct 11, 2012Tested latest dev version #153. The login problem with no one able to move is now fixed! Thank you.
Pming new issue however.