Upvote Upvoted 4 Downvote Downvoted
Interp/Lerp (+other stuff)
posted in Q/A Help
1
#1
1 Frags +

So, in my autoexec I have:

cl_cmdrate
cl_interp
cl_interp_ratio
cl_lagcompensation
cl_pred_optimize
cl_smooth
cl_smoothtime
cl_updaterate
rate

Well, there's actually numbers there, but after messing around with them the other night I pretty much fucked it up (hitscan barely hits) and I'm too embarrassed to show the numbers.

I generally play on ping less than 40, and am just looking for any wizards out there who might be able to help me with getting the correct values.

EDIT: I play demo, so I'm mainly looking for values that will work well for projectiles

So, in my autoexec I have:

[quote]cl_cmdrate
cl_interp
cl_interp_ratio
cl_lagcompensation
cl_pred_optimize
cl_smooth
cl_smoothtime
cl_updaterate
rate [/quote]

Well, there's actually numbers there, but after messing around with them the other night I pretty much fucked it up (hitscan barely hits) and I'm too embarrassed to show the numbers.

I generally play on ping less than 40, and am just looking for any wizards out there who might be able to help me with getting the correct values.

[b]EDIT:[/b] I play demo, so I'm mainly looking for values that will work well for projectiles
2
#2
13 Frags +

For hitscan:

interp 0.033
updaterate 66
cmdrate 66
smooth 0
smooth time doesn't matter
interp ratio 1
lag compensation 1

then go into your game, join a server and turn on net graph 4. keep bumping your rate up until you start getting choke/loss and then bring it down a little.

WALL OF TEXT FOR NERDS

The reasoning for the interp is this: the command sets the delay between the server and client. 0.033 interp sets the delay to 33ms. At 66 ticks (controlled by update/cmdrates) the server updates the client 66 times per second. 1/66=0.0151. This is the time between every packet of data. By setting the interp to 0.0151, the game would be 15.1ms behind the server (1 tick) so every time the server sends info, your computer instantly uses that info to move the characters on your screen. However, because you're only delayed by 1 tick, if you lose a packet of data then you can't do anything about it and your computer is forced to extrapolate player positions which isn't very accurate. Setting the delay to 0.033 means that you're always 2 ticks behind the server (0.0151 * 2) so if you lose a packet of data, the computer can use the previous one and interpolate between the two, however the obvious disadvantage is that you're further behind the server.

Since hitscan is hit detected locally and the hit confirmation is simply sent to the server, a higher interp is better as the most important thing is the smoothness of enemy models so you can track them. However, rockets and other projectiles are not hit detected locally and use the server hitbox. This means that you need to be as up to date as possible to the happenings on the server and a lower interp provides a lower delay that allows you to achieve that.

please excuse any ttypos or anything that doesn't make sense, I just woke up and wrote this on my phone.

For hitscan:

interp 0.033
updaterate 66
cmdrate 66
smooth 0
smooth time doesn't matter
interp ratio 1
lag compensation 1

then go into your game, join a server and turn on net graph 4. keep bumping your rate up until you start getting choke/loss and then bring it down a little.

WALL OF TEXT FOR NERDS

The reasoning for the interp is this: the command sets the delay between the server and client. 0.033 interp sets the delay to 33ms. At 66 ticks (controlled by update/cmdrates) the server updates the client 66 times per second. 1/66=0.0151. This is the time between every packet of data. By setting the interp to 0.0151, the game would be 15.1ms behind the server (1 tick) so every time the server sends info, your computer instantly uses that info to move the characters on your screen. However, because you're only delayed by 1 tick, if you lose a packet of data then you can't do anything about it and your computer is forced to extrapolate player positions which isn't very accurate. Setting the delay to 0.033 means that you're always 2 ticks behind the server (0.0151 * 2) so if you lose a packet of data, the computer can use the previous one and interpolate between the two, however the obvious disadvantage is that you're further behind the server.

Since hitscan is hit detected locally and the hit confirmation is simply sent to the server, a higher interp is better as the most important thing is the smoothness of enemy models so you can track them. However, rockets and other projectiles are not hit detected locally and use the server hitbox. This means that you need to be as up to date as possible to the happenings on the server and a lower interp provides a lower delay that allows you to achieve that.

please excuse any ttypos or anything that doesn't make sense, I just woke up and wrote this on my phone.
3
#3
-6 Frags +

