LERP / Rates!!!

Forum for discussion on the UKCS:CSS Servers

LERP / Rates!!!

Postby Flow'Tastix on Wed Apr 06, 2016 1:28 pm

Hi guys!!!
I've been asking this qeustion around the UKCS server now a long time, and i hear alot of different settings...

So here is a topic to see what you guys using for Lerp(ms) and rates, and what i'm using atm, and works best for me

We all know the max rate setting is 100.000.
But its about the cl_updaterate / cl_cmdrate and cl_interp/ cl_inter_ratio.

If i ask some guys from the server, some of them use defaults, that means : Cl_updaterate 66 and cl_cmdrate 66, with cl_interp 0.1 and cl_interp_ratio 2... wich give you a Lerp of 100.0ms
And some guys change the cl_interp to 0, wich give you a Lerp of 30.3ms
Now for what i'm using atm is... Cl_updaterate 66000 / cl_cmdrate 100... And if i then use cl_interp 0, i get a study 0.0ms Lerp white...
Im also using cl_interp_ratio 2, for me it hits better and i get a better registration of hits, if i then use 20.0ms lerp or 30.3ms lerp, i found out it gets worse..

What im not sure of is whats better to use lower Lerp or Higher Lerp. If you guys can help me out here i would appreciated alot!!
The only qeustion i have : Is cl_interp_ratio 1 better, and cl_interp 0, for me it give no different cause im using cl_updaterate 66000,
But i feel a different if i use cl_interp 0.1 it takes longer for me to kill enemy's.
If somebody know alot about this and can help me out here, whats best for the best Hit registration please reply here!!

This is what i've found on the net... : (but as i said everybody has different opinions and i like to hear about it:

When you're in game and you type "net_graph 4" (no quotes) in console, you see your default LERP at 100ms at the bottom right of the screen.

If your LERP is at 100ms, the time between when you click and when you shoot will be greater than if the LERP was at 33. But, as you lower the LERP, you lower the interpolation. Interpolation is what smoothes movement of entities on the server. A lower interpolation means less smoothing, and you can feel more intense lags.

For this reason the default settings are more visually pleasing. But a LERP of 100ms is only necessary if your "net_graph 4" PING is 100. My ping is 40, and I can get away with a LERP setting of 40ms. (I push it to the limits and get a stable 30.3ms) I know I can get away with this LERP setting and not have to endure any lagging because when I type "cl_interp 0" it runs at a stable white (does not blink yellow or orange) LERP 30.3ms. Here I am assuming you use the default value for "cl_interp_ratio 2".

If you're wearing your try hard pants and you can tolerate some lag for extreme accuracy and responsiveness, then do this:
cl_interp_ratio 1
cl_interp 0

The server will lock you to the allowed minimum LERP. Hopefully this helps!



Much appreciated!! Cheers guys thanks!! :cheers: :cheers:
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby Flow'Tastix on Wed Apr 06, 2016 5:58 pm

The coloring was abit to much i guess :) sry for that guys...
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby evil elmo on Wed Apr 06, 2016 6:07 pm

That was me flow, sorry but all those bright colours was a bit much on the eyes and made the post hard to read, hope you dont mind 2 much <3
User avatar
evil elmo
UKCS Vice President
Executive Admin
 
Player: evil elmo
STEAM_0:1:8885123
 
Posts: 2756
Joined: Thu Jan 04, 2007 12:10 pm
Location: Bournemouth Dorset

Re: LERP / Rates!!!

Postby Flow'Tastix on Wed Apr 06, 2016 7:02 pm

evil elmo wrote:That was me flow, sorry but all those bright colours was a bit much on the eyes and made the post hard to read, hope you dont mind 2 much <3

Not at all elmo, ive seen it after i made it, and i thought the same, this is much better thanks for it :) :D
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby Flow'Tastix on Wed Apr 06, 2016 7:51 pm

Here's what i'm using.

Image
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby Little_Devil on Mon Apr 11, 2016 2:01 pm

Now for what i'm using atm is... Cl_updaterate 66000 / cl_cmdrate 100.


lol no point as for 66,000, where did you get that from ?

Not that it matters so much, because the server limits the rates when you join to a minimum of 40 and a maximum of 66, which is ample.
These figures are variable anyhow because of how the game engine works and how good your net connection and computer is. these figures are fractions of a second and are requests sent to the server for how often you update the server and how often the server updates you, in the end it is down to how often the server can do these with the amount of players on the server.

