[CF-Devel] lag

Mark Wedel mwedel at scruz.net
Thu Nov 16 00:53:02 CST 2000


Michael Toennies wrote:
>
     
     
     >
     
      The word for it is "Client Prediction". It is the technique to "guess"
     
     >
     
      and/or calculate the moving
     
     >
     
      action of players with different lags to make them looking and playing as
     
     >
     
      all with the same lag
     
     >
     
      (and make it looking as there is no lag).
     
     >
     
     
     >
     
      We can simply implement the in cf. Not in the movement of course, but in the
     
     >
     
      damage.
     
     >
     
      To calculate the lag to the client is easy. We don't need a real exact
     
     >
     
      value.
     
     >
     
     
     
 Actually, this gets fairly complicated.

 For the server to determine lag, it must have client cooperation.  Doing that
is not hard.

 What is hard or impossible to to know that the client is telling the truth, and
how to deal with varying lag.  

The changing lag of the connection is not really hard to determine, but the fact
that it does change mean that you need to constantly keep checking the lag.

 The truthfulness of the client has never been assumed, and determining lag
would require truthfulness (Otherwise, if the server basically gives a bonus
(reduced damage), you can bet someone will come up with a hacked client that
reports higher lag numbers even if the lag isn't bad - player does better, and
everyone else seeing this feel cheated.)

 The fact the client is open source makes it very easy to make a non truthful
client.  From the getgo, it was always assumed that the client would not be
trustworthy (server keeps all its data and doesn't care what the client thinks
is going on).  I'd really hate to change that.

    
    


More information about the crossfire mailing list