Skip to content

CheatSupport/NoCheatPlus

 
 

Repository files navigation

NoCheatPlus

NoCheatPlus is a fork of the famous anti-cheat plugin NoCheat created by Evenprime. NoCheatPlus attempts to enforce "vanilla Minecraft" mechanics, as well as preventing players from abusing weaknesses in Minecraft or its protocol, making your server more safe. Organized in different sections, various checks are performed to test players doing, covering a wide range 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 always outdated Features Page.

Installation

  • Get CraftBukkit or Spigot
  • Download NoCheatPlus from either BukkitDev (staff approved) or Jenkins (development versions).
  • Drop the NoCheatPlus.jar in to your plugins folder.
  • Start your Spigot/CraftBukkit server. (Using /reload can have unwanted side effects with players still online, but also with complex plugins and cross-plugin dependencies, so we don't recommend it. Usually it should work with NCP.)

Tips

  • Be sure that your Spigot/CraftBukkit and NoCheatPlus versions match together.
  • Don't use tabs in the config.yml file.
  • Use ProtocolLib for full efficiency of the fight checks and other. Using version of ProtocolLib that is supported by NCP is essential, as otherwise some checks will be disabled.
  • For compatibility with other plugins such as mcMMO, citizens and more check out CompatNoCheatPlus.

Compiling NoCheatPlus

  • NoCheatPlus used to be compiled with java 6 compliance (note OpenJDK, possibly we'll switch to 8 directly, once appropriate, e.g. with ProtocolLib dropping support for 7.).
  • We use Maven 3 to handle the dependencies.
  • You can compile with this Maven goal: mvn clean package, if you don't want any dedicated CraftBukkit modules, or if you are lacking the jar files - for best performance and compatibility, choose the appropriate build profile(s) from below. If you do have all the legacy dependencies, you can set the parameter cbdedicated to true and activate the profile all adding -P all to the maven goals. For more options, see the table below. If your specific needs are not met by the provided options, you can still build only using the compat module(s) that you need, e.g. by adjusting the build/dependency profiles or adding your own profile, which means changing/adding a profile both in the root pom.xml for modules to have and in NCPPlugin/pom.xml for the dependency inclusion. The preset profiles should be enough of a hint for that. If you add custom modules with a different package naming than fr.neatmonster, you might have to add the source inclusion to the NoCheatPlus/pom.xml as well.
  • Jar files for the dedicated compat modules, which your local maven repository might be missing, can be installed manually. Example for Eclipse with embedded maven: Add a new maven build run configuration, name it appropriately, e.g. Install CB 1.7.5. Set goals to: install:install-file -Dfile=<PATH TO JAR> -DgroupId=org.bukkit -DartifactId=craftbukkit -Dversion=1.7.5-R0.1-SNAPSHOT -Dpackaging=jar On Windows the might look like: X:\...\craftbukkit\3042\craftbukkit-1.7.5-R0.1-20140408.020329-16.jar To let it run you might have to set the base directory, e.g. to ${workspace_loc}, it does not seem to have significance. Do set the correct version alongside the file name. On newer version of maven, you might do with much simplified goals, because the pom files inside the jars are parsed.

All profiles for reference:

As of now, you do need to activate the ncp_base profile in addition to whichever other profile you may be using.

For some building environments you might need to both set the profiles and set the build parameters - to be on the safe side, just set both.

Profile Parameter set to true Description
-P ncp_base ncp_base Default profile without any of the native access modules, might pose compatibility issues with latest Minecraft versions. The reflection based module is included here.
-P all -P ncp_base cbdedicated and ncp_base All compatibility modules.
-P spigot1_7_r4 -P ncp_base spigot1_7_r4 and ncp_base Just Spigot 1.7 R4 (MC 1.7.10).
-P spigot1_8_r3 -P ncp_base spigot1_8_r3 and ncp_base Just Spigot 1.8 R3 (MC 1.8.4-1.8.8).
-P spigot1_9_r1 -P ncp_base spigot1_9_r1 and ncp_base Just Spigot 1.9 R1 (MC 1.9-1.9.3).
-P spigot1_9_r2 -P ncp_base spigot1_9_r2 and ncp_base Just Spigot 1.9 R2 (MC 1.9.4).
-P spigot1_10_r1 -P ncp_base spigot1_10_r1 and ncp_base Just Spigot 1.10 R1 (MC 1.10-1.10.2).
-P spigot1_11_r1 -P ncp_base spigot1_11_r1 and ncp_base Just Spigot 1.11 R1 (MC 1.11-1.11.2).
-P cbdev -P ncp_base cbdev and ncp_base The latest version in development.

(On the long run, only the latest module for a major Minecraft release may be be kept, such as 1_8_r3 for all of 1.8.x.)

Links

Project

Download

Support and Documentation

Developers

TODO: BLEEDING REPO

Related

About

Anti cheating plugin for Minecraft (Bukkit/Spigot).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.8%
  • Python 0.2%