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

    Evenprime

    "moved wrongly" messages are genuine Minecraft error messages (you'll even get them with the original Minecraft server). They happen in various situations, but most times when a player literally "walks" into a wall or falls into "the void" of yet unloaded chunks.

    More precisely they are produced if the player location after a move event doesn't match the "to" location of that event. You probably just have to cancel the move event with event.setCancelled(true) and setting the "to" location of the move event to the same coordinates you used for the teleporting, like this:

    Code:
    public void onPlayerMove(PlayerMoveEvent event) {
      ...
      event.getPlayer().teleportTo(location);
      event.setTo(location);
      event.setCancelled(true);
      ...
    }
    
    That's what most plugins that teleport players do.
     
  3. Offline

    blackvoid

    Oh thanks thought it was this plugin cause it worked on my local server without this mod.
    Thanks for the help
     
  4. Offline

    Gratlofatic

    Is there a way to JUST allow flying? I have nocheat.moving in my perms file, but they can still go fast. Any suggestions?
     
  5. Offline

    Evenprime

    You want them to be able to fly, but only at walking speed? Sorry, these checks are currently only done in combination. But I can seperate them and give a nocheat.flying permission in some future version. Shouldn't be difficult.

    Version 0.7.7:

    - RB #600 compatible: Works only with newer bukkit versions
    - Implemented workaround for new PLAYER_MOVE behaviour (have a look at http://redmine.bukkit.org/issues/604) for details about why this was necessary
    - Respect player velocity. Who would've thought, I actually sneaked a new and long-time-requested feature into this version. This means that getting hit by enemies, explosions and getting moved by other plugins (e.g. Vampire, Superjump) should no longer cause false positives
    - Tightened limits and more precise checks for horizontal movement: Now that velocity is respected, I was able to adjust these limits. This will probably reduce the maximum movement speed of people who use a fly mod to move faster on ground
    - Catch errors caused by Permissions and give some additional information about what may have caused the error: Recently a lot of people got problems in combination with Permissions. I try to help with that (somehow) by giving a bit of additional info about what caused the problem.
     
  6. Offline

    Kane

    @Evenprime
    Thanks for the update. Might want to call it 602 since that's the latest some might get confused.

    Ever thought of expanding your plugin? Making new modules and such? I don't know how well the borderguardlite for example runs. I have bad feelings about it and have heard bad things.

    You really shown great dedication and I would use you for a protection suite instantly if you ever thought of doing it.

    Thanks,
    Kane
     
  7. Offline

    Evenprime

    Updated thread title to 602. Forgotten inheritance... seems like I'm not the only one to make last minute mistakes :)

    You mean writing something like borderguardlite myself? I'd have to think about that. What does Borderguardlite do anyway besides just creating a rectangle/circle per world that nobody should be allowed to leave?
     
  8. Offline

    Kane

    Yeah pretty much. Idk just other admins told me it causes them lots of lag. I'm not risking turning it off haha. I wish it had Borderlands features.. You could do multi borders from spawn.

    50 out no pvp,no spawns, no building 100 out spawns and pvp, no build and then like 150 our build pvp spawns. Kind of create really simple and really good layers out from spawn. then your highest one would be the max size like 8000 blocks lol.
     
  9. Offline

    Satros

    I was thinking, if you we're to add xray traps you wouldn't really need to know who was near a planted trap chest or diamonds just who access the chest/breaks the blocks. Not sure if you would need persistence for that.

    Example command would be something like
    /xraytrap <blocktype> <radius>

    so /xraytrap diamond 5
    would log all the breaks of 56 (diamond ore) in a 5 block radius of where the admin was when they set the trap.
    would also work with chest access.

    Just a thought
     
  10. Offline

    Validatorian

    I'm getting the following error in console after starting my server after installing this plugin:
    Code:
    23:23:58 [SEVERE] org/bukkit/event/player/PlayerTeleportEvent loading NoCheatPlugin v0.7.7 (Is it up to date?)
    java.lang.NoClassDefFoundError: org/bukkit/event/player/PlayerTeleportEvent
            at cc.co.evenprime.bukkit.nocheat.NoCheatPlugin.onEnable(NoCheatPlugin.java:154)
            at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:118)
            at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:451)
            at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:217)
            at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:92)
            at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:70)
            at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:204)
            at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:191)
            at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:131)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:246)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    Caused by: java.lang.ClassNotFoundException: org.bukkit.event.player.PlayerTeleportEvent
            at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
            at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:30)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
            ... 11 more
    
     
  11. Offline

    Evenprime

    You have to either use a newer CraftBukkit version (currently recommended build is #602) or a older version of the plugin (0.7.6 or older).
     
  12. Offline

    anonymous

    Request: logging how often people mine certain resources. Might help to detect people using xray mods.
     
  13. Offline

    Kartus

    i need help to detect false and positive alerts: is this a move-cheater?
    Code:
    2011-03-31 14:59:50 [SEVERE] NC: Moving violation: reaxviro from world (29.69022, 68.00000, 12.09300) to world (30.57500, 98.29392, 12.30752)
    2011-03-31 14:59:55 [SEVERE] NC: Moving summary of last ~5 seconds: reaxviro total Violations: (0,0,1)
     
  14. Offline

    Evenprime

    Unless there is something special at the coordinates 29,12 and/or 30,12 that could cause my plugin to get problems by causing a player to move/be moved up that far (e.g. another plugin doing business there like "borderguard lite") I'd say its a positive alert. Also I haven't tested yet if vehicles cause problems in combination with NocCheat with the new way of how Move events are handled in bukkit in #602 (will do that later today just to be sure, but the lack of people complaining about it seems to be a good sign).

    Just a wild guess: is there a big wall at 30,12? If so, then this could be somebody using a "outofbody" (which is similar to noclip) hack to fly up to the top of the wall and then trying to manifest himself up there.

    While noclip hacks simply ignore the server when it tells the client "you can't move there, that's a wall!", outofbody does all movement clientside - the server will see the player as just standing there doing nothing - until the player "manifests" himself wherever his ghost just went. This results in a giant move.
     
  15. Offline

    Kartus

  16. Offline

    Evenprime

    I did fix a problem with water ladders in NC 0.7.6, but that fixed a different kind of water ladders (those without any real ladders in between and facing west) and doesn't explain why there has been not a single move event from that player between 29, 68, 12 and 30, 98, 12. If it were the problem fixed in 0.7.6 he wouldn't have been able to go up that far in the first place and the "from" location would be somewhere on the path up, not on solid ground at the bottom of the ladder.

    It's of course ultimately your decision what happened there, but I'd still say this is a positive alert.

    @ all :

    Looks like a new Minecraft version was released. I don't know if anything big changes concerning moving/jumping or other stuff that would require me to adapt the checks in my plugin (e.g. new blocks/vehicles) to the new situation. So you may want to not trust my plugin 100% even if it runs with a 1.4 compatible bukkit version until I can confirm nothing like that happened in the upgrade from MC 1.3 -> MC 1.4

    also: http://forums.bukkit.org/threads/oh-no-a-minecraft-update-has-broken-bukkit-what-do-i-do.10662/
     
  17. Offline

    Kartus

    thanks for your answer. what mod/cheat could he can used to make this alert? flymod (zombes) or something other? what mod can make this clientside "serverunreal" ghost you talked about?
     
  18. Offline

    Kane

    anyone seen any real issues yet with 1.4 :)?
     
  19. Offline

    Evenprime

    zombes mod isn't capable of doing that (although it would probably only take a few minutes to make the necessary code changes, its really not difficult).

    clownfish had posted a video showcasing various hacks in one package. One of them (I believe) would be what I tried to describe. It was a combination of flying and noclip which enabled him to bypass some area protection plugin that would've otherwise prevented him from entering the location he went to. Too bad the video is no longer online.


    http://forums.bukkit.org/threads/se...flaws-bugs-in-mc-602.4523/page-10#post-145366

    I have :)

    Actually, my plugin seems to still do well. Only thing I noticed so far is that explosions cause violation messages (again) and plugins that would shoot a player around like Superjump no longer work. Both is the result of a bug in bukkit that gets fixed in CB #618 .

    So it is pretty safe to use NoCheatPlugin 0.7.7 with 602, 612, and now 617.
     
    Kane likes this.
  20. Offline

    taylorP

    Hello me and my friend are admins on our server and were wondering if there is a way to disable flying for every one but us thanks :)
     
  21. Offline

    Nathan C

    Add this to your groups permissions.
    Code:
    nocheat.moving
    OR

    Add to OP list (not recommended).
     
  22. Offline

    silentdojo

    If you are running a permissions plugin like GroupManager, EssentialsGroupManager, or Permissions itself and you have the '*' node you will be good to go. Also Nathan's ways work too.
     
  23. Offline

    BioRage

    This sounds intresting I might try it myself.

    do you know if it affects World Edit users? (E.G. WE + Compass = Jump to / Thru Commands)

    Edit:

    Permissions, DUH!
     
  24. Offline

    andrewkm

    Working with [617] thank you very much :)
     
  25. Offline

    _Zw_

    Posible to fix the "walk on fence WARNING spam?"
     
  26. Offline

    chopper


    I too had this problem when using Perms. 2.5.5. Turns out one of my alternate worlds that 'copy' the perms of the home world had an error in the file as one permission node was missing the trailing single quote '. This was never detected before I updated, however since it also caused commandbook to fail in parsing my permissions. Make sure all your permissions files pass a YAML check. Hope this helps.
     
  27. Offline

    Magesblood

    This is conflicting with the War plugin whenever the game is over everyone inside gives me a warning message.
     
  28. Offline

    Evenprime

    Thanks for telling me, that bug is easy to fix. Fences were imho a stupid idea by Notch (or better said the way they are implemented) because they are the only block bigger than 1 block, causing all kinds of problems (in early SMP versions standing on a fence even could crash the server). Next version of my plugin will fix false positives in combination with fences (probably going to release it some time tomorrow 04. April) and have some other improvements concerning false positives.

    I'll try to find out why that happens as soon as I have the time for it. Thanks for telling me.
     
  29. Offline

    Fob_Upset

    Whats the best config settings.
    I want to have it near impossible for people to flymod or speedhack on my server.

    My current settings

    Code:
    # Logging: potential log levels are low (info), med (warn), high (severe), off
    logging:
        filename: plugins/NoCheat/nocheat.log
        logtofile: high
        logtoconsole: med
        logtochat: med
        logtoirc: off
        logtoirctag: nocheat
    # Checks and Bugfixes that are activated (true or false)
    active:
        speedhack: true
        moving: true
        airbuild: false
        bedteleport: true
    # Speedhack specific options
    speedhack:
        limits:
            low: 12
            med: 15
            high: 20
    #   Speedhack Action, one or more of 'loglow logmed loghigh reset'
        action:
            low: loglow reset
            med: logmed reset
            high: loghigh reset
    # Moving specific options
    moving:
    #   Moving Action, one or more of 'loglow logmed loghigh reset'
        action:
            low: loglow reset
            med: logmed reset
            high: loghigh reset
    # Airbuild specific options
    airbuild:
    #   How many blocks per second are placed by the player in midair (determines log level)
        limits:
            low: 1
            med: 2
            high: 3
    #   Airbuild Action, one or more of 'loglow logmed loghigh deny'
        action:
            low: loglow deny
            med: logmed deny
            high: loghigh deny
    # Bedteleport specific options (none exist yet)
    bedteleport:
    
    These settings do not let players ride boats at full speed so what is the best settings so its near possible to flymod or speedhack.

    Also Quote my post so i get a reply.
     
  30. Offline

    Chekkaa

    Hi, I don't know why I didn't post this earlier, but a few weeks ago, when I updated this plugin (for 556, I think), it stopped giving me the messages in the game (only in the console). Is there a setting I can change to fix this?
     
  31. Offline

    Evenprime

    I'm actually quite surprised that you don't get problems even outside of boats if players just keep running in one direction for 3 seconds. The limits for the speedhack check are imho too low. They should never be below 20 (I'd recommend 25 as a minimum just to be sure). I don't know which version of my plugin you use, but in newer versions (I think starting with 0.7.7) I ignore boats and other vehicles explicitly to prevent these false positives you mentioned.

    Besides that your config is pretty much as tight as it can be. Newer versions (again I think starting with 0.7.7) have a bit different way to do the checks for flying which implicitly causes them to be stricter than older versions. So if you can you may want to upgrade to 0.7.7 or the now released 0.7.8.

    To get messages ingame you have to have the permission "nocheat.notify" (if you use the Permissions plugin) or if you don't use the Permissions plugin, you have to be OP on the server. You may also want to set the " logtochat: " setting in the nocheat.yml file from "med" to "low" to also get informed about minor violations ingame.


    Version 0.7.8:
    • like 0.7.7 this one is RB #602, #612 and #617 compatible
    • Made moving checks in combination with player velocity more resistant to network connection lag (less likely to produce false positives in case of bad internet connection)
      This one may need some explaination: I basically hit a wall when trying to find a 100% working solution for handling players getting pushed around by getting their velocity set by the server (this happens when hit by enemies, explosions or other plugins set it like Superjump, Vampires, ...). The problem is that the effect of setting the velocity on the server is nondeterministic. E.g. Superjump decides that the player is going up with velocity x. Then this information is sent to the client and the client then has to respect that information when calculating where he is going. The result completely depends on when the client receives the information about that vertical movement. Therefore I now give the client a timeframe in which he can to perform that special move without getting flagged, instead of expecting the client to immediatly react.
    • Renamed the configuration options "reset" and "deny" to "cancel"
      The old "reset" and "deny" will still work (at least for the next couple of versions), but I suggest you replace those settings when you are sure you won't downgrade to a previous version of my plugin anymore.
    • Lots of preparations for soon to be released support of custom actions
      The reason why I did the above renaming. Soon you'll be able to execute arbitrary server console commands as a reaction to violations (e.g. if you want to kick a player automatically)
    • Explicit support for fences - no false positives anymore when running on top of them
      Fences are a special something in Minecraft that screws up alot of stuff. Not any longer.
    • Removed old, no longer needed workaround(s) for moving between world
      At least one improvement of the recent bukkit updates. Moving and teleporting between worlds now has the correct world information in the "from" and "to" locations of the events. So I no longer have to keep track of that myself.
    • Ignore players in vehicles for moving checks completely (the server decides how fast and where the players can move in vehicles, so checking that would be pointless and cause all sorts of trouble)
      Actually I made that change a while back, but it seems I forgot to mention it back then.
    • Configuration file generation and parsing improved
      Again, this is a preparation for the soon to come custom actions.
    A tip for people updating the plugin or having problem with configuring it:

    I recommend copying your nocheat.yml to something like nocheat_old.yml or something like that, then delete the original nocheat.yml, then reload the plugin to get a new nocheat.yml with all the most recent settings for your current plugin version. Then you can just transfer, if needed, your old settings to the new file. This way you'll always have a config file that fits your plugin version (the example config file in the first post only reflects settings of the most recent version, which may not be available in older versions).
     

Share This Page