AntiGuest
AntiGuest
Description
AntiGuest prevents players from doing specific things like building and fighting, which can be used to grief.
Every prevention has its own configurable message which will be printed to the player. This message supports color codes (&0, &1, ..., &e, &f, &k)
How does this work?
AntiGuest uses permissions to determine whether a player is allowed to do a specific action. So you should (not necessarily needed, but recommended) install a permission manager like bPermissions or GroupManager along with AntiGuest. Usually you only want to prevent your guests from doing things like breaking and placing blocks (griefing), so you should not give your guests' group the permission to do so. However your accepted players should by able to do these actions. That can be achieved by adding the permission "antiguest.preventions.*" or a action specific permission to the player or his group.
As you might see, this system allows more than just "guests can nothing, members everything". You could for example stagger the permissions like "guests can nothing but chat; trails can chat, place and break blocks; members can everything" and even more complex setups, it's completely up to you.
Watch out! Tips for common mistakes
- All preventions are disabled by default since version 3.0 (3.2 changes that, see the table below)
- All preventions have their own configuration file since 3.1, since 3.2 the old configurations will be converted
- The permissions are all lowercase, check that before you report AntiGuest not working
Preventions
Name | Prevents from ... | On by default | Filterable | Punishable | Loggable |
---|---|---|---|---|---|
ad | posting server addresses (also enables link, see below) | yes | no | yes | yes |
afk | idling players by kicking them after a configured time | no | no | no | yes |
anvil | using anvils | no | no | yes | yes |
beacon | opening beacon inventories | yes | no | yes | yes |
bed | sleeping | no | no | yes | yes |
bow | shooting bows | yes | no | yes | yes |
breakblock | breaking blocks | yes | yes | yes | yes |
brew | brewing | no | no | yes | yes |
button | pushing buttons | no | no | yes | yes |
cake | eating cakes | no | no | yes | yes |
caps | writing all-caps messages | no | no | yes | yes |
changesign | changing signs | yes | no | yes | yes |
chat | chatting | no | no | yes | yes |
chest | accessing chests | yes | no | yes | yes |
command | using specific commands | no | yes | yes | yes |
damage | getting damaged | no | yes | no | no |
dispenser | accessing dispensers | yes | no | yes | yes |
door | opening or closing doors (including fence gates) | yes | yes | yes | yes |
dropper | opening dropper inventories | yes | no | yes | yes |
drop | dropping specific items | no | yes | yes | yes |
enchant | accessing enchantment tables | no | no | yes | yes |
fight | damaging other players | yes | no | yes | yes |
fish | fishing | no | no | yes | yes |
furnace | accessing furnaces | no | no | yes | yes |
guestlimit | getting too many guests | no | no | no | no |
hopper | opening hopper inventories | yes | no | yes | yes |
horse | interacting with horses/mules/donkeys | no | no | yes | yes |
hotbar | changing the selected hotbar slot | no | no | yes | yes |
hunger | starvation | yes | no | no | no |
itemframe | changing item frames | yes | no | yes | yes |
item | using specific items | no | yes | yes | yes |
jukebox | using jukeboxes | no | no | yes | yes |
lavabucket | using lava buckets | yes | no | yes | yes |
lead | using a leash | no | no | yes | yes |
lever | using levers | no | no | yes | yes |
link | posting clickable links | yes | no | yes | yes |
milking | milking cows | no | no | yes | yes |
monster | getting targeted by monsters | yes | yes | yes | no |
move | moving too far | yes | no | yes | no |
noteblock | using note blocks | no | no | yes | yes |
pickup | picking up specific items | no | yes | no | no |
placeblock | placing blocks | yes | yes | yes | yes |
pressureplate | triggering pressure plates | no | no | yes | yes |
repeater | changing the repeater delays | no | no | yes | yes |
shear | shearing animals | no | no | yes | yes |
sneak | sneaking (hiding the name above his head) | no | no | yes | yes |
spam | spam | yes | no | yes | yes |
spawnegg | using spawn eggs | no | yes | yes | yes |
swear | swearing | yes | no | yes | yes |
tame | taming animals | no | no | yes | yes |
trading | trading with villagers | no | no | yes | yes |
trample | trampling crops | no | no | yes | yes |
tripwire | triggering trip wires | yes | no | yes | yes |
vehicle | using vehicles (entering, placing, destroying, pushing) | no | no | yes | yes |
waterbucket | using water buckets | yes | no | yes | yes |
workbench | accessing workbenches | no | no | yes | yes |
Filtering
How does filtering work?
Filtered prevention allow you to filter the action which will be prevented.
For example the command preventions which can either prevent the usage of all commands or just a specific set of commands based on a whitelist or blacklist
Filter configuration
- mode:
- none: everything will be prevented (aliases: -1, nolist, all)
- whitelist: the listed entries are NOT prevented (aliases: 0, white)
- blacklist: only the listed entries will be prevented (aliases: 1, black)
- list:
- the list of entries. this might be commands, item names or anything else depending on what the prevention does
- this list will be ignored if the mode is set to none
Punishments
Since version 3.3, AntiGuest allows to automatically punish players. These punishments are configurable per prevention.
You can specify multiple punishments per violation, you can look at the default punishment values in the configs
Punishment | Description | Configuration |
---|---|---|
ban | Bans the player | reason: the ban reason |
burn | Sets the player on fire | duration: the burn duration in seconds |
dropitem | Drops the held item | pickupDelay: the pickup delay in seconds |
explosion | Creates a fake explosion and damages | damage: the damage to deal |
kick | Kicks the player | reason: the kick reason |
kill | Kills the player | none |
lightning | Strikes a fake lightning on the player | damage: the damage to deal |
message | Makes the player send an awkward message | message: the message to send |
potion | Poisons the player | duration: effect duration, effect: type |
rocket | Shoots the player in the air | height: the number of blocks |
slap | Slaps the player | damage: the damage to deal |
starvation | Lets the player starve | none |
No configuration is specified as {}
Commands
General syntax: /antiguest <command> or /ag <command>
Command | Description |
---|---|
help | prints a help text |
can [player] <preventionname> | checks whether the player (or another player) passes a prevention |
list [-a] | lists the active or all registered preventions |
reload [prevention] | reloads the plugin |
setmessage <prevention> <message> | sets the message of a prevention |
language [language] | shows or sets the language |
badword <word> | adds a bad word to the swear prevention |
disable <prevention|*> [-t] | disables a specific prevention or all at once |
enable <prevention|*> [-t] | enables a specific prevention or all at once |
reset | resets all configurations |
Installation
AntiGuest 3 needs at least Bukkit 1.1-R5!
Steps
- Just put the AntiGuest Jar-File into your plugins folder
- If you're upgrading from an older version you might remove your config to get a fresh one
- restart/reload your server
- The configuration files will be generated/updated as soon as the plugin gets enabled
Permissions
Permission node | Description | Default |
---|---|---|
antiguest,violation-notification | The player will receive violation notifications | not assigned |
antiguest.* | Allows the player to do everything | operators |
antiguest.commands.* | Allows the player to run all commands | operators |
antiguest.commands.<command> | Allows the player to run the specific command | operators |
antiguest.preventions.* | Allows the player to pass all preventions | operators |
antiguest.preventions.<prevention> | Allows the player to pass the specific prevention | operators |
Base configuration
Entry | Default value | Description |
---|---|---|
debug | false | Enables or disables debug output |
language | system value | Sets the language of all texts |
punishments | true | Globally disables or enables punishing |
log-violations | false | Globally enables violation logging |
prevent-npc | false | Enables the preventions for NPCs |
Developer Notice
Plugin developed by Quick_Wango - Cube Island
- You want new features?
- You want the plugin to be always up to date?
- You want good support?
I'm doing this for literally nothing in my free time, so keep me interested in my plugins and help pay my bills by simply donating a few bucks.
Thanks in advance!
Talk to the developers (#cubeisland-dev on EsperNet)
@QuickWango
We are sorry but this feature does not work for me. The message is still spammed by.
enable: true message: '& 4You cant pick any items!' throttleDelay: 3000000 mode: none list: - dirt
@Chsteerr
The delay is specified in seconds, so it shouldn't actually spam
How does the e.g. with this delay Item pickup in order for the message "You can not pick up items" will not be spammed?
@deleted_10274781
AntiGuest has over 40 preventions (modules internally). each module has a configuration of at least 2 lines, most of them have 10 and more. preventions that have lists like those with white-/blacklisting, preventions or the swear prevention which got a list of words can easily go over 20 lines. in addition to that, many preventions have documention in the configuration to explain the config entries. Everything together in 1 big file would have several hundred lines of code with just the default configuration. sure, configuring all the preventions the first time, may take you longer, but once it is running, modifications to the configs are much easier. and most of the servers don't even need all the preventions, so you only have to configure those you actually need. some things may even be changed ingame with commands.
This config setup won't change, even in my reworked version of AntiGuest which I'm working on at the moment.
Great plugin ! There's just several things I'd like to say : • There are too much files in the preventions folder, and I get lost. Why not doing a big file with all in it ? Would go quicker ; • Some people don't have time to configure it all. Why not doing a "simple" configuration and an "advanced" configuration ? Otherwise, I love it, keep on the good job :)
@QuickWango
Thanks
I am looking to employ this in a different way than its intention. I want to set up a world that requires team work. you only can do certain things. like be a defender or a hunter or a miner or a farmer. The job plugins I have found are just not what I am looking for. Maybe this is the one. I will keep you posted as to how it works this way.
update. cool plugin but not sure it will do what I need. still looking into it more
@Zankla
Look into the fight prevention and its configuration :)
Can you stop them from killing animals but allow them to kill monsters?
Or allow them to kill animals but stop them from killing monsters?
I loved this plugin but something in a more recent update refuses to work at all, i have to stay with an older version otherwise all preventions keep people from doing anything at all even if they have permissions to get around it
@SomewhatMuffin
Not directly, but there are preventions for block placing, breaking and interaction.
sorry i may be mistaken, but is there a tnt prevention?
Also:
I've enabled the ticket system on this page, so people without a github account can reports bugs/request features as well!
New version released!
http://dev.bukkit.org/server-mods/antiguest/files/15-anti-guest-v3-6-0-1-4-5-r0-2/
Version 3.6.0
@PAL18
I will update it for 1.4.3 or what ever will be released. The current version should work just fine though
Will this be updated for 1.4.2?
@Samifighter
yes it is possible
I am looking for a plugin which disallows some people to use seeds to plant crops, etc. Is this possible with this plugin?
A new development snapshot:
http://ci.cubeisland.de/job/AntiGuest/lastSuccessfulBuild/deployedArtifacts/download/artifact.1/
changes: added villager trading prevention added all-caps prevention
@twisterlj
Maybe the mods don't properly implement the hasPermission(String) method, idk
Just curious... We are running a Tekkit server in addition to our reg Minecraft Server, and we use bPerms and antiguest on both. On our Tekkit server I am having a hell of a time giving a couple of the mods build rights. There are several neat features like quarries, block breakers etc that won't work w/o build perms. They use a fakeplayer login, and I have given each fakeplayer an entry in bPerms users file, and given them the groups they need to have build perms and the node antiguest.preventions.* but still can't get them to work. I'm wondering if antiguest may still be preventing them from working, or if anyone has any ideas to fix this?