Steve, you're wrong on thinking how server generates frames... It doesn't
wait for everybody to submit the data for several reasons:

- in this case people with higher ping would definitely lag the server and
it doesn't matter whether the ping is 100 or 500, any player with ping
higher than other would cause lag
- every client has own network settings which control the number of updates
it sends to server per second and these settings are not always the same as
server's tickrate (number of world simulations per second which you referred
to as frames)
- single packet lost in transit would cause yet bigger lag on the server.

>From what you've written I see that you're talking about HL1 engine, but
that doesn't differ too much with Source so if you're really curious on how
networking works in Valve games, please refer to
http://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking for
general description. If you want more information, dig
http://forums.steampowered.com/forums - there are quite some comprehensive
guides on the topic (but be careful, a lot of speculation can be found there
as well)...

Regards,
Newbie

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Steve Dawson
Sent: Thursday, May 04, 2006 08:22 PM
To: [email protected]
Subject: [hlds] High Ping Players Lag Server?

--
[ Picked text/plain from multipart/alternative ] OK I have heard high
pingers do lag the server by 1 person and the rest said that they dont.
When thinking about it for second, what I want to know is how can they not
lag the server.  Think about this scenario:

10 players all with 30 ping, rate 20000, update and cmd rates of 101,
ex_interp .01,
server:  200 fps, maxupdate 101, max rate 20000, sv_maxunlag 0.5

On the server, a frame, or a world update, can be be finalized and sent to
the players only after it has recieved all player data relating to that
frame.
Since the server recieves data from all players within 40ms from each
player, it can calculate and send that world update immediately after But if
there is a player with 300 ping, doesnt the server have to wait to recieve
that players packet for it to be able to finalize the world update and send
it to the players?  up to .5 seconds because of max unlag?

Let me give an example:
you have 3 players.
players a and b have 30 ping, rate 20000, update and cmd rates of 101,
ex_interp .01.
player c has 350 ping, update and cmd rates of 20, ex_interp .1.
Lets say that at a specific point in time, player A shoots at player B's
head.  The server recieves the update packet for both of those players for
that point in time and is able to calculate that player a killed player b.
the server is able to determine this 40ms after it happened.  But even so,
it cant finalize that  kill  and send it  in a world update because what
happens if 10 ms before player A shot player B, player C shot player A and
killed him?
So i figure that the world data must be stored in a timeline and that any
givin point on the timeline can only be finalized after all client data for
that specific has been recieved, or 500ms has passed because sv_maxunlag is
500ms.

Considering all of this, wouldnt it be better to set sv_maxunlag .2 so that
world updates would be sent at maximum 200ms after they occured?

Please let me hear feedback on my assumptions and let me know how i am wrong
or how i am right.  Thank you.
--

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives,
please visit:
http://list.valvesoftware.com/mailman/listinfo/hlds



_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlds

Reply via email to