Left 4 Dead 2

Left 4 Dead 2

363 ratings
Optimising Your Configurations & How To autoexec.cfg
By Shaa-Li
A basic tweak guide for l4d2: Lerp/rates, video settings, mouse settings, how to restore all settings/conosle commands to default, nvidia settings, the net graph & how to make an autoexec.cfg. Settings that must be changed if you want to play like a pro.
Enjoy :D

Please click thumbs up rating & favourite!!!!!!!!!!!

This is a guide for gamers who want the optimal settings to tweak their game, so that they can play to the best of their ability. These settings alone will not make you a better player, you will have to practice team awareness, headshotting, bunting, syncing infected, being an infected etc.

Mouse Settings
1. Windows Mouse Settings

Keep your windows mouse speed on default. To check go to control panel, in the search box type "mouse", Click on "Change the mouse pointer display or speed", in the motion panel make sure it is on the 6th notch (6/11). Having it on the 6th notch basically means that the ratio of mouse movement to cursor movement is 1:1. Any other ratio than 1:1 is not accepetable. Also make sure the enhanced pointer precision is unchecked.

2. Disable All Mouse Acceleration

Most people cannot play consistantly with mouse acceleration on. Having it enabled will move your cursor on the screen accordingly to how fast you have moved your mouse. For eg: If you move your mouse 1 inch at a slow rate, the distance the cursor moves on your screen will be less than the distance of cursor movement if you moved your mouse 1 inch at a fast rate.

