Some "lecture" about cheats

Discussion in 'Spigot Discussion' started by KonTux, Jan 19, 2020.

  1. Hey Spigotians,
    I recently became more and more interested in the topic cheats(meaning avoiding them and not cheating myself) and I would like to know more about how they work. So I googled for quite a while but didn't find anything helpful.
    Can anyone recommend some "lecture" about anything related to that topic?
    Thanks in advance,
    Tux
     
  2. Can you define 'cheats' a little more ?

    Cheats come in many forms, be it, abusing game mechanics and being called a 'cheat' for exploiting.
    Using external cheats.
    Forcefully cheating the game (like how you could use a piston and tnt for xray etc.)

    Just a little unsure, and would like to know a tad more on your quest for knowledge.
     
    • Like Like x 1
  3. Hi, this is a really complex issue. I've been in minecraft communities for years. I've also organized tournaments and managed communities of more than 2000 players.
    Cheats are the canc3r of any video game
    really something as beautiful and peaceful as a cube game like minecraft can become something really horrible and toxic
    DDoS attacks
    server hacking expose or denigrate other people
    What is the exact point you want to reach?
    How to minimize cheats on your server?
    first of all you need staff with experience and knowledge
    This is really difficult since most are children
    I recommend you to prevent the use of VPN
    at the moment there is no plugin in spigot anti VPN that works correctly for that reason use a GEOIP blacklist
    I also recommend that you prevent the use of forge on your server since many ghost clients need forge to be executed
    I can recommend some anticheats what you can do to get the most out of these anticheats is to combine them
    It can be complicated if you don't have the experience and knowledge
    Here I leave you some very acceptable anticheats

    https://www.spigotmc.org/resources/aac-advanced-anti-cheat-hack-kill-aura-blocker.6442/
    https://www.spigotmc.org/resources/...heat-detection-1-8-1-12-1-13-1-14-1-15.64635/

    a good anti autoclicker
    https://www.spigotmc.org/resources/autokiller-advanced-auto-clicker-detection.40520/
    you can also talk to jonhan2000 he has been working on his anticheat for some time is really good
    https://www.youtube.com/user/jonhanpvp/videos
    https://discordapp.com/invite/HhfYb9G

    I hope this information is helpful
     
    • Informative Informative x 3
    • Funny Funny x 1
  4. You are right. "Cheats" mean a lot in a game like Minecraft and I should have been a little more specific. As I mainly play PvP, I'm especially interested in combat hacks. In my opinion they're the most annoying and the pvp community is probably affected the most by cheaters who don't get banned (and are toxic but that's another topic). So yeah, I would like to know more about how hacked clients are able to influence how their hits are registered differently or how they can influence their own movement client-side.
    I have not been using the bukkit api for such a long time and don't know all its classes by heart(yet) and in my opinion the best way to learn is just reading and trying things out. I highly doupt there are actual books on that topic, but there must be a source all the devs get their information from, right?
    Thanks for the reply : )
     
  5. When it comes to developing tools to block these cheats, its sorta like reverse engineering.

    An example:
    Some clients will have something like a No-fall, right ? So for the server to not detect it, or a plugin to miss it, the cheat client will set that users status to be always on the ground. So even if the player jumps, the client informs the server, the player is always on the ground. Thus, no fall damage.

    To fix this sorta thing, you need to run various checks for what the player is doing, how many events are registered at one time (like for a kill aura or something) and setup parameters for detecting this.

    Its not quite as simple as I've explained, but generally speaking, I hope this helps with a minor understanding.
     
    • Useful Useful x 2
    • Informative Informative x 1
  6. Thank you, that is indeed helpful!
    It's really a pity that Minecraft has that big cheating issues. It's like a race between client and anticheat devs. I have actually seen a few servers with quite good anti cheats(like minemen.club). The fact that having a more or less clean server requires a good and experienced staff team is completely true. A human's common sense is always(ok, a few Exceptions exist) more reliable than java code and that's why we will probably need to use our own brains to avoid cheaters instead of letting some java code do that. Anti VPNs should help as well because barely someone plays with his original ip to cheat blatantly. Well, we can just do what we can...
     
  7. Yeah that makes sense. That could also include having a look at some client's source code(which is probably not what their devs want us to do : /).
    Makes sense as well ;)
    Thanks for the idea!
     
    • Like Like x 1
  8. Hi, I don't have knowledge or basic programming notions
    but you can talk to jonhan
    https://discordapp.com/invite/HhfYb9G
    his anticheat is really good can detect everything
     
  9. Here I leave an anti reach which with a good configuration can give good results
    https://www.spigotmc.org/resources/‚óŹ-antireach-advanced-antireach-solution.58495/
    minemen has a good anticheat but everything is possible bypassing with time
     
  10. Unfortunately, some servers don't know how to configure anticheat or don't have one at all. As a result, it usually means more either more cheaters or more false bans. They get punished unfairly. Just like anticheats, some servers don't use an anti vpn system. It's definitely not 100% accurate, but minemen seems to know what they're doing when it comes to detecting people who cheat. Another example, Lunar Client. If someone is caught using any sort of modification that gives a advantage they usually are detected and banned. The issue with primarily depending on staff members instead of a anticheat is the staff team can't be on 24/7 to detect cheaters. This is why Anticheats were developed.
     
  11. Cheats are game modifications that are used to give player an unfair advantage over other players. Those cheats function my editing the game's code so they gain for instance a greater movement speed, or a greater reach or just even automatically attacking players. But, usually, most cheats can be detected using an AntiCheat plugin.

    AntiCheats are server-sided plugins that check for suspicious data sent by players from the client to the server and analyzing it so they detect those game modifications. AntiCheats check for numerous stuff, and it varies between projects. It can be from single angle tracking to packet-order checks and sometimes even rewriting the actual game's code to detect modifications the most accurate way possible. Most cheats have detectable mistakes

    How to fight against this? You can download/buy an AntiCheat plugin from this, or another website. But keep in mind that no AntiCheat will be able to remove every cheat. There will be bypasses and false positives.
     
  12. You can't detect everything.
     
    • Agree Agree x 2
  13. Cheats are so easy to make for this game because of its terrible network design. Clients have a lot more authority in the protocol than they should have.

    For instance, I could just tell the server that I'm at coordinates (0, 100 0), and then tell the server that I'm at coordinates (9999, 99999, 9999) any time I want, and if your server can't properly handle that, then I could easily abuse that to anger other players and possibly take down your server. Mojang could fix this by making player movement calculations done server-side, much like how every other mob in the game is handled server-side. It really isn't that hard.

    Another instance, I could just tell the server that I hit another player, even though we're 1000 blocks away. Most servers will completely ignore this since I believe NMS has a default reach limit of 6 blocks, feet to feet. This can easily be fixed by moving the hit detection code to the server.

    Anticheat plugins pretty much check for this stupid stuff and possibly cancel illegitimate actions. However, a permanent solution would be to rewrite the protocol so that the server has total authority over player actions.
     
    • Like Like x 1
    • Agree Agree x 1