-= Current Version: 1.1 =- In short, TOS requires players to read and accept your server's rules in order to unlock certain actions that are configurable in the config.yml. The idea of Terms of Service is based off of AcceptRules. The difference? TOS is packed with configuration to fit almost any server. There are no extra data files to hold additional user data, either, as it keeps track of who's accepted your rules via an already existing permissions plugin. One thing I should note: TOS is NOT a rules plugin. This is intended as an add-on to whatever other rules plugin you use, to help enforce them or use a basic graylist system. (For example, typing /rules without another rules plugin will return an unknown command.) Features: Require players to read each and every page of your rules. Configure who sees what messages. (Log attempted skips to the console, while broadcasting rule-accepts to the server.) Restrict things like building, chatting, or interacting if they haven't accepted the rules. Configurable spawn and teleport points. (If enabled in the config) Configurable reminder to tell those that have not accepted your rules to do so! Configurable command whitelist or blacklist Limit how many "guests" can be logged in at one time (If enabled in the config) Configure a name color for "guests" that would be set via display name Change the gamemode of "guests", and set them to another when the accept. (Put guests in Adventure mode, then survival when they accept.) Add or remove players from permission groups when they accept Add or remove permission nodes from players when they accept Deposit or withdraw money from a player when they accept Execute specific commands when the player accepts. (As the console, or the player themself!) Set punishments for those trying to perform actions they shouldn't. Optionally require a password to be used after /accept. New! Requirements: Vault A permissions plugin (Anything supported by Vault. PEX, GroupManager, bPerms...) A rules manager (Essentials, MCDocs...) Commands (Move your mouse to reveal the content) Commands (open) Commands (close) /tos - Shows the plugin help menu /tos settp - Sets the teleport point for players who accept the rules /tos setspawn - Sets the spawn point for "guests". /tos guestlimit - Temp. enable/disable the guest limit if it's enabled in the config /tos add [Player] - Manually adds a player to the accepted list without executing config stuff /tos del [Player] - Removes an accepted player /accept - Accepts the rules (Only available after all pages have been read.) /acceptRules - Alias to /accept /acceptTerms - Alias to /accept Permissions (Move your mouse to reveal the content) Permissions (open) Permissions (close) TOS uses SuperPerms, if your permissions plugin doesn't, you need a new permissions plugin. tos.help - Allows viewing of the help menu tos.settp - Allows setting of the teleport point tos.setspawn - Allows setting of the spawn point tos.guestlimit - Allows temp. toggling of the guest limit tos.add - Allows adding players to the accepted list tos.del - Allows remove players from the accepted list tos.accept - Allows use of any of the accept commands tos.bypass - Bypass restrictions, whether accepted or not tos.notify - Players with this will get messages set to send to staff members tos.accepted - Automatically given to players who accept the rules Configuration (Move your mouse to reveal the content) Configuration (open) Configuration (close) # Terms of Service Configuration config: general: enable-accept-command: true # Enables/disables /accept. Used for future features your-rules-command: /rules # The command TOS will check rule-pages: 4 # The amount of pages of rules you have. (Max of 10 for now) use-teleportation: true # Whether or not to use tp and spawn points enable-reminder: true # Whether or not to send "guests" the reminder. reminder-delay-seconds: 60 # How often the message will be sent reminder: You still have not accepted our rules, %name%! Type /rules to do so! # The message to send. password: enable-password: false # Whether or not to require a 'password' argument password: 'password' # The required password slots: limit-maximum-unaccepted: false # Whether or not to limit the max guests. maximum-unaccepted: 16 # The cap for allowed on at once. display-name: color-unaccepted-players: false # Whether or not to change the player's name color name-color: 4 # The color to change it to restrictions: world: prevent-building: true # Prevents placing blocks prevent-breaking: true # Prevents breaking blocks prevent-interacting: true # Prevents right-clicking objects prevent-damaging: true # Prevents hurting entities prevent-taking-damage: true # Prevents taking damage (god mode) player: prevent-movement: false # Prevents moving prevent-chatting: false # Prevents speaking prevent-pickup: true # Prevents picking up items prevent-drop: true # Prevents dropping items command-list: # The commands to whitelist/blacklist - /command1 - /command2 - /command3 command-list-mode: blacklist # The list's mode ^^^ # Blacklist - Blocks the commands on that list # Whitelist - Blocks all commands but the ones on that list # All - Blocks all commands but TOS related ones # None - Blocks no commands at all notifications: console: # Actions set to true will be logged to console tell-on-accept: true tell-on-attempted-skip: true tell-on-attempted-accept: true tell-on-unaccepted-login: true tell-on-unaccepted-quit: true permission: # Actions set to true will be told to players with 'tos.notify'. tell-on-accept: true tell-on-attempted-skip: true tell-on-attempted-accept: true tell-on-unaccepted-login: true tell-on-unaccepted-quit: true operators: # Actions set to true will be told to Operators tell-on-accept: false tell-on-attempted-skip: false tell-on-attempted-accept: false tell-on-unaccepted-login: false tell-on-unaccepted-quit: false everyone: # Actions set to true will be broadcasted for all to see. tell-on-accept: false tell-on-attempted-skip: false tell-on-attempted-accept: false tell-on-unaccepted-login: false tell-on-unaccepted-quit: false promotion: gamemode: change-gamemode: false # Whether or not the change the player's gamemode not-accepted-gamemode: 2 # The gm to set a guest to on-accepted-gamemode: 0 # The gm to set an accepted player to on use of /accept permissions: group: add-group: false # Whether or not to add a player to a group new-group: Member # Target group remove-group: false # Whether or not to take a player from a group old-group: Guest # Target group nodes: add-permissions: false # Whether or not to give permissions to the specific player add-these: # The permissions to give - permission.one - permission.two - permission.three del-permissions: false # Whether or not to take permissions from the specific player take-these: # The permissions to take - permission.four - permission.five - permission.six economy: player: add-money: false # Whether or not to deposit money add-amount: 50 # The amount to deposit take-money: false # Whether or not to withdraw money take-amount: 50 # The amount to withdraw commands: execute-commands: false # Whether or not to execute commands execute-as: console # Who to send the command as. # Console - Sends the command as if the console typed it # Sender - Sends the command as if the acceptee sent it execute-list: # The commands to send. Use %name% for the player's name. - ConsoleCommand1 - ConsoleCommand2 - ConsoleCommand3 punishments: enable-punishments: false # Whether or not to use punishments # Available Punishments # Burn - Sets the player on fire for ~10 seconds. # Lightning - Strikes the player with lightning. # Kick - Kicks the player # Ban - Bans the player # Drop - Teleports the player 200 blocks up from their current position. # Starve - Sets the player's food to 0. # Kill - Sets the player's health to 0. preventions: punish-attempted-build: true build-punishment: kick punish-attempted-break: true break-punishment: kick punish-attempted-interact: false interact-punishment: lightning punish-attempted-damaging: false damaging-punishment: kick punish-attempted-chatting: false chatting-punishment: kick punish-attempted-command: false command-punishment: kick messages: # A few configurable messages. general: accepted-terms: '%name% has accepted the rules!' accepted-player-message: Thank you for accepting our rules! Have fun! permission-error: You do not have access to that command. read-rules-first: You have not even read our rules yet! dont-skip-pages: Please do not skip pages! preventions: building: You need to accept our rules before you can build! breaking: You need to accept our rules before you can build! interacting: You need to accept our rules before using that! damaging: You need to accept our rules before attacking! chatting: You cannot chat until you accept our rules! command: That command is blocked until you accept our rules! Download Latest Version from BukkitDev Those updating from a previous build should refresh their config to get the latest features. Changelog: Version 1.1 - [8/18/2012] Added configuration setting to enable/disable /accept. Used for future features Added configuration setting to require a password argument after /accept. Known Bug: The teleport locations are not yet multiworld. The player will be teleported to the set coordinates of their current world. Version 1.0 - [8/17/2012] Initial Release Known Bug: The teleport locations are not yet multiworld. The player will be teleported to the set coordinates of their current world. Please note, this plugin will only be maintained for as long as people request it to be.
Thanks! First update. ^^ Version 1.1 - [8/18/2012] Added configuration setting to enable/disable /accept. Used for future features Added configuration setting to require a password argument after /accept. Known Bug: The teleport locations are not yet multiworld. The player will be teleported to the set coordinates of their current world. EDIT by Moderator: merged posts, please use the edit button instead of double posting.