WolfRAT wiki › Lag compensation

🎯 Lag compensation

Proper, modern lag compensation for Joint Ops. Higher-ping players hit what they see on their screen, the same way today's shooters do it. It goes into your running server from WolfRAT: retail or TAC, no onHook, no exe change, and players download nothing.

New in WolfRAT 2.9.7. It has already been tested live on the FMJ UK server, with players from the UK, the US, Venezuela and China. You'll find it on the Server tab, on the 🎯 Lag compensation page.

Why Joint Ops needs it

In Joint Ops the server decides every hit, and it checks each bullet against where people are on the server right now. A player on 200 ping sees everyone a fifth of a second in the past. When they aim straight at a running man and fire, the server says he has already moved on, and the shot misses. That is why high-ping players have always had to lead their targets, guessing how far ahead to aim, and why the game never felt fair from the other side of the world.

What it does

The server now remembers where every player was for the last second. When a higher-ping player fires, the bullet is checked against where the target was on that player's screen when they pulled the trigger, not where the target is on the server now.

Shoot what you see, and it counts. No more leading.

This is the method modern shooters use, known as server-side rewind. Counter-Strike and Valve's other games work this way. Joint Ops came out in 2004 without it. This is a fresh build for JO's own engine, written from how the game really checks its bullets, not a ping equaliser or a delay added on top.

Does it really help? The numbers

Every shot from a rewound player is checked twice: once with the rewind and once the old way. That gives a straight answer to "would that shot have hit without it?". These are real nights on the FMJ UK server:

NightHits with itHits the old wayGain
Thursday 15 October (Hamshop, elk road, A-99, Oscar, Angel and more, pings up to 280+)1,2011,003+20%
Saturday 17 October (fewer high pings that night)511474+8%

Only shots from players over the minimum ping are counted. The more lag your players have, the more it gives them. The players could feel it too. On Thursday night they told us they didn't need to lead any more.

What it never does

Switching it on

  1. Run WolfRAT on the same PC as the game server and connect to it. It has to be the same machine, because WolfRAT puts the lag compensator into the running server.
  2. Go to the Server tab, then the 🎯 Lag compensation page.
  3. Tick On. The line underneath turns green and shows the setting in use.

A map change keeps it. A server restart or a crash takes it away, so the server is back to normal Joint Ops. To have WolfRAT put it back automatically, tick Put it back on by itself after a server restart. WolfRAT has to be running for that.

It works on retail Joint Ops servers and TAC servers alike. Nothing is written to your game files. Close WolfRAT and the lag compensator keeps running until the server restarts.

The settings

SettingWhat it meansStart with
ExtraHow far back the server looks is the player's ping plus this. The player's screen is a little older than their ping alone, because the game also takes time to draw frames and process server ticks. The Extra covers that.40 ms
Minimum pingPlayers below this ping aren't rewound at all.80 ms
Maximum rewindNobody is rewound further than this, however bad their ping is.400 ms
Watch onlyCounts everything but changes no hits. Use it on a first night to see what it would do on your server before you switch it on for real.Off

For example, a player on 125 ping is checked against where people were 165 ms ago (125 + 40). A player on 30 ping isn't rewound at all.

The live numbers

The page shows how it's doing as you play, refreshed every second:

An empty server doesn't run it. The page says "Waiting for players" until someone joins.

If the page says something else

It saysWhat to do
Needs WolfRAT on the same PC as the game serverRun WolfRAT on the server PC and connect to the server on the Server connection page.
Waiting for write access to the serverRun WolfRAT as administrator.
Something else already changes the game's hit codeYour server already has lag compensation from somewhere else, such as the onHook DLL's own LagCompEnabled setting. WolfRAT leaves it alone, so use one or the other.
On, from an older WolfRATTick the box to switch to this version. The numbers start again.