rates 20 = 1/40 seconds = 25ms, 66 = 1/66 seconds =15.5ms

The best figures you can have are those you choose, for your machine.

cl_interp_ratio and cl_interp are related so will need setting for your machine.

interp is in fractions of a second 0.1 = 100ms interp ratio is a multiplier to be used.
lerp is the combined effect of interp and interp_ratio shown in ms.

e.g. interp of 0.1 interp_ratio = 1 lerp = 100ms
I can't work out if the interp ratio means 2 to 1 or times 2, but I would imagine from the reports of results it means a 2-1 ratio.

interp of 0.1 interp_ratio = 2 lerp = 200ms, which would be pretty pointless
whereas interp of 0.1 interp_ratio = 2 lerp = 50ms would be the most likely.

interp is interpolation, which is a predictive control for the next position of a model. The lower the lerp the better the game play, but you may well lag due to your computer work load being too great.

As far as timings are concerned, you have to picture what is happening on a time line graph.

Suppose you have a decent connection, with the perfect computer and are being updated from the server on a regular basis of every 16ms, having a lerp of 100ms is not going to achieve anything at all, as you have already received positional information from the server nearly 6 times already.
However you have to look at the real world and all the other variables, like acceptable data loss over the net, together with your ping, the speed of your machine, what background tasks you are running, the speed of your monitor etc etc etc...

Servers do set the interp, so a setting of interp to 0 would let the server set the best rate for the server you are on and you could then try halving that to possibly get better hit stats by using interp_ratio of 2.
Little_Devil
Exec. Admin (Retired)
 
Player: Aurora
STEAM_0:1:6431437
 
Posts: 18895
Joined: Mon Feb 07, 2005 1:47 pm

Re: LERP / Rates!!!

Postby Flow'Tastix on Mon Apr 11, 2016 8:24 pm

Little_Devil wrote:
Now for what i'm using atm is... Cl_updaterate 66000 / cl_cmdrate 100.


lol no point as for 66,000, where did you get that from ?

Not that it matters so much, because the server limits the rates when you join to a minimum of 40 and a maximum of 66, which is ample.
These figures are variable anyhow because of how the game engine works and how good your net connection and computer is. these figures are fractions of a second and are requests sent to the server for how often you update the server and how often the server updates you, in the end it is down to how often the server can do these with the amount of players on the server.

rates 20 = 1/40 seconds = 25ms, 66 = 1/66 seconds =15.5ms

The best figures you can have are those you choose, for your machine.

cl_interp_ratio and cl_interp are related so will need setting for your machine.

interp is in fractions of a second 0.1 = 100ms interp ratio is a multiplier to be used.
lerp is the combined effect of interp and interp_ratio shown in ms.

e.g. interp of 0.1 interp_ratio = 1 lerp = 100ms
I can't work out if the interp ratio means 2 to 1 or times 2, but I would imagine from the reports of results it means a 2-1 ratio.

interp of 0.1 interp_ratio = 2 lerp = 200ms, which would be pretty pointless
whereas interp of 0.1 interp_ratio = 2 lerp = 50ms would be the most likely.

interp is interpolation, which is a predictive control for the next position of a model. The lower the lerp the better the game play, but you may well lag due to your computer work load being too great.

As far as timings are concerned, you have to picture what is happening on a time line graph.

Suppose you have a decent connection, with the perfect computer and are being updated from the server on a regular basis of every 16ms, having a lerp of 100ms is not going to achieve anything at all, as you have already received positional information from the server nearly 6 times already.
However you have to look at the real world and all the other variables, like acceptable data loss over the net, together with your ping, the speed of your machine, what background tasks you are running, the speed of your monitor etc etc etc...

Servers do set the interp, so a setting of interp to 0 would let the server set the best rate for the server you are on and you could then try halving that to possibly get better hit stats by using interp_ratio of 2.



Thanks for this information Little Devil, But im still wondering now whats best if you have a good connection i have a pretty good connection and pretty good comp.
So if i read here i should just go for the 66/66 and cl_interp_ratio of 2 so i will get a lerp of 30.3 ms lerp?
Or is it better to use cl_interp_ratio 1 and an lerp of 15.6 ms lerp ?
Thats where i have trouble with cl_interp_ratio 1 or 2 whats best for better hits, on a good connection comp?

Thanks for the reply, i was waiting on somebody with good experience with this topic, and helped me alot but still im wondering whats best...
So cl_interp 0.1 is better if you have not so good connection, and cl_interp_ratio 2 is better for good connection...