If you have cl_interp_ratio set to 2 and your cl_interp set to anything other than 0 hit scans will sometimes be wonky.

That's all i really know. Hope i helped.

If you have cl_interp_ratio set to 2 and your cl_interp set to anything other than 0 hit scans will sometimes be wonky.

That's all i really know. Hope i helped.
4
#4
0 Frags +

cl_interp 0.0152 is more projectiles
cl_interp 0.02 - 0.035 is more for hitscan

cl_interp 0.0152 is more projectiles
cl_interp 0.02 - 0.035 is more for hitscan
5
#5
0 Frags +
icTuscl_interp 0.0152 is more projectiles
cl_interp 0.02 - 0.035 is more for hitscan

Oh shit, I fucked up. Just woke up. :c

[quote=icTus]cl_interp 0.0152 is more projectiles
cl_interp 0.02 - 0.035 is more for hitscan[/quote]

Oh shit, I fucked up. Just woke up. :c
6
#6
2 Frags +
frownyFor hitscan:

interp 0.0152
updaterate 66
cmdrate 66
smooth 0
smooth time doesn't matter
interp ratio 1
lag compensation 1

then go into your game, join a server and turn on net graph 4. keep bumping your rate up until you start getting choke/loss and then bring it down a little.

Thanks for the response, but I'm looking for something for projectiles mainly, I've updated the op.

[quote=frowny]For hitscan:

interp 0.0152
updaterate 66
cmdrate 66
smooth 0
smooth time doesn't matter
interp ratio 1
lag compensation 1

then go into your game, join a server and turn on net graph 4. keep bumping your rate up until you start getting choke/loss and then bring it down a little.[/quote]

Thanks for the response, but I'm looking for something for projectiles mainly, I've updated the op.
7
#7
0 Frags +
TekkfrownyFor hitscan:

interp 0.0152
updaterate 66
cmdrate 66
smooth 0
smooth time doesn't matter
interp ratio 1
lag compensation 1

then go into your game, join a server and turn on net graph 4. keep bumping your rate up until you start getting choke/loss and then bring it down a little.

Thanks for the response, but I'm looking for something for projectiles mainly, I've updated the op.

Just updated my post, read it again.

[quote=Tekk][quote=frowny]For hitscan:

interp 0.0152
updaterate 66
cmdrate 66
smooth 0
smooth time doesn't matter
interp ratio 1
lag compensation 1

then go into your game, join a server and turn on net graph 4. keep bumping your rate up until you start getting choke/loss and then bring it down a little.[/quote]

Thanks for the response, but I'm looking for something for projectiles mainly, I've updated the op.[/quote]

Just updated my post, read it again.
8
#8
20 Frags +

#2/#7
You got the right idea, there are just some minor mistakes.

With updaterate/cmdrate 66 and interp_ratio 1 the interp is 0.0152 but you've corrected that in the quote. However with interp_ratio 2 it would be 0.0303 not 0.033 (probably a typo). Using interp 0 and interp_ratio 1/2 is easier anyway.

Choke means that your or the servers rate is too low, not to high. Basically the server has to hold packets back because either the bandwidth you allow or the bandwidth itself allows for each client is not high enough to send the packet immediately. Just set "rate" to 60000 (you can use 100000 to be sure, if you have more than 100kbits upload, otherwise it might increase your ping). If you still get choke it's the server. If you still want to/have to play on that server lower cmdrate and updaterate to 40 and bump up the interp to 0.025 (instead of 0.0152) or 0.05 (instead of 0.0303). You don't have to change the interp if you use interp 0 and interp_ratio 1 or 2.

If you have a good connection and get loss it's the server. If you get loss on every server you should call your ISP, it means your connection is shit.

Your explanation of interpolation is decent but a bit inaccurate at some points. For interp 0.0303/interp_ratio 2 TF2 isn't using the previous packet/snapshot to interpolate it uses the next one. With 0.0152/ratio 1 TF2 uses the snapshot previous to what you see and the next one to interpolate where everyone is in the frames between those two packets. Because you are only one tick behind the server you don't have any snapshots left that are newer than what you see atm if you miss one packet. Now the TF2 uses the two previous packets to extrapolate/predict/guess the player movements. If a guess was wrong the player(s) get(s) warped into the right place as soon as the next packet with the correct information arrives. When you are two ticks behind the server (0.303/ratio 2) and lose one packet you still got another, even newer snapshot. Instead of interpolating between the snapshot before and after your current time it uses the previous and the snapshot two ticks after the current time. Interpolating over two ticks instead of one is slightly less accurate but there won't be any warps.

