DMQ Server Information
On this page:
Downloads
DMQ Beta DLL
DMQ DLL and Standard Maps
AdminMod Vote Plugin
AdminMod Vote Plugin Source
Step by Step Guide
So you want to run your own server? Good, read on...
(Its not finished and it may be wrong - dont blame me)
If you have a problem - post ;)
ISP and Connection Type
Leased line is of course the best option for running a server from home, however
in the UK, it will set you back 10000 pounds per year After that, SDSL
provides the best upload speeds but is still expensive (170+ pounds per month).
So for the rest of us - cable or ADSL? IMHO opion it doesnt really matter as
long as its not AOL. If you have AOL and you are gaming online then unlucky you
The real choice depends on where you are - in the UK cable tends to be faster
and more reliable than ADSL - in the US, I have been told the opposite is true.
The best thing to do is to google alot and ask people local to you about their
experiences (if you can get them to run speed tests (see below) then thats even
better). My research shows that in the UK your best bet is Virgin Media for
cable or Nildram for ADSL.
One final note is to stay away from satellite connections - great for bandwidth
but not so great for latency (or ping).
Firewall and Router
If you dont already have a firewall - why not? At the very least you should have
a software firewall and a hardware firewall is strongly recommended. Running a
server will attract attention from the idiots of the Internet Community - make
sure they cant do any damage - or at least make it hard from them
As long as you have a firewall or router - you will need to forward ports so
that the outside world can see your server. If you do not know how to forward
ports then read your manual or visit
www.portforward.com. You will need to know your server's IP address. If you
are running Windows, you can find this by clicking on "Start" and "Run..." type
"cmd" and press return. Now type "ipconfig" this will print a few lines - we are
only interested in the one that says "IP Address". Make a note of it (its
probably somethings like 192.168.0.1).
You will need to forward port 27010 (UDP) to your server's IP - this is for
Steam (which will let people see your server in various browsers). You also need
to forward port 27015 (UDP) to your server's IP - this is the default port for
the server.
Check out this thread if you need to configure your PC to use a static IP (or if
you dont know )
Connection Speed
First point is that if you have a dialup connection - stop reading and give up
on your dreams of hosting a server Second point is to ignore your ISP.
Unless you are fortunate enough to have a leased line, then the chances are that
you do not have guaranteed upload and download speeds. The bandwidth available
to you limits the amount of slots (players) that you can support so its quite
important that you know what is actually available.
Use an online utility to check your bandwidth. If you have Java installed, you
can use www.adslguide.org.uk or google
for another. Keep a note of the upstream actual speed result (or the downstream
if that is lower).
It is wise to check your bandwidth a few times during the day and on different
days a use the lowest result. This is recommended to account for busy periods
when your bandwidth will become lower.
Player Slots
Each slot (or player) on your server will use approximately 5KB/s (40kbps)
upload and download (which is why the lowest of these is the one that we are
interested in).
So to find out how many slots you can have, divide your bandwidth in KB/s by 5.
As an example, if your ISP says that you have 256kbps upload then in reality
that is probably 200kbps. Divide your actual bandwidth in kbps by 8 to find your
bandwidth in KB/s (200/8 = 25). So following our example, you could host a
5-slot server. If you are playing on your server then you can host a 6-slot
server because you wont be using any bandwidth.
Windows or Linux?
I dont run a linux server (yet) so I cant comment on that although Im sure that
Linux will provide better performance than Windows. What I can comment on is the
Windows family of Operating Systems.
Use a server OS (windows Server 200*) or Windows XP. The memory management is
far superior to other members of the family.
Hardware
When it comes to hardware - the bigger the numbers - the better However,
DMC uses the Halflife engine which isnt really that intensive on RAM or CPU. I
believe that an 8-slot server will run on a 500MHz CPU with 256MB RAM.
Personally, I have run an 8-slot server on a 1.5GHz Centrino with 512MB RAM and
an Athlon 2600 with 1GB RAM. Neither of these systems ever went over 5% CPU
usage except for once when running a badly designed map. The most reliable
server that I play on is the -=[BaF]Old Skool DMC=- UK Master server which runs
on Dual Athlon MP 2100 CPUs with 3GB RAM (last time I checked).
It is possible to run a server on the same computer as you use for playing
however, unless you have a very powerful computer, you will experience lag.
HLDS Installation
HLDS stands for Half Life Dedicated Server. This is the program that actually
runs the server. Download the installer from
www.steampowered.com (look for
"Windows HLDS Update Tool")
- Save the file to "C:\DMC\" - you will need to create the directory.
- Create another directory called "C:\DMC\Server1\"
- Now browse to "C:\DMC\" and double click on "hldsupdatetool.exe". Click on next
until it prompts for the destination folder browse to "C:\DMC\Server1\" Click on
Next twice. Now choose your region and keeping clicking next until you can click
on finish.
- Open a command prompt (Start, Run, type "cmd", press return) and change
directory to "C:\DMC\Server1\" (type "cd C:\DMC\Server1" and press return)
- Now to download all the files needed to run the server type "HldsUpdateTool.exe
-command update -game dmc -dir ."
- You may get an error such as: "Unable to update: renamed HldsUpdateTool.exe but
the file is still there"
- I believe this is due to the way that windows locks files.
- The way to fix it is to rename "HldsUpdateToolNew.exe" to
"HldsUpdateToolNew2.exe"
- Then run "HldsUpdateToolNew2.exe -command update -game dmc -dir ."
- The downloading will take some time so go and make a cup of tea.
- Once the download is complete, you should see "HLDS Installation up to date"
- Press return and close the command prompt.
- Well done, you have now installed DMC. To start your server just double click on
"hlds.exe"
- If your server is on the same LAN as your gaming PC then you should be able to
play on your server by starting DMC and clicking on the "LAN" tab. Then double
click on your server to join the game
- Check my DMC server browser to ensure that other people can see (and join) your
server. It is refreshed every 10 minutes so you may need to go for another cup
of tea.
HLDS Configuration
- Create a shortcut which includes some startup options (Right click on your
desktop, goto "New" then click on "Shortcut").
- Click on browse and navigate to "C:\DMC\Server1\hlds.exe". Click on OK, then
"Next", type a name for the shortcut - like "Server 1337". Click on Finish.
- Now right-click on the shortcut and click on "Properties". The target box should
say "C:\DMC\Server1\hlds.exe".
- Add the following to the target box: "-console -game DMC +port 27015 +hostname
"Server 1337" +map dmc_dm2 +maxplayers 8 -autoupdate"
- -console ensures the the server starts in console mode - not in GUI mode (this
helps reduce system resources)
- -game DMC tells the the to start and run DMC
- +port 27015 tells the server which port to use (you will need to change this if
you play on the same PC as the server or if you want more than 1 server on the
same computer).
- +hostname "Server 1337" - this is what shows up in server browsers and is the
name of your server.
- +map dmc_dm2 this is the map that will load initially.
- +maxplayers 8 ensures that no more than 8 people can connect to your server
(adjust this according to your bandwidth)
- -autoupdate will try to update whenever needed.
- The main configuration file for the server is "C:\DMC\Server1\dmc\server.cfg".
Open it with notepad (or your prefered text editor) and change the line that
says "hostname "Deathmatch Classic"" to "hostname "Server 1337"" (or whatever
you want to call your server.
- "C:\DMC\Server1\dmc\motd.txt" is the message that is displayed to clients when
they join your server - you may want to change this to say Hi or lay down the
rules.
Maps and .res Files
Players get bored of standard maps (unless we are talking about CSers in which
case dust seems to be enough To add maps to your server, copy the .bsp
file to the "C:\DMC\Server1\dmc\maps\" directory. Many maps have additional
resources such as sounds or graphics. You can use resgen to create .res files.
Download it here:
http://www.thezproject.org/projects.php?pid=2. .res files need to be placed
in the "C:\DMC\Server1\dmc\maps\" directory - the purpose of .res files is to
tell the server which files to supply to the client. If you do not
have .res files, your clients will probably crash - so its quite important to
have them. If you use "resgen", it can check that you have all the
resources needed for a given map which will help the stability of your server.
To use resgen:
- Download it.
- Extract the contents of the .zip file "C:\DMC\resgen".
- Open a command prompt (Start, Run, type "cmd", press return) and change
directory to "C:\DMC\resgen\" (type "cd C:\DMC\resgen" and press return).
- Type "resgen -d C:\DMC\Server1\dmc\maps -e C:\DMC\Server1\dmc -g -o" and press
return.
- "-d C:\DMC\Server1\dmc\maps" tells resgen to search for any maps (.bsp files) in
the dmc\maps directory and to try to create .res files for them.
- "-e C:\DMC\Server1\dmc" tells resgen where the mod is located so that is can
check for all the needed resources.
- "-g" displays the contents of generated .res files and also alerts you to
missing resources.
- "-o" overwrites any existing .res files.
- You may use "-f C:\DMC\Server1\dmc\maps\mapname.bsp" instead of "-d
C:\DMC\Server1\dmc\maps" to generate a .res file for a specific map.
- If you use custom sounds or models on your server and want to force players to
download them, you may use .rfa files - read the resgen manual.txt for
information on this.
To increase client download speed:
- Get some webspace - you will probably have to pay for this as even unpopular
servers can use over 10GB transfer per month.
- Upload your entire DMC directory to your website.
- If you uploaded to the root of your website and your website is
"mfrx.kicks-ass.net" then add "sv_downloadurl
http://mfrx.kicks-ass.net/dmc/" to
your server.cfg. (No that is not the one I use, so dont try to steal my
bandwidth :p).
Adminmod & MetaMod Installation
Adminmod is an extremly useful tool which allows you to add fun plugins to your
server aswell as kicking and banning unwanted players. Adminmod includes, and
relies on, MetaMod. Between them they provide the functionallity to add fun
plugins such as the ability to make players glow, bury them for being bad, add
bots to your server and much more. Download Adminmod from
www.adminmod.org.
Once you have downloaded AdminMod, extract the zip file to a directory.
Browse to the AdminMod directory (wherever you extracted it too) and double
click on "install_admin.vbs"
Follow the installation instructions - you should get a message saying that
AdminMod has been minimally installed.
Now is a good time to copy the "scripting" directory from "Adminmod" to
"C:\DMC\Server1\dmc\addons\adminmod\" (this is needed to compile and install
plugins at a later date).
Check out my plugins. You will need plugin_mfrx_vote so that clients can
change mode in DMQ. plugin_mfrx_details forces clients to use detailed
textures (if they can run them).
You can read how to install and use my plugins in my AdminMod and MetaMod Forum.
DMQ Conversion
These instructions only apply if you have a working DMC server (with
AdminMod installed in the default
location).
- Download "DMQ.dll and Required Files" from the downloads section above.
- Extract the contents into your server's dmc directory.
- Add "addons/adminmod/scripts/plugin_mfrx_vote.amx" to
"addons\adminmod\config\plugin.ini".
- Start your DMQ server :-)
If you want to use runes or the tricks mode, you will need to download "DMQ Beta
3" from above. Extract it to your server's dmc/dlls directory.
Vote Plugin Installation
To install this plugin (on Windows):
- Extract the zip file into dmc\addons\adminmod\scripts\
- Add "addons/adminmod/scripts/plugin_mfrx_vote.amx" (without the quotes) to "dmc\addons\adminmod\config\plugin.ini". You can use notepad to edit the file.
- Close (and save) the "plugin.ini" file.
- You should have a file named "mfrx_vote_vars.txt" in dmc\addons\adminmod\scripts\ (it is in the zip file). Move it to dmc\
- The "mfrx_vote_vars.txt" contains all of the commands and cvars that may be voted for - edit it as you see fit.
-
Now open "dmc\addons\adminmod\config\adminmod.cfg" with notepad.
- Find the line that starts with "default_access" and change that to "default_access 0" if needed. This ensures that spectators cant start a vote while a DMQ match is in progress as they cant use standard AdminMod commands. In-game players may still start a vote.
- Now find the line that starts with "file_access_read" and change it to "file_access_read 1". This is so that the plugin can read the "mfrx_vote_vars.txt" file and only allow the specified commands to be run.
- Close (and save) the "adminmod.cfg" file.
- Restart the server.