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 Jan 14, 2013@Apoc22932 It works fine. NCP isn't meant to do the same as WorldGuard plus an extensive permissions structure, not automagically anyway. It does exactly what it's supposed to do (for the most part - that is, you may still like to have an admin to check on logged actions and set things straight as needed).
NCP acts more like a limiter, reporting & preventing users from acting beyond those limits, and also prevents a row of other things that aren't widely taken into consideration by other mods (like lag walking (speeding)). So it's not quite just "cheat" or "no cheat", but it depends on the way the server is used (also on its performance btw) and, most important, what is actually referred to as a cheat. You could configure it to act on a very strict level as to limit players towards a very conservative way of playing, but it's basically meant to prevent abuse and players from having certain conveniences over others, not to safe guard the whole building action.
On the other hand, if you want to set up regions for players to build in, allow/disallow certain users/groups to do some things but not others, undo griefing etc, you should add mods like CoreProtect, WorldGuard & Essentials to your server (yes, I know some people don't like those, especially the latter, but they usually work fine when all mods are set up correctly and don't interfere with each other). Maybe add Multiverse to that, set up all necessary permissions and stuff, and you'd have a very versatile server that could fit any possible needs.
If there's some kind of hack or advantage that users can have with NCP enabled and you think it should be prevented by NCP, maybe @asofold can help or you could create a ticket as per the instructions given in the Support section above.
-
View User Profile
-
Send Message
Posted Jan 14, 2013NCP seems to load, gives no errors or console warnings but doesn't prevent anything?
Nothing to post, as there is nothing out of the ordinary in the log.
1.4.6-R0.3
-
View User Profile
-
Send Message
Posted Jan 13, 2013@lero90
It looks like it is related to the system time running backwards. There should be entries in the logs, but i added a fix (amongst other in build 312).
@ThePlayingNoob
We do update now and then :), the releases on BukkitDev often have a delay from 36 + hours, to see how development builds are progressing you could have a look at the "recent changes" page of our Jenkins site.
@andrewkm
Not sure what 311 should have changed concerning boats. It might be compiled against another Bukkit API though. Do you happen to have any log entries from a player with that problem?
On first glance the morepacketsvehicle checking does not kick at all. And flying checks should not apply when in boats. If you jump on moving boats it could happen. Could also be plugins interfering somehow (including ncp, if the player gets tossed off the vehicle, but learns "late", he might go on moving like in a vehicle and get kicked for flying, theoretically.). More info for reproducing needed, i would say...
-
View User Profile
-
Send Message
Posted Jan 13, 2013NCP 311 completely default config: http://www.ecocitycraft.com/forum/threads/boating-bug.36269/
-
View User Profile
-
Send Message
Posted Jan 13, 2013Wow guys today when i posted the question the Get Plugin was looking normal and now when i check if i got a answer they updated it xD
-
View User Profile
-
Send Message
Posted Jan 13, 2013@MyPictures
I think it is just about the notifications, which can be spam (large servers, cheating with checks that don't kick).
I will likely add an explicit kick action (+delayedkick) at some point, to be able to turn those off with one switch for those not wanting it, leaving only few exceptions.
-
View User Profile
-
Send Message
Posted Jan 13, 2013@ThePlayingNoob
What do you mean with "spam"? The logging messages of NoCheatPlus? That can be disabled in the configuration under logging. However I recommend to not letting your players spam the checks instead of disabling them completely. That's better for your server performance... What check gets called on your server?
-
View User Profile
-
Send Message
Posted Jan 13, 2013@ThePlayingNoob
You set ingamechat to false in the logging section of the configuration.
Or you remove the permission nocheatplus.admin.notify if your permission plugin/setup allow it.
-
View User Profile
-
Send Message
Posted Jan 13, 2013How do i disable the spam in-game chat? its really annoying
-
View User Profile
-
Send Message
Posted Jan 13, 2013As this plugin is the backbone to a successful server, I highly recommend it. I run a server with a pvp world and without the plugin, flying, forcefield and healing would give the modified client a significant advantage.
Many of you probably know another plugin called AntiCheat.... Same concept, but less featured. AntiCheat does not offer protection against mods like AimBot, AutoSign, KillAura (Forcefield) and quite a few more. SO DO NOT USE ANTICHEAT! Lets be real here.. unless you want people to mod on your server for some reason.... I am an AntiCheat veteran, and as AntiCheat has further updated, it has become trash. For one thing, if you have any lag WHATSOEVER, then AntiCheat is going to be a nuisance. After the server catches up while lagging, it kicks players randomly for things like moving too fast, as it scrunches half a minute of data into just a few ticks. My server lags a bit during a storm, and I notice that after it catches up, the whole server is kicked out for random reasons.. Number two, I don't know if the developers even kept the creative players in mind... It treats them as normal players. For instance, if you break 2 blocks fast (since in creative, they break about instantly), you will get kicked as it knows a SURVIVAL player cannot do this.
NoCheatPlus... Get it. You are not hitting any sort of JackPot or a fun twist to your server. It is simply the backbone to your server, something needed if you want a legitimate server.
Best, Drum.
-
View User Profile
-
Send Message
Posted Jan 12, 2013@JonRetribution
You can alter most messages in the strings section of the configuration. Color codes can be used, like &f for white.
-
View User Profile
-
Send Message
Posted Jan 12, 2013Is it possible to configure the chat log colours, i.e. the red NCP: white text violation warning here ?
-
View User Profile
-
Send Message
Posted Jan 12, 2013@Adrenalineq
I can't recall having added an option to disable the player-join-event listeners :) - all listeners are present always, disabling the checks means a quicker return in general. But there are other checks like moving checks that need information given in the PlayerJoinEvent, for instance to set an initial set-back location or undoing fall-damage invulnerability.
-
View User Profile
-
Send Message
Posted Jan 12, 2013@asofold
Say me something, why NCP+ still checks playerjoin events when i have disabled it at config :C (logins, relogs)
-
View User Profile
-
Send Message
Posted Jan 12, 2013@lero90
Please make a ticket for it. Does it happen once or just shortly multiple times or does it persist from then on? Please also check the log right before it, are there entries stating that the system time ran backwards? Did you reload the configuration before that happened?
-
View User Profile
-
Send Message
Posted Jan 12, 2013use 301 on bukkit #2591 1.4.6-R0.4 it happens after 2 - 4 hours
-
View User Profile
-
Send Message
Posted Jan 12, 2013@lero90
What version do you use? For CraftBukkit 1.4.6 be sure that you run at least 301: http://dev.bukkit.org/server-mods/nocheatplus/files/43-nocheat-plus-3-8-8-b301/
You could also give 311 a try: http://www.nocheatplus.org:8080/job/NoCheatPlus/
-
View User Profile
-
Send Message
Posted Jan 12, 2013server cycle:
2013-01-10 15:41:47 [SEVERE] org.bukkit.event.EventException: GenericListener<org.bukkit.event.player.PlayerMoveEvent> @MONITOR encountered an exception for fr.neatmonster.nocheatplus.checks.moving.MovingListener with method public final void fr.neatmonster.nocheatplus.checks.moving.MovingListener.onPlayerMoveMonitor(org.bukkit.event.player.PlayerMoveEvent) at fr.neatmonster.nocheatplus.event.GenericListener.onError(GenericListener.java:117) at fr.neatmonster.nocheatplus.event.GenericListener.execute(GenericListener.java:108) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462) at net.minecraft.server.v1_4_6.PlayerConnection.a(PlayerConnection.java:219) at net.minecraft.server.v1_4_6.Packet10Flying.handle(SourceFile:136) at net.minecraft.server.v1_4_6.NetworkManager.b(NetworkManager.java:290) at net.minecraft.server.v1_4_6.PlayerConnection.d(PlayerConnection.java:112) at net.minecraft.server.v1_4_6.ServerConnection.b(SourceFile:39) at net.minecraft.server.v1_4_6.DedicatedServerConnection.b(SourceFile:30) at net.minecraft.server.v1_4_6.MinecraftServer.r(MinecraftServer.java:598) at net.minecraft.server.v1_4_6.DedicatedServer.r(DedicatedServer.java:224) at net.minecraft.server.v1_4_6.MinecraftServer.q(MinecraftServer.java:494) at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:427) at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:849) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor38.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at fr.neatmonster.nocheatplus.event.GenericListener.execute(GenericListener.java:105) ... 14 more Caused by: java.lang.ArrayIndexOutOfBoundsException: 1298 at fr.neatmonster.nocheatplus.utilities.ActionFrequency.update(ActionFrequency.java:65) at fr.neatmonster.nocheatplus.utilities.ActionFrequency.add(ActionFrequency.java:35) at fr.neatmonster.nocheatplus.checks.combined.Combined.feedYawRate(Combined.java:74) at fr.neatmonster.nocheatplus.checks.moving.MovingListener.onPlayerMoveMonitor(MovingListener.java:569) ... 18 more
-
View User Profile
-
Send Message
Posted Jan 10, 2013@Maxetto
Ty!
-
View User Profile
-
Send Message
Posted Jan 9, 2013@Toxic__Waste
Yea for mcmmo compatibility you need to install NoCheatPlus and CompatNoCheatPlus.