If you could reply me once more on this qeustion it would help me alot!!
Thanks mate cheers UKCS!! :cheers:
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby Little_Devil on Mon Apr 11, 2016 9:43 pm

If you set cl_interp to 0, the server will set the best interp for your connection, then set cl_interp_ratio to either 1, which sets whatever the server sets interp to or you can half the time by setting it to 2. lerp is a result figure and is the interp divided by the interp_ratio. Divide by 1 is whatever the interp is, divide by 2 half the interp value.

For the sake of explanation, the Update and cmd rates are 1/x where x is the figure entered after the command, in this case 66. 1 divided by 66 is around 15.5ms.
interp times are seconds based, not frame based so the number after the command is in seconds. 0.0155 seconds = 15.5ms

By the very nature of the game the update and command rates are frames per second so are not strictly speaking data bursts of fixed lengths in time. (don't mistake this frames per second with your fps value, frame is a term used in the calculations and is not strictly related to fps)

Whatever you choose for interp ratio, is what is best for your machine and the only way to find that out is by testing on your machine. If your machine can handle a ratio of 2 without degradation of graphics, it will be the best you can have, without messing around with the interp figure as well.

I could explain the methods used in isolation to everything else that is going on, but as you could probably imagine this would not show a true picture, without taking into account all the variables, which would include thing like your monitor refresh rate and where everything was synced to. It gets quite complicated when you start to look at everything and tbh a rough setting is the best you can hope for, given the computer you use is not stable either. Imagine an equation where every single component is a variable with no reference constants.

Good luck with your endeavours :D
Little_Devil
Exec. Admin (Retired)
 
Player: Aurora
STEAM_0:1:6431437
 
Posts: 18895
Joined: Mon Feb 07, 2005 1:47 pm

Re: LERP / Rates!!!

Postby Flow'Tastix on Tue Apr 12, 2016 5:40 pm

Little_Devil wrote:If you set cl_interp to 0, the server will set the best interp for your connection, then set cl_interp_ratio to either 1, which sets whatever the server sets interp to or you can half the time by setting it to 2. lerp is a result figure and is the interp divided by the interp_ratio. Divide by 1 is whatever the interp is, divide by 2 half the interp value.

For the sake of explanation, the Update and cmd rates are 1/x where x is the figure entered after the command, in this case 66. 1 divided by 66 is around 15.5ms.
interp times are seconds based, not frame based so the number after the command is in seconds. 0.0155 seconds = 15.5ms

By the very nature of the game the update and command rates are frames per second so are not strictly speaking data bursts of fixed lengths in time. (don't mistake this frames per second with your fps value, frame is a term used in the calculations and is not strictly related to fps)

Whatever you choose for interp ratio, is what is best for your machine and the only way to find that out is by testing on your machine. If your machine can handle a ratio of 2 without degradation of graphics, it will be the best you can have, without messing around with the interp figure as well.

I could explain the methods used in isolation to everything else that is going on, but as you could probably imagine this would not show a true picture, without taking into account all the variables, which would include thing like your monitor refresh rate and where everything was synced to. It gets quite complicated when you start to look at everything and tbh a rough setting is the best you can hope for, given the computer you use is not stable either. Imagine an equation where every single component is a variable with no reference constants.

Good luck with your endeavours :D



Sorry to disrupt you so many times, but i'm still wondering now whats best, if you have a good connection like just cable connection, to get better hit registration,
I've found out while playing it really helps me alot, if i use cl_interp 0 and cl_interp_ratio 1,
But sometimes shots get bugged and i think i dont have them but i do like its bugged abit, if i use prefire alot.

Im still wondering abit if cl_interp_ratio 2 is better then i get an white lerp of 30.3 ms (0.0303 cl_interp)
Or does it work better for rushing and good shots to use cl_interp_ratio 1 orange lerp of 15.6 ms (0.0156 cl_interp)

Thanks for reading and helping me out on this subject, i really appreciate it!!
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby Little_Devil on Tue Apr 12, 2016 7:44 pm

Thanks for pointing out the lerp times for the different cl_interp_ratios, as it does appear to be counter intuitive to have a multiplier rather than a divider.

I can see where your confusion comes in, not helped by my mistaken assessment of the interp_ratio numbers :)

If as you say you get 30.3ms for a ratio of 2 and 15.6 ms for an interp of 1, then it would appear that the interp_ratio is indeed a multiplier. In which case a cl_interp_ratio 1 would be the better value to have, as interpolation would be every 15.6ms. I presume with a good machine this would be fine.

Consider the following :
F = the frame you receive from the server. net dependent.
> = cl_udate/cmd rates of 15.6ms sample time.

P = interpolated frame. Machine dependent.
< = interp time

<=> for this demonstration.

Fx = missing or corrupted frame.

There is a lot more to this but showing just these 2 will suffice.

You start all maps with F
The following sequence is what can happen : F > F > Fx > Fx > F
now depending on the times chosen you also have F followed by as many P frames as needed until the next complete F frame, spaced out at regular time intervals of <.
So if you have 15.6 ms then you are interpolating the next frame if it is missing out of the next download, or every 2 Frames with interp_ratio at 2. This of course carries on until you receive the next proper F frame.

The above sequence would then be F > F > P > P > F

You also have to take into account that due to the spurious nature of the net, the > may actually be delayed so the time of the next F frame could be delayed and not missing. This would lead to a P followed in a very short time after an F. This scenario would of course lead to a heavier load on your CPU.

P is of course best guestimate :) so the model may jump slightly if the positional information generated is wildly different to that of the F frame.

