AntiCheat
AntiCheat development and support was discontinued September 7th, 2014. The previous page is archived here for reference purposes. Official downloads are still available for use as is the project source code. You must use these at your own risk as I can no longer vouch for their rate of success.
There's a "Reloaded" version of this project which has been updated for the newer versions and is under current development. You should give it a look if you're interested in continuing to use AntiCheat: http://dev.bukkit.org/bukkit-plugins/anticheatreloaded/
Thanks to everyone who has supported the AntiCheat project. Recently I have resigned my position as BukkitDev Team Lead and have decided to move on from Bukkit development. Unfortunately, this means that I will no longer be actively working on the AntiCheat source code, and as such I have decided to close the project.
Many thanks to JetBrains who have provided their IntelliJ IDE for development. Thanks to the many contributors to this project who's code helped do good in the community. Thanks to those of you who have provided your support in many different ways to the project: you know who you are, you made my life a lot better and I can't thank you enough for that. I am happy to say that this project has improved people's lives, and I couldn't have ever hoped to say more.
-
View User Profile
-
Send Message
Posted Feb 23, 2013My players are getting randomly kicked for no-swing when they are not hacking, is there any way to fix this?
-
View User Profile
-
Send Message
Posted Feb 23, 2013@gravity_low Thanks for spending the time with me, appreciate it. I talked with my friend a bit and, besides some crazy ideas, the most interesting idea he had was to correlate latency with packate frequency. I guess just like most other detection methods it's all about the threshold.. and ping is just so various.
I will be switching over to AntiCheat for my server.. once it passes the test I'll send something your way!
-
View User Profile
-
Send Message
Posted Feb 23, 2013@deleted_9426768
Well, it's a good thing I'm not a criminal who has you in a strangle hold threatening to snap your neck if you don't use it. Don't use it if you don't want to use it, I don't understand what's so hard about that concept. If you want me to actually do something to fix it, please file bugs like a sane human being. Thank you.
@HitmanPL47
Basically we listen for PlayerMoveEvent and check the distance between those to determine if a speed hack is occurring. The signature from something like that would be that the difference between those is huge. For instance, packet 1 might contain a location of X: 30 and packet 2 has a location with X: 53. That's a delta of 23 blocks in a solitary movement, which means they're either speedhacking or trying to teleport or yada yada.
The difference with timer is that EVERYTHING client-side is increased, including the rate at which packets are sent. Instead of making the client go super fast, it just sends normal movement packets but at an increased rate. This means it's not possible to compare the movement values or even really trust anything from player move events because the rate at which they're being sent is way too high, but the values will seem normal. This means I have to find another way to do this which entails counting how many times a player has actually said they're moving in the last X seconds; if that's higher than a rate I've measured and considered too high, we consider the check failed. The problem with this is the internet. The way packets work means they may not all arrive exactly when you expect them to because they'll take whatever route through the internet they all consider to be the fastest, which means the server could get 50 of a player's movement packets from the last minute or whatever because some router along the way was clogged. This happens a bit too often (albeit at a much less lower severity) for me to consider it functional.
-
View User Profile
-
Send Message
Posted Feb 23, 2013@gravity_low
Perfect! I've noticed NCP doesn't really block timer, either - how is it that a client side speed change can't be forced/ignored by the server!? (Like even if the player does eat 3 pie's in 1 second, shouldn't the server just ignore it?)
Anywho.. yours was able to kick me after a while - I got 2 unrelated errors so I'll post what I have. I know it's probably not very useful but perhaps let me know when you are ready to test and point me in the type of tests you are looking for.
I'm going to PM you the logs.. I'm paranoid.
-
View User Profile
-
Send Message
Posted Feb 23, 2013anticheat is TERRIBLE does not help at ALL! It makes everything slower, and when you run and jump it thinks your hacking and it makes you fall into the ground! This plugin is a NOOOOOO and must be avoided, yes its helpful for anti hacking, but it DOES NOT HELP FOR PEOPLE WHO DONT HACK!!! The vidieo they have is terrible, because of the vidieo I rather NOOOOOOT HAVE ANTI CHEAT!
-
View User Profile
-
Send Message
Posted Feb 23, 2013@HitmanPL47
Haha right on. You need JUnit for that one, I'm wondering why you would need to bother though really, a bit strange that maven wouldn't automatically download those for you. I any case, if JUnit is the only thing causing you issues, I would just actually delete the "test" folder in src/main/net/h31ix/AntiCheat and just totally remove that dependency from the Pom.xml file in the base dir. You shouldn't need it; tests are really only to make sure I've not missed updating something when a new mc version comes out.
-
View User Profile
-
Send Message
Posted Feb 23, 2013@gravity_low
Awesome thanks for making the revision I'll base my tests off of that one. I've almost been able to compile but am missing the imports "org.junit.Assert/Test" - what library do I need to add? (Only 6 errors before compiling then should be good to go)
Edit: I'm not a complete noob I have code hacking experience. (Keep typing shit until it works)
-
View User Profile
-
Send Message
Posted Feb 22, 2013@HitmanPL47
All I can say is it has false-positives and I haven't had time to work them out. To compile it with the check, you'd pull the source from github (it's a Maven project, so the dependencies should handle themselves) and uncomment this code. (remove the /* and */)
EDIT: Just made a quick commit so people could use that specific revision to compile a build with timer. The commit is ea606c5dc8... - you should be able to pull it using
(which creates an AntiCheat directory with the code) And then compile that revision. (assuming you've now changed directory to the one you just cloned)
If this is a bit over your head, I'd just wait until I can build something with this change in it and be open to more testing of the check - still, good to know how to compile stuff on your own.
-
View User Profile
-
Send Message
Posted Feb 22, 2013@gravity_low
How experimental? I'd gladly compile and check it out and give feedback - or is it at a very raw stage right now?
Do I just need to add bukkit dependency for compiling?
-
View User Profile
-
Send Message
Posted Feb 22, 2013@HitmanPL47
There's built in code to protect for it, but it's not enabled by default; to turn it on you'd have to compile the program yourself with that check enabled (it's experimental). There's already a ticket open asking for this, and I'm dedicating some spare time soon to getting it in working order.
-
View User Profile
-
Send Message
Posted Feb 21, 2013@gravity_low
Ah yes, sorry my mistake. That's the one I'm referring too, yep. What do you recommend?
-
View User Profile
-
Send Message
Posted Feb 21, 2013Im using your dev-built and I dont have dissconnect for spam problem. I have other errors but i think is normally in dev-built
Only works for a bit part of hacks but is good for me for the next days.
I will wait for your next release :)
-
View User Profile
-
Send Message
Posted Feb 21, 2013@Dippoakabob
Not if you use the API. Please don't advertise your server on my page.
-
View User Profile
-
Send Message
Posted Feb 21, 2013@HitmanPL47
Are you talking timer?
-
View User Profile
-
Send Message
Posted Feb 21, 2013@xICaerusIx
That's a vanilla minecraft spam disconnection, not from me.
-
View User Profile
-
Send Message
Posted Feb 21, 2013Players keep getting kicked for "disconnected for spam", Only happens when Anticheat is in, here is the chat portion of my config file, Thanks!
Chat:
-
View User Profile
-
Send Message
Posted Feb 21, 2013@pcatack
Unfortunately my program hasn't had mind reading features built into it yet. Aside from water walking, all of that is entirely client sided and can't be blocked by any system implemented on the server.
-
View User Profile
-
Send Message
Posted Feb 21, 2013xray, freecam, waterwalking, cavefinder, chestfinder, wallhack is working with nodus in 1.4.7
-
View User Profile
-
Send Message
Posted Feb 20, 2013Hi I just recently decided to try and make the switch from NCP after getting tired of message spam and what not. So far our testing is going very well, the plugin is blocking a lot of the hacks and in a very non-intrusive way, good work!
I was wondering about the speed blocker though? With the nodus we used it didn't seem to be very effective. It did detect it but we were able to speed around for a LONG time including eat food at a much faster rate. (For PvP food speed is important and does not seem to be detected)
Let me know, thank you!
Edit: With more testing - I wasn't cheating yet it was rubber banding me and warning me of cheating, yet the person using notice was moving much more freely and it took at least 10-15x longer for it to warn.
-
View User Profile
-
Send Message
Posted Feb 20, 2013My players are disconnected for spam. Help please