Now comes the only thing that is just plain wrong.

frownySince hitscan is hit detected locally and the hit confirmation is simply sent to the server

This is just wrong. There's no other way to say that. All the hit registration is done by the server so no one can just sent random hit confirmations and kill everyone from across the map.

The reasons why some people use 0.0303/ratio 2 for hitscan and 0.0152/ratio 1 for porjectiles are the following:
0.0303 for hitscan:
No warps. If you lose just one packet with 0.0152/ratio 1 you might get a prediction are error and therefore a small warp. This little weird looking stutter can throw your aim off.
More accurate hitboxes. Again if you lose one packet and get a prediction error the enemy's model is slightly out of place. Now if you hit that model directly you are not necessarily hitting the hitbox because the hit registration is server side and the server doesn't know that for you the model was in that place. Most of the time you won't miss the shot completely but it's often the difference between hitting 10 bullets in the center for a meatshot or hitting that scout slightly to the side and just hitting 7 bullets and BAM that scout kills you because he survived that shot with 10 HP.

0.0152/ratio 1 for projectiles:
Less delay. Most players find the delay between firing a projectile and the moment it spawns on the server and you can see it far more irritating than the occasional small "stutter" after a lost packet. Prediction erros occur every now and then but the delay is there every single time you fire a projectile so most players want to minimize it. Plus projectiles are prediction-aimed and use a way bigger hitbox so it won't really affect your aim and hitreg.


tl;dr

//netsettings
//change these if necessary
rate 100000
cl_cmdrate 66
cl_updaterate 66
cl_interp_ratio 1

//don

#2/#7
You got the right idea, there are just some minor mistakes.

With updaterate/cmdrate 66 and interp_ratio 1 the interp is 0.0152 but you've corrected that in the quote. However with interp_ratio 2 it would be 0.0303 not 0.033 (probably a typo). Using interp 0 and interp_ratio 1/2 is easier anyway.

Choke means that your or the servers rate is too low, not to high. Basically the server has to hold packets back because either the bandwidth you allow or the bandwidth itself allows for each client is not high enough to send the packet immediately. Just set "rate" to 60000 (you can use 100000 to be sure, if you have more than 100kbits upload, otherwise it might increase your ping). If you still get choke it's the server. If you still want to/have to play on that server lower cmdrate and updaterate to 40 and bump up the interp to 0.025 (instead of 0.0152) or 0.05 (instead of 0.0303). You don't have to change the interp if you use interp 0 and interp_ratio 1 or 2.

If you have a good connection and get loss it's the server. If you get loss on every server you should call your ISP, it means your connection is shit.

Your explanation of interpolation is decent but a bit inaccurate at some points. For interp 0.0303/interp_ratio 2 TF2 isn't using the previous packet/snapshot to interpolate it uses the next one. With 0.0152/ratio 1 TF2 uses the snapshot previous to what you see and the next one to interpolate where everyone is in the frames between those two packets. Because you are only one tick behind the server you don't have any snapshots left that are newer than what you see atm if you miss one packet. Now the TF2 uses the two previous packets to extrapolate/predict/guess the player movements. If a guess was wrong the player(s) get(s) warped into the right place as soon as the next packet with the correct information arrives. When you are two ticks behind the server (0.303/ratio 2) and lose one packet you still got another, even newer snapshot. Instead of interpolating between the snapshot before and after your current time it uses the previous and the snapshot two ticks after the current time. Interpolating over two ticks instead of one is slightly less accurate but there won't be any warps.



Now comes the only thing that is just plain wrong.
[quote=frowny]Since hitscan is hit detected locally and the hit confirmation is simply sent to the server[/quote]
This is just wrong. There's no other way to say that. All the hit registration is done by the server so no one can just sent random hit confirmations and kill everyone from across the map.

The reasons why some people use 0.0303/ratio 2 for hitscan and 0.0152/ratio 1 for porjectiles are the following:
0.0303 for hitscan:
No warps. If you lose just one packet with 0.0152/ratio 1 you might get a prediction are error and therefore a small warp. This little weird looking stutter can throw your aim off.
More accurate hitboxes. Again if you lose one packet and get a prediction error the enemy's model is slightly out of place. Now if you hit that model directly you are not necessarily hitting the hitbox because the hit registration is server side and the server doesn't know that for you the model was in that place. Most of the time you won't miss the shot completely but it's often the difference between hitting 10 bullets in the center for a meatshot or hitting that scout slightly to the side and just hitting 7 bullets and BAM that scout kills you because he survived that shot with 10 HP.


