Starting a server in the UDK is simplicity itself. There are two methods, depending on whether you want to host the server on a dedicated server machine, or host the server and join the game/world from the same machine.
Now you have either a static IP address or a Domain Name (that resolves to the current IP address using an updater) from Tutorial 3, you are ready to host a Game Server. To demostrate the two methods of doing this I will use one of the ready-made maps that comes with the UDK, DM-Deck.
Hosting a Game Server: Method 1
Step 1: Start your UDK client, C:\UDK\UDK-2009-11\Binaries\Win32\UDK.exe, then choose Multiplayer.
Step 2: Choose Host Game
Step 3: For the Game Mode choose Deathmatch, and for the Map choose Deck. In the Server window you can select the max and min number of players (clients) that can connect to the server. You can now click on Start Game, and the Game Server is now running.
(Now see the Connecting to the Game Server section below)
Hosting a Game Server: Method 2 (the simple 3-click method)
Step 1: Launch UnrealFrontend.exe, normally located here:
C:\UDK\UDK-2009-11\Binaries Unreal\Frontend.exe
Step 2: You will see a Menu at the top, under that some tool buttons, and under the tool buttons two tabs, called Game and Cooking, select Game. Click on Browse, next to the Map to Play box, and select one of the sample maps. I chose DM-Deck.udk
Step 3: Leave (Use cooked map) unchecked, and in the Common section, leave all unchecked, except Multi-threaded.
Step 4: In the bottom section, PC, for server type choose Dedicated* and for number of clients choose 0 (this is not the number of clients that can connect to the server, it is the number of clients that will be spawned on the same PC). Set the Resolution to 800x600 (can be increased later). Leave the Show Log and Remote Control boxes unchecked.
* If you are using your Home PC as a server, and you wish to join the game/world from a client on the same machine, then choose Listen for the server type. This will be a resource hog, and it may not give you the performance you would like.
Step 6: Now press the Server tool-button (third button under the menu bar).
That is it! The server will now start, and a cmd-like server window will pop up, and when you see 'Initializing Game Engine Completed' it is ready to be connected to.
Connecting to the Game Server
Step 1: Start your UDK client, C:\UDK\UDK-2009-11\Binaries\Win32\UDK.exe, then choose Multiplayer.
Step 2: Then choose Join, and the next page should be the Server Browser, which will be empty. At this point start the Console. To do this use the tilde key (~), or the upper single quote (') or this key (¬). If none of those keys work on your keyboard then you will have to experiment with all the non-alphanumeric keys on your keyboard until you find the one that works (unfortunately the key that brings up the console is keyboard and language specific).
Step 3: Now type the command: open 85.17.234.172:7777 (or whatever the IP address or domain name of your dedicated server is, followed by the :7777 port number.
That is it, you should now connect.
Troubleshooting
Followed all the above steps and still cannot connect remotely? Try these faultfinding steps:
1. When using your home PC as the server it could be that it is the hostname that is causing the problem. Try using the external (router) IP address instead. Open a browser and go to this URL:
www.checkmyip.com this will tell you what your external IP address is (eg: 78.154.28.7). Use this address in the console, i.e. use the command: Open 78.154.28.7:7777
If that fixes it, then go to the DYNDNS website and check that the IP address currently assigned to your hostname matches what www.checkmyip.com tells you. If it doesn't then maybe the updater software is not working. Try reinstalling it.
2. Firewalls and antivirus software can stop a connection from being made. If you have a router then it will already have a hardware firewall built in, so it is usually quite safe to switch off your other firewalls, such as Windows Firewall, ZoneAlarm, or any of your security suites that may have a firewall bundled. So just try switching them all off and then see if a connection can be made.
3. Try to ping your external IP address. Go to Start, and in the Run box type cmd to get the DOS-like cmd console up. In here type (using the example above): ping 78.154.28.7
If you get a response fine, but if the three attempts all time out then either your router is setup to ignore pings, or your ISP is blocking them. If your router manual provides no info on blocking pings, then try asking your ISP support if they block them.
4. The most common reason I have found for not connecting has been that the router was not configured correctly to pass the required ports. Please double-check that you have opened the required ports, and their type (TCP&UDP) 100% correctly.
If you had a problem connecting, and eventually got it resolved, please post your solution here, it may help others.