Left 4 Dead 2

Left 4 Dead 2

458 ratings
Left 4 Dead 2 Dedicated Server Guide (Detailed)
By Knappy
A detailed guide on creating and managing a Left 4 Dead 2 Dedicated Server
Obtaining Server Files
This process is the same for all source engine games. If you already have the server files or have installed a SRCDS via SteamCMD before and know how to download server files, you can skip this.

Steam now uses SteamCMD (formerly HLDSUpdateTool) to download server files.

Download SteamCMD for your respective Operating System:

After you have downloaded SteamCMD, extract the steamcmd.exe to a folder on your server drive.

Note: This guide will use the default directory of the root of Hard Drive: C:\
This makes it easier to send the directory command as it is shorter.

However, you can paste text to CMD prompts by right clicking in the CMD header:

Run the steamcmd.exe to install the tool's files, the dialog will appear installing files:

Note: Do not install server files within the SteamCMD folder.

While SteamCMD is downloading the tool, go ahead and setup your server directory.

This guide uses the root of a Hard Drive: C:\L4D2

Note: Using the root of a Hard Drive makes it easier to navigate through file structures and execute Change Directory (cd) commands in SteamCMD, however remember you can paste your server directory into the prompt should you decide to place it alongside the Left 4 Dead 2 game folder in your Steam Client Directory:
C:\Program Files (x86)\Steam\SteamApps\common\Left 4 Dead 2 Dedicated Server

You can make a folder anywhere except within the SteamCMD folder!

Once SteamCMD has completed downloading its files, the dialog box will look like:

Close SteamCMD and restart the program as administrator