0.0152/ratio 1 for projectiles:
Less delay. Most players find the delay between firing a projectile and the moment it spawns on the server and you can see it far more irritating than the occasional small "stutter" after a lost packet. Prediction erros occur every now and then but the delay is there every single time you fire a projectile so most players want to minimize it. Plus projectiles are prediction-aimed and use a way bigger hitbox so it won't really affect your aim and hitreg.

[b]
tl;dr[/b]
//netsettings
//change these if necessary
rate 100000
cl_cmdrate 66
cl_updaterate 66
cl_interp_ratio 1

//don
9
#9
0 Frags +
Setsul#2/#7
You got the right idea, there are just some minor mistakes.

With updaterate/cmdrate 66 and interp_ratio 1 the interp is 0.0152 but you've corrected that in the quote. However with interp_ratio 2 it would be 0.0303 not 0.033 (probably a typo). Using interp 0 and interp_ratio 1/2 is easier anyway.

Choke means that your or the servers rate is too low, not to high. Basically the server has to hold packets back because either the bandwidth you allow or the bandwidth itself allows for each client is not high enough to send the packet immediately. Just set "rate" to 60000 (you can use 100000 to be sure, if you have more than 100kbits upload, otherwise it might increase your ping). If you still get choke it's the server. If you still want to/have to play on that server lower cmdrate and updaterate to 40 and bump up the interp to 0.025 (instead of 0.0152) or 0.05 (instead of 0.0303). You don't have to change the interp if you use interp 0 and interp_ratio 1 or 2.

If you have a good connection and get loss it's the server. If you get loss on every server you should call your ISP, it means your connection is shit.

Your explanation of interpolation is decent but a bit inaccurate at some points. For interp 0.0303/interp_ratio 2 TF2 isn't using the previous packet/snapshot to interpolate it uses the next one. With 0.0152/ratio 1 TF2 uses the snapshot previous to what you see and the next one to interpolate where everyone is in the frames between those two packets. Because you are only one tick behind the server you don't have any snapshots left that are newer than what you see atm if you miss one packet. Now the TF2 uses the two previous packets to extrapolate/predict/guess the player movements. If a guess was wrong the player(s) get(s) warped into the right place as soon as the next packet with the correct information arrives. When you are two ticks behind the server (0.303/ratio 2) and lose one packet you still got another, even newer snapshot. Instead of interpolating between the snapshot before and after your current time it uses the previous and the snapshot two ticks after the current time. Interpolating over two ticks instead of one is slightly less accurate but there won't be any warps.

Now comes the only thing that is just plain wrong.frownySince hitscan is hit detected locally and the hit confirmation is simply sent to the serverThis is just wrong. There's no other way to say that. All the hit registration is done by the server so no one can just sent random hit confirmations and kill everyone from across the map.

The reasons why some people use 0.0303/ratio 2 for hitscan and 0.0152/ratio 1 for porjectiles are the following:
0.0303 for hitscan:
No warps. If you lose just one packet with 0.0152/ratio 1 you might get a prediction are error and therefore a small warp. This little weird looking stutter can throw your aim off.
More accurate hitboxes. Again if you lose one packet and get a prediction error the enemy's model is slightly out of place. Now if you hit that model directly you are not necessarily hitting the hitbox because the hit registration is server side and the server doesn't know that for you the model was in that place. Most of the time you won't miss the shot completely but it's often the difference between hitting 10 bullets in the center for a meatshot or hitting that scout slightly to the side and just hitting 7 bullets and BAM that scout kills you because he survived that shot with 10 HP.

0.0152/ratio 1 for projectiles:
Less delay. Most players find the delay between firing a projectile and the moment it spawns on the server and you can see it far more irritating than the occasional small "stutter" after a lost packet. Prediction erros occur every now and then but the delay is there every single time you fire a projectile so most players want to minimize it. Plus projectiles are prediction-aimed and use a way bigger hitbox so it won't really affect your aim and hitreg.


tl;dr

//netsettings
//change these if necessary
rate 100000
cl_cmdrate 66
cl_updaterate 66
cl_interp_ratio 1

