[SEC] Suspicions - Catch them griefing a different way

Discussion in 'WIP and Development Status' started by Neobenedict, Aug 22, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    Neobenedict

    Suspicions
    Here is a plugin I want to make but I need suggestions and things before I start. I also need someone to help me with databases and things(well everything really, i've got #bukkitdev for that) (depending on what I decide to add).

    The plugin will have a points system for each user. Trusted users can be ignored with a permission. If a user gets x points, he/she gets noted to the admins, if a user gets y, banned, etc (will be configurable)

    To get points, each block placed (this may be tricky) gets logged, and when broken gets removed. If a user is breaking a lot of one persons blocks (ie. someones house) in a small area, they get points as they are "suspicious". Hopefully the blocks broken which make the player suspicious (ie. wood and glass are what usually gets broken) can be configurable, but everything will count.

    Another thing is chests. This may be hard to code, but, if a user destroys a 1x2 hole to get into a "building" (more code to detect "buildings") and then starts trying to open chests, the player gets points. If chests are emptied after the possible break in, more points. This won't happen with the players own blocks/chests.

    As for PVP, if a user (more code which will be difficult) kills and then takes items for more than x minutes, more points can be added. This feature should be disabled on PVP servers (you wouldn't be using this plugin anyway). Of course this is an idea. It might not be possible to code.

    More: if a player is found destroying only a certain type of block (ie. diamondblock) globally, they will get points.

    Permissions for commands to remove, add and reset points will be added. Points will eventually be configurable so higher up ranks still get points, but not as many.

    Please share ideas and thoughts on this.
     
  2. Offline

    ASCIIDuck

    I think your best bet will be integrating this into another anti-griefing tool like logblock or Big Brother. This will increase your userbase (people can stilluse tool X and have this added on top), but it also takes the load of designing the storage of past information off of you. Also, as your goal is just detection, not prevention in this case, I would probably go with having the processing occur in another thread, so it doesn't bog down the main server thread (these queries could end up being pretty intensive to run).

    One "fairly" easy check is to see if Player A is breaking a lot (subjective, I know) of Player B's blocks within a certain tolerance distance.
     
Thread Status:
Not open for further replies.

Share This Page