There is one player in the top 20 csgo players 2013 (I couldn't find data for l4d2) that uses mouse acceleration. You could be in this 5%.

Check that mouse acceleration is disabled in your mouse driver settings.

Check that mouse acceleration is disabled in game:

m_customaccel "0" //Custom mouse acceleration (0 disable, 1 to enable, 2 enable with separate yaw/pitch rescale).
m_customaccel_exponent "0" //Mouse move is raised to this power before being scaled by scale factor.
m_customaccel_max "0" //Max mouse move scale factor, 0 for no limit
m_customaccel_scale "0" //Custom mouse acceleration value.
m_mouseaccel1 "0" //Windows mouse acceleration initial threshold (2x movement).
m_mouseaccel2 "0" //Windows mouse acceleration secondary threshold (4x movement).
m_mousespeed "0" //Windows mouse speed factor (range 1 to 20).

3. Mouse Polling Rate

Polling rate is how many times your mouse reports to your computer per second. A default USB mouse should have 125 Hz polling rate. This means the mouse signals back to your computer 125 times per second, thats every 8 milliseconds.

Increasing the polling interval will improve precision at the trade-off of using more CPU resources, therefore care should be taken when adjusting this value.

I recommend buying a non wireless gaming mouse & use 500Hz polling rate.

Polling rate table:

1000Hz = 1ms
500Hz = 2ms
250Hz = 4ms
125 = 8ms
100 = 10ms

4. Dots Per Inch (DPI) & In Game Sensitivity

The ideal DPI & sensitivity you need depends on the resolution of your screen, the type of game you play and your own personal preference. You must find what is best for you.

* Some mouse sensors get pixel skipping on high DPI setting.
* I prefer to play l4d2 with high sensitivity because there are many situations when you have do a 180° turn.

sensitivity "8" //The higher the number the higher your sensitivity will be

Vertical & Horizontal Sensitivity (I left these on default):
m_pitch ".022" //This determines how sensitive your mouse is on the vertical axis.
m_yaw ".022" //This determines how sensitive the mouse is on the horizontal axis.

5. Turn Off Mouse Filters & Raw Input

m_filter "0" //Mouse filtering (set this to 1 to average the mouse over 2 frames).
m_filter2 "0" //Mouse filtering (set this to 1 to average the mouse over 2 frames).

m_rawinput "0" // Use Raw Input for mouse input.

6. Check In Game Menu

Open Left 4 Dead 2--->Click OPTIONS--->Click KEYBOARD/MOUSE

Video Settings
Open Left 4 Dead 2--->Click OPTIONS--->Click VIDEO--->Click ADVANCED SETTINGS
  • Put FILTERING MODE on Antisotropic 2x
  • Put SHADER DETAIL on High
  • Put EFFECT DETAIL on High
I play in 1920x1080 which is my native resolution. You can try lower your resolution if game is not running well.

Nvidia Control Panel
1. Right click on the nvidia icon in the taskbar Open NVIDIA Control Panel
2. Go to Adjust Image Settings With Preview
3. Select Use the Advanced 3D Image Settings
4. Go to Manage 3D Settings.

Optimal performance settings:
Another thing you should have a look at is the Adjust Desktop Colour Settings.
You should benefit from increasing the Digital Vibrance % & possibly some of the other settings in this section, it all depends on what your monitor is like.

Network Graph
There are network graphs that you can have on your screen while playing that show various information. To use these commands you need to enable the in game console:

Open Left 4 Dead 2--->Click OPTIONS--->Click KEYBOARD/MOUSE
  • Press the button that brings up the console, which is ~ by default
These are all the different net graphs you can use:

net_graph 1 (Default 0)
net_graph 2
net_graph 3
net_graph 4

Also if you like to use the network graph but hate that large font it has here is how to make the font smaller:

net_graphproportionalfont 0 (Default 1)

Here is what the network graph looks like & the information that it shows:

>>>Network Graph Information<<<

This area is the legend for the colors used in the payload section of the graph. If a part of the payload arrives but doesn't fit into one of the predetermined buckets, then it is represented in the clear area between the last color and the little white dot the represents the full packet size [see indicator "a" in image].

For packets greater than 300 bytes which are in the 95th percentile, the size of the packet is rendered in text at the top of the payload area [see marker 2]. Note that the Orange Box tech uses compression on the packets, but the sizes reported in the net_graph payload are based on the decompressed payload size.

The local connection's frames per second and round trip ping to the server are shown in area 3.

This area shows the current bandwidth usage. The in/out show the size in bytes of the last incoming and outgoing packet. The k/s shows the kilobytes per second (rolling average) recently seen in each direction.

This area shows the performance of the server the client is connected to. The "sv" tag shows the fps of the server as of the latest networking update delivered to the client. The "var" shows the standard deviation of the server's frametime (where server fps = 1.0 / frametime) over the last 50 frames recorded by the server. If the server's framerate is below 20 fps, then this line will draw in yellow. If the server's framerate is below 10 fps, then this line will draw in red.

The "lerp" indicator shows the number of msecs of interpolation being used by the client. Some notes on the value of lerp follow below.

This area shows the user's current cl_updaterate setting, the actual number of updates per second actually received from the server, the actual number of packets per second sent to the server and the user's cl_cmdrate setting (which is the user's desired packets per second to send to the server).

When net_graphshowlatency is 1, this area shows a historical view of the latency of the connection. The height (indicated by marker "d") corresponds to net_graphmsecs time (actually there is a bit of headroom after net_graphmsecs at the top for the text fields to fit into). Red vertical lines indicate dropped packets from the server down to the client. If the graph shows a yellow marker (such as at marker "c"), this indicates that the server had to choke back one or more packets before sending the client an update.

When net_graphshowinterp is 1, this area shows for each client frame how much interpolation was needed. If there is a large gap between packets (packet loss, server framerate too low, etc.), then the client will have insufficient data for interpolation and will start to extrapolate. The extrapolation is shown as orange bars rising up above the while line (a run of extrapolation can be seen just to the left of the 9 marker). In addition, the very bottom pixel indicates whether a CUserCmd ("usercmd") packet was sent on that rendering frame, or held back by the client and aggregated due to the user's cl_cmdrate setting.

Spectating Free Look
Spectating Free Look is when you can spectate in 1st person, 3rd person & free looking around the map which is basically no clipping around the map.

Open Left 4 Dead 2 --->Click OPTIONS --->Click Multiplayer --->Spectating Free Look ---> Enabled

The default key to switch between spec modes is SPACEBAR.

When in free look (no clip) mode use your movement keys & mouse to look around the map.

You can rebind the spec mode key eg (in this case the key it is bound to is ","):
bind , "spec_mode"

You can rebind the key to toggle from player to player key eg (in this case the key it is bound to is "."):
bind . "spec_next"

Restoring All Default Settings
You can restore all default settings including all console commands. To do this the conifg.cfg file must be deleted & re-downloaded:

1. Navigate to: Steam\steamapps\common\left 4 dead 2\left4dead2\cfg\config.cfg
2. Delete config.cfg
3. Verify integrity of game cache:
  • Go to your Steam LIBRARY
  • Right click on Left 4 Dead 2
  • Select properties
  • Go to the LOCAL FILES tab
Steam will now re-download any missing or altered files in your left 4 dead 2 folder.

*Beware all your settings will be gone.
*When you re-open your game after doing this make sure you have not got any unwanted settings in your autoexec.cfg that will load.

Lerp/Rate Settings
By default we have 100 lerp which is +100ms of view lag. For survivor gameplay it is essential to have low lerp eg: 10 or 0 lerp. Having low lerp gives you a more accurate reading of the hitbox compaired to the model thus more time to skeet/bunt. With high lerp the hitbox is more further foward from the model (more closer to you), thus giving you an inaccurate portrayal of the hitbox from the model & giving you less time to skeet or bunt. So therefore, as the infected it is better to have high lerp because raising your lerp brings the survivors hitbox closer to you & you can hit the survivors from further away. You can test it out on offline server by yourself or in a server friends.

Console commands for how to view hitbox on hunter hard rain map 1 single player:
map c4m1_milltown_a
sv_cheats 1
god 1
z_spawn hunter
sv_showhitboxes 2

Switch between 0 & 500 lerp to see difference in hitbox position:
cl_interp 0.000
cl_interp 0.500

Other commands that might be of use:
kick hunter
nb_stop 1
sv_pausable 1

Some noteworthy links:

>>>Lerp in Left 4 Dead<<< [insidethesaferoom.blogspot.com.au]

100 lerp
16 lerp
This video from the game Fistful of Frags shows what lerp does:

"Entity interpolation causes a constant view "lag" of 100 milliseconds by default (cl_interp 0.1)"
"More recent Source games have the cl_interp_ratio cvar. With this you can easily and safely decrease the interpolation period by setting cl_interp to 0, then increasing the value of cl_updaterate (the useful limit of which depends on server tickrate). You can check your final lerp with net_graph 1".
>>>Entity Interpolation<<<


"Basically, lerp can play a lot of different important roles in melee-ranged situations."
>>>ProdigySim's Guide<<<[www.l4dnation.com]

Changing your lerp is legal to do, it is not a hack. Usually on a pro-mod confogl server you can change your lerp up to 5 times. Changing it any more than that is not allowed by professional standards & is generally frowned upon. On a pro-mod confogl server any lerp between 0-99 is allowed. You will be kicked from the game if your lerp is over 99. However on a vanilla server (regular server) & most others you can change your lerp from 10-100+.

The following is the best settings for lerp/rates. The are ideal for any any server up to 100 tickrate. Simply enable the in game developer console, then when in game hit the button to enable it, which is "~" by default, then put in the following commands eg: rate 100000

rate 100000 (Default 10000)
cl_cmdrate 101
cl_updaterate 101
cl_interp 0.010 (Default 0.1)
cl_interp_ratio -1 (Default 2)

Everytime you open up your game, the lerp settings will reset to default. However If you put your lerp/rates settings in a autoexec.cfg you can stop this from happening.

What Is An autoexec.cfg
An autoexec.cfg is a CFG file for launching a game with set console variables. Normally, the file autoexec.cfg is run when the game starts up. This file is executed before the first map starts. An autoexec.cfg can be reloaded from the console whilst in game, using the following command:

exec autoexec

Sometimes people put exec lines into the autoexec.cfg, so that other .cfg files are executed when the game starts up. These files (including the autoexec.cfg) can be placed in subdirectories of the cfg folder.

The location of the cfg folder is:

Steam\steamapps\common\left 4 dead 2\left4dead2\cfg

The valve.rc executes the autoexec.cfg. The location of the valve.rc is:

Steam\steamapps\common\left 4 dead 2\left4dead2\cfg\valve.rc

The valve.rc file should look like this when opened with notepad++:

If your valve.rc file dosn't look like that it should be fixed by verifying integrity of game cache:

  • Go to your Steam LIBRARY
  • Right click on Left 4 Dead 2
  • Select properties
  • Go to the LOCAL FILES tab

Steam will now re-download any missing or altered files in your left 4 dead 2 folder.

autoexec.cfg Example
The following link is exactly how I have it in my autoexec.cfg using the conosle commands as mentioned in previous sections of the guide:

>>>Example autoexec.cfg<<<[l4d2.gamebanana.com]


If you use this you can toggle your lerp in this config by pressing "\" lerp changes from 10,16.7,33.3,67,100. You will never have to manually change your lerp again!!!!!!! The default lerp on a confogol server with this config is 10 default on others is 16.7, because I prefer 10 lerp but it is not possible to get 10 lerp on a server without confogol, lowest lerp possible on a server with no confogl is 16.7. Essentially you don't have to hit "\" as the config will select best lerp setting automatically for the server.

This config also contains a net graph toggle, by pressing "/" This toggles from net_graph 1, then to net_graph 2, then to net_graph 3, then to net_graph 4, then to net_graph 0 (no net graph).

How To Make An autoexec.cfg
1. Configure Windows To Show File Extensions:

Windows 7 & 8
  • Open Control Panel
  • Click Folder Options then click View
  • Uncheck the box that says Hide extensions for known file types
  • Click Apply

2. CFG files can be written in any plain text editor:
  • Right click on your desktop, then create a new text document.
  • Rename the file to say: autoexec.cfg
  • Put in your desired settings/binds or copy & paste mine from >>>Here<<<[l4d2.gamebanana.com]
  • Put the autoexec.cfg in: Steam\steamapps\common\left 4 dead 2\left4dead2\cfg


>>>Download my example autoexec.cfg already made here<<<[www.dropbox.com]
Put the autoexec.cfg in: Steam\steamapps\common\left 4 dead 2\left4dead2\cfg

Please note:
Make sure the file is called autoexec.cfg however just naming it autoexec could work if you havn't done ↑step 1↑ Configure Windows To Show File Extensions.

Troubleshooting autoexec.cfg
If the autoexec.cfg is not working & your game isn't finding the autoexec.cfg at all, even when type "exec autoexec.cfg" (without the ") in the console. You can try the following fixes:


There has been a problem in CS:GO since the release (this may also help in l4d2 if you are having problems), that the configs are loaded in a wrong order. The easiest way to avoid that problem, is adding host_writeconfig as the last line in your autoexec and making sure, that your config isn’t set to read-only. The command overwrites any cvars in the config.cfg with the ones in the autoexec.cfg when the autoexec is executed.


You may need to rename it to something else, for eg: "basic.cfg" (without the ").

Put the basic.cfg in:
Steam\steamapps\common\left 4 dead 2\left4dead2\cfg

Then you need to get the basic.cfg to execute, here are 2 ways to do this:

A. Change Set launch options to execute basic.cfg automatically when your game opens:

  • Go to your Steam LIBRARY
  • Right click on Left 4 Dead 2
  • Select properties
  • In the GENERAL tab, click SET LAUNCH OPTIONS...
  • Type " +exec basic" (without the ")
  • Click OK

B. Type: "exec basic" (without the ") in the console everytime you open your game.


Go to this file: Steam\steamapps\common\left 4 dead 2\left4dead2\cfg\config.cfg
Edit the config.cfg. Add exec autoexec.cfg to your config.cfg file. Click save.

Also make the file read only:
  • right click on config.cfg
  • Select properties
  • In the General tab tick the box next to Read-only
  • Click on Apply


Go to this file: Steam\steamapps\common\left 4 dead 2\left4dead2\cfg\config.cfg
Edit the config.cfg. Copy your settings in your autoexec.cfg paste them on a new line in the config.cfg file.

Also make the file read only:
  • right click on config.cfg
  • Select properties
  • In the General tab tick the box next to Read-only
  • Click on Apply

The End
I hope you liked my guide :D

Remember to click thumbs up rating & favourite it, thankyou!!!

Also check out my other L4D2 guide:
How To Predict/Determine Which Special Infected Will/Has Spawned (bacteria folder♪ & other methods)


< >
What about for people running fucking shitty iGPUs and don't have the spondoli for a DGPU, as well as have a crappy cpu on just 4gb RAM(ddr3)?
Shaa-Li  [author] Jul 8 @ 4:37pm 
If you have 6/11 in windows & with mouse acceleration disabled there is no need for m_rawinput 1, but use it if you want it's probably fine.
Finn ™ Jul 8 @ 4:02pm 
hey bro, but using m_rawinput 1 isn't better? many people advices me to enable it
stellar⚧ Jul 7 @ 8:09am 
Joetrija Jun 24 @ 7:32am 
Holy crap dude. Thanks!
Nakadashi Jun 8 @ 3:21am 
great guide but the lowest lerp I can run on my game (even on single play) is 67 lerp 10 16.7 or 33.3 all CI just run like they stuck under invisible walls