Heres the WHOLE tutorial I used to setup mines, hope it works for you
GET READY
Halo CE Dedicated Server Setup
Written by =CE=Leader
celeader@metrocast.net
May 25, 2007
Assumptions:
1.
You are running Windows XP with Service Pack 2.
2.
You have at least 1GB of RAM.
3.
You have a video card with at least 128MB VRAM.
4.
Your video card supports DirectX 9.0 or greater.
5.
Your CPU is clocked at 2Ghz or more.
6.
You have a high speed DSL or Cable Internet connection with the “Gamers” option. This means that your Download bandwidth is at least 6 MBits/sec and your Upload bandwidth is at least 1 Mbit/sec. The Upload bandwidth is very important. You can run with lower Download speeds but anything less that 1Mbit/sec for upload will drastically reduce the amount of people that can play on your server.
Here is a table of estimated players versus Upload bandwidth:
1Mbit = 16 Players
896 Kbit = 14 Players
768 Kbit = 12 Players
512 Kbit = 8 Players
384 Kbit = 6 Players
256 Kbit = 4 Players
128 Kbit = 2 Players
* This table assumes everyone playing has a high speed DSL or Cable connection (pings between 50 and 200). If anyone connects with a modem or has high ping (greater than 300) they will reduce the servers ability to support the other players.
7.
You have installed a legal version of Microsoft Halo PC and have the CD.
8.
Depending on your security setup, setting up a Halo CE dedicated server can be a very easy, or very difficult process.
There are 3 major parts to the dedicated server setup:
1)
Installing and configuring the dedicated server
2)
Configuring your firewall (if used)
3)
Configuring your router (if used)
** If you are using a firewall and router, it will be much more difficult to setup than without. I will cover everything needed to get you through all 3 pieces.
Installing and Configuring the Dedicated Server:
1.
Download Halo Custom Edition (CE):
http://hce.halomaps.org/index.cfm?pg=3&fid=4102.
Download Halo Custom Edition (CE) Hot Fix Patch:
http://hce.halomaps.org/index.cfm?pg=3&fid=10563.
Download Halo Custom Edition (CE) Dedicated Server Hot Fix Patch:
http://hce.halomaps.org/index.cfm?pg=3&fid=10574.
Install Halo CE (halocesetup_en_1.00.exe) – I will assume the default directory is used for the entire setup process (c:\Program Files\Microsoft Games\Halo CE).
5.
Install Halo CE Hot Fix Patch (haloce_patch_107.exe).
6.
Unzip (haloceded.zip) and then copy the new (haloceded.exe) and paste it over your existing (haloceded.exe) file. The existing file will be in your Halo CE root directory.
7.
Now you must create and edit (init.txt). This is the file that is read by the dedicated server each time you start it. It defines how the game will function and what map(s) will be run. To start, open Notepad, copy and paste the following example, then save as c:\Program Files\Microsoft Games\HaloCE\init.txt
EXAMPLE (init.txt):
;GENERAL SETUP PARAMETERS
sv_name "Your Server Name"
;sv_motd “motd.txt”
sv_public 1
sv_maxplayers 16
sv_mapcycle_timeout 15
sv_friendly_fire 1
;sv_password "password"
;LOG FILE SETUP
;sv_logfile_enabled 1
;sv_log_file “logfilename.log”
;sv_log_rotation_threshold 500
;sv_log_echo_chat 1
;BANNING PARAMETERS
;sv_tk_ban 3
;sv_tk_grace 3s
;sv_tk_cooldown 5m
;sv_tk_penalty 1h 1d 7d
;MAP CYCLING PARAMETERS
sv_map coldsnap ctf
;sv_mapcycle_add extinction ctf
;sv_mapcycle_add hugeass ctf
sv_timelimit 40
sv_mapcycle_begin
*** Note that putting a semicolon (;) at the beginning of the line means it is ignored at startup.
NOTE: Refer to APPENDIX - A for all of the valid “sv” commands. Refer to APPENDIX – B for all of the variant and standard map names.
8.
Now you must create the Message Of The Day (motd.txt) file. This file contains up to four 80 character lines of text that can be read when a player hits F2 in the game. To start, open Notepad, copy and paste the following example, then save as c:\Program Files\Microsoft Games\HaloCE\motd.txt
EXAMPLE (motd.txt):
=CE= Combat Experts Clan =CE=
WEBSITE:
http://home.metrocast.net/~sjoyceDON’T: TK, Whine, C4 Switch, Recruit
BANS: 3TK’s = BAN 1st = 10min, 2nd = 1Hr, 3rd = 1Day
9.
Now you need to create and modify the Halo CE Dedicated Server startup icon.
1)
Go to c:\Program Files\Microsoft Games\Halo CE and right click on (haloceded.exe) then select “copy”.
2)
Right click on your desktop and select “Past Shortcut”
3)
Now right click on the new shortcut and select “Properties”
4)
On the “General” tab, change the name to “Halo-CE Server”
5)
On the “Shortcut” tab, At the end of the “Target” line enter a space then enter -port 2312
6)
Click APPLY then OK to save changes.
10.
Now you need to create and modify the Halo CE game startup icon.
1)
Go to c:\Program Files\Microsoft Games\Halo CE and right click on (haloce.exe) then select “copy”.
2)
Right click on your desktop and select “Past Shortcut”
3)
Now right click on the new shortcut and select “Properties”
4)
On the “General” tab, change the name to “Halo-CE Client”
5)
On the “Shortcut” tab, At the end of the “Target” line enter a space then enter -cport 2313 -console
6)
Click APPLY then OK to save changes.
11.
If you have a firewall and/or a router, continue to the next sections; Otherwise, you can double-click the “Halo-CE Server” icon and you are running!!!
Configuring Windows Firewall:
In order to allow people to connect to your server, you must open up certain ports in your firewall settings. Go to “Control Panel” and choose “Windows Firewall” then go to the “Exceptions” tab. You need to create 5 Halo related port exceptions. The Scope should be set to “Any Computer”.
Using Add a Program:
1.
Browse to c:\Program Files\Microsoft Games\Halo CE\haloceded.exe
2.
Browse to c:\Program Files\Microsoft Games\Halo CE\haloce.exe
Using Add a Port:
1.
Name = “Halo to Game Spy Port 80”, Port = 80, and choose TCP.
2.
Name = “Halo CE Server Port 2312”, Port = 2312, and choose UDP.
3.
Name = “Halo CE Client Port 2313”, Port = 2313, and choose UDP.
Hit OK and your ports can now function through the Windows Firewall. If you have a router, please continue to the next section. If you do not have a router, you are ready to run the dedicated server.
Configuring Linksys Router:
This section is written specifically for a Linksys router because they are the most common. You need to use an internet browser to access the administration screens of the router. I recommend Internet Explorer.
On the Setup-Basic Setup Tab:
1.
Open Internet Explorer and type 192.168.1.1 in the address bar and hit enter.
2.
The default user and password is Admin, Admin.
3.
Enable the MTU and set it to 1500
4.
Set the local IP address to 192.168.1.1
5.
Enable the DHCP Server
6.
Set the start IP address to 192.168.1.100
7.
Set the Number of Address to the number of computers on your home network.
8.
Set the client lease time to 65000
9.
Set the static DNS to your ISP settings
10.
Hit SAVE.
On the Applications &Gaming-Port Range Forwarding Tab:
1.
Application = Halo1, Start = 2312, End = 2312, UDP, 100, check “Enabled”
2.
Application = Halo2, Start = 2313, End = 2313, UDP, 100, check “Enabled”
3.
Application = Halo3, Start = 80, End = 80, TCP, 100, check “Enabled”
4.
Hit SAVE.
Close Browser and you are ready to run the dedicated server. You must renew the client lease time every month (65000 = 45 days).
APPENDIX – A
(Valid “sv” Commands)
1.
(sv_end_game)
End the current game.
2.
(sv_mapcycle)
Print the contents of the currently loaded mapcycle file
3.
(sv_mapcycle_begin)
Restart or begin playing the currently loaded mapcycle file
4.
(sv_mapcycle_add <string> <string>)
Usage: sv_mapcycle_add <mapname> <variantname>
Add a new game to the end of the mapcycle file.
5.
(sv_mapcycle_del <long>)
Usage: sv_mapcycle_del <index>
Removes the game at <index>. Will not affect running games.
6.
(sv_map_next)
Abort the current game and begin the next game in the playlist
7.
(sv_map_reset)
Reset the current game
8.
(sv_map <string> <string>)
Usage: "sv_map <mapname> <variantname>"
Abort current game and playlist and start specified game
9.
(rcon [rcon password] [command])
Sends a command for server to execute at console. Use \" to send quotes.
10.
(sv_rcon_password [remote console password])
Sets the server remote console password. If no password is given, displays the
current password. Enter "" to disable rcon.
11.
(sv_say <string>)
Usage: "sv_say <message>"
Send a message to users
12.
(sv_players)
Print a list of players in the current game
13.
(sv_banlist)
Print a list of banned players
14.
(sv_kick <string>)
Usage: sv_kick <player # or name>
Kicks the specified player from the server
15.
(sv_ban [player # or name] opt:[duration (#)(m,h,d)])
Player is kicked and added to banned.txt. Use sv_players to find the index. Specify optional duration for timed ban. Use 0 to follow sv_ban_penalty rules.
16.
(sv_unban <long>)
Usage: sv_unban <index>
Removes player at index in the banlist. Use sv_banlist to find the index
17.
(sv_parameters_reload)
Usage: sv_parameters_reload
Reloads the parameters.cfg file.
18.
(sv_parameters_dump)
Dumps out the local parameter configuration to parameters.cfg file.
19.
(sv_status)
Shows status of the server
20.
(sv_name [name])
Sets the name of the server. If no name is given, displays the current name.
21.
(sv_password [password])
Sets the server password. If no password is given, displays the current password.
22.
(sv_log_note <string>)
Leave a note in the server log
23.
(sv_log_file [log file name])
Sets the server log file name. If no name is given, displays the
current log file name.
24.
(sv_log_enabled ["1" to enable, "0" to disable])
Enables or disables server logging. If 0/1 is not given, displays the current logging status.
25.
(sv_log_rotation_threshold [threshold in kilobytes])
Sets the log rotation threshold. When a log file's size (in kilobytes) exceeds this number, it will be rotated. Set to 0 to disable log rotation. If the threshold is not specified, displays the current threshold.
26.
(sv_log_echo_chat [preference])
Enables or disbles chat echo to the console. Set the preference to 0 to disable chat echo, or 1 to enable chat echo. If the preference is not specified, displays the current preference.
27.
(profile_load <string>)
Load any included builtin profiles and create profiles on disk.
28.
(track_remote_player_position_updates <string>)
Sets the name of the remote player whose position update are to be tracked.
29.
(remote_player_stats <string>)
Displays the prediction stats of the specified remote player.
30.
(sv_get_player_action_queue_length <string>)
Displays the action queue length for the specified player.
31.
(sv_maplist [substring])
Display a list of maps, matching an optional substring.
32.
(sv_gamelist [substring])
Display a list of game types, matching an optional substring.
33.
(sv_friendly_fire ["0" = defaults, "1" = off, "2" = shields, "3" = on])
Use to provide a global override for the gametype friendly fire setting.
34.
(sv_timelimit ["-1" = default, "0" = infinite, <time in minutes>])
Use to provide a global override for the gametype timelimit setting.
35.
(sv_ban_penalty [(#)(m,h,d), 0=infinite])
Specify up to 4 ban times for repeat ban/TK offenders.
36.
(sv_tk_grace [time (#)(s,m)])
37.
(sv_tk_cooldown [time (#)(s,m)])
Specify a TK point cooldown period, after which players lose a TK point.
38.
(sv_banlist_file [alphanumeric banlist file suffix])
Sets and opens the file to be used for the player ban list.
39.
(sv_maxplayers [1 - 16])
Sets the maximum number of players (between 1 and 16). If no value is given, displays the current value.
40.
(sv_single_flag_force_reset [boolean])
Force the flag to reset in single flag CTF games when the timer expires, even if held by a player. If not specified, displays the current value.
41.
(sv_motd [motd file name])
Sets the server message of the day file name. If no name is given, displays the current motd file name. Set to "" to turn motd off.
APPENDIX – B
(Standard Map Deviations and Variant Names)
Standard Map Name Deviations:
1.
Chiron TL34 = putput
2.
Battle Creek = beavercreek
3.
Derelict = carousel
4.
Sidewinder
5.
Damnation
6.
Rat Race = ratrace
7.
Prisoner
8.
Hang ‘Em High = hang’emhigh
9.
Chill Out = chillout
10.
Boarding Action = boardingaction
11.
Blood Gulch = bloodgulch
12.
Wizard
13.
Longest
14.
Ice Fields = icefields
15.
Death Island = deathisland
16.
Danger Canyon = dangercanyon
17.
Infinity
18.
Timberland
19.
Gephyrophobia
Standard Variant Names:
1. classic_slayer
14. classic_stalker
27. team_slayer
2. classic_slayer_pro
15. classic_king
28. team_race
3. classic_elimination
16. classic_king_pro
29. team_oddball
4. classic_phantoms
17. classic_crazy_king
30. team_king
5. classic_endurance
18. classic_team_king
31. slayer
6. classic_rockets
19. classic_ctf
32. race
7. classic_snipers
20. classic_ctf_pro
33. oddball
8. classic_team_slayer
21. classic_invasion
34. king
9. classic_oddball
22. classic_iron_ctf
35. juggernaut
10. classic_team_oddball
23. classic_race
36. ctf
11. classic_reverse_tag
24. classic_rally
37. crazy_king
12. classic_accumulation
25. classic_team_race
38. assault
13. classic_juggernaut
26. classic_team_rally
* You can use custom variant types but the MUST be created in regular Halo then copied into the Halo CE savegames directory.
APPENDIX - C
(Halo CE Dedicated Server Command Line arguments)
You can run the Halo CE dedicated server from a Windows command prompt or from a batch file. The following is a list of arguments you may use to start a Halo CE Dedicated server. Note you may use more than one command at a time: Usage: haloceded.exe -argument [option] Example: haloceded.exe -IP 192.168.1.100 -port 2312
1.
-? Displays a list of all arguments.
2.
-exec Specify which init.txt file to use for this instance of the dedicated server. The name of this file can be any name.
3.
-cpu When using a multi-processor computer (SMP) server, it is possible to instruct Halo Dedicated Server to run on a specific CPU. To do so, use the –cpu n command line argument (where n is a given CPU, 0 being the first one).
4.
-path Sets the default path to the Gametypes and the log file location. The default is C:\My Documents\My Games\Halo CE\savegames.
5.
-port Different instances must, obviously, use different ports. -port is used to specify the port for the instance being launched. If a port is not specified the server will automatically choose an open port though the chosen port is not reported.
6.
-ip x.x.x.x Server IP address used when you have multiple IP addresses and wish to bind the server to a specific IP address. If this command is omitted in servers running multiple IP addressess the the Halo Server will answer on all IPs.
APPENDIX – D
(Halo CE Game Command Line Arguments)
Other command line arguments for Halo CE game
Usage: haloce.exe -argument [option]
Example: haloce.exe –cport 2313 -console
1.
-nosound Disables all sound.
2.
-novideo Disables video playback.
3.
-nojoystick Disables joystick/gamepads.
4.
-nogamma Disables adjustment of gamma.
5.
-useff Forces the game to run as a fixed function card.
6.
-use11 Forces the game to run as a shader 1.1 card.
7.
-use20 Forces the game to run as a shader 2.0 card.
8.
-safemode Disables as much as possible from the game.
9.
-window Runs the game in a window.
10.
-width640 Forces the game to run at 640x480.
11.
-vidmode w,h,r Forces the game to run at width, height, refresh rate.
12.
-adapter x Forces the game to run fullscreen on a multimon adaptor.
13.
-cport x Client port address used when joining games.
14.
-screenshot Enables the "Print Screen" key to generate screenshots
15.
-timedemo Runs four movies and writes out timedemo.txt.
16.
-console Enables the debugging console.