1.6.0
Compatibility
Required content
Changes
Playtime Rewards 1.6.0
GUI Changes Since 1.3.2
This changelog covers only the leaderboard GUI and GUI-configuration features added after version 1.3.2.
Added Leaderboard GUI
/playtime top now opens an in-game chest-style leaderboard instead of only displaying leaderboard entries in chat.
The GUI displays:
- Leaderboard position
- Player name
- Total playtime
- Current rank
- Special podium icons for first, second, and third place
- The viewing player’s own overall position
The leaderboard uses saved player data, allowing offline players to remain visible.
No client-side mod is required.
Added Text Leaderboard Fallback
The original chat-based leaderboard remains available through:
/playtime top text
This gives server owners and players access to both the visual GUI and the classic text output.
Added Podium Display Items
The top three leaderboard positions use special display items.
Original defaults:
#1 Gold Ingot
#2 Iron Ingot
#3 Copper Ingot
All remaining players use the configured default player item.
The viewer’s own position is displayed using a separate configurable item.
Added Configurable GUI Items
Leaderboard display items can now be changed through config.json without rebuilding the mod.
Available settings:
"leaderboardFirstPlaceItem": "minecraft:gold_ingot",
"leaderboardSecondPlaceItem": "minecraft:iron_ingot",
"leaderboardThirdPlaceItem": "minecraft:copper_ingot",
"leaderboardDefaultPlayerItem": "minecraft:player_head",
"leaderboardYourPositionItem": "minecraft:clock"
Example custom podium:
"leaderboardFirstPlaceItem": "minecraft:nether_star",
"leaderboardSecondPlaceItem": "minecraft:diamond",
"leaderboardThirdPlaceItem": "minecraft:emerald"
Any valid vanilla or modded item ID can be used.
Invalid item IDs fall back safely and generate a console warning.
Added Configurable GUI Text
All primary leaderboard text can now be edited through the configuration.
Available settings include:
"leaderboardGuiTitle": "&6&lPlaytime Leaderboard",
"leaderboardEntryText": "&6#{position} &f{player} &7| &e{playtime} &7| &b{rank}",
"leaderboardYourPositionText": "&eYour position: &6#{position} &7| &e{playtime} &7| &b{rank}",
"leaderboardUnrankedText": "&7Your position: Unranked"
Supported placeholders:
{position}
{player}
{playtime}
{rank}
{seconds}
This allows server owners to completely restyle the title and player-entry text.
Added Classic Color Formatting
GUI text supports standard Minecraft ampersand formatting codes:
&6 Gold
&7 Gray
&a Green
&b Aqua
&c Red
&d Light Purple
&e Yellow
&f White
Formatting codes are also supported:
&l Bold
&o Italic
&n Underline
&m Strikethrough
&r Reset
Example:
"leaderboardGuiTitle": "&6&lPlaytime Leaderboard"
Added Hex Color Support
GUI text can now use six-digit hex colors.
Example:
"leaderboardGuiTitle": "&#fbbf24&lPlaytime Leaderboard"
Hex colors can be mixed with classic formatting codes.
Added Per-Character Gradient Support
Custom gradients can be created using a different hex color for each character.
Example:
&#fbbf24P&#fabc22l&#fab81fa&#f9b51dy
A full formatted title can be placed directly into the configuration:
"leaderboardGuiTitle": "&#fbbf24&nP&#fabc22&nl&#fab81f&na&#f9b51d&ny&#f9b21a&nt&#f8af18&ni&#f7ab15&nm&#f7a813&ne&r"
The final &r resets the color and formatting state.
This format works well with external Minecraft gradient-text generators.
Improved GUI Safety
The leaderboard interface is now fully read-only.
Players can no longer:
- Remove leaderboard display items
- Place inventory items into leaderboard slots
- Shift-click items into the GUI
- Drag items across GUI slots
- Use item-transfer actions on display slots
- Lose cursor items by clicking the GUI
Earlier GUI builds could allow an item-transfer attempt to begin even though the backing inventory rejected the final write. This could make player items appear to disappear.
The GUI now uses non-interactive display slots, preventing the transfer from starting.
Improved Offline Player Display
Leaderboard entries are generated from stored player records rather than only the current online-player list.
Offline players therefore continue to display with:
- Last known username
- Saved playtime
- Saved rank
- Overall leaderboard position
Added Viewer Position Display
The bottom section of the leaderboard shows the requesting player’s overall position.
Example:
Your position: #14 | 4d 7h | Veteran
The text and display item are both configurable.
An alternate unranked message is shown when the viewer does not yet have a leaderboard position.
Server-Side Compatibility
The leaderboard continues to use a vanilla inventory interface.
This means:
- No client-side companion mod is required
- Vanilla clients can open the leaderboard
- The feature remains compatible with the server-side design of Playtime Rewards
Command Summary
/playtime top
Opens the leaderboard GUI.
/playtime top text
Displays the classic chat leaderboard.
Upgrade Notes
After upgrading from 1.3.2:
- Stop the server.
- Back up the existing configuration and player data.
- Replace the old JAR.
- Start the server.
- Review the new leaderboard settings in
config.json. - Fully restart after editing the GUI configuration.
Existing player playtime, ranks, LuckPerms groups, and claimed rewards are unaffected by the GUI update.
Optional dependencies
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:IlNOeQdm:AHGaqsDb"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:IlNOeQdm:AHGaqsDb"
}



