Introduction
I had this plugin in mind for my server but never bothered to make it. However people like Sway and Outlaw11A wanted it so I made it!
This plugin is highly configurable!
It's also very efficient even with a large playerbase!
- Configure the rules.
- Configure messages sent to the general playerbase.
- Configure which events players can't do before they have agreed to the rules.
- Configure whether or not the player should receive a message when they try do something they can't do.
- Optionally have a message task that will send players who haven't yet agreed to the rules a notification.
- Optionally have a save task keeping your data safe in case your server crashes.
Installation
- This plugin creates data types for players and stores information about the players that the plugin needs.
- All the datatypes are saved into one file, and used from a HashMap during server uptime.
* Installing this plugin with a reload will screw up for all current online players.
- *Stop your server.
- Put the ToS.jar into your Bukkit/Spigot's plugin directory.
- Start your server.
- Configure the config.yml!
Config
CommandsCode (Text):Rules:
- '&c(1) &2Put your rules in a list here.'
- '&c(2) &6They can have colours!'
- '&c(3) &2Remember to follow YAML formatting rules.'
Options:
Move:
Deny: false
Message: false
Talk:
Deny: false
Message: false
BlockInteract:
Deny: true
Message: true
EntityInteract:
Deny: true
Message: false
BlockPlace:
Deny: true
Message: true
BlockBreak:
Deny: true
Message: true
InventoryClick:
Deny: true
Message: true
ItemPickup:
Deny: true
Message: false
ItemDrop:
Deny: true
Message: true
ItemConsume:
Deny: true
Message: true
ItemHeld:
Deny: false
Message: false
ProjectileLaunch:
Deny: true
Message: true
Attack:
Deny: true
Message: true
Damage:
Deny: true
Message: false
BucketEmpty:
Deny: true
Message: true
BucketFill:
Deny: true
Message: true
ToggleSneak:
Deny: false
Message: false
ToggleSprint:
Deny: false
Message: false
ExpChange:
Deny: true
Message: false
PortalUsage:
Deny: true
Message: true
Messages:
HasAgreed: '&6You have already agreed to the rules.'
HasNotAgreed: '&6Agree to the rules with &c/IAgree&6.'
HasNotRead: '&6You must read the rules first with &c/Rules&6!'
JustAgreed: '&6Thank you for agreeing to the rules!'
DenyMessage: '&4You can''t do this until you''ve agreed to the rules.'
Tasks:
SaveTask:
Enabled: true
Interval: 600
MessageTask:
Enabled: true
Interval: 10
Permissions
- /Rules - Read the rules.
- /IAgree - Agree to the rules.
- /ToS - View the very unhelpful help menu.
- /ToS reload - Reload the config.yml and tasks.
- /ToS forcesave - Forcesave PlayerFiles.ser.
- /ToS resetconfig - Reset your config.yml.
- /ToS resetdata - Reset all PlayerFiles.ser data.
- /ToS setread <player> <true/false> - Manually read the rules for another player.
- /ToS setagreed <player> <true/false> - Manually agree to the rules for another player.
Changelog
- ToS.command.rules - Access to /Rules. Default: TRUE.
- ToS.command.iagree - Access to /IAgree. Default: TRUE.
- ToS.command.tos - Access to /ToS. Default: OP.
Version 1.0 - Initial release.
Source
GitHub.
Notice
This plugin is using Hidendra's MCStats service. This means it will report anonymous statistics to MCStats.org.
Statistics
![]()

ToS 1.0
A highly configurable plugin where players must agree to the rules before they can play.