view the rest of the comments
Ask Lemmy
A Fediverse community for open-ended, thought provoking questions
Rules: (interactive)
1) Be nice and; have fun
Doxxing, trolling, sealioning, racism, toxicity and dog-whistling are not welcomed in AskLemmy. Remember what your mother said: if you can't say something nice, don't say anything at all. In addition, the site-wide Lemmy.world terms of service also apply here. Please familiarize yourself with them
2) All posts must end with a '?'
This is sort of like Jeopardy. Please phrase all post titles in the form of a proper question ending with ?
3) No spam
Please do not flood the community with nonsense. Actual suspected spammers will be banned on site. No astroturfing.
4) NSFW is okay, within reason
Just remember to tag posts with either a content warning or a [NSFW] tag. Overtly sexual posts are not allowed, please direct them to either !asklemmyafterdark@lemmy.world or !asklemmynsfw@lemmynsfw.com.
NSFW comments should be restricted to posts tagged [NSFW].
5) This is not a support community.
It is not a place for 'how do I?', type questions.
If you have any questions regarding the site itself or would like to report a community, please direct them to Lemmy.world Support or email info@lemmy.world. For other questions check our partnered communities list, or use the search function.
6) No US Politics.
Please don't post about current US Politics. If you need to do this, try !politicaldiscussion@lemmy.world or !uspolitics@lemmy.world
7) No Hit-and-Run questions.
Please don't delete your post for no apparent reason. If you plan on deleting a question later, say so in the post, or if you feel that you have a good reason to remove it, message a mod beforehand. It's not fair to the ones who took their time to answer, and it's not in the spirit of the community.
Reminder: The terms of service apply here too.
Partnered Communities:
Logo design credit goes to: tubbadu
Interp is short for "interpolation".
Basically, there is always a time delay between your computer and the remote game server for the data to traverse the internet. That is called "ping". When you click on an enemy's head with the sniper, your computer has to send a packet saying you fired and where you were pointing. The server verifies this, checks the last known position of the enemy, and responds with whether it was a kill or not. Very simplified of course butyou get the idea.
When tf2 was created, many people were gaming on slow and unstable DSL connections. The actual time it took to send and receive data from the server would vary drastically because internet connections were often shared, and sometimes data was lost entirely.
To help reduce the noticable effect of this variability, which would result in jarring, unsteady movement and terrible gameplay, tf2 "interpolates" or intentionally delays data processing on the client side and simply estimates the current state of the game in between update packets from the server. While the game may look smooth and seem like it's live action, What you are seeing on your screen is only what the client THINKS happened in the intervening 100ms or so since the last server update packet happened- or longer if your ping is poor. There's some verification on the server side as well, but the server is basically forced to generally accept the interpolated game state it receives from clients as long as they are within some reasonable range of the server's game state- but the key here is that threshold is largely controlled by the client.
What some cheaters will then do is intentionally crank up the interp delay super high. By forcing the client to guess at the state of the game a very long ways into the future (sometimes a second or longer), the client can claim to have done some crazy kill like landing a spy backstab, and the victim can't do anything about it- because the interp abuser is intentionally delaying server data and replacing it with their own guesstimated data. THAT is why most community servers restrict the interp settings clients are allowed to use- it ensures everyone is on a level playing field when it comes to response time.
That said, with modern cable and fiber internet connections, tf2's method of interp is very outmoded and isn't needed. If you have solid internet, you can actually gain a lot of responsiveness and better game feel by turning interp down to as low as it will go (cl_interp 0 and cl_interp_ratio 1, iirc). There's other specific settings people recommend but you can Google those.
How does this relate to TF2 in the old days freezing for a few seconds, and then everything happens in fast motion when the client catches up? (Explosions, you die, etc)
Interpolation, even at the highest settings, has a limit. If multiple data packets from the server are missed in a row, either due to the server hanging or your internet choking, the client basically gives up on guessing where everything is and the world pauses.
As soon as it gets a fresh game state from the server though, it then has to reconcile the paused client game state (wrong) with the server where stuff kept happening (right). It does that over the interpolation interval to get back in sync, so the world appears to run super fast.
That basically never happens today because of how far hardware and connections have come. It can, it just doesn't. And I think they've improved the netcode's stability a lot since the olden days so the server doesn't hang nearly as much as it used to.
TIL! thank you
pretty good explanation,ty.