TDR Playtime

TDRPlaytime is a plugin that keeps track of the playing time of the players on your server. However, that's not all. This plugin makes sure that it is fun for your players to spend many hours on your server, while the setup of this plugin is easily done.
One of the many things you can use is a top 10, you can give the players on your server rewards for specific playtimes and you can use your own language. This plugin has support for yml and MySQL.
If you have any issues, please read the GitHub Wiki page and if you use this plugin, please leave a review.
Looking for a firework plugin use Advanced Firework!
AFK:
To not count afk time, it is possible to set countAfkTime to false in the config.
It is also possible to use the essentials api to check whether players are away, for this you set useEssentialsApi to true in the config

Database:
There are various options for saving the player data and milestones. You can save the data in mysql,mongodb,or in yml files.

The data for the database can be entered in the database.yml file
As already said there are a lot of things this plugin can do for you and your players. The first section gives you the playtime commands and the second section gives you the milestone commands. Those commands will help you to give the players rewards.
Playtime commands
 
/playtime                      :  see your playtime
/playtime top                  : see the top 10 online time
/playtime reset <username>     : Reset user's time
/playtime set <username> <time in seconds>    : set a users time
/playtime <playername/uuid>    : see other user's online time
/playtime reload                         : Reload the plugin
/playtime importPlaytime           : this command imports the existing time in minecraft from all your players. WARNING: All playing time in the database will be overwritten.
Milestone commands
/milestone create <name> <time in seconds>  : Create a milestone.
/milestone list : Show a list with all the milestones
/milestone remove <milestone> : Remove the milestone
/milestone info <milestone> : show information and edit options of a milestone
/milestone test <milestone> : execute the rewards of a milestone on yourself
/milestone addItemToMilestone <milestone>: Add the item in your main hand to the milestone
/milestone addCommandToMilestone <milestone> <string>: Add a command that will be executed by the console to the milestone. To use a longer command, you must enclose the command in quotes ("give %playername% apple 64")
/milestone togglefirework <milestone> : Toggles the firework for a milestone
/milestone setfireworkamount <milestone> <amount> : Set the amount of firework that the milestone will fire
/milestone setfireworkdelay <milestone> <time in seconds> : Set the time between fireworks
Repeating Milestone commands
/repeatingmilestone create <name> <time in seconds>  : Create a repeatingmilestone.
/repeatingmilestone list : Show a list with all the repeatingmilestones
/repeatingmilestone remove <repeatingmilestone> : Remove the repeatingmilestone
/repeatingmilestone info <repeatingmilestone> : show information and edit options of a repeatingmilestone
/repeatingmilestone addItemToMilestone <repeatingmilestone>: Add the item in your main hand to the repeatingmilestone
/repeatingmilestone addCommandToMilestone <repeatingmilestone> <string>: Add a command that will be executed by the console to the repeatingmilestone. To use a longer command, you must enclose the command in quotes ("give %playername% apple 64")
/repeatingmilestone togglefirework <repeatingmilestone> : Toggles the firework for a repeatingmilestone
/repeatingmilestone setfireworkamount <repeatingmilestone> <amount> : Set the amount of firework that the repeatingmilestone will fire
/repeatingmilestone setfireworkdelay <repeatingmilestone> <time in seconds> : Set the time between fireworks
To make sure the right commands can be used by the right players, the plugin uses a few different permissions. There are different commands for the playtime and for creating the milestone rewards.
Playtime permissions
/playtime                      : playtime.playtime
/playtime top                  : playtime.playtime.top
/playtime reset <username>     : playtime.playtime.reset
/playtime <playername/uuid>    : playtime.playtime.other
/playtime migratefromminecraft : playtime.playtime.migratefromminecraft
/playtime reload                         : playtime.playtime.reload
/playtime importPlaytime           : playtime.playtime.importPlaytime
Milestone permissions
/milestone create <name> <time in seconds>  : playtime.milestone
/milestone additem <milestone>              : playtime.milestone.additem
/milestone addcommand <milestone> <command> : playtime.milestone.addcommand
/milestone togglefirework <milestone> : playtime.milestone.additem
/milestone setfireworkamount <milestone> <amount> : playtime.milestone.setfireworkamount
/milestone setfireworkdelay <milestone> <time in seconds> : playtime.milestone.setfireworkdelay
/milestone remove <milestone> : playtime.milestone.remove
/milestone info <milestone> : playtime.milestone.info
RepeatingMilestone permissions
Same permissions as Milestone
This plugin makes use of milestones. The milestones make use of the player’s playtime. You, as the server owner, can choose different time points when the player will receive a reward. For example, the players can receive 10 gold when they have four hours of online time.
The time points used in milestones must be entered in seconds. It is possible to give any rewards in the form of items and even commands. The commands will be executed in the console for the playername. You can use the placeholder %playername% in the command and for the UUID %playeruuid%.
TDRPlaytime supports different languages. A few languages have already been created and are ready to use. Those are: English, Dutch, German and French. However it is also possible to add your own language and edit messages via the lang folder.
It is possible to change the language in the config. This file is called config.yml. This can be done by changing ‘language:eng’ to nl_NL, de_DE, fr_FR, en_GB or to your own language.
TDRPlaytime also gives you access to the collected data so you can use it with other plugins. So this plugin is an expansion to the PlaceHolderApi. You can use the following data:
  • %tdrplaytime_time% : Show full time such as / playtime
  • %tdrplaytime_days_number% : Show your online days as a number.
  • %tdrplaytime_hour_number% : Show your online hours as a number.
  • %tdrplaytime_minutes_number% : Show your online minutes as a number.
  • %tdrplaytime_seconds_number% : Show your seconds as a number online.
  • %tdrplaytime_total_hour_number% : Show the total (including days) amount of hours as a number
  • %tdrplaytime_top_names_{1-10}%: Show the name of one of the top 10 to let this work you need to replace the {1-10} with a number from 1 to 10
  • %tdrplaytime_top_time_{1-10}%: showing you the time of the top 10.
  • %tdrplaytime_top_time_{1-10}_seconds% : Shows the number of seconds the top player has played.
  • %tdrplaytime_top_time_{1-10}_minutes% : Shows the number of minutes the top player has played.
  • %tdrplaytime_top_time_{1-10}_hours% : Shows the number of hours the top player has played.
  • %tdrplaytime_top_time_{1-10}_days% : Shows the number of days the top player has played.
This plugin also gives you two events you can listen to. These events can be used in your own plugins.
  • PlayTimeCheckEvent is executed every time there is a check.
  • PlayTimeUpdatePlayerEvent runs on every player. When the playtime is updated at this event, you can request the old time and the new time of the player.
To use the api i recommend to use this maven repo
Todo
- Multi world support
- Afk time support
- More Placeholders

Comments

Posts Quoted:
Reply
Clear All Quotes

About This Project

  • Project ID
    279491
  • Created
    Oct 7, 2017
  • Last Released File
    Nov 19, 2023
  • Total Downloads
    6,450
  • License

Categories

Members

Recent Files