Let's talk

UE Latency Kit v0.1.0

Network emulation profiles and a PowerShell launcher that runs a packaged Unreal Engine 5 server and several clients at real-world latency and packet loss, then records and summarizes each client's round trip, packet loss and bandwidth, so bugs that hide in PIE show up before players find them.

The problem
Play In Editor runs every client on one machine with no lag, so desync, rubber-banding and double-fired abilities stay hidden until players find them.
What it replaces
Setting packet simulation flags by hand, launching and arranging each client yourself, and guessing whether the lag you set is the lag you got.
What it saves
Our estimate: about 15 minutes per test session, and the bugs a no-lag test never shows. One command runs a server and up to 8 clients at 60, 150 or 250 ms.
Who it is for
Anyone testing a UE5 multiplayer game before a playtest or release.

Your multiplayer works in Play In Editor with four clients on one machine. Players are 150 ms away and lose packets. This kit makes your packaged build feel what they feel.

Free, MIT licensed, no sign-up. Works with any Unreal Engine 5 project; no plugin to install.

What is inside

FileWhat it does
Config/DefaultEngine.NetEmulation.iniThree packet simulation profiles (average, bad, awful) to paste into DefaultEngine.ini
Scripts/Run-Clients.ps1Starts a listen or dedicated server plus up to 8 clients in tiled windows, all with the same profile

Quick start

  1. Package a Development build (packet simulation is compiled out of Shipping).
  2. Run:
PowerShell
.\Scripts\Run-Clients.ps1 -Game "D:\Builds\Windows\MyGame.exe" -Map "/Game/Maps/Arena" -Clients 3 -Preset bad
  1. Play the thing your players complain about. Then run it again with -Preset awful.

What to look for

  • Abilities that fire twice, or fire on the client and never on the server
  • Montages that play on the owner and not on other clients
  • Health or ammo UI that jumps back after a hit
  • Doors, pickups or projectiles that snap

Full walkthrough: Test UE5 multiplayer at real latency.

Help

If the bad profile breaks things you cannot trace, a Diagnostic finds the ownership or prediction cause in two days.

Changelog

v0.1.0 (2026-10-30)

  • First release: three packet simulation profiles and the Run-Clients.ps1 launcher.
  • Presets keep PktOrder 0: in UE 5.x a non-zero PktOrder turns PktLag off.
  • INI profiles are halved, because server and client both apply PktLag.
  • Launches <Project>/Binaries/Win64/<Name>.exe rather than the bootstrap exe, so the printed process ids close the game.
  • Stops if the port is already in use, instead of letting clients join a leftover game.

Tutorials that use it

Still desyncing in packaged builds?

Free code fixes one symptom. A Diagnostic finds the cause across your project in two days.