As you can see the relationship between update and command rates is important, which is why you have interp set to 0. You can of course try to interpolate faster, or slower if you wish, but do need to take into account your rates.
Little_Devil
Exec. Admin (Retired)
 
Player: Aurora
STEAM_0:1:6431437
 
Posts: 18895
Joined: Mon Feb 07, 2005 1:47 pm

Re: LERP / Rates!!!

Postby Flow'Tastix on Tue Apr 12, 2016 8:19 pm

Little_Devil wrote:Thanks for pointing out the lerp times for the different cl_interp_ratios, as it does appear to be counter intuitive to have a multiplier rather than a divider.

I can see where your confusion comes in, not helped by my mistaken assessment of the interp_ratio numbers :)

If as you say you get 30.3ms for a ratio of 2 and 15.6 ms for an interp of 1, then it would appear that the interp_ratio is indeed a multiplier. In which case a cl_interp_ratio 1 would be the better value to have, as interpolation would be every 15.6ms. I presume with a good machine this would be fine.

Consider the following :
F = the frame you receive from the server. net dependent.
> = cl_udate/cmd rates of 15.6ms sample time.

P = interpolated frame. Machine dependent.
< = interp time

<=> for this demonstration.

Fx = missing or corrupted frame.

There is a lot more to this but showing just these 2 will suffice.

You start all maps with F
The following sequence is what can happen : F > F > Fx > Fx > F
now depending on the times chosen you also have F followed by as many P frames as needed until the next complete F frame, spaced out at regular time intervals of <.
So if you have 15.6 ms then you are interpolating the next frame if it is missing out of the next download, or every 2 Frames with interp_ratio at 2. This of course carries on until you receive the next proper F frame.

The above sequence would then be F > F > P > P > F

You also have to take into account that due to the spurious nature of the net, the > may actually be delayed so the time of the next F frame could be delayed and not missing. This would lead to a P followed in a very short time after an F. This scenario would of course lead to a heavier load on your CPU.

P is of course best guestimate :) so the model may jump slightly if the positional information generated is wildly different to that of the F frame.

As you can see the relationship between update and command rates is important, which is why you have interp set to 0. You can of course try to interpolate faster, or slower if you wish, but do need to take into account your rates.



Thanks for your time mate!!

I really appreciate you helping me out in this, i think you are the right person to talk to about rates and lerp setting.
Well as it seems i understand much more now about the interpolate and framerate, and how it come togheter.
As you say you can faster your interpolate depending on your rates, but the server caps updaterate and cmdrate to 66,
What if i use 100/100 should it go faster then i mean the interpolate with a interp of 10.0ms ( cl_interp 0.0100) with a ratio of 1.
If i use 100/100 i feel a strange differents between shots but as you say, then you get a change of missing frames or shot(to say it easier)
Or if i use net_graph 3 then, it seems to choke sometimes and loss packages...
But still alot of thanks to you for helping me on this subject!!

Much appreciated dude thanks!!! :cheers:
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby Little_Devil on Tue Apr 12, 2016 11:38 pm

No need to change rates just set a figure for cl_interp that the rate is divisible by an integer.

So you could set the rates at 60 (16.6 ms) and set an cl_interp at 8 ms, which is 2 P frames per update.

As I said you play around with it for whatever is best for you, now you can understand the principles behind it better :)
Little_Devil
Exec. Admin (Retired)
 
Player: Aurora
STEAM_0:1:6431437
 
