[INACTIVE][SEC] AntiGrief v1.2.1 - Anti-Build+Anti-Grief Measures with Polygon Zone Protection [818]

Discussion in 'Inactive/Unsupported Plugins' started by crowebird, Feb 9, 2011.

  1. Offline

    crowebird

    AntiGrief v1.2.1 [Download]
    AntiGrief is a Prevention plugin with multiple aims:
    • Prevent potential griefers.
    • Control who can do what.
    • Give the server owner complete customization.
    • Define limitations based on in game created zones.
    What this means is you have complete control over who can do what on your server.
    • You can allow guests to visit your server without being able to do anything.
    • You can prevent certain actions from being used by anyone or certain groups.
      • This can be done by action, or even by item.
    • It is up to you as the server owner, you can customize every element.
    Features:
    • Prevent/allow any action.
      • Prevent/allow any action with specific item customization.
    • Prevent the use of TNT/Explosions/Fire/Lava/Water.
    • Prevent Mob Targeting (I.e. Prevent griefing via lured creepers).
    • Prevent players from damaging other players.
    • Prevent players from receiving damage in multiple ways.
    • Prevention of the usage of vehicles.
    • Prevent on a per-world basis.
    • Prevent via user defined polygon zones.
    Version 1.2.1:
    • Compiled with 818

    Version 1.3 [coming soon]:
    • Zones now have enter and exit messages
    • New zone commands to add enter and exit message and command to delete zones
    • Ability to prevent explosions in a zone
    • Ability to prevent creature (by type) from spawning in a zone
    • Fixes to zone creation and visualization (unable to break visualizing blocks)
    • Users can only modify the zones they created
    • Ability to modify the area of a zone
    • Can modify points while creating a zone
    • Ability to set default actions allowed inside a zone
    • Slight modification to the main configuration file (prevent_nodes is nodes.prevent again and allow_nodes is nodes.allow again) - this way nodes.prevent/allow follows the same logic as prevent/allow when preventing/allowing an item based on a certain action
    • The ability to disable an item completely outright or by group/user
    • Other fixes/enhancements
    Version 1.0.3:
    • Fixed a logic error dealing with preventing items (<node>.prevent)
    Version 1.0.2:
    • Many bug fixes.
    • Fixed zones - they now work properly and match main configuration format.
    • Changed some nodes around
    • Some changes to config format.
    • Prevent item use added back
    • Fix for door interactions
    If upgrading to 1.0.2+ it is recommended that you let AG re-create your configuration files. I know it is a pain, but the new changes/increase customization required some shuffling/creation of settings that need a new format (mostly re-naming).

    AG requires GroupManager or Permissions although GroupManager is recommended for use with AG!

    Links:
    Wiki
    Download
    Report Issues
    Changelog

    [​IMG]
     
    Hrdkr, xcession and brosef like this.
  2. Offline

    scar413

    do i have to delete AntiBuild? or are the new features added to AntiBuild
     
  3. Offline

    crowebird

    Don't think it would work with AntiBuild, meant to be a replacement.
    --- merged: Feb 11, 2011 6:56 PM ---
    Update, now players without build rights cannot push vehicles, destroy them or enter them.

    Edit: Quick update to v0.3
     
  4. Offline

    EvilSeph

    That's confusing. You say it is meant to be a replacement, but your description says otherwise:
     
  5. Offline

    crowebird

    :) lol noted and changed
     
  6. Offline

    Tasoli

    This doesn't seem to be working on my server... possibly because I'm running Guardian? I dunno. It doesn't stop people from building when the permissions are set correctly.
     
  7. Offline

    crowebird

    @Tasoli, hm, it could be. This takes the first look at a players action, but I don't know at what level Guardian runs. If Guardian overrides AntiGrief then it would prevent it from working properly. I'll look into it.

    ---

    Edit so, I am just going to assume Guardian is at some level overriding AntiGrief. This plugin is meant to simply not allow any build rights when build: false. I can provide an alternate version that runs at a higher level. (And can eventually work it into a properties file - although a properties file in this case might be unnecessary and two version will be fine).

    ---

    Alright, added a high level version (use AntiGrief_high.jar)
     
  8. Offline

    Tasoli

    thank you for your quick update. i know nothing about plug-in writing, but if you run the commands at a higher level does that take more resources from the server and cause it to eat more memory? (just asking, i really don't know)- also you might consider either releasing a separate plug-in that just includes the creeper-targetting functionality, or possibly editing this one so you can turn certain aspects on and off? (say, turn off the building blocking, but turn on the creeper-target redirection). i'm going to test this new version on my server tonight and see if it works in hand with guardian.
     
  9. Offline

    crowebird

    No it should not take any more memory, just the point at which it is called. Lowest level functions would get called first, and can cancel events, which is what AntiGrief will do, but if the higher level plugin does not check if these are already cancelled (or does not care), can just overwrite their effects. Moving it to higher level pretty much will (I believe) make it the last function called.

    I plan to integrate the ability to turn certain functions on/off or add them for individual users like you are looking for.
     
  10. Offline

    GoofyGewber

    I installed this plugin. and when i do. No one can build, even the admins which have
    Build: true on, what should i do?
    groups:
    Default:
    default: true
    info:
    prefix:
    suffix:
    build: True
    inheritance: Admins
    permissions:
    - 'general.spawn'
    Moderator:
    default: false
    info:
    prefix:
    suffix:
    build: True
    inheritance:
    - Default
    permissions:
    - 'general.time'
    - 'general.teleport'
    - 'general.teleport.here'
    - 'general.player-info'
    Admins:
    default: false
    info:
    prefix:
    suffix:
    build: True
    inheritance:
    permissions:
    - '*'
     
  11. Offline

    crowebird

    try build: true lowercase t as a quick fix. Not sure how picky permissions are.
    --- merged: Feb 16, 2011 4:14 AM ---
    Version 0.4 released, added customized permissions and configuration settings - also added the source
     
  12. Offline

    ddoolin

    Can I ask how one would go about this scenario:

    I want to have a Guest group for people to join so I don't have to have a whitelist. Guest is strictly build: false. However, I would like to be able to move them to my Default group and apply the changes on the fly. I know I can do this with Essentials by /modgrp <name> <desiredgroup> and it works, but even using /pr to reload Permissions and apply the changes has a half-done effect. The [Guest] tag is removed from their name, but it's still as though they are in the Guest group because they cannot do anything.
     
  13. Offline

    crowebird

    Currently outside of the scope of AntiGrief, it has to do with permissions not reloading properly.
    AntiGrief simply checks permissions using functions provided by that package. My current work around is to do a hard /reload, which will reload all plugins (was my method for testing as /pr does not work as intended) - I am assuming this is currently just a bug with permissions and we will see an update soon.
     
  14. Offline

    ddoolin

    Better than nothing - thanks. :)
     
  15. Offline

    palz2015

    my Builder group which specifically says build:true cannot build. Default is build:false. Builder does not inherit from Default. pls help. Latest bukkit latest plugin/.
     
  16. Offline

    Etalyx

    "Cancel TNT/Fire/Explosion events (including Creepers - creepers won't target those who can't build)"

    I am about to test the creeper part out for myself but if it does work you are my hero. I have been looking everywhere for this.
    -----
    Edit: Is there any way you can include notifications in this mod? It would be great if you could set permissions so certain groups could receive notifications in the event something is blocked for them (besides building/destroying blocks. ex: TNT).
     
  17. Offline

    crowebird

    @palz2015 - hm I have not tested with the latest, but don't know why it wouldn't work. I will test it and let you know what I find.

    @Etalyx - yea i'll look into adding them. I'll have to make sure that the messages don't get spammed though.
     
  18. Offline

    Etalyx

    Been trying to test it out on a friend and successfully removed his build rights but found that once that was done I could not restore them. I was trying to test the Creeper part of the mod (that is the only part I am really interested in - I would love to see a standalone mod that lets me dictate who creepers "see" by group/permissions) but found that once my friend was put in a group with build: 'false' I could do nothing to change his state.

    He couldn't open doors, so I tried giving him the 'antigrief.block.interact' (this may be the wrong one) and it had no effect upon /reload. When I couldn't determine if the creepers "saw" him or not, I tried to change him back to a group with build rights. Even though permissions said he was fine and I did a /reload, he still could not build or open doors.

    Thanks for any help I would really love to be able to use your mod for the creepers :D
     
  19. Offline

    crowebird

    If you really only want the creeper part, modify the configuration file that AntiGrief creates to:
    Code:
    level:
    - 'lowest'
    ignore:
    - 'antigrief.block.damage'
    - 'antigrief.block.place'
    - 'antigrief.block.interact'
    - 'antigrief.block.ignite'
    - 'antigrief.player.item'
    - 'antigrief.vehicle.use'
    - 'antigrief.vehicle.move'
    
    what this will do is make it so build: false will only run the code for creepers, ignoring all the other cancel out affects it could have.

    Adding a permission node is meant for taking away that action if build: true, so what you tried to do would not have the right affect.

    But the easiest method for you would probably just be to add antigrief.entity.creeper to the group/player that you don't want the creeper to creep on :p (so make sure they have build: true, and add the creeper node, and creepers will ignore them).

    Hope that helps. I will look for a better way to add/remove affects on certain groups so it makes more sense.
     
  20. Offline

    Etalyx

    I will test it out and see how it works. My server is 95% completely air-tight against griefing as far as I can tell, with the only weak spot being the possibility of visiting players luring in creepers to blow them up on players' buildings. So if this works in preventing that from happening, it makes this mod incredibly valuable to me so thanks for the hard work and the help :D

    EDIT:
    I noticed that when I /reloadall or restart the server, with your mod enabled if I try /plugin list my client crashes. When I remove AntiGrief, reload the server or /reloadall and try /plugin list, it works as intended. If I /plugin load and then /plugin enable your mod, /plugin list works fine. It is only when I reload that it causes the client crash and it happens every time for me.
     
  21. Offline

    crowebird

    Interesting, i'll check that out as well. Thanks for the catch.
     
  22. Offline

    Jobsti

    I LOVE YOU! Will instantly testing.

    It works, but if the creepers are on in WG, I have to set you plugin to normal, but no problem, it works, I'm so ultra happy!

    Edit: normal works, not highest.
    With highest, the LWC door-Protect isn't working, appers logical ;)
     
  23. Offline

    Kane

    Neat mod may I suggest things you may have them already.
    dmg hooks to block dmg
    - fall
    - void (seams to happen seprate)
    - zombie hooks
    - skeleton arrow hook
    - ghast missile hook
    - water drown hook
    - suffocate hook
    - dispenser arrow hook
    - fire
    - tnt
    - lava
    - pvp melee
    - pvp arrows

    I don't know if it's even possible I seen it before but don't even let the client get fire on the player and such. No ow ow ow ow and such if possible. 100% immune for build servers.

    This would really replace WG for me.
     
  24. Offline

    Jobsti

    Oh update...:

    I've set
    ignore vehice move and use,
    I can geht into the Minecart, but it drives away, without me in ;)

    Also at lowest.

    Update:
    Works great with LWC protected doors and guests. Very good!
    But guests can only open the doors with rightclick, not leftclick.
    ignore:
    - 'antigrief.block.interact'
     
  25. Offline

    crowebird

    @Jobsti - glad you like it :D
    And that is strange, I wonder if left click is considered use and right click is considered interact. Try antrigrief.player.use as an ignore option as well. (That will also allow players to use food, etc. Note that I intended for Build: false players to be able to use doors. I will add a separate parameter that allows you to specify if you want use/interact to cancel out door actions).
    @Kane - I'll look into adding those hooks.
     
  26. Offline

    Etalyx

    Upgrading my CraftBukkit to CB339 seemed to fix the crashing error.

    Edit: Apparently I was just lucky the first time I tried it :D. Tried /reloadall again and it froze on /plugin list.

    Also noticed that this can have the unfortunate side-effect of erasing un-saved inventory. Any items acquired recently that have not yet undergone a save to the server's inventory are lost upon the crash and simply disappear.
     
  27. Offline

    crowebird

    Hmm, i have upgraded and am doing testing against 341.
    There must be a conflict with another plugin because I am unable to reproduce.
     
  28. Offline

    GoofyGewber

    In the old version, I no one could build. On the new version, everyone can build. I dont get it.
    Default:
    default: true
    info:
    prefix:
    suffix:
    build: false
    inheritance:
    permissions:
    - 'general.spawn'
    Whats wrong?!
     
  29. Offline

    crowebird

    Upgraded to 0.5! See change log. Make sure to allow AntiGrief to create a new configuration file!

    (Configuration of AntiGrief and permissions has changed! Make sure your permissions file reflects these changes if you had custom AntiGrief settings).

    @Goofy - can you list your entire permissions file?
     
  30. Offline

    GoofyGewber

    I changed everything, admins, mods, and default to false. Also im updating to 0.5
    # Supports "Default" and "GroupUsers"
    plugin:
    permissions:
    system: default

    ##
    # Groups can contain inheritance.
    # To make a group inherit the permissions from another
    # group simply place the groups name in the "inheritance:"
    # field seperated by commas.
    #
    # Example: inheritance: Default,Admins,
    ##
    # All permissions including the asterisks must be placed in single quotes.
    # like so:
    #
    # - 'general.spawn'
    #
    # Otherwise errors will happen!
    ##
    # Globalized Permission settings:
    #
    # If a permission contains periods (.) you can denote a globalized parameter:
    #
    # - 'general.*'
    #
    # This will allow you to use all general commands.
    #
    ##
    #
    # Single Asterisk denotes all commands:
    #
    # - '*'
    ##
    groups:
    Default:
    default: true
    info:
    prefix:
    suffix:
    build: false
    inheritance:
    permissions:
    - 'general.spawn'
    Moderator:
    default: false
    info:
    prefix:
    suffix:
    build: false
    inheritance:
    - Default
    permissions:
    - 'general.time'
    - 'general.teleport'
    - 'general.teleport.here'
    - 'general.player-info'
    Admins:
    default: false
    info:
    prefix:
    suffix:
    build: false
    inheritance:
    permissions:
    - '*'

    ##
    # DarkGrave has control over all commands.
    # sk89q can use /spawn & /time
    ##
    users:
    darkgrave:
    group: Admins
    permissions:
    sk89q:
    group: Default
    permissions:
    - 'general.time'
     

Share This Page