TD LeaderBoard Changelog
Aktuell veroeffentlicht: 1.4.1
1.4.1
Changed
- Published resolved offline profiles in batches of at most 256 per server tick instead of processing the complete import in one tick.
- Counted every entry in the vanilla statistics directory against the 100,000-entry scan limit.
Fixed
- Prevented a vanished player from being refreshed as online during login.
- Kept undersized full-screen and board-configuration views inside their available area by showing a resize hint.
- Kept the vanilla player list available when the custom
TABleaderboard cannot fit the GUI-scaled width.
1.4.0
Added
- Added server-side Vanishmod compatibility so vanished players are no longer shown as online.
1.3.1
Fixed
- Prevented the full-screen leaderboard's first row from overlapping the settings at 180 GUI pixels in height by using compact control spacing.
1.3.0
Added
- Added LDLib2 2.2.37 or newer as a required dependency on both the client and server.
- Added metric tooltips and the shared TDEconemy-style backdrop to the rebuilt leaderboard interfaces.
Changed
- Rebuilt the full-screen leaderboard and board configuration interfaces with the shared TDEconemy-style LDLib2 visual design.
- Aligned the
TABoverlay, full-screen view, board configuration, and in-world display around the same gold, cyan, neutral, and status colour palette. - Updated the network protocol to version 3; clients and servers must use the same TD LeaderBoard version.
- Consolidated distance and metric formatting so the full-screen,
TAB, and in-world views present values consistently. - Consolidated loading, stale, timeout, import, and unavailable status text across the client interfaces.
- Cached sorted rankings by data revision, offline mode, sort metric, and direction so page and visible-column changes reuse the same ranking.
- Restored normal camera-frustum culling for 3D boards while retaining render bounds for the complete 2x4 structure and roof overhang.
Security
- Added separate per-player and server-wide rate limits for board-configuration packets.
- Bounded full-screen requests to page 100,000 before they enter server-side query handling.
Fixed
- Ensured LDLib2 tooltips render above all full-screen and board-configuration content.
1.2.4
Changed
- Added explicit atlas-bounded UV mappings to the overhang and every outer frame face.
- Matched the rear side-frame depth to the display panel.
Fixed
- Prevented out-of-range automatic frame UVs from sampling adjacent texture-atlas sprites, removing the persistent black vertical strip on the stone-brick board.
- Excluded Blockbench's extracted vanilla assets from release JARs.
1.2.3
Fixed
- Aligned the side frames with the display surface to remove recessed geometry on angled views.
- Extended the roof beyond the outer frame to prevent coplanar texture flickering at both outside corners.
1.2.2
Fixed
- Split both display panels at the middle seam and removed internal panel faces that could overlap.
- Removed internal roof-seam faces from both board variants.
- Eliminated flickering textures and the black center strip on the stone-brick board.
1.2.1
Added
- Added a server-authorized configuration screen that lets operators choose deaths, distance walked, or total distance for each 3D leaderboard.
- Added synchronized network messages for opening board configuration, applying validated metric changes, and updating tracking clients.
- Added a separate light 3D leaderboard variant with a normal stone-brick frame.
- Added a configuration shortcut from the board dialog to the complete personal leaderboard.
Changed
- Allowed regular right-clicks by non-operators to open the personal full-screen leaderboard while keeping board configuration restricted to operators and the single-player host.
- Improved placement validation, interaction routing, render bounds, support checks, and complete-structure cleanup for the 2x4 board.
- Returned fresh board items without block-entity settings so they stack up to 64 and use deaths when placed again.
Removed
- Removed the crafting recipe from the original 3D leaderboard; neither board variant has a crafting recipe.
Fixed
- Fixed board metric persistence and synchronization across chunk reloads, reconnects, server restarts, and tracking clients.
- Fixed text disappearing when the controller block left the camera frustum while another part of the board remained visible.
- Split the roof overhang into non-overlapping left and right models to prevent z-fighting at the center seam.
- Ensured breaking any controller or proxy part removes the complete structure and produces at most one board item.
1.2.0
Added
- Added independent, server-side metric selection and block-entity persistence for every placed 3D leaderboard.
- Added per-board snapshot storage so multiple boards can simultaneously display deaths, distance walked, or total distance.
Changed
- Kept world-board metric selection independent from each client's personal
TABand full-screen preferences.
1.1.0
Added
- Added the original craftable, placeable 2x4 3D leaderboard with a blackstone frame, gold accents, and a world-space display.
- Added safe eight-part placement with controller/proxy mapping, support validation, rotation-aware structure coordinates, and complete-structure removal.
- Added a five-second refresh cycle showing the six highest-ranked known players for the board metric.
- Added the board item, block models, block state, loot table, recipe, creative-tab entry, localization, and client block-entity renderer.
1.0.0
Added
- Released TD LeaderBoard for Minecraft 1.21.1, Java 21, and NeoForge 21.1.249 or newer within the 21.1 series.
- Added a server-authoritative replacement for Minecraft's player list while
TABis held. - Added the
/tdleaderboardcommand and a paginated full-screen leaderboard with up to 50 rows per page. - Added deaths, distance walked, and total distance metrics with ascending and descending sorting.
- Added deterministic tie-breaking through the remaining metrics, player name, and UUID.
- Added online status, player heads, names, formatted metric values, and ping information.
- Added optional offline-player statistics loaded once from local vanilla
statsfiles without external profile requests. - Added local profile-cache resolution for offline names while excluding unresolved profiles from results.
- Added client preferences for visible metrics, sort metric, sort direction, and offline-player visibility in
tdleaderboard-client.toml. - Added English and German localization, localized compact column headings, and an in-game acceptance checklist.
Changed
- Made the
TABpanel responsive to screen size, available HUD space, visible columns, and the number of returned rows. - Made the full-screen table, controls, pagination, and row capacity responsive from small windows through high resolutions.
- Added loading, stale-data, timeout, import-progress, empty-result, and omitted-row feedback.
- Allowed compatible NeoForge versions from 21.1.249 up to, but not including, 21.2.
Security
- Added bounded request and response codecs with enum, metric, page, page-size, row-count, and request-ID validation.
- Added per-player and server-wide snapshot request rate limits.
- Limited offline import to 100,000 regular files and 8 MiB per file without following symbolic links.
- Read live player statistics at most once per server tick and cached identical rankings by data revision.
- Bound responses to the matching request and query state so rapid page, sort, filter, and column changes cannot mix old and new data.
- Cleared all client snapshot state on disconnect so data from a previous server cannot be displayed after reconnecting.
- Kept all leaderboard data read-only: no vanilla statistics, world data, databases, or external profile services are modified.
Fixed
- Fixed control and row render ordering in the full-screen view.
- Prevented the
TABpanel from overlapping reserved HUD space or keeping empty rows in its background. - Prevented missing metrics from being displayed as false zero values while a different query was pending.