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)
-
View User Profile
-
Send Message
Posted Jun 30, 2016@QuickWango
In 1.9.4 there are constant errors that pop up with Antiguest. Here's an example: http://pastebin.com/Fqwx1Z5J
-
View User Profile
-
Send Message
Posted Feb 3, 2015@KreatorB
I think all the proper implementations of the guest concept use permissions to differentiate between users and guests.
-
View User Profile
-
Send Message
Posted Feb 3, 2015@QuickWango
thanks, I was looking for a stand alone plugin that basically stops players from open chest and or building or breaking stuff. And they can only play once there are deemed safe.
-
View User Profile
-
Send Message
Posted Feb 3, 2015@KreatorB
AntiGuest can block guests from doing pretty much anything. You only need a permission plugin (liek GroupManager, PermissionEx, CubeEngine Roles or whatever they are called these days)
-
View User Profile
-
Send Message
Posted Feb 3, 2015@KreatorB
I am looking for something like this with the ability of chest blocking and list control
http://dev.bukkit.org/bukkit-plugins/initialprotect/
-
View User Profile
-
Send Message
Posted Feb 3, 2015@QuickWango
not sure what you mean a separate plugin in?
-
View User Profile
-
Send Message
Posted Feb 3, 2015@KreatorB
That is exactly what this plugin does. However keep in mind that you will need a separate permission plugin to assign the permissions to your players.
-
View User Profile
-
Send Message
Posted Feb 3, 2015May I ask a question? If I am understanding this I can add my standard players to the anti-guest list and they will be able to do everything by default?
And anyone just logging the server can be blocked from doing anything unless I okay them? So if I want to give guest the rights to open and closed doors but nothing else like open chest, attack other players or break blocks I can?
Cause I would just love that. I have been looking for a simple plugin like this that allows me to just allow my players to play and keep the world open with minimal spawn protection while guest may roam around look around and chat, but need to request an application to the server.
-
View User Profile
-
Send Message
Posted Jan 5, 2015@QuickWango: Thank you very much for your answer :)
-
View User Profile
-
Send Message
Posted Jan 2, 2015@Chevels
Sure it should work, but I haven't updated to new features. most if it should work automatically though
-
View User Profile
-
Send Message
Posted Jan 2, 2015Hello, it's me again!
Just to ask if the current version of Antiguest supports Spigot and Bukkit 1.8?
cordially
...and happy new year! ;)
-
View User Profile
-
Send Message
Posted Sep 22, 2014Thank you for your answer! The problem is we never know if the visitor has voluntarily left the server or if it is kicked by antiguest. Sounds silly words like that but in some situations it's annoying. I think having the ability to display the message in public (at least the administrators) would be good.
-
View User Profile
-
Send Message
Posted Sep 20, 2014@Chevels
you could use the message-punishment for now. I could add a broadcast punishment in addition to that
-
View User Profile
-
Send Message
Posted Sep 20, 2014Hi and thank you for this excellent plugin. It's very helpful for 3 years!
I wanted to ask if it is possible to display in-game violations of a visitor? Because when a visitor is kick, I only have the message in the console (for example. "You have been kicked for trying to break blocks") but I would like all members can see. Is this possible? The only node that I see about this is "antiguest.violation-notification". But I feel that it only works for the person concerned. Is it possible to add a node as "antiguest.violation-notification.others" in a future update?
PS: Sorry for mistakes, English is not my native language but I try to improve myself
-
View User Profile
-
Send Message
Posted Jul 27, 2014@QuickWango
Hey QuickWango, I think I found a bug :)
The antiguest.* permission node is not working. I was able to fix it by using both antiguest.commands.* and antiguest.preventions.*
Using latest bukkit RB and MC
-
View User Profile
-
Send Message
Posted May 7, 2014@RaidCraftDE
Yeah I started to restructure how AntiGuest starts up, I know that current git master ist broken.
-
View User Profile
-
Send Message
Posted May 7, 2014@kedge919
That's documented in the description/README above
-
View User Profile
-
Send Message
Posted May 7, 2014How to set the whitelist/operator account?
-
View User Profile
-
Send Message
Posted May 6, 2014Oh yeah, thanks. We used this build.. http://maven.cubeisland.de/content/repositories/snapshots/de/cubeisland/antiguest/3.10.1-SNAPSHOT/
The version 3.10.0 is working correctly.
-
View User Profile
-
Send Message
Posted May 6, 2014@RaidCraftDE
It works just fine on 1.7.9 !? We're running it on our server without a problem.