Repository navigation
Leaderboard related placeholders
Go back to Placeholders index
| Placeholder | Description | Details |
|---|---|---|
%PTM_playtime_top_<rank>% |
Displays the total playtime for the player at <rank> on the leaderboard |
Playtime format can be customized |
%PTM_playtime_top_#_<rank>% |
Displays the total playtime (in specified time unit) for the player at <rank>
|
Replace # with one of the available time units
|
%PTM_nickname_top_<rank>% |
Displays the username for the player at <rank>
|
|
%PTM_lastseen_top_<rank>% |
Displays the last seen date for the player at <rank>
|
Datetime format can be customized |
%PTM_lastseen_elapsed_top_<rank>% |
Displays the elapsed time since the player at <rank> was last seen |
Playtime format can be customized |
%PTM_lastseen_elapsed_top_#_<rank>% |
Displays the elapsed time (in specified time unit) since the player at <rank> was last seen |
Replace # with one of the available time units
|
%PTM_lp_prefix_top_<rank>% |
Displays the LuckPerms prefix for the player at <rank>
|
Requires LuckPerms to be installed and enabled |
%PTM_rank% |
Displays the current player's leaderboard position | Shows the configured placeholders.not-in-leaderboard-message value if the player is not ranked |
%PTM_rank_<nickname>% |
Displays the leaderboard position for a specific player | Shows the configured placeholders.not-in-leaderboard-message value if the player is not ranked |
The maximum supported value for <rank> is 100.
When %PTM_rank% or %PTM_rank_<nickname>% is evaluated for a player who has no leaderboard position, the plugin returns the value of placeholders.not-in-leaderboard-message from config.yml instead of a number. The default value is -.
placeholders:
not-in-leaderboard-message: "-"Error messages are disabled by default. To enable them, set enable-errors to true under the placeholders field in config.yaml.
Cause: The requested leaderboard rank either exceeds the number of players in the database, or the rank value could not be parsed as a valid integer. The maximum supported rank is 100.
Steps to check:
- Ensure
<rank>is a plain integer (e.g.1,10) with no extra characters. - Verify that enough players have joined the server for the requested rank to exist. For example,
%PTM_playtime_top_11%will error if fewer than 11 players are tracked.
Cause: The player's database record exists but the last_seen field is null. This typically happens for players imported via a database migration, or for players who joined before last-seen tracking was enabled.
Steps to check:
- The field is populated automatically when the player disconnects. Have the affected player join and leave the server once.
Cause: The LuckPermsManager is null at evaluation time, meaning LuckPerms was not detected or failed to initialize when PlaytimeManager loaded.
Steps to check:
- Install LuckPerms on the server if it is not already present.
- Perform a full server restart rather than a reload — a reload may not re-run the manager initialization logic.
Cause: LuckPerms is loaded, but the async call to retrieve the player's prefix threw an InterruptedException or ExecutionException. This can be caused by thread interruption, a LuckPerms internal error, or the player's UUID not being recognized by LuckPerms.
Steps to check:
- Check the server console for LuckPerms errors at the time the placeholder was evaluated.
- Verify that the player at the requested leaderboard rank has a valid UUID registered in LuckPerms. Players from offline/cracked setups may lack a LuckPerms record.