Mineuniverse
Mods
Proper Ping

Proper Ping

MOD
Measure and display ping properly
by Unixkitty
Download Claim this project
5,400 downloads
0 likes
Updated Oct 14, 2026
0 hypes
Map and Information Utility & QoL
Advertisement Remove ads with Premium →

Fabric and newer Minecraft versions coming soon.


Vanilla ping/latency calculation always seemed incredibly inaccurate and delayed to me.

They only send the latency value to clients once every 30 seconds: 
public void tick() {
   if (++this.sendAllPlayerInfoIn > 600) {
      this.broadcastAll(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.UPDATE_LATENCY, this.players));
      this.sendAllPlayerInfoIn = 0;
   }
}
And this is how they "calculate" it: 
int i = (int)(Util.getMillis() - this.keepAliveTime);
this.player.latency = (this.player.latency * 3 + i) / 4;

This mod goes around Vanilla and measures latency with a similar custom packet, but takes a proper average of 5 last RTT (round-trip-time) results.

Besides that, it also adds a customizable hud element to always see your ping with options such as:

  • Hide completely
  • Position anywhere on the screen
  • Show last 5 latency measurements in the same hud element
  • Show numerical readings for other players on the server instead of abstract bars (there is a config option serverside to change the frequency of the server broadcasting these values to everyone)
Example config with default values: 
["Ping HUD"]
      #Enable ping HUD
      pingHudEnabled = true
      #Additionally show 5 last ping values
      showPingQueue = false
      #Draw text with a shadow
      drawTextWithShadow = true
      #Draw ping either on the left side (true), or on the right (false)
      leftOrRight = true
      #How many scaled GUI pixels to start drawing from the edge of the screen
      #Range: > 0
      horizontalPadding = 4
      #On which line counting from the top to start drawing from
      #Range: > 0
      lineFromTop = 1
      #How many scaled GUI pixels to start drawing from the top of the screen
      #Range: > 0
      verticalPadding = 4
   
   [Other]
      #Show numbers in milliseconds in player list
      playerListNumbers = true

Example of a full display with the last 5 measurements turned on, numerical player list values, positioned on the right side of the screen:


FAQ

Q: Forge?

A: Forge.

Q: Can I include your mod in a video?

A: As long as you include a link to the mod/modpack (if it happens to be in one), absolutely

Q: Can I add your mod to a modpack?

A: CurseForge/Modrinth modpacks are cool.

proper_ping-1.19.2-1.0.0.jar
MC 1.19.2, Forge
Release 2024-03-09 Get
proper_ping-1.19.2-1.0.1.jar
MC 1.19.2, Forge
Release 2024-03-09 Get
proper_ping-1.20.1-1.0.0.jar
MC 1.20.1, Forge
Release 2024-03-09 Get

More from Unixkitty

Advertisement Remove ads with Premium →

You Might Also Like