Left 4 Dead 2 uses the APPID 222860, you will login anonymously to download the server files AFTER you set the install directory for your server files (see all app ID's here):
force_install_dir: C:\L4D2

Fun Time!

Assuming you have already created your server folder (C:\L4D2) and set the server file directory within SteamCMD using the force_install_dir C:\L4D2 command, send the following command:
login anonymous ENTER app_update 222860 validate ENTER

Note: Use your server directory!

Note: Here is a list of all Steam Application ID's for reference to installing other server games.

This process is the same for all game servers, they just have a different (unique) Application ID

This may take some time to download all the necessary files, when complete:

Send the quit command and hit Enter:


This concludes the process of obtaining the server files.
Port Forwarding
There are many resources out there for Port Forwarding. This guide is aimed at servers that are hosting on a provider or system other than the game client. This guide will work for Listen Servers (Listen Servers are servers hosted on the same Computer that you play the game on)

Those creating a Listen Server will encounter Port Forwarding issues which if you know how to access your router control panel, is an easy fix. For those not familiar with the process, please utilize Google and other resources such as the ones below for assistance in forwarding your ports.

If you are hosting your server on a game server provider (GameServers, VPS (Virtual Private Server such as NFOServers) or a host that you actually pay for, then you don't need to worry about this as your provider should have all ports forwarded automatically depending on what server you are hosting. By default the L4D2 port is 27015 however it may have a range from 27015-27020 or more.

Ports required for Steam

Port Foward[www.portforward.com]

Check if your Ports are Open[www.canyouseeme.org][/b]
Server Configuration (server.cfg)
The cfg file is what contains the settings (in the form of cvars) for your server.

By default the server.cfg does not exist after installing and creating your server. You will need to create one:
Here[www.dropbox.com] is a very detailed server.cfg
Here[www.dropbox.com] is a standard L4D2 server.cfg

Note: Be sure to rename these files to "server.cfg" should you decide to download and install to your server!

To create a new server.cfg, create the cfg within a text editor such as notepad, or Sublime Text[www.sublimetext.com] or notepad++[notepad-plus-plus.org] and save the file as server.cfg

The server.cfg file should be located at:

Create this file using notepad, simply right-click in the folder and select New⇒Text Document. Don’t name it anything yet; just creat a blank text file.

For a complete list of L4D2 Cvars, see this

For a text file list of all L4D2 Cvars see this[www.dropbox.com]

One of the most important things to keep in mind while writing the server.cfg is the syntax. It is very simple actually.

For those using Sublime Text:
CFG Syntax Highlighting[tf2rj.com]
SourcePawn Syntax Highlighting[sublime.wbond.net]

// means the server will ignore everything behind // on that line, so if you want to stop using a variable, put // in front of it - this is commonly referred to as "commenting out" which tells the server to ignore that command/cvar.

Every variable has to be put on its own line, or else it will not be read/executed and the server console may report an error about it so you can narrow down the issue.

If you have spaces somewhere (the name of the server for example), be sure to write it between quotes.
hostname "Use quotes with spaces"

Here are some explanations on the most important variables:

sv_maxupdaterate 100:
This variable sets the maximum amount of updates the server will send to each client per second. If you set this to 100, your server will run optimally because the tickrate automatically adjusts this value. Having a tickrate of 33 will make this variable 33 as well. Thus, a setting of 100 for this variable is more or less a “one size fits all.”

sv_minupdaterate 20:
This variable is the opposite of maxupdaterate. During the years I’ve been hosting servers, I’ve found out that when the updates drop below 20 per second, clients start to experience lag. That’s why we set this to 20; just like maxupdaterate, this value fits all servers.

This variable probably has the most impact on the quality of the server performance. It’s the maximum amount of data sent to one client per second. If you don’t have a great connection, you can set this variable to make your server run perfectly. As I explained above, this has something to do with the maxplayers of the server. To calculate this variable we use a formula; it’s simple and 90% accurate.

Here[www.dropbox.com] is an example server.cfg file you can download and edit. Just be sure to name it server.cfg

Example Server.cfg
hostname "Your Server Name Here" rcon_password yourpass // This states how players should contact you sv_contact your@email.com // # of rounds to play (versus) mp_roundlimit 2 // Use a search key to find the server in the lobby //sv_search_key "" //sv_tags "" // STEAM GROUP sv_steamgroup GROUPIDHERE //FRIENDLY FIRE 1=ON 0=OFF sm_cvar survivor_friendly_fire_factor_easy 1 sm_cvar survivor_friendly_fire_factor_expert 1 sm_cvar survivor_friendly_fire_factor_hard 1 sm_cvar survivor_friendly_fire_factor_normal 1 // CHEAT/CONFIG sv_lan 0 sv_cheats 0 sv_consistency 1 sv_maxcmdrate 101 sv_maxrate 30000 //MOTD motd_enabled 1 //GAME MODE sv_gametypes "coop, versus, mutation" sm_cvar mp_gamemode coop //DIFFICULTY z_difficulty Impossible //LOBBY CONNECT sv_allow_lobby_connect_only 0 //BEBOP //l4d_maxplayers "8" //sv_maxplayers "8" //sm_cvar l4d_maxplayers "8" //sv_visiblemaxplayers "-1" //sm_cvar l4d_survivor_limit "8" //sm_cvar sv_removehumanlimit "1" //Game Settings mp_disable_autokick 1 //(command)prevents a userid from being auto-kicked (Usage mp_diable_autokick ) sv_allow_wait_command 0 //default 1; Allow or disalow the wait command on clients connected to this server. sv_alternateticks 0 //defulat 0; (singleplayer)If set, server only simulates entities on even numbered ticks. sv_clearhinthistory 0 //(command)Clear memory of server side hint displayed to the player. sv_consistency 0 //default 1; Whether the server enforces file consistency for critical files sv_pausable 0 //default 0; is the server pausable sv_forcepreload 1 //default 0; Force server side preloading sv_pure_kick_clients 0 //default 1; If set to 1, the server will kick clients with mismatchng files. Otherwise, it will issue a warning to the client. sv_pure 0 //If set to 1, server will force all client files execpt whitelisted ones (in pure_server_whitelist.txt) to match server's files. //If set to 2, the server will force all clietn files to come from steam and not load pure_server_whilelist.txt. Set to 0 for disabled. // Communication sv_voiceenable 1 //default 1; enable/disable voice comm sv_alltalk 1 //default 0; Players can hear all other players' voice communication, no team restrictions // Logging log on //Creates a logfile (on | off) sv_logecho 0 //default 0; Echo log information to the console. sv_logfile 1 //default 1; Log server information in the log file. sv_log_onefile 0 //default 0; Log server information to only one file. sv_logbans 1 //default 0;Log server bans in the server logs. sv_logflush 0 //default 0; Flush the log files to disk on each write (slow). sv_logsdir logs //Folder in the game directory where server logs will be stored. // Bans // execute banned.cfgs at server start. Optimally at launch commandline. exec banned_user.cfg //loads banned users' ids exec banned_ip.cfg //loads banned users' ips writeip // Save the ban list to banned_ip.cfg. writeid // Wrties a list of permanently-banned user IDs to banned_user.cfg. //Network Tweaks - Increase network performance rate 10000 //default 10000; Max bytes/sec the host can recieve data sv_minrate 15000 //default "5000"; Min bandwidth rate allowed on server, 0 = unlimited sv_maxrate 30000 //default "0"; Max bandwidth rate allowed on server, 0 = unlimited sv_mincmdrate 20 //default 0; This sets the minimum value for cl_cmdrate. 0 = unlimited [cevo=67] sv_maxcmdrate 33 //default 40; (If sv_mincmdrate is > 0), this sets the maximum value for cl_cmdrate. [cevo=101]

Now after you have successfully created your server.cfg file, upon executing the command
exec server.cfg
in the server console or when you start up and launch your server you shouldn't get the
couldn’t exec server.cfg
return error within the console!

Happy server customizing and configuring!
//PIPE-BOMB DURATION sm_cvar pipe_bomb_timer_duration "10"

Message of the Day (MOTD)
(This section will be re-written)

Every time a player enters a Left 4 Dead server online, a message of the day screen welcomes them. There’s a default MOTD, but if you’re paying for your own server, you probably want to customize it. This guide will show you how.

First, we’ll look at the actual MOTD screen:

There’s two sections that you are able to customize: the host banner on top and the message of the day which takes up the majority of the screen on the bottom. These two sections are actually just web pages (html files), which can be entered into the files on the server or hosted on your own web server/web host. The two files to control these sections are “host.txt” for the host banner, and “motd.txt” for the MOTD. You can find these in your server’s L4D directory at l4d/left4dead/. Note that this is NOT the same directory as the server.cfg file that you use to change server settings. The server.cfg file is located in l4d/left4dead/cfg/.

The default host banner and MOTD run off of Valve’s web servers. The default host.txt and motd.txt files contain only one line which is a URL to the website you wish to have displayed. You can either use this method if you have your own hosting or you can just fill the .txt file with HTML code. If you have multiple servers with the same banner, it’s best to use web hosting so you only have to change the banner in one place.

One very important thing to realize about the MOTD and host banner is that they change sizes depending on the resolution the player is running at. The following values are in pixels, you can click on the screen resolutions to see what the MOTD looks like on that resolution:

The ratio of width to height for the host banner is 5:1, and the ratio of width to height is 2:1. You have two choices with the host banner: either make it one large size and have it be cropped for people on lower resolutions (which is what I believe Valve does), or you can use some CSS in your HTML code to automatically resize the banner no matter what resolution a player is using. This is the method we use, and it’s a simple little trick.

Our host.txt file has just one line:


The code to that webpage is as follows:

<head><title>Left 4 Dead 411</title></head>
<body style=”margin:0px;padding:1px;background:#000000;”>
<img src=”http://i162.photobucket.com/albums/t280/left4dead411/l4d411-communityserverbanner.jpg” style=”width:100%;height:100%;” />

That’s all it is! The title doesn’t show up anywhere, so it’s not important. The body styling is to make sure the image appears in the very top left, with one pixel of padding, and a background color for when the image is loading. The image tag has a style of 100% width and height. If you go to that page in your browser, it’ll look really messed up. But since you know for a fact that every resolution has a 5:1 ratio for the host banner, it will always look fine and be in the same proportions. One little bug: on 1920×1080, when you first get into the game sometimes the banner is sized strangely (pic). Hopefully this gets fixed.

The MOTD section is the same as the host banner – it can be either a hosted HTML file (place the URL on a single line in the top of the .txt file) or you can just put the HTML code directly into the text file. All we have is a simple background image with some centered text, you can see it/view the source here if you need an example.

If your MOTD is not showing up, you might have to set motd_enable 1 in your server.cfg.

That’s all there is to it! Head to our forums if you need any help.
SourceMod & MetaMod
Download the latest SourceMod and MetaMod Releases:

Noob Resources
FAQ: Sourcemod Newbies Guide[forums.alliedmods.net]
How to install plugins on l4d2?[forums.alliedmods.net]
Need help on getting SourceMod plugins work

These files are copied to the same location as the existing addons folder![/u]

NOT >IN< the addons folder!

The Basics

For the love of all things...read the plugin author's release post. It will detail the config cvars and other necessary files you may need to include!

See the L4D2 Plugins[www.sourcemod.net] that you can install on your server.

Adding Admins
Edit the admins_simple.ini file, which is located in:

You can use your Steam Name, however keep in mind that anyone can change their name to yours and connect to your server with admin flags.

I suggest using your SteamID[steamidfinder.com]. You can type status in the console which will return all connected players SteamID's

//////////////////////////////// // Examples: (do not put // in front of real lines, as // means 'comment') // // "STEAM_0:1:16" "bce" //generic, kick, unban for this steam ID, no immunity // "!" "99:z" //all permissions for this ip, immunity value is 99 // "BAILOPAN" "abc" "Gab3n" //name BAILOPAN, password "Gab3n": gets reservation, generic, kick // //////////////////////////////// "STEAM_1:1:16622384" "99:z"

That is MY SteamID for example purposes, just replace it with your ID.

After you edit that, just upload the addons & cfg folders to your server where the existing addons & cfg folders are. Failure to copy these files to te right location will result in SourceMod failing to load.

After you have uploaded the files, restart the server and send this command:
sm plugins list
If Unknown Command sm is returned, then the files were not installed properly:

Server Console

You've just installed sourcemod and made sure that it's working. For that you did the instructions in the Checking the Install chapter and issued some first commands in the server console.

Get more familiar with the console, either directly or preferably via rcon (e.g. by using HLSW).

Try at least these commands:
sm sm version sm plugins sm plugins list sm plugins reload 1 sm plugins refresh sm plugins unload funvotes sm plugins load funvotes sm exts list

If an extension or a plugin is using functionality provided by the game engine, e.g. Respawn a player or equipping a player with a weapon, sourcemod needs to know a few "facts" (to be precise: offsets and signatures) about the function. These can change after valve releases an update. At this point you don't need to know more about this, because sourcemod has an integrated updater, which automatically fetches the new gamedata files for you.

The holy grail of debugging your actions. Everything will be logged here. If someone asks you what the logfiles are saying or whether you get any errors: reproduce your problem, then take a look at the logfiles and just copy&paste the messages. Don't try to be smart here and post what you think the given errors are saying, just post the lines. Or fix the problem yourself if you understand the error.

All plugins (.smx files) in this directory will be loaded automatically when sourcemod starts. Plugins will also be reloaded on mapchange if their file has changed.

Plugins in this sub-folder won't be loaded. Move plugins from the parent directory to this one to disable a plugin and vice-a-versa. You will find some official alliedmods plugins in this directory you might want to install (e.g. rockthevote) and some others you want to disable by moving them here (e.g. funvotes).

You can find the sourcecode to plugins in this directory, at least the original alliedmods ones. You don't need to place any files here to install a plugin, but it is highly recommended to not only install the smx files, but also their corresponding sp file.

Not much to say about this folder, it contains translations for many languages. Plugins are encouraged to provide translation files, so you might need to copy some files in here when installing a plugin.
Binding Commands
You will find it very convenient to bind sm_admin to a keyboard shortcut rather than type the command in console every time you wish to bring up the sm_admin menu

Binding commands in the console is the same for all cvar/console commands:

bind <KEY> <COMMAND>

bind i sm_admin

For commands/names with spaces and variables:

bind - "sm_givepoints Knappy 999"

Chat commands such as !buy, !repeatbuy, !machine, !mapvote, !drop etc etc are used in the following manner:


The ! replaces SM_ in the console so players can enter the command in chat rather than console. This however will quickly fill your chat box with !commands. Simply replace the ! with sm_ in the console.

Launching the Server
Example srcds.exe launch parameter for HL2:DM
A:\L4D2\srcds.exe -console -game left4dead2 -ip +port 27020 +hostip YOURDEDIIP +maxplayers 8 +exec server.cfg +map c2m1_highway

Note: exec is a handy parameter that can let you execute a specific cfg file when a server launches in addition to the server.cfg file.[/b]

Explaining Parameters:

Maxplayers is obvious and it's standard set to 8. For Hunted and Panic modes you can have up to 16.

Although map is a cvar it must be set during launch otherwise the server is not ready to accept connections. There are currently 13 maps (based on game mode):
c1m1_hotel c1m2_streets c1m3_mall c1m4_atrium c2m1_highway c2m2_fairgrounds c2m3_coaster c2m4_barns c2m5_concert c3m1_plankcountry c3m2_swamp c3m3_shantytown c3m4_plantation c4m1_milltown_a c4m2_sugarmill_a c4m3_sugarmill_b c4m4_milltown_b c4m5_milltown_escape c5m1_waterfront c5m2_park c5m3_cemetery c5m4_quarter c5m5_bridge //l4d_farm01_hilltop //l4d_farm02_traintunnel //l4d_farm03_bridge //l4d_farm04_barn //l4d_farm05_cornfield //l4d_smalltown01_caves //l4d_smalltown02_drainage //l4d_smalltown03_ranchhouse //l4d_smalltown04_mainstreet //l4d_smalltown05_houseboat //l4d_airport01_greenhouse //l4d_airport02_offices //l4d_airport03_garage //l4d_airport04_terminal //l4d_airport05_runway //l4d_hospital01_apartment //l4d_hospital02_subway //l4d_hospital03_sewers //l4d_hospital04_interior //l4d_hospital05_rooftop //l4d_vs_hospital01_apartment //l4d_vs_hospital02_subway //l4d_vs_hospital03_sewers //l4d_vs_hospital04_interior //l4d_vs_hospital05_rooftop //l4d_vs_farm01_hilltop //l4d_vs_farm02_traintunnel //l4d_vs_farm03_bridge //l4d_vs_farm04_barn //l4d_vs_farm05_cornfield

IP should be your internal ip (ip of the computer you are hosting the server on).
Port is obviously the port (or one of the ports) that you've opened with port forwarding.

The console parameter will let your server run in a cmd/command line style text interface. This is what most people do. I used to use the GUI interface in the past (the good ol' CSS days) but I haven't tried since then. Not even sure if it works anymore actually.

Important: If you move your bat files outside of the serverroot folder you need to supply the full path of the srcds.exe. As standard it will look for the exe file in the folder where the bat file is run from.

The game parameter tells the executable what game it should be hosting. It accepts either a path to a gameinfo.txt (can be found under the Left 4 Dead 2 subfolder) or a preset value (see this spread[docs.google.com]).

sv_lan will define whether your game is only available on your own local network or via the internet. It should be set to 0 unless you are only planning on running a local server. Normally this parameter defaults to 0 but I have been told that you can run into trouble seeing the server online if you don't specify it.

Auto-Crash Restart Script (Optional)
:srcds echo (%time%) srcds started. start /wait srcds.exe -console -game left4dead2 +maxplayers 8 -ip +port 27020 +hostip YOURDEDIP +map c2m1_highway echo (%time%) WARNING: srcds closed or crashed, restarting. goto srcds
Note: Replace the srcds directory and IP's with yours![/b]

Server Administration
Some basic console commands. You will more than likely use sm_admin (SourceMod) for your admin controls:

addip <minutes> <IP>
Bans a player by IP address for a specified number of minutes. Entering 0 for minutes is a permanent ban.

banid <minutes> <SteamID>
Bans a player by SteamID for a specified number of minutes. Entering 0 for minutes is a permanent ban.

banid <minutes> <SteamID>
kick Bans a player by SteamID for a specified number of minutes and kicks them from the server. Entering 0 for minutes is a permanent ban.

changelevel <map>
Changes the server to the specified map. For a full list of maps, type: maps * in the console.

dropclient <UserID>
Kicks a client by their UserID. To find a full list of UserID’s on the server, type: users in the console.

Manually sends a heartbeat to the master server.

info <SteamID>
Displays user information about the requested client based on SteamID.

kick <Player> or <UserID>
Kicks a user by Player name, or UserID. To find a full list of UserID’s on the server, type: users in the console.

Lists all SteamIDs in your server ban list.

Lists all IP addresses in your server ban list.

maps <partial name>
Lists all maps containing a partial name, for example: maps de_ would list all maps with de_ in their name.
More than 4 Players in Co-Op?
This section is all over the place but dumbs it down so one can understand better!

More than four (4) players in Online Cooperative Campaign (Co-Op for short) is possible...however you will have to compromise!

It is possible to have more than four players in Co-Op but NOT while in a lobby reservation.

What is a Lobby Reservation?

Sorry, it's not your reservation for the ballroom at the Hilton. Basically what this means regarding SRCDS is players can join a reserved server and disconnect at will and the matchmaking magic thingy will find new people to replace the player that just disconnected.

How do I tell if my server is reserved?

The status command will return either unreserved (as above) or a reservation code:

How do I make my server reserved?

Generally what I will do is send this command before connecting (via lobby) to my server:
mm_dedicated_force_servers SERVERIP:PORT

What does this have to do with more than 4 players in Co-Op?

You will have to sm_unreserve the server once you have 4 people. This means your server will no longer have a lobby reservation and in order to get new people on the server, they must either connect directly through either the server browser or console.

So how I does has moar than 4 people?

You read up on these plugins before you go throwing them onto your server!

Left 4 Downtown Extension[forums.alliedmods.net]
Remove Lobby Reservation (When Full)[forums.alliedmods.net] - not required but optional!

Also check this[forums.alliedmods.net] out.
SourceMod Plugins
Here are the plugins I use on my Left 4 Dead 2 Server.

"Sourcemod[www.sourcemod.net]" (1.5.3)
"Metamod[www.sourcemm.net]" (1.10.0)
"L4DToolZ[forums.alliedmods.net]" (
"Left 4 Downtown Extension[forums.alliedmods.net]" (
"L4D2 Vote Blocker[forums.alliedmods.net]" (1.3.1) by Carl Sagan
"L4D2 AFK and Join Team Commands[forums.alliedmods.net]" (1.1) by MasterMe
"Advertisements[forums.alliedmods.net]" (.6) by DJ Tsunami
"L4D2 Automatic Campaign Switcher (ACS)[forums.alliedmods.net]" (1.2.20) by ChrisP
"L4D2 Bile the World[forums.alliedmods.net]" (1.0.7) by AtomicStryker
"L4D/2 Black and White Notifier[forums.alliedmods.net]" (1.31) by DarkNoghri & madcap
"Black and White on Defib[forums.alliedmods.net]" (1.0) by Crimson_Fox
"Blind Luck[forums.alliedmods.net]" (1.1.1) by James Richardson (grandwazir)
"[L4D & L4D2] Boomer Splash Damage[forums.alliedmods.net]" (1.0.7) by AtomicStryker
"Campaign Manager[forums.alliedmods.net]" (1.0.4) by Bigbuck
"L4D2 Coffee Ammo[forums.alliedmods.net]" (1.3) by McFlurry
"Connect Announce[forums.alliedmods.net]" (1.6) by Arg!
"Country Nick Plugin[forums.alliedmods.net]" (1.1.1) by AeN0
"Critical Shot[forums.alliedmods.net]" (1.0) by [E]c
"L4D2 Crowned Horde[forums.alliedmods.net]" (1.0.7) by Bigbuck
"[L4D & L4D2] Dynamic Muzzle Flash[forums.alliedmods.net]" (1.0) by SilverShot & sereky
"[L4D & L4D2] Explosive Barrel[forums.alliedmods.net]" (1.4) by SilverShot
"Explosive Cars[forums.alliedmods.net]" (1.0.1e) by honorcode23
"L4D2 F-18 Airstrike[forums.alliedmods.net]" (1.2) by Silvers
"[L4D & L4D2] Fire Glow[forums.alliedmods.net]" (1.2) by Silvers
"L4D2 Fireworks Party[forums.alliedmods.net]" (1.6) by Silvers
"[L4D/L4D2] Grenade Transfer[forums.alliedmods.net]" (1.0) by DJ West
"[L4D & L4D2] Gun Cabinet[forums.alliedmods.net]" (1.0) by SilverShot
"L4D2 HP Regeneration[forums.alliedmods.net]" (1.63) by Mortiegama
"L4D2 Healing Cola[forums.alliedmods.net]" (1.2) by Silvers
"L4D2 Healing Gnome[forums.alliedmods.net]" (1.4) by SilverShot
"[L4D & L4D2] Health Vending Machines[forums.alliedmods.net]" (1.5) by Silvers
"Incapped Crawling with Animation[forums.alliedmods.net]" (1.32) by SilverShot
"[L4D/L4D2] Incapped Grenade[forums.alliedmods.net]" (1.5) by DJ West
"[L4D/L4D2] Infected Health Gauge[forums.alliedmods.net]" (1.0.2]) by NiCo-op
"L4D2 Infected Loot Drops[forums.alliedmods.net]" (2.3d) by Thraka
"[L4D & L4D2] Intelligent Machine Gun[forums.alliedmods.net]" (1.0.7) by panxiaohai
"L4D2 Keep Laser Sights[forums.alliedmods.net]" (1.2) by dcx2
"L4D2 Knife Unlock[forums.alliedmods.net]" (1.0) by SilverShot & Dr!fter
"[L4D & L4D2] Laser Sights[forums.alliedmods.net]" (1.0.2) by SilverShotby AtomicStryker
"Lethal Weapon[forums.alliedmods.net]" (2.1) by ztar
" [L4D1/2] Limited Ammo Piles[forums.alliedmods.net]" (1.2)
"L4D2 Melee In The Safe Room[forums.alliedmods.net]" (2.0.7) by N3wton
"No Witch Hunting[forums.alliedmods.net]" (0.90) by Mr. Zero
"PerkMod2[forums.alliedmods.net]" (2.2.2) by tPoncho
"[L4D & L4D2] Plane Crash[forums.alliedmods.net]" (1.4) by SilverShot
"L4D2 Points System[forums.alliedmods.net]" (1.6.9) by McFlurry
"L4D2 Pour Gas[forums.alliedmods.net]" (1.7.2) by Silvers
"PowerUps rush[forums.alliedmods.net]" (2.0.1) by Dusty1029
"L4D2 Remove Lobby Reservation[forums.alliedmods.net]" (1.1.1) by Downtown1
"Satellite Cannon[forums.alliedmods.net]" (1.3) by ztar
"[L4D & L4D2] Smoker Cloud Damage[forums.alliedmods.net]" (2.19) by AtomicStryker
"L4D2 Special Ammo Awards[forums.alliedmods.net]" (1.0.5) by AtomicStryker
"L4D2 Survivor AI Trigger Fix[forums.alliedmods.net]" (1.0.9) by AtomicStryker
"[L4D & L4D2] Survivor Bot AI Pounced Fix[forums.alliedmods.net]" (1.0.4) by AtomicStryker
"L4D2 Varying Ammunition Reserves[forums.alliedmods.net]" (1.5.3) by TimeShift
"[L4D1/2] Varying Zombie Population[forums.alliedmods.net]" (1.4.0) by Luke Penny
"L4D2 Weapon Drop[forums.alliedmods.net]" (1.4.0) by Machine
"Weapon Unlock[forums.alliedmods.net]" (0.8.1) by Crimson_Fox
"L4D2 Weather Control[forums.alliedmods.net]" (1.6) by SilverShot
" L4D2 Witch Self Ignition Fix][forums.alliedmods.net]" (1.0) by dcx2
< >
Cpt GetSummaDis Sep 26 @ 1:55am 
for being "DETAILED" it leaves out alot
Machete Jul 10 @ 7:45pm 
My server is up but keeps saying Steam Validation Rejected. Anyway to fix this?
Nick Mar 20 @ 2:48pm 
How to make the server visible on the Steam Community Group list? There are zero information on internet about it. And there are only a lot of chinese servers it appears that the chinese only knows about how to do it? Lol. So please if anyone know how to do it tell me.
Bently Oct 29, 2022 @ 8:03pm 
Question, would it be possible to just use my game's folder for this?
I don't want to waste more GBs just to get a dedicated server going.
ropi Sep 27, 2022 @ 8:44am 
Heya. I followed this guide and got it working - My friends and I can connect, however there is a strange issue where my friends connect and they initially get good Ping, but then it degrades very fast over a few seconds and becomes very high/bad ping. Not sure how I can fix this :(
Margevonn Sep 9, 2022 @ 8:39am 
This guide is very helpful and it worked using Hamachi, until I moved to Windows 11 it doesn't work anymore.
It seems to only work on Windows 10, I don't know if anyone else got it worked on Windows 11.

For everyone else who is using Windows 11, I just found the solution for not being able to connect to your own dedicated server.
Windows 11 is using IPv6 as default, you need to set them back to IPv4 through registry.
Also remove -ip +hostip, you don't need them to connect (you can still use +port).
parsley Jun 20, 2022 @ 6:08pm 
My server resets sv_alltalk to 0 on map switch. Is there any way to keep it on if people call it on within the same campaign?
19c Jan 16, 2022 @ 2:30am 
Is there somebody know where to put my issues? Or is there any [detailed] documents of that dedicated server?
19c Jan 16, 2022 @ 2:28am 
Avaliable 12h ago, and now, for some unknown reasons, it does work now:

server console output:

Connection to Steam servers successful.
VAC secure mode is activated.
-> Reservation cookie 1860000****bbd2: reason ReplyReservationRequest
failed to parse session id

client output:

BinkOpen( c:\program files (x86)\steam\steamapps\common\left 4 dead 2\left4dead2\media\l4d2_background03.bik )
] connect xx.xx.xx.xx:27015
Connecting to public(xx.xx.xx.xx:27015)
Sending UDP connect to public IP xx.xx.xx.xx:27015
Server using '<none>' lobbies, requiring pw no, lobby id 1860000****bbd2
RememberIPAddressForLobby: lobby 1860000****bbd2 from address xx.xx.xx.xx:27015
CSteam3Client::InitiateConnection: xx.xx.xx.xx:27015
Invalid user info.
TheMiniVan1 Oct 9, 2021 @ 10:39pm 
i have an issue where changing difficulty does nothing. also 8 special infected spawn at a time