This Step-By-Step Guide will help you to setup a Counter-Strike 1.5 or
other MOD server on WON2. Mirrors for all files mentioned in this tutorial
can be found at FileMirrors (www.filemirrors.com).
Minimum hardware requirements mentioned at this page are calculated for only
the Half-Life server, meaning no other processes should be run.
Quickly Go To:
>> Guide for Windows
>> Guide for Linux
Windows based systems
There are two ways to setup a server. In both ways you'll need Half-Life
or Counter-Strike Retail.
Method 1 -- Setting up a server using Half-Life Dedicated Server 2 (recommended)
Minimum hardware requirements: 800 MHz AMD Athlon / Intel Pentium
processor with 256 MB memory
Recommended hardware requirements: 1 GHz or higher AMD Athlon / Intel
Pentium processor with 512 MB memory or more
1) Install Half-Life or Counter-Strike Retail from CD, or download an
ISO that contains the image of either game
NOTE: We strongly recommend not to download either games, namely using torrents. Apart from this being illegal, it is quite common these are packed with spyware or are so called 'installed-packed' versions, which may be corrupt and
therefore not work with WON2 or any Steamless MOD. We are not a warez community and therefore requesting links to images using the forums is strictly prohibited.
2) Half-Life: Download and install the
Half-Life 1.1.1.0 Full update (hl1110.exe).
Counter-Strike Retail: Download and install the
CS Retail update 1.0.0.5 (CS 1.5 for Retail), cs1005.exe.
For running a CS 1.5 server follow step 3. For other MODs you'll need to
figure out yourself how to install, though this will be in a similar way.
3) Half-Life: Download and install the
CS 1.5 full MOD package (csv15full.exe).
Counter-Strike Retail: Skip this step. You
installed version 1.5 by installing the Retail 1.0.0.5 update.
4) Download and install Half-Life
Dedicated Server 2.
5) Follow the instructions included in the RAR file and there you go.
NOTE: Be sure to copy the nescessary files from your freshly
installed Half-Life or Counter-Strike Retail. Do NOT install HLDS2 to
your Half-Life or Counter-Strike retail installation, this will result in a
corrupt installation as HLDS2 uses some Steam DLLs.
Method 2 -- Setting up a server using HLDS
1.1.1.0/(4)1.1.1.1/(4)1.1.1.1e
HLDS 1.1.1.0
(included in HL/CS Retail installation after installing nescessary updates,
explained further on)
Minimum hardware requirements: 500 MHz AMD Athlon / Intel Pentium
processor with 128 MB memory
Recommended hardware requirements: 800 MHz or higher AMD Athlon /
Intel Pentium processor with 256 MB memory or more
HLDS 4/1.1.1.1
(stand-alone package which can be obtained at several sites)
Minimum hardware requirements: 700 MHz AMD Athlon / Intel Pentium
processor with 256 MB memory
Recommended hardware requirements: 1 GHz or higher AMD Athlon / Intel
Pentium processor with 512 MB memory or more
HLDS 4/1.1.1.1e
(upgrade package for standalone 4/1.1.1.1 version, can be obtained at
several sites)
Same hardware requirements as HLDS2 (see Method 1).
1) Install Half-Life or Counter-Strike Retail from CD, or download an
ISO that contains the image of either game
NOTE: We strongly recommend not to download either games, namely using torrents. Apart from this being illegal, it is quite common these are packed with spyware or are so called 'installed-packed' versions, which may be corrupt and
therefore not work with WON2 or any Steamless MOD. We are not a warez community and therefore requesting links to images using the forums is strictly prohibited.
2) Half-Life: Download and install the
Half-Life 1.1.1.0 Full update (hl1110.exe).
Counter-Strike Retail: Download and install the
CS Retail update 1.0.0.5 (CS 1.5 for Retail), cs1005.exe.
For running a CS 1.5 server follow step 3. For other MODs you'll need to
figure out yourself how to install, though this will be in a similiar way.
3) Half-Life: Download and install the
CS 1.5 full MOD package (csv15full.exe).
Counter-Strike Retail: Skip this step. You
installed version 1.5 by installing the Retail 1.0.0.5 update.
4a) HLDS 1.1.1.0: Download the WON2
patch for Windows servers (1.1.1.0). Use it to patch your HLDS.
NOTE: This is important as your HLDS won't work without patching it!
HLDS 1.1.1.0 is the most light version of the HLDS series, though there's an
exploit that make users able to download your server.cfg and abuse that way
RCON. You can prevent this by renaming server.cfg to a random name, and by
running HLDS with the extra parameter +exec blah.cfg
where blah.cfg is the name of your renamed server.cfg.
4b) Download the WON2
Patch for Players. Install it as described in the included readme. This
patch will make your server able to be listed at WON2. People will be able
to join your server through the Half-Life serverbrowser or PingTool WON2
Edition, an external serverbrowser included in the HL 1.1.1.1 update.
4c) Create shortcut to hlds.exe in your Half-Life/CS Retail
installation. Then edit the shortcut and put in the Target box the following
line behind hlds.exe:
-maxplayers 16 +map de_dust -port 27015 +sv_lan 1 +exec
blah.cfg*
+game cstrike
*For more info about this parameter see step 4a above.
This line can be changed to meet your needs. Double-click the shortcut to
run the server.
4a) HLDS 1.1.1.1:
Download the WON2
patch for Windows servers (1.1.1.1). Use it to patch your HLDS.
NOTE: This is important as your HLDS won't work without patching it!
HLDS 1.1.1.1 contains a memory leak bug and as
well the RCON abuse exploit explained at step 4a for HLDS 1.1.1.0 (for more
info see above). Therefore we recommend not to use
this version.
4b) Download the WON2
Patch for Players. Install it as described in the included readme. This
patch will make your server able to be listed at WON2. People will be able
to join your server through the Half-Life serverbrowser or PingTool WON2
Edition, an external serverbrowser included in the HL 1.1.1.1 update.
4c) There are two ways to start HLDS 1.1.1.1, the console and the GUI
way.
GUI: Start HLDS by clicking on hlds.exe. You'll
be able to configure it yourself by using your mouse.
Console: Create shortcut to hlds.exe. Then edit
the shortcut and put in the Target box the following line behind hlds.exe:
-maxplayers 16 +map de_dust -port 27015 +sv_lan 1 +exec
blah.cfg*
+game cstrike
*For more info about this parameter see step 4a for HLDS
1.1.1.0 above.
This line can be changed to meet your needs. Double-click the shortcut to
run the server.
4a) HLDS 1.1.1.1e: Use HLDS2 as HLDS2 is
based on 1.1.1.1e and contains additional fixes and new features.
Note that HLDS2 doesn't have the above mentioned memory leak bug and RCON
abuse exploit. For more information about installing HLDS2 see Method
1 at the beginning of this page.
Linux based systems
This Linux guide only covers HLDS 3.1.1.1e as all other HLDS versions
include too many security holes and exploits. Therefore we do not recommend
using them.
1) Get the following packages:
* HLDS Linux 3.1.1.1: hlds_l_3111_full.bin
* Counter-Strike 1.5: cs_15_full.tar.gz
or an other MOD of your choice
* HLDS Linux 3.1.1.1e update: hlds_l_3111e_update.tar.gz
If any of those links are broken you should be able to find the files
elsewhere (try Google or FileMirrors).
2) Extract the above files in the order they're listed. Customize the
configs and add your mods (AdminMod, etc.) If you don't know how to do this
you can find the basics in the Linux
CS Server How-To on Counter-Server. If they remove it use this copy
archived here.
3) Replace /hlds_l/valve/valvecomm.lst
with the WON2
Patch for Players (You'll notice this file is named woncomm.lst,
rename it to valvecomm.lst and overwrite it)
4) If you do not wish to add any anticheat addons, edit /hlds_l/cstrike/liblist.gam
and change secure "1" to secure
"0".
If you do want to add anticheat, we recommend using WON2VAC (info).
You can use WON2VAC by changing/leaving secure
to "1". The appropriate
serveraddresses for WON2VAC are already included in the No-WON/WON2 Patch
for Players.
An other good anticheat system is HLGuard.
We do not, however, recommend Cheating-Death. Cheating-Death does not
officially support the WON(2)/Half-Life system anymore and as for the latest
version it doesn't work at all on serverside. Pre 4.30.x versions work with
CS 1.5, however this make huge laggs occur on both server and client side.
5) Create a file in /hlds_l/ called nowon.c
with just one line: int NET_IsReservedAdr(){return 1;}
In the same directory, type these commands:
1. gcc -c nowon.c -o nowon.o
2. ld -shared -o nowon.so nowon.o
6) Edit /hlds_l/hlds_run and under the
first "export" line add this:
export LD_PRELOAD=/.../hlds_l/nowon.so
Be sure to substitute the full path to your hlds_l directory in place of the
"...".
7) Edit the script you use to start your server and add +sv_lan
1 to it.
8) Now you should have a working server. Unfortunately HLDS 3.1.1.1
has an exploit that allows anyone to crash it. You may want to start your
server anyway and join so that you know it works, then shut it down and
follow the rest of these steps to patch this hole in HLDS.
9) Download this
file to your /hlds_l/ directory (Thanks Tomi).
10) In /hlds_l/ type the following
command:
gcc -s -O3 -D_GNU_SOURCE -fPIC -shared -ldl -o hlds_20040707fix.so hlds_20040707fix.c
11) Edit /hlds_l/hlds_run and change the
"export" line you created in step 5 to this:
export LD_PRELOAD="/.../hlds_l/nowon.so
/.../hlds_l/hlds_20040707fix.so"
As before, be sure to substitute the full path to your hlds_l directory in
place of both "...".
12) Your server is now working and slightly more secure. You can add
more security by incorporating the chroot patch from this
site and running HLDS in a "chroot jail". Compiling and using the
HLDS chroot patch is easy, however creating the jail is beyond what I have
spare time to deal with right now (let alone document). If anyone has some
good instructions for this please post them to the Steamless
CS Project Forums.
Last update: 16-07-2004
Written by: Warf!y ,
Phorce_Phed (edited
version)
|