Posts: 18895
Joined: Mon Feb 07, 2005 1:47 pm

Re: LERP / Rates!!!

Postby Flow'Tastix on Wed Apr 13, 2016 8:01 am

Is this the best option using updaterate of 60 and interp of 8 with an cl_interp_ratio of 1?
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby Little_Devil on Wed Apr 13, 2016 9:29 am

It is not what is best, but what is best for your machine without visible effects. It is also a case of diminishing returns with so many other variables.

You need to set your machine up primarily for the net, as packet loss is the worst thing, given you do not really want interpolated data in the ideal world, with the highest speed updates you could have. You also have to take into account the refresh rate of your screen as this is your primary source of feedback.

lerp is just another term for linear interpolation, and as the term suggest you are predicting the next movement to be in a linear progression from the last point of reference so having points too close together is not going to benefit you that much. I gave 60 merely as an example of what you could do, but in reality you only need to have the interp replace any missing frame data that you would normally get coming in via the net. 60 is also the refresh rate of most monitors, unless you have something like my own which is 100.

I always find it easier to draw all this out mentally or indeed physically at times :)

You have an update every approx 15ms with the interpolation set to every 15ms to account for lost packets of data, with somewhere along the line between these points a screen refresh. If the screen refresh comes half way between the F frame and the next F frame, then what you see on the screen is the first F frame. Alternatively with interp set up to half the refresh rate then the next screen you will see will be a P frame or the next F frame if it is in sync. It all depends on when your refresh fires off, which is why they have game sync, but that poses its own problems.

P frames don't solve the missing data, but helps in providing decent positional information of the models for you and as you can see it is both a fine tuning device and a replacement for lost packets. Having too many P frames just puts unnecessary strain on your computer and has diminishing returns as far as screen updates are concerned.

It is all trial and error.
Little_Devil
Exec. Admin (Retired)
 
Player: Aurora
STEAM_0:1:6431437
 
Posts: 18895
Joined: Mon Feb 07, 2005 1:47 pm

Re: LERP / Rates!!!

Postby Flow'Tastix on Wed Apr 13, 2016 12:12 pm

My next qeustion now is the biggest:

How can i find whats best for my monitor, and what i should use thats best for me and my connection, how can i find it?
Cause if i read your reply's it all comes down to finding whats best for you monitor/connection,
But now i would like to know how to know these settings :) Hope you understand where i'm going with this,
I'm still searching for the best lerp setting and interp_ratio for my comp spec, and what plays best for me,
I'm still not sure of everything im using in game, and switch alot, but cant seem to find whats best for my connection.

I hear you got alot sence in how to make this work for me :)
Thanks for these reply's again, and maybe see you in CS:S sometimes!!

:cheers:
Image
User avatar
Flow'Tastix
Recruit Member
 
Player: Ṁʀ. Ƞοکĸіℓℓت⁉™
STEAM_0:1:14901425
 
Posts: 34
Joined: Sat Mar 19, 2016 6:44 pm



Image

Re: LERP / Rates!!!

Postby Little_Devil on Wed Apr 13, 2016 1:53 pm

I had a look around to see if there was anything decent around so you could get a different perspective and probable further help.

http://steamcommunity.com/sharedfiles/f ... =186230574

It would appear from this, that the interp ratio is used in a completely different way, which I thought was a multiplier, but according to my reading it is the amount of previous samples used to create the next data point. Sort of makes sense because as a straight multiplier it would be worthless.
Think of a scatter diagram with a best fit straight line running through the points on the time axis. Extrapolate the next point to the next interp time to predict next future position.

So with an interp_ratio of 2, it is saying go back in time that amount and use the sampled frames to predict the next future point. If interp is 1/66 then with interp ratio of 2 you should get 2 samples to predict the next place. Stands to reason then that with higher integer interp ratios, you would have a better straight line fit. 3 = 3 sample 4 = 4 samples.

I have an idea why Valve would limit the game in such a way, given that Video players work on the same principle but have far more complicated algorithms to determine future points and of course use data from far more points in time, probably because in a game you need to have something simple for speed purposes. No matter if this is how its done then its all valuable info :)

It does not detract from what I previously wrote, but does help to clarify a few points :)
Little_Devil
Exec. Admin (Retired)
 
Player: Aurora
STEAM_0:1:6431437
 
Posts: 18895
Joined: Mon Feb 07, 2005 1:47 pm


Return to UKCS : CSS Server Chat

Who is online

Users browsing this forum: CommonCrawl [Bot] and 0 guests