Fortress Forever

Go Back   Fortress Forever > Community > General Discussion

Reply
 
Thread Tools Display Modes
Old 05-03-2014, 02:26 AM   #1
XPelargos
I like to spam binds
Beta Tester
 
XPelargos's Avatar
 
Join Date: May 2009
Class/Position: Scoooooot
Gametype: Capture the Flag
Posts Rated Helpful 73 Times
Explain Interping to me

Some say it's still around, some say it was patched.

I'm just curious what the cl_interp 1 actually does with the netcode.

k thx
XPelargos is offline   Reply With Quote


Old 05-03-2014, 02:34 AM   #2
FDA_Approved
Beta Tester
 
FDA_Approved's Avatar
 
Join Date: Nov 2011
Gametype: Capture the Flag
Posts Rated Helpful 293 Times
It's cl_interpolate, cl_interp and cl_interpolate are two different commands. cl_interpolate 1, I guess, basicly removed any kind of lag compensation or smoothing on the player models, which made your game very choppy but showed you pretty much exactly where the hitbox is. I guess. I don't really fully understand it. But the results where pretty obvious when playing as or against a heavy. Potentially because the higher accuracy resulted in a more consistent dmg slowdown, which is why rodox could just about shoot you out of the air.

Apparently there's a combination of other commands that can achieve the same affect but one of them is broken in source 2006.

Idk though, I don't completely understand it.
__________________
Currently equipped: Rad Scarf of liberating happiness.
FDA_Approved is offline   Reply With Quote


Old 05-03-2014, 02:41 AM   #3
FDA_Approved
Beta Tester
 
FDA_Approved's Avatar
 
Join Date: Nov 2011
Gametype: Capture the Flag
Posts Rated Helpful 293 Times
It's also pretty controversial in the CS community, and I think it's cheat locked in most source games anymore. At least in tf2 css and csgo I'm pretty sure it is.

EDIT: I guess it's defaulted to 1 in csgo, and non-existent in tf2
__________________
Currently equipped: Rad Scarf of liberating happiness.

Last edited by FDA_Approved; 05-03-2014 at 02:46 AM.
FDA_Approved is offline   Reply With Quote


Old 05-03-2014, 03:00 AM   #4
the_cake
Beta Tester
 
Join Date: Jul 2008
Posts Rated Helpful 144 Times
cl_interp 1 does nothing in sdk2006.
cl_interp_ratio sets interp time/delay as a ratio based on cl_updaterate
cl_interpolate turns interp off completely.

Interp:

Your computer generally renders frames a lot faster and more consistently than the server can send you gamestate updates. This makes your connection to the server and the server itself the bottleneck for fps, and not your hardware. It's especially important with say, 33 tick servers or servers with a poor connection to you. No one would get more than 33 fps (you would, but the frames > 33 would just be duplicates). To solve this problem, your game is delayed by a certain amount of time (specifically cl_interp_ratio/cl_updaterate). The engine now queues 2+ updates (however many it collects in the interp time) before it draws anything, guesses what comes in between the two updates (aka interpolates, hence interp), and can then render as many frames as you want. The downside to this is you delay the game slightly more (think of it as adding to your ping), and have to rely even more on lag compensation.

cl_interpolate 0 turns this functionality OFF (technically the guy interping is the only one not interping). It also turns lag compensation off. So you're trading slightly better latency (assuming cl_updaterate 66, and cl_interp_ratio 1, about 15ms) for having no lag compensation whatsoever.

Makes no sense amirite?

A theory: There was a bug in hl1 engine games that made hits register when they shouldn't when interp time was set very low. Old tfc players may remember Overkill, and the controversy surrounding him exploiting it in high level tfc tournaments. One of the cs 1.6 devs actually fixed it, and wrote a great article to go with it explaining how it was broken (which I wish I could find). Source had actually been worked on before hl1 was even released, my theory is the fork happened before the bug was fixed (02-03 iirc), and was never ported to source. You can't manually set interp time in source like you could in goldsrc, so unless you completely turn interp off (cl_interpolate 0), you would never know.

Last edited by the_cake; 05-03-2014 at 09:16 PM.
the_cake is offline   Reply With Quote


6 members found this post helpful.
Old 05-03-2014, 03:35 AM   #5
XPelargos
I like to spam binds
Beta Tester
 
XPelargos's Avatar
 
