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).
@asofold: Thanx for the answer. Well the problem is that I use Essentials, and not a specific vanish plugin. So I don't know if they will be doing anything there. Because if anyone uses "Picture in Picture" I think it's kind of cheating. The player will be able to see what I am doing.
@asofold
I was thinking of making an alias, for my staff members. The command would be /test <player> and would make the staffmember go in vanish and teleport to the player (Essentials commands) and then it would exempt that player from any nocheatplus checks and after 3 minutes the player would be unexempted again.
But I don't want to give my staff members access to run commands as console, no, please no xD Maybe you could add a command which would just temporarily exempt a player from any checks? like, /ncp tempexempt?
Also another idea I had is for a command which would send about 3-5 zombies to a player from different directions so staff could check if the player has some sort of mobaura. with some sort of 2 minutes cooldown so the staff can't spam the command?
Anyways, thank you for the quick reply and the awesome plugin :P
@Maxetto This same: https://github.com/NoCheatPlus/Issues/issues/58 ?
Concerning the crash i suggested that PlotSquared should have a message throttling per player. Ideally they'd also liston on LOW event priority instead if lowest, to give the simple anti cheating checks a chance to cancel early. There would be hacks to ensure NCP gets events first, but is this the issue at all?
@SmilingSlimeGuy
We currently prevent that, because the commands is executed as console. Accidentally giving a player the permission to use the delay command can be a real problem then. In theory we could add config flags for such, which wouldn't hurt anyone. Question is what you want there - a feature to run the command as the player who calls it? What do you intend to do with such a command from ingame?
@MarkElf2204
Yes :). fdirection is typical too.
@File14
Which version of NCP are you using? Could the issues perhaps be resolved?
Not cancelling survivalfly is slightly problematic, as that would at least allow some form of gliding with the current implementation. (mentioned in the page: https://github.com/NoCheatPlus/Docs/wiki/%5BMoving%5D-Survivalfly )
At some point i'd like to support better adjusting sensitity of survivalfly without risking glide and things like that, currently we prefer to get issue reports, because the recently added internals allow tackling false positives very well (downside: it added new ones, though some old ones have been removed as well).
@MarkElf2204
The error log has recently been added. It means a plugin is doing something in a way that might crash your server (or the server has a strange bug).
Typically and here also it is plugins causing teleporting of players, more or less indirectly.
In this case it looks like the plugin UltraCosmetics is calling methods asynchronously, not from within the main thread, which cause a teleport of a player in an indirect way.
Technically this is highly problematic to do, i don't know of safety measures from Bukkit side with firing events asynchronously. Most plugins rely on events being fired from within the default contexts, and will just access the not thread-safe API on such an event.
I can't tell if this is by accident, because they just let players mount something else and probably don't expect a teleport to happen due to that. No idea if the mounting failing causes a teleport, they should look into that.
@File14
I'm not a developer, sorry. I just happen to have a great understanding of the configuration.
@MarkElf2204
Thank you so much! <3
What about this error? http://pastebin.com/JFWeH0hF
@File14
If you only want it to cancel after 500 VL (which is a bit stupid considering players will be able to fly for a brief amount of time prior)
You would use the string "vl>500 log:flyshort:0:X:i cancel" X = time in delay before another message is sent. I would recommend a number between 10 and 14 to avoid spam. the 'i' will notify you in-game.
If you don't want players to fly for that short moment before reaching 500 Vl, add "cancel'" before the "<500"
If you required additinal information, check this page: https://github.com/NoCheatPlus/Docs/wiki/Strings
@SmilingSlimeGuy
If you really need it for whatever reason, I would recommend getting a plugin that allows you to send commands from in-game as console. I personally use MyCommand and have /console (action) to have console run commands when need be.
@asofold
I also like to think of fdirection as another check for aim-bot.
How do I cancel after vl>500?
Like Survival Fly if it reaches over 500 will it cancel. How do I do this?
Is there a way to use /ncp delay from ingame? When I try to use it it says that it can only be runned from the console :/
@asofold
Having this same problem with PlotSquared. Should I report here or to PlotSquared Project?
@grosse01
1) That's should be an issue for the vanish plugin, shouldn't it? We can't do much there, though it's a pretty important question in general. Earlier on they used to detect stuff that had accidentally been sent about vanished players, like sounds (fixed i assume). No idea what they do these days to detect vanished players...
2) We don't detect killaura directly, as that's a combined thing anyway (auto target+ hit, mutliple aims). The checks closest to having to do with that are fight.angle, combined.improbable, (combined.yawrate). Another thing is using ProtocolLib for full efficiency of fight checks and to cover up for some false positives (the ProtocolLib version to use with NCP depends on the version of Minecraft). Otherwise we are just focusing on the fight checks, after preliminary repairs of configuration (pvp vs. pve) and adjusting means of punishment (penalties allowing to do other stuff than hard cancel), there'll be new methods implemented at some point.
Hey!
I've got 2 questions:
1) When people use the PIP-Mod (Picture in Picture) they can see me even though I'm vanish. Is there some way to avoid that?
2) What do I have to change in the config if I want people to get kicked from the server if they are using killaura? I meen where to set the distance. I want them to get kicked if they use it in a distance of two blocks.
@jet315
Please post/link the output of the '/ncp version' command, so we can judge a couple of side conditions quickly. (We do prefer text, like with server or client logs, rather than screenshots).
We also can't judge what build you have been using before.
Concerning 'lag backs':
Have you updated other plugins or the server alongside with NCP at that time?
Hi,
Iv added the newest version of NC+ and iv noticed that people are getting massive amounts of lag backs.
Even during testing with a group of 10 people who were not hacking, we got lagged back blocks continually.
This is with the default NC+ setup but as there is nothing coming up in the console or on chat so I have no idea what is causing the lag backs in the NC+ config.
This is with 20tps and 3% server load on timings. When I remove NC+ there are no lag backs at all.
@FabioZumbi12
Thank you for reporting this - the error message has just been added to see how this is happening.
Apparently another plugin is trying to teleport players from a thread running concurrently to the primary server thread.
The line indicating what plugin might be issuing the teleport is:
me.bsy6766.Televator.Telev atorListener$1.run(TelevatorListener.java:284)
Do you have a plugin named 'Televator' ?
My suggestion is to report to the authors of that plugin providing the error paste, at least the upper part with the stack trace. Ask them if they teleport players from another thread than the main thread. You could also give me a link to their dbo/github page, so i would ask them and provide the necessary technical details.
Background:
In theory Bukkit indicates if an event is fired asynchronously to the primary server thread, but it's quite unfeasible to fire standard events that way, because virtually all plugins that listen to the standard events will also access Bukkit methods that are not safe to use if not called from within the primary server thread, thus their only real choice would be to cancel the event, effectively rendering it useless. Adapting to that is possible but potentially very complicated, performance-dragging, not feasible.
@asofold
Hello, i having this error: http://dev.bukkit.org/paste/14140.txt
Before this latest update the error was only this: [NoCheatPlus] Off primary thread call to hasByPass for INVENTORY_OPEN
Bur now is all the error on bukkit paste. Thanks.
@InazumaTS
I assume it's solved by updating. for the case you're not running the latest beta release of NCP on Minecraft 1.8.x: http://dev.bukkit.org/bukkit-plugins/nocheatplus/files/
There will be beta and possibly recommended releases following every 1-3 weeks.
For future issues i would like to suggest, that you just add the output of the '/ncp version' command (console or client log), so we can quickly judge questions about versions and compatibility.
Hey, my members on the server cannot use Depth Stryder without glitching back and not being able to move anywhere, I believe this is a issue with Nocheat, if so how can I fix this?
Thanks
@vitorjordaop
@vitorjordaop
Please rather link to a paste (text type) instead of posting such a long message (e.g. here on dev.bukkit.org: http://dev.bukkit.org/paste/).
For reports about NoCheatPlus please also include the full output of the '/ncp version' command (that can be inserted into the message for fast overview).
Please ensure:
Edit: Sentence got cut off, removed. Need version information, suggest check for latest compatible plugin versions.
@vitorjordaop
whenever I click on any mob of an error similar to this one
[22:50:28 ERROR]: [NoCheatPlus] Unhandled exception occured in onPacketReceiving (PacketEvent) for NoCheatPlus java.lang.IndexOutOfBoundsException: Index: 1, Size: 1 at java.util.ArrayList.rangeCheck(Unknown Source) [?:1.8.0_66] at java.util.ArrayList.get(Unknown Source) [?:1.8.0_66] at com.comphenix.protocol.wrappers.EnumWrappers.getEnum(EnumWrappers.jav a:100) [ProtocolLib.jar:?] at com.comphenix.protocol.wrappers.EnumWrappers.initialize(EnumWrappers. java:76) [ProtocolLib.jar:?] at com.comphenix.protocol.wrappers.EnumWrappers.getEntityUseActionClass( EnumWrappers.java:129) [ProtocolLib.jar:?] at com.comphenix.protocol.events.PacketContainer.getEntityUseActions(Pac ketContainer.java:629) [ProtocolLib.jar:?] at fr.neatmonster.nocheatplus.checks.net.protocollib.UseEntityAdapter.on PacketReceiving(UseEntityAdapter.java:52) [NoCheatPlus.jar:?] at com.comphenix.protocol.injector.SortedPacketListenerList.invokeReceiv ingListener(SortedPacketListenerList.java:114) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.SortedPacketListenerList.invokePacket Recieving(SortedPacketListenerList.java:67) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.PacketFilterManager.handlePacket(Pack etFilterManager.java:636) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.PacketFilterManager.invokePacketRecie ving(PacketFilterManager.java:603) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.netty.NettyProtocolInjector.packetRec eived(NettyProtocolInjector.java:300) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.netty.NettyProtocolInjector.onPacketR eceiving(NettyProtocolInjector.java:266) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.netty.ChannelInjector.decode(ChannelI njector.java:501) [ProtocolLib.jar:?] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageD ecoder.java:249) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessage Decoder.java:149) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessage Decoder.java:163) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at com.comphenix.protocol.injector.netty.ChannelInjector$4.channelRead(C hannelInjector.java:240) [ProtocolLib.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessage Decoder.java:163) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.handler.timeout.ReadTimeoutHandler.channelRead(ReadTimeoutHa ndler.java:150) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChanne lPipeline.java:787) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(Abstra ctNioByteChannel.java:130) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.jav a:511) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEve ntLoop.java:468) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.ja va:382) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) [spigot. jar:git-Spigot-db6de12-18fbb24] at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThread EventExecutor.java:116) [spigot.jar:git-Spigot-db6de12-18fbb24] at java.lang.Thread.run(Unknown Source) [?:1.8.0_66] [22:50:28 ERROR]: Parameters: net.minecraft.server.v1_8_R3.PacketPlayInUseEntity@37c0b911[ a=386 action=INTERACT_AT c=(-0.4000000059604645, 1.1660780906677246, -0.006644312292337418) ]
[22:50:28 ERROR]: [NoCheatPlus] Unhandled exception occured in onPacketReceiving (PacketEvent) for NoCheatPlus java.lang.IndexOutOfBoundsException: Index: 1, Size: 1 at java.util.ArrayList.rangeCheck(Unknown Source) [?:1.8.0_66] at java.util.ArrayList.get(Unknown Source) [?:1.8.0_66] at com.comphenix.protocol.wrappers.EnumWrappers.getEnum(EnumWrappers.jav a:100) [ProtocolLib.jar:?] at com.comphenix.protocol.wrappers.EnumWrappers.initialize(EnumWrappers. java:76) [ProtocolLib.jar:?] at com.comphenix.protocol.wrappers.EnumWrappers.getEntityUseActionClass( EnumWrappers.java:129) [ProtocolLib.jar:?] at com.comphenix.protocol.events.PacketContainer.getEntityUseActions(Pac ketContainer.java:629) [ProtocolLib.jar:?] at fr.neatmonster.nocheatplus.checks.net.protocollib.UseEntityAdapter.on PacketReceiving(UseEntityAdapter.java:52) [NoCheatPlus.jar:?] at com.comphenix.protocol.injector.SortedPacketListenerList.invokeReceiv ingListener(SortedPacketListenerList.java:114) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.SortedPacketListenerList.invokePacket Recieving(SortedPacketListenerList.java:67) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.PacketFilterManager.handlePacket(Pack etFilterManager.java:636) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.PacketFilterManager.invokePacketRecie ving(PacketFilterManager.java:603) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.netty.NettyProtocolInjector.packetRec eived(NettyProtocolInjector.java:300) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.netty.NettyProtocolInjector.onPacketR eceiving(NettyProtocolInjector.java:266) [ProtocolLib.jar:?] at com.comphenix.protocol.injector.netty.ChannelInjector.decode(ChannelI njector.java:501) [ProtocolLib.jar:?] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageD ecoder.java:249) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessage Decoder.java:149) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessage Decoder.java:163) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at com.comphenix.protocol.injector.netty.ChannelInjector$4.channelRead(C hannelInjector.java:240) [ProtocolLib.jar:?] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessage Decoder.java:163) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.handler.timeout.ReadTimeoutHandler.channelRead(ReadTimeoutHa ndler.java:150) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(Abst ractChannelHandlerContext.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(Abstra ctChannelHandlerContext.java:319) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChanne lPipeline.java:787) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(Abstra ctNioByteChannel.java:130) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.jav a:511) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEve ntLoop.java:468) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.ja va:382) [spigot.jar:git-Spigot-db6de12-18fbb24] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) [spigot. jar:git-Spigot-db6de12-18fbb24] at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThread EventExecutor.java:116) [spigot.jar:git-Spigot-db6de12-18fbb24] at java.lang.Thread.run(Unknown Source) [?:1.8.0_66] [22:50:28 ERROR]: Parameters: net.minecraft.server.v1_8_R3.PacketPlayInUseEntity@7df951d5[ a=386 action=INTERACT c=<null> ]
[22:50:28 ERROR]: Could not pass event PlayerInteractEntityEvent to AdminD v1.0 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja va:310) [spigot.jar:git-Spigot-db6de12-18fbb24] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav a:62) [spigot.jar:git-Spigot-db6de12-18fbb24] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.j ava:502) [spigot.jar:git-Spigot-db6de12-18fbb24] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j ava:487) [spigot.jar:git-Spigot-db6de12-18fbb24] at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java :1315) [spigot.jar:git-Spigot-db6de12-18fbb24] at net.minecraft.server.v1_8_R3.PacketPlayInUseEntity.a(SourceFile:52) [ spigot.jar:git-Spigot-db6de12-18fbb24] at net.minecraft.server.v1_8_R3.PacketPlayInUseEntity.a(SourceFile:11) [ spigot.jar:git-Spigot-db6de12-18fbb24] at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:1 3) [spigot.jar:git-Spigot-db6de12-18fbb24] at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [ ?:1.8.0_66] at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_66] at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [spigot.jar :git-Spigot-db6de12-18fbb24] at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:7 15) [spigot.jar:git-Spigot-db6de12-18fbb24] at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:3 74) [spigot.jar:git-Spigot-db6de12-18fbb24] at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:6 54) [spigot.jar:git-Spigot-db6de12-18fbb24] at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java :557) [spigot.jar:git-Spigot-db6de12-18fbb24] at java.lang.Thread.run(Unknown Source) [?:1.8.0_66] Caused by: java.lang.ClassCastException: org.bukkit.craftbukkit.v1_8_R3.entity.C raftCreeper cannot be cast to org.bukkit.entity.Player at me.douglasamv.admin.Admin.InventorySee(Admin.java:38) [?:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [?:1.8.0 _66] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [?:1.8.0 _66] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [?:1 .8.0_66] at java.lang.reflect.Method.invoke(Unknown Source) [?:1.8.0_66] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja va:306) [spigot.jar:git-Spigot-db6de12-18fbb24] ... 15 more