View Single Post
Join Date: Nov 2009
Old 03-10-2014 , 19:31   Re: Dota 2 Dedicated Servers
Reply With Quote #4

Alright!!! So there's a lot of confusion on here and elsewhere on how to run a Dota 2 server of your own, here's a complete(hopefully) rundown:

What you need:
The latest Metamod:Source 1.11 Snapshot.
The latest download of d2fixups.

You'll use steamcmd to install and maintain your Dota installation. Follow these instructions using Dota's appid of 570. So, when you see commands like:
PHP Code:
app_update 740 validate 
Know that the Dota equivalent is:
PHP Code:
app_update 570 validate 
I'll refer to the root of your steamcmd install as "dotaserver"

You'll need a compatible srcds executable for your platform. Get it from DS's original post in this thread above. Extract it into "/dotaserver/", putting the core files (e.g. srcds_linux, srcds.exe) alongside your Dota exectuable.

Open up your steamcmd install to the (dotaserver/dota) directory.
Metamod:Source goes inside your addons folder. If you look inside of the .rar, you'll see an "addons" folder. This means that it's meant to be merged with your existing addons folder, so drop it inside of dotaserver/dota directly.
d2fixups is the same way. After extracting MM:S, extract d2fixups just like that.

To get Metamod:Source to load, you need to edit gameinfo.txt in (dotaserver/dota) as per the instruction in this article under "GameInfo".

Launching srcds
You'll need to run the program with certain parameters. DS's original post brushes over the specifics of executing SRCDS on your platform.

PHP Code:
 -game dota -console 
PHP Code:
 -port <port> -ip <computersLANIP
PHP Code:
 +map <mapname> -maxplayers 10 +developer <0/1/2
Network and General Configuration in Windows
In Windows, I like creating a shortcut and editing its "target". This involves creating a shortcut to srcds.exe, opening Right click-> Properties, and adding your parameters after the final quotation mark in the Target: field. You'll need these, for sure:
-console -game dota +map dota -maxplayers 10 -port <yourchosenport> -ip <computersLANIP>
So, my Target: field looks something like this:
"C:\dotaserver\srcds.exe" -console -game dota -port 3003 -ip -maxplayers 10

For -ip, input your computer's LAN address. Windows users can find out how here:

Pick any available port for -port. Keep in mind that in addition to any typical networking considerations (firewalls, etc.), if you want to make your server joinable over the network, you need to forward your chosen port. Find your router on this list., and pick a guide for any game. Then, just apply the instructions given, but for whatever port you've chosen.

Connecting and Playing
To connect clients must enter
connect ip:port
into their Dota console, example:
When greeted with a darkened overview of the map, you need only to join a team.
jointeam good
jointeam bad
To skip the Waiting For Players stage, set the following cvar:
dota_wait_for_players_to_load 1
where the integer is the number of players to wait for before entering Pick.

Last edited by Tetl; 08-05-2015 at 00:50. Reason: fixing tet's stuff
Tetl is offline