//don
[quote=Setsul]#2/#7
You got the right idea, there are just some minor mistakes.

With updaterate/cmdrate 66 and interp_ratio 1 the interp is 0.0152 but you've corrected that in the quote. However with interp_ratio 2 it would be 0.0303 not 0.033 (probably a typo). Using interp 0 and interp_ratio 1/2 is easier anyway.

Choke means that your or the servers rate is too low, not to high. Basically the server has to hold packets back because either the bandwidth you allow or the bandwidth itself allows for each client is not high enough to send the packet immediately. Just set "rate" to 60000 (you can use 100000 to be sure, if you have more than 100kbits upload, otherwise it might increase your ping). If you still get choke it's the server. If you still want to/have to play on that server lower cmdrate and updaterate to 40 and bump up the interp to 0.025 (instead of 0.0152) or 0.05 (instead of 0.0303). You don't have to change the interp if you use interp 0 and interp_ratio 1 or 2.

If you have a good connection and get loss it's the server. If you get loss on every server you should call your ISP, it means your connection is shit.

Your explanation of interpolation is decent but a bit inaccurate at some points. For interp 0.0303/interp_ratio 2 TF2 isn't using the previous packet/snapshot to interpolate it uses the next one. With 0.0152/ratio 1 TF2 uses the snapshot previous to what you see and the next one to interpolate where everyone is in the frames between those two packets. Because you are only one tick behind the server you don't have any snapshots left that are newer than what you see atm if you miss one packet. Now the TF2 uses the two previous packets to extrapolate/predict/guess the player movements. If a guess was wrong the player(s) get(s) warped into the right place as soon as the next packet with the correct information arrives. When you are two ticks behind the server (0.303/ratio 2) and lose one packet you still got another, even newer snapshot. Instead of interpolating between the snapshot before and after your current time it uses the previous and the snapshot two ticks after the current time. Interpolating over two ticks instead of one is slightly less accurate but there won't be any warps.



Now comes the only thing that is just plain wrong.
[quote=frowny]Since hitscan is hit detected locally and the hit confirmation is simply sent to the server[/quote]
This is just wrong. There's no other way to say that. All the hit registration is done by the server so no one can just sent random hit confirmations and kill everyone from across the map.

The reasons why some people use 0.0303/ratio 2 for hitscan and 0.0152/ratio 1 for porjectiles are the following:
0.0303 for hitscan:
No warps. If you lose just one packet with 0.0152/ratio 1 you might get a prediction are error and therefore a small warp. This little weird looking stutter can throw your aim off.
More accurate hitboxes. Again if you lose one packet and get a prediction error the enemy's model is slightly out of place. Now if you hit that model directly you are not necessarily hitting the hitbox because the hit registration is server side and the server doesn't know that for you the model was in that place. Most of the time you won't miss the shot completely but it's often the difference between hitting 10 bullets in the center for a meatshot or hitting that scout slightly to the side and just hitting 7 bullets and BAM that scout kills you because he survived that shot with 10 HP.


0.0152/ratio 1 for projectiles:
Less delay. Most players find the delay between firing a projectile and the moment it spawns on the server and you can see it far more irritating than the occasional small "stutter" after a lost packet. Prediction erros occur every now and then but the delay is there every single time you fire a projectile so most players want to minimize it. Plus projectiles are prediction-aimed and use a way bigger hitbox so it won't really affect your aim and hitreg.

[b]
tl;dr[/b]
//netsettings
//change these if necessary
rate 100000
cl_cmdrate 66
cl_updaterate 66
cl_interp_ratio 1

//don
10
#10
-3 Frags +
TekkThanks for this, using it now! My lerp is in orange though and is shaking (15.2 ms). Is this an issue?

Nah, it's totally normal if it just stays orange, but it'd be an issue if it changes to yellow or blinks a lot between yellow and orange and in that case you will have to lower the 'rate' value not less than 25000 (default is 30000).

[quote=Tekk]Thanks for this, using it now! My lerp is in orange though and is shaking (15.2 ms). Is this an issue?[/quote]
Nah, it's totally normal if it just stays orange, but it'd be an issue if it changes to yellow or blinks a lot between yellow and orange and in that case you will have to lower the 'rate' value not less than 25000 (default is 30000).
11
#11
3 Frags +

