Well, if it’s the server who controls the game world, high pingers still
receive an advantage.
Let’s say the lerp 1000 ms for both clients and the server tick is 50, which
means the server sends out a packet every 20 ms. The client’s cl_updaterate is
also 50, which means the clients send out a packet every 20 ms
Let’s redo the above example. My ping is 5 and my opponent’s is 45. At 1000 the
server sends out a processed packet, where I have been running from south to
north for a long time and my opponent is aiming at me. At 1045, my opponent
receives the packet. His client then rendered what happened at 945 ms using the
packets it just received and the packets it received at 1005 and 1025.
At 1045, my opponent killed me with his AWP. Then his client sends a packet
containing this command to the server at 1060. It arrives at 1105. Then the
server compares where I was at 945. Because the interpolation on his client is
perfect, the server confirms the kill. At 1120, the server sends out the packet
containing the confirmation to my client. And it arrives at 1105.
My client is trying to render what happened at 1005 according to the last 3
packets I received at 1105 (containing what happened at 945), 1085 (containing
what happened at 925) and 1065 (containing what happened at 905). And guess
what? The packet says I was already dead at 945. So even after I ran behind the
crate in this 60 ms, I was still killed.
That’s should be the correct explanation for what really happened in my server.
So please tell me how I can avoid being killed 60 ms ago?
Regards,
From: Netshroud
Sent: Wednesday, March 12, 2014 1:27 PM
To: [email protected]
Subject: Re: [Csgo_servers] Lag compensation is punishing low-pingers?
In the lag compensation mechanism, the high-ping players dictates the game
world, not the low-ping players.
Actually, the server controls the game mode. The lag compensation mechanism
rewinds time for players of all ping so that what they see on their screen is
what they’re interacting with. When you shoot a player, even if you have 5ms
lag time, the server goes and rewrites history so that what you shoot is what
you were aiming at. When a player with 300ms lag does the same thing, the
server rewrites history (just more history) too.
There’s no advantage or disadvantage to be had depending on your ping - in fact
without lag compensation, players with high ping would be severely
disadvantaged. What’s happening with lag compensation is not that you were
sentenced to death 100ms ago, but rather you were running for 100ms based on a
prediction that turned out to be false - the prediction that nobody killed you
in that time. Your death is retroactive.
On 12 Mar 2014, at 8:54 am, Jermin Hu <[email protected]> wrote:
Of course low pingers have a disadvantage. In the lag compensation mechanism,
the high-ping players dictates the game world, not the low-ping players. That’s
why my opponent only need to focus on what’s happening the screen. If he hits
me on his screen, the server would think he hit me.
My game world doesn’t have the final say, because if it is, I shouldn’t die
after I run behind the crate.
Let’s say the server time now is 100 (unit: ms). Let’s assume itt takes no
time for server to process the received packets. That means when the server
receives a packet, it can immediately send out the packet containing the
processed game world to both players. And both players’ game client can render
the received packet right away.
My ping is 5 and my opponent’s is 45. At 100 the server sends out a processed
packet, where I have been running from south to north for 10 ms and my opponent
is aiming at me. At 145, my opponent receives the package, his game client uses
the packet containing data of what I was doing at 95 to interpolate (predict)
where I should be rendered on his screen at 145.
If I suddenly stopped and started running reversely at 96, his client is
unable to correctly predict it, because the packet he received only contains
what I was doing at 95 (100-5). His client still thinks that I am running to
north. After he hit me on his screen, his client sends the packet containing
this information to the server. It arrives at 190, and the server processes and
conforms the kill. Then it takes another 5 for the processed packet to reach my
computer. At this time (195), I actually have been running south for 99 ms. But
in the packet the server sent to me, I am already dead. That is I have been
sentenced to death 100 ms ago. The running I have been doing for 100 ms is in
vain.
What a big error! Keep in mind this doesn’t include server processing time
and client rendering time yet. And 45 is really not a high ping in my server.
This is what really happened when I get killed after I run behind the crate.
If low pingers have the final say, it would be the high pingers who suffer
this frustration.
P.S. I have tried turning off sv_unlag. It turned out to be a bigger mess.
Players can hardly hit each other when moving.
P.P.S. About the calculation of the theoretical max ping. We all know light
can travels around the earth 7.5 times in one second. That means every round
takes about 1/7.5 = 0.1333 seconds = 133.3 ms. The ping shown in net_graph too
is round trip delay. That’s the time taken by a packet to travels to the target
computer and back.
Best regards,
From: Moritz
Sent: Wednesday, March 12, 2014 3:15 AM
To: [email protected]
Subject: Re: [Csgo_servers] Lag compensation is punishing low-pingers?
Hey,
you're always stating that you have a disadvantage. It is not a disadvantage
since your enemy has (like you) no control how you are seen on his the screen,
and no control how he is seen on your screen.
Also, saying you have a disadvantage implies that he has an advantage, witch
is false. He has the same window of time than you when anyone peeks, which is
what I would consider fair.
"I think that as a person who provides (high-quality) servers for the
community for free, I shouldn’t receive an disadvantage when playing in my own
server."
Let's exaggerate that: "On my own server I should be allowed to cheat, since
there could be chaters that could have an advantage".
I'm wondering why should you (or anyone) should have any advantage on your
server? In a fair game, no one has an advantage.
Now, I can just repeat what I just said: Since nobody has an advantage (It
isn't easier for the high-ping-player to hit you!) you don't have any
disadvantage.
If you really want to fix this, use sv_unlag, but please notify players about
this behavior, because it directly affects gameplay.
If you think: "People that are closer to the Datacenter should be harder to
hit" then you can enable this.
I still advice against it.
Best regards,
------------------------------------------------------------------------------
_______________________________________________
Csgo_servers mailing list
[email protected]
https://list.valvesoftware.com/cgi-bin/mailman/listinfo/csgo_servers
_______________________________________________
Csgo_servers mailing list
[email protected]
https://list.valvesoftware.com/cgi-bin/mailman/listinfo/csgo_servers
--------------------------------------------------------------------------------
_______________________________________________
Csgo_servers mailing list
[email protected]
https://list.valvesoftware.com/cgi-bin/mailman/listinfo/csgo_servers
_______________________________________________
Csgo_servers mailing list
[email protected]
https://list.valvesoftware.com/cgi-bin/mailman/listinfo/csgo_servers