Help - Search - Members - Calendar
Full Version: Ex_interp And Ex_extrapmax
Unknown Worlds Forums > Natural Selection > Natural Selection Organized Play > General Competitive Discussion
Kmart
I'm just curious about what values people have found to be most effective for these two cvars.

I remember being advised (don't remember by who) to just type ex_interp 0 in console and let the game reset it to the lowest value possible for my cl_updaterate (I use cl_updaterate 60), but this made my picture stutter way too much for me. Right now I've sort of settled on ex_interp 0.05.

So if lower values for interp are more desirable, do people play with choppy model motion? Is the picture choppy because of my system or because of Steam? Does having really high interp mean that I could put my crosshair exactly on a skulk model and fire but totally miss because my client made a bad guess ("interpolation") of where the model+hitbox is (even though these two don't usually go together in NS tounge.gif)? And as kind of a followup on that last question, isn't that considered "bad hit registration" ?

As for ex_extrapmax...like I said I can only sort of guess what it does. extrap = extrapolation, max = maximum, and it has something to do with the way frames are displayed on my screen. Anyone know for sure?

So yeah, just hoping to start a discussion on this.
Minstrel_Knight
Having a higher interp setting delays the drawing of stuff on your screen so .1 = 100ms delay .01 = 10ms. Lower settings will equal choppier players due to the server having not yet recieved a command update from them.

Ex_extrapmax can be used to help smooth out choppyness from lower interp settings or it can be set to 0 and will only show true hitboxes but be choppy.

Having an interp higher than 1/update rate will cause the model to be displayed slightly ahead of the actual hitbox location.

http://www.usaklig.net/rates.html
http://www.foom.net/fortressfiles/netcode.htm

Traken
So with ex_interp set to normal (or whatever...) you want to aim behind the model? I wish I knew that a long time ago confused-fix.gif
Minstrel_Knight
QUOTE (Traken @ Apr 1 2005, 07:11 PM)
So with ex_interp set to normal (or whatever...) you want to aim behind the model? I wish I knew that a long time ago confused-fix.gif

I believe current default interp is set to 1/update rate so hitboxes will be in line with the displayed model postion theoretically.
Kmart
Default interp: 0.1
Default extrapmax: 1.2
Sarisel
interp = 1/(the server's max updaterate to the client)

That way, you're interpolating for every frame the server sends to you and not for every frame that you would like for it to send you (which happens if you just do 1/cl_updaterate).

If cl_updaterate>=sv_maxupdaterate, then interp should be 1/sv_maxupdaterate.
If cl_updaterate<sv_maxupdaterate, then interp should be 1/cl_updaterate.

Usually, sv_maxupdaterate is about 30 unless the admin changes it.
Faskalia
And because most servers use the default: "sv_maxupdaterate 30" you are most times on the right track, when using cl_updaterate 30 and ex_interp 0
Hellbilly
The rate settings i have been using lately seem to work for me and my DSL...

rate 9999;cl_updaterate 30;cl_cmdrate 40;ex_interp 0.033

Maybe some more experienced tweakers can tell me if i can improve on that or have any other suggestions to me or other players?
Faskalia
QUOTE (Hellbilly @ Apr 2 2005, 03:19 PM)
The rate settings i have been using lately seem to work for me and my DSL...

rate 9999;cl_updaterate 30;cl_cmdrate 40;ex_interp 0.033

Maybe some more experienced tweakers can tell me if i can improve on that or have any other suggestions to me or other players?

Your settings are perfect for nearly any server biggrin-fix.gif

You might raise cl_cmdrate a little bit. (the max possible value is determined by your upload) Try 50 and then 60. If you do not get any choke with these, keep them. Rate 12000 might help you out in big firefights as well.

ex_interp 0.033 is the corrosponding value for your cl_updaterate 30

you can set ex_interp to 0 and it will automatically adjust, when you change cl_updaterate

Emanon
With an ex_interp of 0.033 what is the corresponding ex_extrapmax value? Is there another cvar to smooth things out?

For instance, my server has a max updatrate of 50 so my settings would be;
rate 25000 (quality cable)
cl_updaterate 50
cl_cmdrate 60
ex_interp 0.02 (1/50 = 0.02)
ex_extrapmax confused-fix.gif (10 or 12?)
Jmmsbnd007
I use ex_interp .05 and ex_extrapmax 6 (sometimes 5, I don't even notice).
c4t
like 6th months ago jmms told me to use those values and its what ive been using ever since.
Cxwf
My default ex_interp is 0.1

I tried changing it to 1/updaterate (0.033 for me), but too many players looked very choppy...I know its technically more accurate information, but it looks really bad. I find I have to raise it to about .07 or .08 in order to get smooth motion on most players.

However, I am interested in the comments about ex_extrapmax being able to smooth out that choppiness? How does that work? I'd like to be able to drop my interp rate without giving up video smoothness.
ultranewb
Interpolation is filling in the gaps between the expected update packets from the server. Extrapolation is filling in the gaps when you don't have the expected packet on time. net_graph 3 appears to tell you (in milliseconds) the amount of unexpected time spent waiting on packets. Note that this definitely isn't your ping since this can be close to zero using a low update rate durring good conditions.
Harrower
On fear of ressurecting a dead thread, and/or looking like a bad coder, wouldn't there be a better way of doing this in the actual game coding other than interpolation and extrapolation?
Faskalia
QUOTE (Harrower @ May 10 2005, 09:02 PM)
On fear of ressurecting a dead thread, and/or looking like a bad coder, wouldn't there be a better way of doing this in the actual game coding other than interpolation and extrapolation?

Witheout increasing the needed bandwith or a better compression code, there is no way, i know of, to avoid the need of interpolation.
Harrower
CS doesn't seem to do the same thing, is it just because the models are moving slower or something?
2_of_Eight
QUOTE (Harrower @ May 10 2005, 11:21 PM)
CS doesn't seem to do the same thing, is it just because the models are moving slower or something?

I'd assume so... players surely don't move as fast there as leaping skulks/blinking fades/celerity lerks/etc.
Drummer
QUOTE (2 of Eight @ May 10 2005, 11:07 PM)
QUOTE (Harrower @ May 10 2005, 11:21 PM)
CS doesn't seem to do the same thing, is it just because the models are moving slower or something?

I'd assume so... players surely don't move as fast there as leaping skulks/blinking fades/celerity lerks/etc.

ive heard that even a vanilla marine can move faster than anything in cs
Swiftspear
QUOTE (Drummer @ May 11 2005, 02:40 AM)
QUOTE (2 of Eight @ May 10 2005, 11:07 PM)
QUOTE (Harrower @ May 10 2005, 11:21 PM)
CS doesn't seem to do the same thing, is it just because the models are moving slower or something?

I'd assume so... players surely don't move as fast there as leaping skulks/blinking fades/celerity lerks/etc.

ive heard that even a vanilla marine can move faster than anything in cs

Ya, cause vanilla marines can railhop.
Harrower
I am partially wondering this because I'm looking to do my own mod at some point, and I REALLY don't want to make players skip around when moving fast, like they do right now in NS.

Even if NS can't be fixed (which to me would be a real shame, because I honestly think they really did a great job with the actual game design)..

Is there any solid way to do it differently that anyone knows of, so that fast-moving players are tracked accurately?
Swiftspear
QUOTE (Harrower @ May 11 2005, 10:21 AM)
I am partially wondering this because I'm looking to do my own mod at some point, and I REALLY don't want to make players skip around when moving fast, like they do right now in NS.

Even if NS can't be fixed (which to me would be a real shame, because I honestly think they really did a great job with the actual game design)..

Is there any solid way to do it differently that anyone knows of, so that fast-moving players are tracked accurately?

Go for source. Movement code is very managable and almost compleatly fixed.
Harrower
On the assumption that Source is the same thing as creating a HL2:Deathmatch mod, that's what I was planning on. Thanks.
kalimxs
does tfc have this ****? stuff moves very fast in there, and i don't remember ever hearing about reg problems on concers.
TheGivingTree
Can anyone tell me what to set my
cl_cmdrate
cl_updaterate
rate
ex_interp
ex_extrapmax

for the most accurate and dead on settings? I don't care about choppiness I want to aim at what I see and hit it, not aim behind it or infront.
meep
QUOTE (Harrower @ May 10 2005, 10:21 PM)
CS doesn't seem to do the same thing, is it just because the models are moving slower or something?


Yes. Prediction obviously starts to break down the more complex it has to be.

All online games use some form of prediction. If you've every played a MMO and experienced "rubberbanding" it was because your game predicted a particular result X and the server then responded with result Y which your client then had to correct for. I don't know if many people here played HL mods a long time ago, but before patch 1.1.1.0 I believe, HL prediction used to be a lot more extensive than it is now which meant you were able to play with higher pings but everyone had to learn to cope with aiming strangely. I remember getting hit with rockets in TFC from 100 feet away.

Also, Source (HL2) prediction isn't magically better. Play a 32 player HL2 Deathmatch server with everyone flinging around toilets and you still see a lot of warping and stuttering.
Harrower
QUOTE (Hellbilly @ Apr 2 2005, 08:19 AM)
The rate settings i have been using lately seem to work for me and my DSL...

rate 9999;cl_updaterate 30;cl_cmdrate 40;ex_interp 0.033

Maybe some more experienced tweakers can tell me if i can improve on that or have any other suggestions to me or other players?

ex_interp 0.1 for me. Those settings seem to aim very well, despite the fact that "absolute" positioning is ex_interp 0.0

The fact is, with 0.0, it's not more accurate because the skulk jumps around the screen like mad, because it.. well I don't know.. try it and see.


I really don't know what happens but 0.1 works really well for me on every server I've played on. I aim right at the skulk and it dies.




Last, if anyone has any ideas on how to fix this problem when making a mod using.. pretty much ANY method, and still maintaining functionality, I'd be ecstatically interested.
ultranewb
If you wish some concrete fact instead of guessing, use cl_showerror 1 to see how many units of error the predition is creating. You'll likely see errors of 10 units when fighting higher ping skulks - and my guess is that 10 units is roughly a foot in distance.
Faskalia
QUOTE (TheGivingTree @ May 14 2005, 12:30 AM)
Can anyone tell me what to set my
cl_cmdrate 60
cl_updaterate 30
rate 20000
ex_interp 0
ex_extrapmax 1.2

for the most accurate and dead on settings? I don't care about choppiness I want to aim at what I see and hit it, not aim behind it or infront.

A save setup for pubs:
cl_cmdrate 60
cl_updaterate 30
rate 20000
ex_interp 0
ex_extrapmax 1.2

a setup for high-end server:
cl_cmdrate 101
cl_updaterate 101
rate 20000
ex_interp 0
ex_extrapmax 1.0

And dont touch tycs tounge.gif
TheGivingTree
Thanks
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.