How to install and configure a Source Dedicated Server.
1. Start off by downloading the [Half-Life Dedicated Server Update Tool](http://www.srcds.com/db/engine.php?subaction=showfull&id=1097362093 ""). Click the blue "from the Valve webserver" link on that page to download it. Run the application and go through the installation process. I recommend keeping the default installation directory, and when you reach the region page, choose your region. If you're in the Eastern United States for example, choose US east coast.
2. Now, create a new text document. You can paste this information inside:
**"C:\Program Files (x86)\Valve\HLServer\HldsUpdateTool" -command update -game "left4dead2" -dir "c:\srcds" -verify\_all -retry**
The first quoted text is the file path to the HLDSUpdateTool you just installed. The second quoted text is going to be the directory for your new Source Dedicated Server installation. With the -game paramater, instead of left4dead2 you can choose to update other games. Some of the more popular games are:
- cstrike (Counter-Strike: Source)
- tf (Team Fortress 2)
- garrysmod (Garry's Mod)
"Pause" is on its own line so that command prompt doesn't disappear automatically.
Choose file > save as... and under the file type, select "all types". Name it whatever you want, just make sure there's a ".bat" at the end. You should see a new .bat (batch) file now.
3. Double-click it to start downloading your server files to c:\srcds. This will take a very long time for most people, as you're essentially downloading a second copy of the game. When it's done, you'll see 99%, 100%, then "installation up to date".
4. Once it's finished, open c:\srcds and you'll see a lot of new stuff there. In the case of L4D2, go into the left4dead2 folder and make a shortcut to srcds.exe.
Right-click the new shortcut, choose properties and you can paste this into the target field.
**C:\srcds\left4dead2\srcds.exe -console -game left4dead2 -hostport 27015 -clientport 27016 -insecure +map c2m1\_highway +exec sm.cfg**
Once again, "-game" tells the server which game to run. "+map MapName\_Here" will start the server on that specified map. "+exec sm.cfg" is not necessary, but it runs the configuration file sm.cfg after each map is loaded.
Now, whenever you want to run your server, double-click that shortcut. A command prompt window will appear, and yes, this is your entire server interface. A lot of text will scroll by, and when you see "VAC secure mode" enabled or disabled, that's how you know the map is fully loaded.
You probably want to configure your server, so navigate to srcds/left4dead2/left4dead2/cfg. You should see server.cfg. You can edit this with most text editors (preferably [Notepad++](http://notepad-plus-plus.org/ "") ) to configure your server. I'll just go over some basic things here. Remember that anything with "//" before is a comment and will be ignored.
hostname "The Reptile House" // What name your server should use.
motdfile "motdtrh.txt" // Makes your server use a custom message of the day and banner file.
hostfile "hosttrh.txt" // The default ones tend to get overwritten when updating, so this is a good idea.
rcon\_password "password" // In game, you can type "rcon\_password password" in the console to access your server console from in-game.
// These settings make your server private and allow you to start a game regularly from the main menu.
sv\_steamgroup "123456" // Very important! See [this](http://www.custwiki.cyberwurx.com/index.php/Setting_your_Steam_Group_ID "")
sv\_gametypes "coop,realism,survival,versus,scavenge" // The gametypes that can be played on your server.
// These settings make sure players can use their mods.
// Disable autokick - These settings will prevent players from being kicked for being idle.
sm\_cvar director\_afk\_timeout 9999999
sm\_cvar mp\_allowspectators 1
setmaster add 188.8.131.52:27011
setmaster add 184.108.40.206:27011
setmaster add 220.127.116.11:27013
setmaster add 18.104.22.168:27011
sv\_forcepreload 1 // Forces components to preload before player is in-game, helping with stuttering and slowdowns.
heartbeat // Should make your server appear in the list faster. In theory, at least.
With this configuration, you should be able to start a game from L4D2's main menu. Click "play campaign". From here, you can choose "Steam group server" to join the game in-progress. If you want to start a lobby however, choose play with friends > create new campaign lobby. Under the server type, make sure it's "steam group server". Start the lobby and you should be able to invite friends, change the level and whatever else. If you've set sv_steamgroup up like I explained earlier, when you start the game you should connect to your new server.
> > **Posted by KiLlEr10312**
> > Much would be appreciated.
> > My friend Shadman and all of his fans want to play on my maps, but I can't situate a way to host a local server because the stock Source Dedicated Server does not allow custom content.
> I'm not familiar with hosting custom maps, but I might be able to help you get sourcemod up and running, assuming you haven't been able to do so yet.
Well I can read the tutorial on that. I'll figure out the maps thing on my own.
> **Posted by KiLlEr10312**
> Much would be appreciated.
> My friend Shadman and all of his fans want to play on my maps, but I can't situate a way to host a local server because the stock Source Dedicated Server does not allow custom content.
I'm not familiar with hosting custom maps, but I might be able to help you get sourcemod up and running, assuming you haven't been able to do so yet.
> > **Posted by KiLlEr10312**
> > Very well written.
> > Will there be any details to sourcemods?
> I finally figured out how to install sourcemod onto mine. So I *might* be able to help you if you're having trouble, I'm not sure.
> But yeah, much props to this tutorial. Now I have my own server that helps make playing with my friends more fun and less aggrivating, thanks to SM plugins.
Much would be appreciated.
My friend Shadman and all of his fans want to play on my maps, but I can't situate a way to host a local server because the stock Source Dedicated Server does not allow custom content.
I've been wanting to figure out how to run server plugins using "Local server" in a lobby, I've seen it work before... but this looks like it'll accomplish the same basic thing with little headache. Thanks for the guide!