Inactive [SEC] NoCheat v3.5.0 [CB 1.2.4 R1.0][ABANDONED]

Discussion in 'Inactive/Unsupported Plugins' started by Evenprime, Feb 15, 2011.

  1. Offline

    Evenprime

    Xp10d3, Dereku, MyPictures and 35 others like this.
  2. Offline

    Kane

    Evenprime I think it's nocheat not at my server right now but I got reports of issues jumping out the water onto lillypads and half blocks.
     
  3. Offline

    Evenprime

    I'll look into that. I know that jumoing on lillypads and halfblocks normally works fine, but apparently it does not if the water is only 1 block deep.
     
  4. Offline

    def1s

    Hello, could someone tell me if those players are using cheats? And how it works, when higher lvl more chance to be cheater??

    http://pastebin.com/GW62r1s3

    And what's the diference between Total violation level 54 and Total violation level so far 664 for example, those are lvl 54 and lvl 664 ?
     
  5. Offline

    Evenprime

    PLAYER1 most likely tried to use a "teleport" or fly hack.
    PLAYER2 maybe tried the same.
    PLAYER3 either has serious issues with lag or he tried to use a speedhack to be able to run faster than usual.
    For PLAYER4, PLAYER5 and PLAYER6 I can't give any info. Just because they failed a check once doesn't mean a lot.

    For the explaination of the messages:

    "violation level" is just a number that should express how badly people fail checks. E.g. they may have moved just a bit faster than expected or a lot faster than expected. Higher numbers really means "more likely to cheat". But you can only compare numbers for the same check, because they have different meanings for different checks.

    "moving.running.vertical. VL 20" for example is a rather low number. It means the player tried to move up vertically 0.2 blocks higher than NoCheat allowed. This may simply be a bug in NoCheat, he might've had bad luck or something else happened.
    "moving.running.vertical. VL 979" however is big number, meaning he tried to jump at least 9.79 blocks higher (at once, or over the course of many seperate jumps) than allowed. The detailed message even tells you that the player moved "0.00,11.46,0.00" distance, that means he tried to move more than 11 blocks up at once. That's far beyond anything that's possible without cheating and he most likely tried to "teleport" himself upwards over that distance.

    May I ask what is at 135.50,73.00,160.50 location of your world? For some reason Player1+2 failed the check at exactly that location, by not moving at all (so they technically hovered at that location). Maybe there is something that interferes with NoCheat?

    "Sent 109 more packets than expected. Total violation level 109" Means just that. A player sent more packets than usual. Normally a player sends ~20 packets per second, that player sent a lot more. This may mean that he cheats or that he has serious lag which causes his packets to arrive at the server in "bundles" instead of being evenly distributed over time.

    -----

    EDIT: Got a new version ready. Just doing some cleaning up and stuff to get everything working. You'll like this version, it has a lot of nice new features. :)
     
  6. Offline

    def1s

    12.02.05 14:57:43 [INFO] PLAYERXXX in world at 135.50,73.00,160.50 moving to 135.50,73.00,160.50 over distance 0.00,0.00,0.00 failed check moving.running.vertical. Total violation level so far 765

    That coords are from spawn, that would mean he's trying to cheat on spawn ?


    12.02.05 14:01:16 [INFO] PLAYERXXX in world at -360.60,28.69,-1225.30 moving to -360.60,40.15,-1225.30 over distance 0.00,11.46,0.00 failed check moving.running.vertical. Total violation level so far 979

    And that means He tryied to jump 9,79 bloks?? Thanks for yout help !
     
  7. Offline

    Evenprime

    NoCheat 3.1.0:

    http://dev.bukkit.org/server-mods/nocheat/pages/changelog-and-downloads/

    • Prevent exploitation of the missing cooperation of the moving.runfly and moving.morepackets checks
    • Support MonsterEffect.JUMP, at least rudimentary (Boost potions etc.)
    • moving.morepackets check should now no longer be crippled by low TPS
    • moving.morepackets check will now stop hacking players faster than before
    • Fix detection of water, should fix problems when jumping close to or out of water
    • added moving.nofall "aggressive" mode to detect and prevent additional forms of "nofall" hacks
    • the aggressive mode for the nofall check is toggleable in the config file

    Quite the list. So lets go through it step by step:

    Prevent exploitation of the missing cooperation of the moving.runfly and moving.morepackets checks

    I wonder why nobody noticed yet (probably because nobody actually reads NoCheat's source code), but there is (now was) a way to play these two checks against each other, resulting in the player being able to move faster than he should without really getting stopped. I won't give any further details for obvious reasons. ;)

    Support MonsterEffect.JUMP, at least rudimentary (Boost potions etc.)

    The game includes code to set the jump height of players by potion effect, but the potion itself doesn't exist. Some plugins started to create their own potions with that effect recently, so I at least try to not block that now.

    moving.morepackets check should now no longer be crippled by low TPS

    If your server had low TPS (ticks per second), that check didn't work at all. Now it should work even on servers that constantly have low TPS, because it now orientates itself on elapsed real life time instead of server ticks.

    moving.morepackets check will now stop hacking players faster than before

    That's a nice one. The old version worked by counting move packets over (roughly) a second and then deciding if there were to many. The new version will stop the player immediatly when he goes above the packet limit, even if the second hasn't passed yet.

    Fix detection of water, should fix problems when jumping close to or out of water

    That one was hard to find. I tested water a lot, but only "deep" water. It seems that whenever you are next to water that's very shallow, jumping would not work as intended. This is fixed now, along with probably some other forms of water related problems.

    added moving.nofall "aggressive" mode to detect and prevent additional forms of "nofall" hacks

    People complained about that a lot, as a very popular hack client added a "nofall" hack that didn't get detected by NoCheat. Now NoCheat will prevent this "bypass" from working. This has a weird and funny consequence: Every player with that hack will take fall damage over time, even if he isn't fallling from any great heights, because the hack causes the server to accumulate fall distances of the player over time. That means e.g. jumping three times normally with that hack looks to the server like one big jump. NoCheat will deal fall damage according to that fall height when the server doesn't do it itself.

    the aggressive mode for the nofall check is toggleable in the config file

    If you encounter any problems with the new behaviour, you can disable it in the config file.
     
    housemaster likes this.
  8. Offline

    Kainzo

    <3 Jump boosts
     
  9. Offline

    Evenprime

    housemaster and Jacek like this.
  10. Offline

    def1s

    I have a little issue. When someone jump to the_end portal, sometime they got kicked for speed hack. This happened to me when I was in creative few times (without flying, just in creative) . When they log in again they fall to de world and they die loosing all things. Is that a bug?
     
  11. Offline

    Evenprime

    It's most likely a bug in Bukkit. Please report that on the bug tracker (and include that you were in "creative mode"). I'd guess that Bukkit forgets to throw a "player portal event" or something like that when players in creative mode try to enter "the end".
     
  12. Offline

    ZNickq

    Wow, awesome work Evenprime! This plugin sure looks like it's giving hackers problems! ^^
     
  13. Offline

    ShepherdBook

    Hey - quick question on the permissions changes. Before the change to the super-perms plugin, we had the /nocheat command added to everyone on the server to help with policing the userabase. It seems, though, this is unadvised (now) because they would need to have access to the ReloadConfiguration commands which could cause nefarious users to churn disk io by nonstop reloading the configuration (and anything else that may result).

    Do you have any suggestions / advice on how to grant access to the "/nocheat playerinfo" command to our players without any unintended consequences?
     
  14. Offline

    Evenprime

    I made that change to allow Bukkit (and other plugins) to handle situations where players don't have permission to use a "/nocheat " command. E.g. some servers may want to hide that the "/nocheat" command exists at all, which is only possible if I do it that way.

    I didn't think about servers intentionally giving people the right to do the "playerinfo" command when making that change. The "/nocheat reload" is very cheap, it's pretty much only reading/writing the text file(s) and copying the values, so it should be pretty hard to lag a server by doing that.

    But I can add an additional permission node "nocheat.admin.reload" in the next version that'll be needed in addition to "nocheat.admin.commands" if a player wants to run "/nocheat reload". Would that be an acceptable solution to your problem?

    Is it a good or bad thing that I was able to trace down these four seemingly unrelated hacks to be caused by the same, completely unpatchable bug in Minecraft?

    - Godmode
    - Healing
    - InstantBow
    - InstantEating

    Well, at least I can pretty much copy + paste the checks for these.

    Take a deep breath of history, one year ago it began:

    http://www.minecraftforum.net/topic/157565-releasemod15-the-god-mod-admin-powers-on-any-server/

    (too bad I can't login to that old account of me anymore, I derped it when trying to create a curse account for dev.bukkit.org)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 18, 2016
  15. Offline

    ShepherdBook

    Hi Evenprime - yes, I think that if we had a way where users could just run the /nocheat commands (except /nocheat reload) this would be appropriate. We would have a problem, of course, if the commands exposed true administration level settings but that does not seem to be the case.

    Thank you very much.
     
  16. Offline

    number1_Master

    hey, my server (when lagging) displays the nocheat message saying its lagging
    well, it ends up spamming the console every few seconds with it saying some checks will work, then instantly after lag has stopped
    is there a way to turn this off, or at least in future versions slow it down if its between x seconds?
     
  17. Offline

    Evenprime

    I'll add that for the next version then.

    Yes, update to at least NoCheat 3.0.2 (newest version is 3.1.1) , you can get them here: http://dev.bukkit.org/server-mods/nocheat/pages/changelog-and-downloads/ . If you've done that and still get the messages, go into your config.yml and set the option "logging: debugmessages: false" (should be close to the top of the config file).
     
    nunber1_Master likes this.
  18. Offline

    Evenprime

    NoCheat 3.2.0:

    • to use the "/nocheat reload" command, you now need "nocheat.admin.commands" and the new node "nocheat.admin.reload"
    • new check "inventory.instantbow": identify players that are charging their bows too fast
    • new check "inventory.instanteat": identify players eating their food too fast
    • new checks may cause problems in case of lag

    EDIT start

    Why the new permission node "nocheat.admin.reload"? Apparently some servers want to give all their players access to the NoCheat commands "/nocheat permlist" and "/nocheat playerinfo", such that they can "police" the server themselves and check NoCheat info of other players. In that case, they don't want to give their players access to "/nocheat reload", because that causes some disk IO (reading and writing the config files). Now players that only have "nocheat.admin.commands" and try to use "/nocheat reload" get told that they lack permission for that specific command.

    EDIT end

    Instantbow check: Players can charge and fire their bows instantly, shooting multiple extremely deadly arrows within a second. This check will prevent players from firing their bows early and/or with more force than they could have built up realistically in the elapsed time between beginning to pull the string and releasing it.

    Instanteat check: Players can eat food pretty much instantly instead of waiting the almost 2 seconds that it normally takes to eat. This check will cancel any food level gain that comes from eating food too fast. (Sadly it's not easily possible to just prevent people from eating the food, which means that if they get stopped by NoCheat, they still lose the food item).

    The instantbow check should work fine, the instanteat check may have some problems, as I didn't test it with all types of food etc. It also does NOT prevent potion abuse, because potions are no food.

    As usual, get it here: http://dev.bukkit.org/server-mods/nocheat/pages/changelog-and-downloads/

    NoCheat 3.2.1:

    * fix config file entries. "CHECKinventory" changed to the correct "check.inventory"

    A little derp happened there. Nothing serious, just config entries being ordered in the wrong place. After updating to this version, you can delete the "CHECKinventory" section of your config file, if you find one.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 18, 2016
  19. Offline

    Evenprime

    NoCheat 3.2.2:

    • fixed flight/wallclimbing detection because it got more permissive than intended in one of the earlier updates
    • fixed inventory.instanteat check, to really do the check (everytime)
    • modified statistics API and command behaviour. If the player is known to NoCheat, data for all checks (not only those that have been failed) will be given.

    When fixing the problems with jumping in/over water I made the moving check too loose, resulting in some situations where people could climb walls and similar things that wasn't possible before. This version fixes that mistake.

    The new inventory.instanteat check was not correctly executed every time when food was eaten. Now it should.

    And finally the API of NoCheat for retrieving player data should now (if NoCheat knows the player) return all statistics for all checks, even if the checks aren't activated for that player or haven't been run yet. If the player is not known to NoCheat, the API will only return the version number of NoCheat, as before.

    That's it. Because it fixes a bug with the flight detection/moving check, I suggest updating if you can.

    http://dev.bukkit.org/server-mods/nocheat/pages/changelog-and-downloads/
     
  20. Offline

    illusive101

    Apologies if this isn't the place to post it.

    I was just curious if anyone had a good way to combat reach hacking? I run a PvP server and i seems common that people will join with reach hacks and just run out of spawn to grief players.

    Thanks!
     
  21. Offline

    Evenprime

    This plugin (NoCheat) can at least reduce the effectiveness of that kind of reach hack and some other PvP and PvE related cheats, if that's the answer that you are looking for.
     
  22. Offline

    Epics

    Heyo, since I updated to the latest build my server has been crashing every two hours or so, "connection reset"

    Found the error.
    If you have an error value in the config in 3.2.2, it crashes the server endlessly. No warnings in console like previous versions.
    I'm trying to get rid of all the logging of the unimportant configs so our staff isn't spammed, but it's broken I guess. Or I don't know how to use the parameter correctly.
     
  23. Offline

    LinkterSHD

    This plugin can be annoying when people with bad internet connection try and move and it comes up on the screen
     
  24. Offline

    Epics

    Yeah, my above post,
    There's a way to disable the logging of it, but I tried to and it borked the entire plugin
     
  25. Offline

    LinkterSHD

    WHY DID U BAN ME FROM UR SERVER
     
  26. Offline

    Evenprime

    This is no chatroom. If you have to tell Epics something, send him a PM.

    Can you give me one of the error messages? It'd really help to track down what part of the config may be the cause of the problem.
     
  27. Offline

    LinkterSHD

    Ok sorry. Didn't mean to chat off topic
     
  28. Offline

    Epics

    Well, what I wanted to do was remove some of the logs so that they didn't get spammed.
    I changed...
    Code:
      blockbreak:
        reach:
          active: true
          actions: cancel vl>5 log:bbreach:0:2:if cancel
    to...
    Code:
      blockbreak:
        reach:
          active: true
          actions: cancel vl>5 bbreach:0:2:if cancel
    And numerous things like this. Of course, console yells at me...
    Code:
    2012-02-10 16:27:07 [INFO] NoCheat doesn't understand action 'bbreach:0:2:if' at all
    2012-02-10 16:27:07 [INFO] NoCheat doesn't understand action 'bbdirection:0:5:if' at all
    2012-02-10 16:27:07 [INFO] NoCheat doesn't understand action 'bbnoswing:3:2:if' at all
    2012-02-10 16:27:16 [INFO] NoCheat doesn't understand action 'bpreach:0:2:if' at all
    2012-02-10 16:27:16 [INFO] NoCheat doesn't understand action 'bpdirection:0:3:if' at all
    2012-02-10 16:28:50 [INFO] NoCheat doesn't understand action 'fnoswing:0:5:cif' at all
    2012-02-10 16:28:50 [INFO] NoCheat doesn't understand action 'freach:2:5:if' at all
    But hey, I removed the logs in-game, so I felt accomplished! But now, it just crashes my server endlessly. xD
    Could you perhaps show me the proper syntax to remove the in-game logging?
     
  29. Offline

    Evenprime

    Epics : You have multiple choices on what to do:

    1. Remove the "i" at the end of the "log:..." commands. That "i" stands for "log to ingame chat". So if you e.g. don't want to see the log message "log:bbnoswing:3:2:if" ingame, you'd turn it into "log:bbnoswing:3:2:f". The "f" stands for logging to file, in this case NoCheats logfile (default "nocheat.log").

    2. Remove the full "log:bbnoswing:3:2:if" where you don't want to get log messages. Although I recommend instead to just change/remove the letters at the end as described in 1) , because that way you can easily start logging again if you need to.

    3. Deactivate logging to ingame chat completely, by setting "logging: ingamechat: false" in the config.yml of NoCheat

    You can find that info in the "Instructions.txt" file too.
     
  30. Offline

    Epics

    Thanks. I must have missed that :p
     
  31. Offline

    Evenprime

    NoCheat v. 3.3.0:

    • added an additional safeguard to interworld teleports
    • log messages from "chat.spam" are now cleaned of color codes of players
    • spellchecked and fixed a lot of errors in the Instructions.txt file
    • fixed bug in instantbow/instanteat checks that prevented them from working correctly
    • added check "fight.godmode" which should prevent players from exploiting a design flaw that makes them invulnerable to attacks
    • added "hidden" options to set walking/sprinting/swimming/sneaking speed limits. These don't show up in the automatically generated config, because almost nobody should need to change these. But you can add these options yourself to plugin.yml. See "Instructions.txt" for details.

    Ok, here's another big update. Let's go through the list:

    added an additional safeguard to interworld teleports

    Some people seem to have problems with teleporting with portals between worlds. I've added an additional safeguard now by listening to PlayerChangedWorldEvents too and in case these occur force NoCheat to forget about all locations it has stored for that player, therefore making it impossible to pull back a player to a previous location.

    log messages from "chat.spam" are now cleaned of color codes of players

    If players used the "magic" color in their spam messages, it would break ingame the log warnings about spam and make them unreadable. This should fix that.

    fixed bug in instantbow/instanteat checks that prevented them from working correctly

    A major bug that rendered these almost useless has been found and fixed. They now correctly identify e.g. instantbow of the VCAHax client and similar and prevent firing of arrows at insane frequency and speed (and eating food at insane speed).

    added check "fight.godmode" which should prevent players from exploiting a design flaw that makes them invulnerable to attacks

    Some might remember this from way back, before Minecraft 1.0. The "bug" that allows to pull off this "godmode" is still here and will probably never be patched, because it is really a huge design flaw that a lot of features of Minecraft rely on. Fixing it would mean rewriting at least 20% of the whole game. So this check tries to identify players exploiting the bug and makes them vulnerable to attacks. It is a lot more stable then the variant that I used back in MC Beta 1.8 (good), but isn't as complete (bad). It will only work if the damage that should be dealt to the player comes from enemies or arrows or other things that actively (try to) damage the player, not environmental damage like cactii.

    added "hidden" options to set walking/sprinting/swimming/sneaking speed limits

    Apparently some people need to set these values. But I don't want to clutter the config file (again) with stuff that less than 1% of the servers ever need. So I've added "hidden" options. You just have to add the options to your config.yml and they will work as all the other options. But they won't appear on their own. Read "Instructions.txt" to find out the exact name and location on where to put them ("checks: moving: runfly: walkspeed" etc.)

    Download as usual at: http://dev.bukkit.org/server-mods/nocheat/pages/changelog-and-downloads/

    I'm offline for the next ~12 hours, so don't expect any support during that time. If you encounter problems with the new version, just leave a bug report and use the old version until I can fix it.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 18, 2016
    housemaster likes this.

Share This Page