1. Click here to join our community discord server.

Dismiss Notice

Don't forget to connect your Steam account to your forum profile. Click here to do this now or click your name in the right-top corner and choose 'External Accounts'.

Settings for Hunters in VS Games - LERP

Discussion in 'General Discussion' started by erik, Apr 19, 2015.

  1. erik

    erik MG Donor

    I recently tried out ProMod with another admin who is very good at it. Basically, it's an "almost vanilla" mod which has a super fun 1v1 option. You can do really cool and encouraging moves, like "skeet" kill a hunter. That's when you take it down in 1 shot mid-air, sort of like a "dead stop."

    There was a lot of talk about LERP settings, all of which totally confused me, to be honest. I've never had any issues with playing as Hunter, so had no need to learn about it until now.

    I never messed with it, so I kept mine at default. However, people who are experienced with that mod always use something much, much different. For me, it made the experience unplayable, because it seemed to totally mess up the feel/view. However, I wanted to figure out this LERP business before going any further so I can understand it.

    A million years ago, I could Kai Jump really well with a Hunter (bounce from wall to wall to wall to create a diversion or buy time before going in for the kill.) i remember fellow gamers who were also good at that spoke frequently of modifying their LERP settings.

    Anyone have experience changing these values who's able to put it into a layman's terms sort of explanation?

    If memory serves, G-Force and some of the VI dudes know about this kind of thing and have experience tweaking it. ;)
     
  2. Hawk

    Hawk Member

    What is Interpolation?

    Interpolation was meant to help keep gameplay smooth even when packet loss occurs, or when waiting between update packets.

    When using an interpolation value of 100 ms, the game state you see (all player/object positions) is an interpolated game state that pulls from:
    • The most recently received game state (last update/tick)
    • The game state from 100 milliseconds ago

    Essentially, this is going to mean that with cl_interp 0.1, what you see is going to be 100 ms behind the latest game state you received. Add on a ping of 50, and your client is behind the server by a full 150 ms every time it gets an update.
     
  3. Hawk

    Hawk Member

    What does interpolation affect?

    Your average player isn't going to care much about messing with interpolation values at all, but in competitive play it can be very important.
    • How early/late you can deadstop (and where the hunter or jockey appears to be when you do)
    • How near or far you appear to be to a Survivor when you scratch or punch them (See: Tank Long Arms)
    • How much time you have to skeet/deadstop something before its tongue/charge/pounce/punch lands
    • How much things will move if you DO start losing packets
    • How smooth things will look on a frame to frame basis

    Basically, lerp can play a lot of different important roles in melee-ranged situations. Most players will benefit from adjusting their lerp from the default value. Note that your lerp value has nothing to do with whether you actually DO lose packets or not. That's controlled by network conditions entirely. Interpolation is just one solution to combat the jerkiness caused by lost packets and by the wait between packets.

    So, an interpolation setting of 0 will make you lose smoothness (most people report jerky commons and SI), but it will give you the most current game state possible on your ping, and usually give you more time to deadstop hunters and whatnot.
     
  4. Hawk

    Hawk Member

    What should I set my interpolation to?

    In general, you want a lerp that's lower than the default of 100 ms. Some people switch their lerp when changing between survivor and infected side, but any forms of lerp toggling are usually frowned upon. Current Confogl configs watch for lerp changes and announce them, and leagues and tournaments are developing rules about lerp changes.

    For Survivor play you are always going to want a lower lerp.
    The maximum value generally people use is 67 ms, and the lowest is 0 ms.
    Other popular settings: 10 ms, 16.7 ms, 20 ms, 33 ms, 38 ms, 40 ms.


    It's important to note that the time between ticks on l4d2 is 33 ms, so we basically see a split in preferring < 1 tick of interpolation and > 1 tick of interpolation. Theoretically, many of these values are redundant, and only make tiny differences in what you see on your screen and how the server calculates your position and your hits.

    For infected, higher lerp values can often be useful, as survivors generally run away from SI. Usually a survivor is going to make sure he/she is just out of the tank's reach. But, if the tank is using high interpolation, he won't see the survivor start to move for an extra 100+ ms. When using lerps extremely high, such as 400 ms or 500 ms, this problem is exacerbated greatly. The same phenomenon occurs when other special infected scratch survivors.
    Confogl blocks lerps higher than 100 ms for this reason.

    In general, though, you can still do everything you need to do as Infected with 0 ms, so it's recommended that you set your lerp to a value you're comfortable with on Survivor side.
    Also, pouncing or charging another player will get harder the higher your lerp is, because the survivor position you see will not match up with the server's model. You will find more often that you pounced/charged right through a survivor and didn't hit.
     
  5. Hawk

    Hawk Member

    How do I set my interpolation?

    Your interpolation value (lerp) is determined by the following formula based on your client cvars:


    min( max( cl_interp, cl_interp_ratio / cl_updaterate ), 0.5f )
    To put this in english:
    Your cl_interp value is limited to a minimum value of cl_interp_ratio / cl_updaterate and a maximum of 0.5 (500 ms), and is set by the cl_interp cvar value.
    Note that for example cl_interp 0.04 results in 40 ms lerp.

    When setting your lerp, a good idea is to set your cl_updaterate as high as possible, your cl_interp_ratio as low as possible, and then your cl_interp to what you actually want. This will minimize the value of the cl_interp_ratio/cl_updaterate-imposed limit and let you pick what you want for interp.

    For example, I use 16.7 lerp, and my autoexec contains the following

    rate 30000 cl_cmdrate 100 cl_updaterate 100 cl_interp 0.0167 cl_interp_ratio -1 // actual value will clamp to the minimum value allowed by the current server
    Normal servers allow 60 updaterate and a minimum interp ratio of 1. Confogl servers lock updaterate to 30 and allow interp ratio 0. This kind of a setting covers both bases.

    Note that as you can see from the code, it is normally also advised to increase your rate setting to the L4D2 maximum of 30000, which tells the server that you can receive up to 30000 bytes/s which every normal connection nowadays should be able to handle. I also like to keep my cl_cmdrate value the same as my cl_updaterate, although due to engine limitations it technically doesn't make a difference whether you use 30 or 100 cmdrate.

    If you use this snippet, edit the value for cl_interp as you wish depending on which lerp you want to use.
    Note that on regular servers such as VALVe's official dedicated servers, the minimum lerp you will be able to use is 16.7

     
  6. Hawk

    Hawk Member

    So what lerp should I use?

    If you are still unsure what lerp to use after reading the guide until here, I would recommend you to stick with the 16.7 lerp for now. If you see too many jerky animations, increase it until you feel comfortable with them. A lerp above 50 ms should give most users completely smooth common infected animations.

     
  7. Hawk

    Hawk Member

    I hope this helps, its the guide I used when I started using it, but the thing about it as stated above, those who use and manipulate these settings will be able to dominate/use these to be better than others at vs who don't know how to use these settings, so for that reason that's why some servers put limits and other things,

    This guide to cl_interp was written by ProdigySim, originally posted here.
     
  8. Hawk

    Hawk Member

    IN other words:

    When I say it's personal preference, I mean your brain is going to be able to adapt to just about any lerp setting in terms of timing deadstops, and so it's mostly arbitrary.

    Theoretically the best lerp is a low lerp, because you will be presented with stimuli sooner, and the stimuli presented will more closely represent the current gamestate on the server (for non-lagcomped processes like charging, pouncing, ...)


    **** exemplar ****

    In terms of deadstopping, you can either deadstop "too early" or "too late". Too early means your deadstop completely finishes before the hunter gets in range to be deadstopped. Too late means the hunter will already land on you before the deadstop registers on server side.

    What we want to do is relate this timing range (between too early and too late) in terms of hunter position, scaled on lerp. I'm going to use completely arbitrary, incorrect, and exaggerated numbers to drive this point home.

    Let's say we use 0ms lerp, and some arbitrary ping.

    A hunter pounce at us from far away and is traveling very fast (terminal velocity?). We can start our deadstop as early as when the hunter is 15ft away, or as late as when the hunter is 3ft away.

    Let's say we use 100ms lerp, and some arbitrary ping.

    A hunter pounces at us from far away, and is traveling very fast (terminal velocity?). We can start our deadstop as early as when the hunter is 25ft away, or as late as when the hunter is 13ft away.

    Both scenarios give you the same timing window, but the visual stimuli will simply differ.

    Your brain will adapt to either scenario just fine if you train it (by playing!)

    However, this does have implications for very short range pounces, which you might find "un-deadstoppable" on high lerp/ping without great prediction.


    *** on choppiness of commons ****

    nb_update_frequency 0 (on server) can fix this, at the cost of changing CI pathing. It controls the interval (not frequency) at which NextBot locomotion updates are calculated (?) and sent.

    According to some guys' tests you should be able to go as low as 50ms lerp on standard servers without jumpy common.

    nb_update_framelimit might also be worth something (on server again) but I don't know what it does.
     
  9. erik

    erik MG Donor

    Ok, thank you. Not sure if you wrote this but this makes sense. Whatever I read didn't. Anyways... this addresses my concerns and helps shine light on why I was so fuckin confused about it all.

    I see default settings (of anything) as accepteable and also implied gaming standards.

    Many of the gamers in the Mod I was trying to learn see it as "cheap" or "lesser" to have default interpolation. Therefore, having "blah blah" LERP (cuz that's what most of them set it to) for no other reason than making the game impossible is something I dno't understand. For some reason, the default or norm (I forget the figure) made it unplayable for me. There would be horrible timing gaps, thus allowing the surv to completely skeet me with absolute ease, if I'm a hunter. A pause at the very end is not a skillful challenge, it's absurd. I also got horrible headaches, and that's prob. just because I changed it bakc & forth in too short of a timeframe.

    Regardless, thanks for the clarification. I really like the list of "What is actually affected." Still kinda annoyed, though, if the best players for that mod use x LERP, then I'd like to be able to do that, but I simply can't because it's unplayable/unmanageable, and of course the inconvenient delays. I never had too much of a problem as survivor no matter which mod I'm playing on; on ProMod, though, you really gotta make sure you understand that even a tiny smidgeon of "mouse acceleration" change can make your shotgun wave around like a cardboard one, uncontrollably... or also render it so heavy, it's like moving under water.

    For me, tweaking & finding a challenging yet acceptable LERP for infected; that's the real challenge. It always seems to be extremes of "all or nothing," cool, I can play this, or wtf, why do I suddenly have to give up my controls if I wanna be a hunter? :) Gonna work with it and give the mod another shot; the gamers on it are all very good but too deep in the terminology to break it down for a nabe.

    Thanks again for the expansive answers; I'm sure others were wondering this too.

    PS - How LERP can affect commons, not even going there, commons have suddenly become unmanageable for me (especially on MG's modded servers,) so I just chalk that up to L4D2 B.S. and having to deal with it
     
  10. Hawk

    Hawk Member

    Just like the guy who wrote this guide (no I didn't write it) I use 16.7 lerp for survivor, but for infected its challenging. In vs, some days my ping is really terrible and the game lags bad so there fore I have to make it up by changing the lerp to a higher ms making it to where I can actually hit the survivor, when playing charger it always seems like I hit the guy but completely miss, and that's what lerp is for. the players you met on that mod use it to better the timing to improve their game, not just to fix lag, I don't know much about the commons but from my understanding they are hard to control so I don't deal with it. I find using the inf higher lerps are just hard I too get some headaches from it, so I just stick to the survivor lerps, I think unless the game is really lagging I don't need to change it
     
  11. chompski

    chompski Junior Member

    Too long, i cant read that many words else my brain would explode... Thx for the guide though, looks useful. i might read it 10 years from now.:W