Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for TheDutchRuben

Playtime plugin for minecraft servers with mysql support and custom milestones/rewards

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!

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 : Reset user's time /playtime set

Milestone commands

/milestone create

Repeating Milestone commands

/repeatingmilestone create

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 : 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

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


  • Multi world support
  • Afk time support
  • More Placeholders


Published onApril 22, 2023

Pinned Versions