Forum Discussion
I can confirm that VPNs don't reduce ping. If someone from Australia connects to a Battlefield server in California while also connecting through a VPN in California. The Australian player is still going to have a 100+ms ping time despite the VPN server being in California.
My understanding of how lag compensation works is the game server tries to synchronize the game clock on each client so that when all the clients reply to the server, all their replies arrive at the server at the exact same time down to the millisecond.
Obviously this is hard to do since each client connected to the game server has a different ping time which causes the replies from clients to arrive at the server at different times.
The server is constantly monitoring when it receives tick replies from each client and the server is constantly telling each client to send tick replies sooner or later based on if the client's tick reply is reaching the server too soon or too late.
For example, the server processing tick 50 so it needs all the tick 50 replies from all the clients to arrive at the server at the same time so the server can process all the bullets that have been fired, player movement, etc, from all the players (clients).
The only way for tick 50 from a 100ms player to arrive at the server at the exact same time as a 20ms player. Is for the game server to instruct the 100ms client to send it's tick 50 reply to the game server 80ms sooner than the 20ms player. That way the tick 50 reply from both players arrives at the game server at the exact same time.
This essentially puts the high ping player 80ms into the future. Meaning in certain circumstances the high ping player can come around a corner and see the low ping player 80ms before the low ping player even sees them.
I've heard forum members say they sometimes shoot at an enemy and it takes a while for their hits to register even if they have a low ping. I've noticed this as well when shooting at high ping players. It's like my shots take longer than usual to register.
I wonder if the game server doesn't register shots if it hasn't received a tick reply from the person you're shooting at. Maybe the server is waiting for the tick reply to see if the player you shot at happened to fire back so it can decide who won the gun fight.
That's kind of what it feels like to me. It also feels like lag compensation sometimes puts other players farther into the future which gives them more reaction time over other players. When playing with a really low ping time of 20ms feels like I have less time to react compared to 80ms or 100ms ping time. Probably due to peekers advantage explained above. Other times it feels like lag compensation randomly puts me a tick behind everyone else and the only way to fix it is to reboot the computer.
To summarize, lag compensation is the server instructing clients when to send their packets to the game server so all the packets from each client arrives at the server at the exact same time down to the millisecond. This synchronization is possible by 'compensating' for each client's ping time.
- Lady_One2 years agoNew Ace@OskooI_007 "the game server tries to synchronize the game clock on each client so that when all the clients reply to the server, all their replies arrive at the server at the exact same time down to the millisecond"
Even without packet loss, ping will constantly vary by a few miliseconds. Maybe your PC got a bit too much load. Maybe your router was a bit slow. Maybe the ISP's router was slow. Maybe some copper cables got mildly warmer/colder enough to make a difference.
You can not predict ping and somehow get clients to send data such that it will arrive at an exact time, down to the millisecond. It's not physically possible for a video game.
What is possible, is just not processing everyone's data immediately when the server receives it, or partially processing it and delaying the rest for later.
"instruct the 100ms client to send it's tick 50 reply to the game server 80ms sooner than the 20ms player"
This is also physically impossible. The game can't predict your inputs or whatever the implication is. You also don't understand ping. Ping is the time for data to reach the server, *and then come back*. For your theoretical of data reaching the server at the same time, a 100ms player would need to send 40ms earlier (still not physically possible). A 100ms player's actions reach the 20ms player in 60ms. The alternative is for the 20ms player to be sending their data 40ms later, or rather they'd need to send their data as late as the laggiest player in the server because you can't predict when someone will shoot the laggiest player. This would be very obvious in gameplay, it's obviously not happening.
This again can be solved on the server - it can just process your shot, see that it hits, but it hits a laggy player, and decide to only confirm/deny your hit some ticks later once the laggy player takes cover or something.
"lag compensation sometimes puts other players farther into the future"
There is no future. Laggy players are playing in the past, before you reacted and saw them. The laggy player rounded the corner and shot at you, and you did not react on their screen because they didn't receive the data for your reaction yet.
"I've heard forum members say they sometimes shoot at an enemy and it takes a while for their hits to register even if they have a low ping"
Yes, this is an issue I have had and many people have. It's also one of the issues (among way worse) that was happening a lot on bot servers at launch. Bots have no ping. You are the laggiest player on a bot server.
"I've noticed this as well when shooting at high ping players"
How do you know they have high ping?
About Battlefield 2042 General Discussion
Recent Discussions
- 40 minutes ago
- 2 days ago
- 2 days ago