#9
Orange is normal for anything under 0.0303/ratio 2. It's a warning that in case of a packet loss extrapolation has to be used.

#10
Wrong, yellow means that the servers framerate is lower than the interp intervall. I doubt that changing your rate so you get choke will help the server framerate.

#9
Orange is normal for anything under 0.0303/ratio 2. It's a warning that in case of a packet loss extrapolation has to be used.

#10
Wrong, yellow means that the servers framerate is lower than the interp intervall. I doubt that changing your rate so you get choke will help the server framerate.
12
#12
0 Frags +

#8 awesome ! this is the new reference post to link people to when they ask about interp.

#8 awesome ! this is the new reference post to link people to when they ask about interp.
13
#13
0 Frags +
Setsul#2/#7
You got the right idea, there are just some minor mistakes.

With updaterate/cmdrate 66 and interp_ratio 1 the interp is 0.0152 but you've corrected that in the quote. However with interp_ratio 2 it would be 0.0303 not 0.033 (probably a typo). Using interp 0 and interp_ratio 1/2 is easier anyway.

Choke means that your or the servers rate is too low, not to high. Basically the server has to hold packets back because either the bandwidth you allow or the bandwidth itself allows for each client is not high enough to send the packet immediately. Just set "rate" to 60000 (you can use 100000 to be sure, if you have more than 100kbits upload, otherwise it might increase your ping). If you still get choke it's the server. If you still want to/have to play on that server lower cmdrate and updaterate to 40 and bump up the interp to 0.025 (instead of 0.0152) or 0.05 (instead of 0.0303). You don't have to change the interp if you use interp 0 and interp_ratio 1 or 2.

If you have a good connection and get loss it's the server. If you get loss on every server you should call your ISP, it means your connection is shit.

Your explanation of interpolation is decent but a bit inaccurate at some points. For interp 0.0303/interp_ratio 2 TF2 isn't using the previous packet/snapshot to interpolate it uses the next one. With 0.0152/ratio 1 TF2 uses the snapshot previous to what you see and the next one to interpolate where everyone is in the frames between those two packets. Because you are only one tick behind the server you don't have any snapshots left that are newer than what you see atm if you miss one packet. Now the TF2 uses the two previous packets to extrapolate/predict/guess the player movements. If a guess was wrong the player(s) get(s) warped into the right place as soon as the next packet with the correct information arrives. When you are two ticks behind the server (0.303/ratio 2) and lose one packet you still got another, even newer snapshot. Instead of interpolating between the snapshot before and after your current time it uses the previous and the snapshot two ticks after the current time. Interpolating over two ticks instead of one is slightly less accurate but there won't be any warps.

Now comes the only thing that is just plain wrong.frownySince hitscan is hit detected locally and the hit confirmation is simply sent to the serverThis is just wrong. There's no other way to say that. All the hit registration is done by the server so no one can just sent random hit confirmations and kill everyone from across the map.

The reasons why some people use 0.0303/ratio 2 for hitscan and 0.0152/ratio 1 for porjectiles are the following:
0.0303 for hitscan:
No warps. If you lose just one packet with 0.0152/ratio 1 you might get a prediction are error and therefore a small warp. This little weird looking stutter can throw your aim off.
More accurate hitboxes. Again if you lose one packet and get a prediction error the enemy's model is slightly out of place. Now if you hit that model directly you are not necessarily hitting the hitbox because the hit registration is server side and the server doesn't know that for you the model was in that place. Most of the time you won't miss the shot completely but it's often the difference between hitting 10 bullets in the center for a meatshot or hitting that scout slightly to the side and just hitting 7 bullets and BAM that scout kills you because he survived that shot with 10 HP.

0.0152/ratio 1 for projectiles:
Less delay. Most players find the delay between firing a projectile and the moment it spawns on the server and you can see it far more irritating than the occasional small "stutter" after a lost packet. Prediction erros occur every now and then but the delay is there every single time you fire a projectile so most players want to minimize it. Plus projectiles are prediction-aimed and use a way bigger hitbox so it won't really affect your aim and hitreg.


tl;dr

//netsettings
//change these if necessary
rate 100000
cl_cmdrate 66
cl_updaterate 66
cl_interp_ratio 1

//don
[quote=Setsul]#2/#7
You got the right idea, there are just some minor mistakes.