Join Date: May 2009
Class/Position: Scoooooot
Gametype: Capture the Flag
Posts Rated Helpful 73 Times
It makes no sense but you still got a helpful post rating from me.
XPelargos is offline   Reply With Quote


Old 05-03-2014, 11:05 AM   #6
AirTrek
Freedom of Movement
 
AirTrek's Avatar
 
Join Date: Apr 2014
Gametype: Attack and Defend
Posts Rated Helpful 21 Times
In CS 1.6 (at least the version I play on, non-steam) if you set ex_interp 1, players will move smoother and you will be able to shoot them even when they've gone out of your sight (the hitboxes and models don't sync, but animations look smooth). If you set ex_interp 0.01 (which is used for LAN tournaments IIRC) other players' movements won't be as smooth (if you use that value while playing on the internet), they will look choppy, but it will be harder to kill someone because the hitboxes are more synced to the models.

It has also got something to do with refresh rates on your monitor, and fps, and latency, and the color of your boxers.

Last edited by AirTrek; 05-04-2014 at 04:11 PM.
AirTrek is offline   Reply With Quote


Old 05-03-2014, 06:06 PM   #7
aleXtric
#FF.Pickup Dictator
Beta Tester
 
Join Date: Aug 2011
Location: Detroit
Gametype: ADL
Affiliations: KiNGz .
Posts Rated Helpful 100 Times
Quote:
Originally Posted by XPelargos View Post
It makes no sense but you still got a helpful post rating from me.
ROFL!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!

i nodded the entire time like it was making sense and going OHHH, AHHHH, OHHH in my head but to be honest WHAT THE FUCK DID HE JUST SAY?!
__________________
!add
#FF.Pickup - Quakenet

http://www.ffpickup.com/?p=irc
aleXtric is offline   Reply With Quote


1 members found this post helpful.
Old 05-03-2014, 08:09 PM   #8
the_cake
Beta Tester
 
Join Date: Jul 2008
Posts Rated Helpful 144 Times
Yea it's hard to explain, let me try again.

When you play any online game, the server sends you "updates," which are basically a single pieces of data telling you where all the "stuff" (other players, projectiles, sgs, whatever) are on the server at a single point in time. A fairly bad server will send you 33 of these updates every second, maybe less depending on your connection.

So if the server is only telling you where stuff is 33 times per second, how do you get more than 33 frames per second on your computer?

That's what interp does. It saves up more than one of these updates, then tries to guess what happened between the updates. So if an update says a player is at point A, and the next one says player is at point B, it will guess that in between those two updates the player was somewhere in between points A and B, and render that as a frame.

So with 3 updates, no interpolation, you would see:

update 1 from server=frame 1 on video card
update 2=frame 2
update 3=frame 3

With the same 3 updates, interpolation on (aka not interping), you would see

update 1=frame 1
(engine guesses what happens between updates 1 and 2)=frame 2
update 2=frame 3
(guesses between 2 and 3)=frame 4
update 3=frame 5
(guesses between 3 and 4)=frame 6

That's twice as many fps in the same amount of time. And it can guess as many times as it needs to between frames, so you could have 1000fps and 10 updates/second, although the amount of guessing would make it really inaccurate.

Last edited by the_cake; 05-03-2014 at 10:49 PM.
the_cake is offline   Reply With Quote


2 members found this post helpful.
Old 05-03-2014, 08:54 PM   #9
KubeDawg
Nade Whore
Server Owner
Beta Tester
 
KubeDawg's Avatar
 
Join Date: Sep 2007
Location: Oklahoma
Class/Position: Scout/Soldier
Gametype: CTF/TDM
Affiliations: blunt. Moto
Posts Rated Helpful 128 Times
So does that mean I should keep my FPS so that it is divisible by the tick rate for possibly more accurate gameplay? For example, 66 tick rate server should have 66, 132, 198, 264, 330 fps so it's always a whole number?
__________________
Moto's Funhouse | Dallas, TX - 74.91.114.247:27015

ff_plunder - Complete
KubeDawg is offline   Reply With Quote


Old 05-03-2014, 09:15 PM   #10
the_cake
Beta Tester
 
Join Date: Jul 2008
Posts Rated Helpful 144 Times
The short answer is it shouldn't matter. But this whole discussion is based on how wonky source is, so who knows.
the_cake is offline   Reply With Quote


Old 05-04-2014, 11:12 AM   #11
AirTrek
Freedom of Movement
 
AirTrek's Avatar
 
