NoCheatPlus

NoLogo

NoCheatPlus

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

Main Features Permissions Commands Configuration Jenkins

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.

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

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 mcstats.org.

Support

Documentation Resources

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 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 06, 2012 at 15:25 UTC - 0 likes

    @macbookfan33: Go

    "a block of sandstone" - very unlikely.

    The VL roughly represents milliseconds that the player has mined too fast (maybe i will adapt it to be lower in general). And you can't possibly get that VL from one block of sandstone, further even with any high VL or overtime (buffered for like 2 minutes) you might have accumulated, you can still break any block if you stay within the allowed time with it.

    Sandstone needs like 150 milliseconds (0.15 seconds) to break for a diamond pickaxe. To accumulate any overtime (i call it that though i mean mined too fast time) with it at all your player would have to mine a block faster than 60 milliseconds given default seconds. This can occasionally happen on lag, but you have to accumulate 2 seconds of overtime (counted over 2 minutes, also older overtime counts less) to trigger a violation at all.

    Now assume the player has not been accumulating vls wit hother blocks, he can gain 60 ms overtime with each sandstone block, thus has to mine clearly more than 30 blocks in two seconds which. Thus at 15 blocks per second at instant breaking speed he would trigger one violation counting in as 60 ms, so to reach a vl of 19000 he has to dothat over a very long time. Which is very/ unlikely to achieve with sandstone.

    It is more probable that he accumulated the overtime with other blocks. What might be is extreme server lag (running at 10 or lower tps for a while) which might need you to adapt the configuration to allow accumulation of more overtime.All provided no cheats are used.

    Was the player mining under water / standing in the air ?

    Last edited Oct 06, 2012 by asofold

    BFAK:asofold,90573112,4305cd44b773216e4e4b4865b3831dcc3c507c15087fb5cfeebd9392050724fc

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

  • Avatar of macbookfan33 macbookfan33 Oct 06, 2012 at 15:03 UTC - 0 likes

    Fastbreak VL:19000+ when breaking a block of sandstone with a diamond pick?!

  • Avatar of asofold asofold Oct 06, 2012 at 14:45 UTC - 0 likes

    @Stuntweed: Go

    The fastclick check is against fast clicking, though. It does only limit the number of clicks.

    Can you pm a plugin list with versions if possible '(including cb)? It ould be a plugin causing that (important to rule out). It would be a critical bug in CB.

  • Avatar of Stuntweed Stuntweed Oct 06, 2012 at 12:02 UTC - 0 likes

    @asofold: Go

    No this is not client side, it actually bugs. I tried with a super click program and i'm duping easy pie even if kick them when trying.

    fastclick: active: true actions: cancel vl>1 log:fastclick:1:1:cif cmd:kickfrequency

    This is what i have configured now and I'm still able to dupe before being kicked (note i'm doing this with a non admin account so you don't get confused)

    https://dl.dropbox.com/u/23839404/bilder/logo.png

  • Avatar of asofold asofold Oct 06, 2012 at 05:49 UTC - 0 likes

    @Ken6911: Go

    Thanks, i forgot to remove that reference before changing other entries in the configuration. Just remove the tell action or use build 137. The tell action is dominated by the kick anyway.

  • Avatar of Ken6911 Ken6911 Oct 06, 2012 at 04:20 UTC - 0 likes

    I  just updated to b136 and i'm getting this in my server.log

    00:14:48 [WARNING] [NoCheatPlus] Failed to create action: NoCheatPlus doesn't know command 'tellchatfast'. Have you forgotten to define it?

    Any clue?

  • Avatar of asofold asofold Oct 06, 2012 at 03:59 UTC - 0 likes

    @Skydevil_: Go

    We are aware of that, you might try developement build 136 (http://www.nocheatplus.org:8080/job/NoCheatPlus/).

    It might not fix it, though. We have to look into that further (real tricks involved).

  • Avatar of Skydevil_ Skydevil_ Oct 06, 2012 at 03:45 UTC - 0 likes

    Hi I have just had a player come on my server and started flying around so i logged into a different account and asked him how he did it he said it was a new client he found called Malint i have all of NCP features turned on and it still didn't stop him just letting you know some where there's a work around Thanks for the plugin and keep up the great work SkyDevil_

    http://minecraft-server-list.com/server/logo/93552.png

  • Avatar of asofold asofold Oct 06, 2012 at 03:08 UTC - 0 likes

    @Stuntweed: Go

    Item clicking: Do they really get more ? This could be a client side effect, but might be the bug is still present. Which CraftBukkit version is it ?

    The config description might not be 100% up to date. Currently the fastclick check can not be configured other than disable/enable or the actions. It is enabled by default.

    Concerning configuration for big servers it might strongly depend on how powerful your server is. If it is running on low TPS you will likely probably get violations cascading and create more lag.

    A simple means to reduce such is to reduce the amount of logging. You can set it to only log for higher violation levels (or not at all) and to not log to file and console at the same time.

    Another way is to either deactivate some checks completely or/and to give some of your rather trusted users or donators bypass-permissions for some checks.

    You can also use world specific configurations, to turn off some checks for certain worlds completely.

  • Avatar of Stuntweed Stuntweed Oct 06, 2012 at 02:00 UTC - 0 likes

    Hi,

    So we have this problem on our server where players rightclick blocks in their inventory really fast and by doing so they create more of them. I'm not sure how to block this with fastclick since i cannot seem to understand how the config works. I read the configuration guide but i'm starting to think i'm stupid..

    Also important to know is that our server is crowded, 175 slots and there are 100+ players online constantly so the lag has to be added to the equation.

    Now my question is, how can i optimize NCP for a large server as ours?

Facts

Date created
Apr 02, 2012
Categories
Last update
Sep 21, 2014
Development stage
Release
License
GNU General Public License version 3 (GPLv3)
Curse link
NoCheatPlus
Downloads
1,041,698
Recent files

Authors