
Better Ping Display [Fabric] — Minecraft Java Edition 1.15.2 - 1.21.11+
Afhængigheder: · Loader: Fabric, Quilt · Minecraft-version: 1.15.2 - 1.21.11+ · Modversion: 1.2.0 · Obligatoriske afhængigheder: Fabric API…
Afhængigheder: · Loader: Fabric, Quilt · Minecraft-version: 1.15.2 - 1.21.11+ · Modversion: 1.2.0 · Obligatoriske afhængigheder: Fabric API Minecrafts standardgrænseflade viser spillernes forbindelsesforsinkelse i spill
Afhængigheder:
· Loader: Fabric, Quilt
· Minecraft-version: 1.15.2 - 1.21.11+
· Modversion: 1.2.0
· Obligatoriske afhængigheder: Fabric API
Minecrafts standardgrænseflade viser spillernes forbindelsesforsinkelse i spillerlisten (tasten TAB) som et grafisk ikon bestående af fem lodrette søjler. Denne tilgang giver ikke præcis information om forbindelsens stabilitet, da det samme ikon kan svare til en forsinkelse på både 80 millisekunder og 140 millisekunder. I konkurrencepræget gameplay, PvP-kampe eller under administration af store spilservere er præcise ping-værdier kritisk vigtige. Modifikationen Better Ping Display [Fabric] løser dette problem ved at erstatte de abstrakte grafiske søjler med en præcis numerisk forsinkelsesværdi i millisekunder direkte i spillerlisten.
Teknisk virkemåde og begrænsninger ved standardrenderingen af forsinkelse
For at videregive information om ping sender Minecraft-serveren pakker med opdatering af spillerlisten (i moderne versioner af spillet håndteres dette af pakken ClientboundPlayerInfoUpdatePacket). Hver post i pakken indeholder en heltalsparameter for forsinkelse (latency) udtrykt i millisekunder. Spillets klientdel modtager disse data og gemmer dem i hukommelsen som en egenskab ved objektet PlayerInfo (i tidligere versioner kendt som NetworkPlayerInfo).
Under renderingen af spillerlisten på skærmen gennemløber den vanilla-grænsefladeklasse PlayerListHud (eller PlayerTabOverlay i Yarn-mappings) alle tilsluttede brugere og bestemmer forsinkelsesniveauet. Visningen af ikonet håndteres af den interne metode renderLatencyIcon (eller renderPingIcon). Denne metode sammenligner heltallet af millisekunder med faste tærskler:
· En værdi under 0 viser ikonet for manglende forbindelse (et rødt kryds).
· En værdi under 150 millisekunder svarer til de maksimale fem søjler.
· Intervallet fra 150 til 299 millisekunder viser fire søjler.
· Intervallet fra 300 til 599 millisekunder viser tre søjler.
· Intervallet fra 600 til 999 millisekunder viser to søjler.
· En forsinkelse fra 1000 millisekunder viser én søjle.
På denne måde kasseres de præcise numeriske værdier umiddelbart før de vises på skærmen, og i stedet tegnes den tilsvarende sprite fra teksturfilen icons.png.
Better Ping Display ændrer denne proces ved hjælp af Mixin-systemet. Injektionsklassen ændrer adfærden i PlayerListHud i det øjeblik, hvor hver spillers række tegnes. Modifikationen opfanger kaldet, der tegner de grafiske søjler, og blokerer dets udførelse (eller udfører det parallelt afhængigt af konfigurationen). I stedet udføres et kald for at hente den præcise latency-værdi via objektet PlayerInfo. Derefter sender modden dette tal til klientens tekstrenderer Font, som dynamisk tegner tegnene på skærmen under hensyntagen til den konfigurerede stil og placering af grænsefladeelementerne.
Hovedfunktioner: numerisk visning, farveskala og grafiske søjler
Modden udvider netværksstatistik-grænsefladens informationsværdi gennem følgende funktioner:
· Numerisk indikator i realtid: Viser den præcise forsinkelse i millisekunder. Spilleren ser den faktiske forbindelsestilstand for hver deltager uden at skulle holde markøren over eller indtaste diagnosticeringskommandoer i chatten.
· Automatisk farvemarkering: Modifikationen farver som standard ping-teksten afhængigt af forbindelsens kvalitet. Lav forsinkelse (under 100 millisekunder) fremhæves med grønt, mellem (fra 100 til 299 millisekunder) får en gul eller orange farve, og høj forsinkelse (fra 300 millisekunder og opefter) farves rød. Dette gør det muligt øjeblikkeligt at identificere spillere med en ustabil forbindelse.
· Kombineret visningstilstand: Brugeren kan aktivere samtidig visning af numeriske værdier og de oprindelige vanilla-pingsøjler. I dette tilfælde tegnes teksten til venstre for det grafiske ikon, hvilket bevarer Minecrafts velkendte visuelle stil.
· Klientarkitektur: Modifikationen fungerer udelukkende på klientsiden. Den kræver ikke installation på serveren og sender ikke yderligere forespørgsler til serveren. Modden læser kun de trafikoplysninger, som Minecraft-serveren som standard sender til alle tilsluttede klienter. Takket være dette fungerer Better Ping Display på alle servere, herunder officielle Realms-servere og offentlige servere uden modunderstøttelse.
Indstillinger, kompatibilitet og økosystem
Konfiguration af visningsparametrene sker ved at redigere filen betterpingdisplay.json, som automatisk oprettes i mappen config efter den første start af spillet. Filen indeholder følgende indstillinger:
· autoColorPingText – et logisk flag (true/false). Ved værdien true ændres ping-farven automatisk fra grøn til rød afhængigt af forbindelseshastigheden. Hvis false er angivet, bliver farven statisk og bestemmes af den næste parameter.
· pingTextColor – et tekstfelt til at angive den hexadecimale farvekode (for eksempel #A0A0A0 for lysegrå). Denne farve bruges kun, når den automatiske farvemarkering er slået fra.
· renderPingBars – et logisk flag, der styrer renderingen af de standard vanilla-forsinkelsessøjler ved siden af den numeriske indikator.
· pingTextFormatString – en tekstformateringsstreng. Standardværdien er %dms, hvor tegnet %d er en obligatorisk teknisk markør, der under renderingen erstattes af det aktuelle antal millisekunders forsinkelse.
I modversion 1.2.0 og nyere blev der tilføjet understøttelse af en grafisk indstillingsgrænseflade direkte i spilmenuen. For at få adgang til den visuelle konfigurationsmenu i modlisten skal man installere to ekstra hjælpekomponenter: biblioteket YetAnotherConfigLib (YACL) og modden Mod Menu. Når de er til stede, vises der i spillet et praktisk vindue med kontakter og skydere til ændring af parametrene for Better Ping Display.
Modifikationen er kompatibel med de fleste klientoptimeringer (såsom Sodium, Lithium, FerriteCore) og grafiske forbedringer (Iris Shaders). Den forårsager ikke konflikter under spil på servere med brugerdefinerede plugins til spillerlister, da den kun ændrer den lokale renderingsfase på klienten uden at påvirke netværkspakkernes struktur.
Parameter | Værdi | Beskrivelse |
| TRUE | Automatisk tekstfarve. Hvis aktiveret (true), ændres tallenes farve automatisk afhængigt af forbindelsens kvalitet (for eksempel grøn ved lavt ping, rød ved højt). |
| FALSE | Visning af pingsøjler. Bestemmer, om de standard vanilla-søjler (pinde) for forbindelseskvalitet skal vises. Her er de slået fra (false) for at give plads til teksten. |
| "#A0A0A0" | Tekstfarve. En statisk visningsfarve (i HEX-kodeformat, her lysegrå). Den anvendes, hvis den automatiske farvelægning (autoColorPingText) er slået fra. |
| "%dms" | Visningsformat. En skabelon til at vise teksten på skærmen. Variablen %d erstattes automatisk af dit aktuelle ping-tal, og ms tilføjer betegnelsen "millisekunder" (resultatet ser ud som "45ms"). |
Konklusion
Better Ping Display [Fabric] er en kompakt og effektiv klientmodifikation, der retter en væsentlig mangel ved Minecrafts standardspillerliste. I modsætning til lignende løsninger som Numeral Ping eller Ping Display har denne mod en enkel integration med YACL-biblioteket til justering af parametre direkte i spillet og giver mulighed for at bevare vanilla-forsinkelsesikonerne. Den primære begrænsning er, at opdateringsfrekvensen af tallene afhænger af serverens egne indstillinger (som standard sender Minecraft-serveren ping-statistikopdateringer en gang hvert par sekunder, så øjeblikkelige udsving i forsinkelsen vises ikke med det samme). Modden er ideel til spillere af netværkstilstande og serveradministratorer, der har brug for tydelig kontrol over netværksparametre uden unødig belastning af systemet.
Installation
En typisk installation tager omkring 5 minutter. Forløbet er det samme; kun Loader og den matchende build er forskellige.
- 1Install a mod loader (Forge, Fabric or NeoForge) that matches your Minecraft version.
- 2Download the mod file (.jar) built for that same version.
- 3Place the .jar into your .minecraft/mods folder.
- 4Launch Minecraft with the modded profile and check the mod loads in-game.