Join Date: Apr 2014
Gametype: Attack and Defend
Posts Rated Helpful 21 Times
I get that interpolation is putting guessed frames between real frames, but can you please explain what I put in bold?

Quote:
Originally Posted by the_cake View Post

So with 3 updates, no interpolation, you would see:

...

With the same 3 updates, interpolation on (aka not interping), you would see

...
If interpolation is on, how is it not interping?
AirTrek is offline   Reply With Quote


Old 05-04-2014, 03:43 PM   #12
the_cake
Beta Tester
 
Join Date: Jul 2008
Posts Rated Helpful 144 Times
In ff lingo, "interping" is hacking the game using an external program to allow the player to turn interpolation OFF.

Having interpolation ON is the opposite of "interping." Everyone has interpolation on, and unless you hack you can't turn it off. If someone is interping, they're turning interpolation off.

It's the opposite of what it actually is because because people don't really understand it, they just knew the command for exploiting it was ex_interp in tfc/goldsrc and cl_interpolate in FF/source, so they called it interp.

Last edited by the_cake; 05-04-2014 at 03:56 PM.
the_cake is offline   Reply With Quote


Old 05-04-2014, 04:16 PM   #13
AirTrek
Freedom of Movement
 
AirTrek's Avatar
 
Join Date: Apr 2014
Gametype: Attack and Defend
Posts Rated Helpful 21 Times
Quote:
Originally Posted by the_cake View Post
In ff lingo, "interping" is hacking the game using an external program to allow the player to turn interpolation OFF.

Having interpolation ON is the opposite of "interping." Everyone has interpolation on, and unless you hack you can't turn it off. If someone is interping, they're turning interpolation off.

It's the opposite of what it actually is because because people don't really understand it, they just knew the command for exploiting it was ex_interp in tfc/goldsrc and cl_interpolate in FF/source, so they called it interp.
Ah, so interping is slang for having interp turned off. Somewhat illogical , but that's team fortress. thx
AirTrek is offline   Reply With Quote


Old 05-05-2014, 12:53 AM   #14
rodox
dunkaroos
 
rodox's Avatar
 
Join Date: Apr 2008
Location: Michigan
Class/Position: Railgun
Posts Rated Helpful 2 Times
Send a message via AIM to rodox
I have a mouth but don't need to scream

It turned me from a slightly above average player to the most annoying in the game. rip
rodox is offline   Reply With Quote


Old 05-06-2014, 11:52 PM   #15
Dexter
internet user
Fortress Forever Staff
 
Dexter's Avatar
 
Join Date: Jun 2007
Posts Rated Helpful 42 Times
need someone post a linear interpolation gif with two points, then think of that as frames from clients
__________________
9:17 PM - DEXTER: can you teach me how to play o
9:17 PM - squeek.: you jump a lot
9:18 PM - squeek.: and do sweet moves

8:55 PM - FDA: fart in you fridge and blame it on wild animals
Dexter is offline   Reply With Quote


Old 05-08-2014, 08:10 AM   #16
XPelargos
I like to spam binds
Beta Tester
 
XPelargos's Avatar
 
Join Date: May 2009
Class/Position: Scoooooot
Gametype: Capture the Flag
Posts Rated Helpful 73 Times
This thread feels like going down the rabbit hole.

The etymology of interpolate is as follows:

1610s, "to alter or enlarge (a writing) by inserting new material,"
from Latin "interpolatus" past participle of interpolare "alter, freshen up, polish;" of writing, "falsify,"
from inter- "up" + polare, related to polire "to smoothe, polish."

Sense evolved in Latin from "refurbish," to "alter appearance of," to "falsify" (especially by adding new material).
XPelargos is offline   Reply With Quote


Old 05-08-2014, 02:45 PM   #17
ddm999
worst ff player eu
 
Join Date: Jun 2012
Location: South Yorks., England
Class/Position: o - no, d - scout
Gametype: IvDZ
Posts Rated Helpful 18 Times
pff nerds

shoot gun and go fast is only thing you need to know
__________________
gg ff not ded
ff very much alive
ddm999 is offline   Reply With Quote


Old 05-10-2014, 01:00 AM   #18
SuperDude
D&A Member
 
Join Date: Jan 2008
Location: New York
Posts Rated Helpful 7 Times
Send a message via AIM to SuperDude
Largish is bad! - fortress forever points
SuperDude is offline   Reply With Quote


Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 09:12 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.