With updaterate/cmdrate 66 and interp_ratio 1 the interp is 0.0152 but you've corrected that in the quote. However with interp_ratio 2 it would be 0.0303 not 0.033 (probably a typo). Using interp 0 and interp_ratio 1/2 is easier anyway.

Choke means that your or the servers rate is too low, not to high. Basically the server has to hold packets back because either the bandwidth you allow or the bandwidth itself allows for each client is not high enough to send the packet immediately. Just set "rate" to 60000 (you can use 100000 to be sure, if you have more than 100kbits upload, otherwise it might increase your ping). If you still get choke it's the server. If you still want to/have to play on that server lower cmdrate and updaterate to 40 and bump up the interp to 0.025 (instead of 0.0152) or 0.05 (instead of 0.0303). You don't have to change the interp if you use interp 0 and interp_ratio 1 or 2.

If you have a good connection and get loss it's the server. If you get loss on every server you should call your ISP, it means your connection is shit.

Your explanation of interpolation is decent but a bit inaccurate at some points. For interp 0.0303/interp_ratio 2 TF2 isn't using the previous packet/snapshot to interpolate it uses the next one. With 0.0152/ratio 1 TF2 uses the snapshot previous to what you see and the next one to interpolate where everyone is in the frames between those two packets. Because you are only one tick behind the server you don't have any snapshots left that are newer than what you see atm if you miss one packet. Now the TF2 uses the two previous packets to extrapolate/predict/guess the player movements. If a guess was wrong the player(s) get(s) warped into the right place as soon as the next packet with the correct information arrives. When you are two ticks behind the server (0.303/ratio 2) and lose one packet you still got another, even newer snapshot. Instead of interpolating between the snapshot before and after your current time it uses the previous and the snapshot two ticks after the current time. Interpolating over two ticks instead of one is slightly less accurate but there won't be any warps.



Now comes the only thing that is just plain wrong.
[quote=frowny]Since hitscan is hit detected locally and the hit confirmation is simply sent to the server[/quote]
This is just wrong. There's no other way to say that. All the hit registration is done by the server so no one can just sent random hit confirmations and kill everyone from across the map.

The reasons why some people use 0.0303/ratio 2 for hitscan and 0.0152/ratio 1 for porjectiles are the following:
0.0303 for hitscan:
No warps. If you lose just one packet with 0.0152/ratio 1 you might get a prediction are error and therefore a small warp. This little weird looking stutter can throw your aim off.
More accurate hitboxes. Again if you lose one packet and get a prediction error the enemy's model is slightly out of place. Now if you hit that model directly you are not necessarily hitting the hitbox because the hit registration is server side and the server doesn't know that for you the model was in that place. Most of the time you won't miss the shot completely but it's often the difference between hitting 10 bullets in the center for a meatshot or hitting that scout slightly to the side and just hitting 7 bullets and BAM that scout kills you because he survived that shot with 10 HP.


0.0152/ratio 1 for projectiles:
Less delay. Most players find the delay between firing a projectile and the moment it spawns on the server and you can see it far more irritating than the occasional small "stutter" after a lost packet. Prediction erros occur every now and then but the delay is there every single time you fire a projectile so most players want to minimize it. Plus projectiles are prediction-aimed and use a way bigger hitbox so it won't really affect your aim and hitreg.

[b]
tl;dr[/b]
//netsettings
//change these if necessary
rate 100000
cl_cmdrate 66
cl_updaterate 66
cl_interp_ratio 1

//don
14
#14
1 Frags +

paging dr.bloodsire

paging dr.bloodsire
15
#15
0 Frags +

double post wow~

double post wow~
16
#16
0 Frags +

pretty sure he said cl_interp 0 on everything and ratio 1 on projectile and 2 on scout/sniper

pretty sure he said cl_interp 0 on everything and ratio 1 on projectile and 2 on scout/sniper
17
#17
0 Frags +
Hallowpretty sure he said cl_interp 0 on everything and ratio 1 on projectile and 2 on scout/sniper

interp 0/0.0152 = ratio 1
interp 0.03 = ratio 2

[quote=Hallow]pretty sure he said cl_interp 0 on everything and ratio 1 on projectile and 2 on scout/sniper[/quote]

interp 0/0.0152 = ratio 1
interp 0.03 = ratio 2
18
#18
1 Frags +

https://dl.dropboxusercontent.com/u/1811521/interp.html

https://dl.dropboxusercontent.com/u/1811521/interp.html
Please sign in through STEAM to post a comment.