Setting Up A Server (XMP)
Originally created by QuikShot
This article should provide server admins with a comprehensive guide to setting up and smoothly running an Unreal 2 XMP server, whether it is to be run on a dedicated server using only remote access tools, or from a home connection. At this time, no dedicated server version exists for Linux. A dedicated server release totalling 70MB is available in ZIP format for Windows, but Linux support is thought to be a long way off. This guide will be updated with details when they become available. This guide covers everything from downloading the dedicated server release to installing the community bonus pack and adding IRC reporter bots to your server.
XMP servers require a great deal of power to provide a lag-free game. You should be running the game on at least a 1GHz processor dedicated to the running of this one server. Whilst CPU usage should never reach 100%, dedicated servers seem to process information more slowly with high CPU usage (60+%), causing high pings. A 14 player server will consume between 100 and 150MB of RAM. These are the two main constraints of a box running XMP, although CPU is the most important by far. You must also be aware of the speed of your connection. If you are running XMP off a remote dedicated server, bandwidth is probably not an issue. However, ADSL and cable users will have difficulty hosting many players - if you have a standard upload speed of 256kbps, do not expect to be able to host more than 4 players without lag. More network analysis will be posted here soon. The dedicated server version requires approximately 100MB of hard disk space to install.
Click here to download the dedicated server release for Windows. The download is a 70MB zip file which includes only the components required to run an XMP server. Once the transfer is complete, extract the contents of the archive making sure that it has preserved the correct folder names. It is very important that the Use folder names box is ticked if you are extracting the files using WinZip. There are no registry entries to be copied across.
Configuring Your Server
Run the ini configurator here. Once you have finished with the configuration link above, you should now have an installation of XMP and have modified a file called MyU2XMP.ini in the System directory with the details of your server. You must ensure that the MyU2XMP.ini file has absolutely no hidden spaces at the end of any line - hidden spaces will cause problems with starting the server later on, so be sure to check that there are none now.
If you are running the server behind a firewall, you will need to open up the following UDP ports:
Your game port (default 7777) Your query port, which is simply the game port + 1 (default 7778) Master server port 27900 Master server port 28900
You may need to read the manual to find out how to forward these ports.
Starting Your Server
Here you have a choice of two paths. If you want the easy option with less configuration (but fewer features), use a Batch File. Otherwise, for the slightly longer but better featured setup, used FireDaemon.
Using a Batch File
Create a new text file and call it XMP Server Startup.bat - make sure the extension is .bat and not .txt. If you do not see the .txt extension on the file to change it, go into My Computer, click Tools, Folder Options, View, untick Hide Extensions for Known File Types, and click OK. You will now be able to edit the extension to read .bat. Right click on your new file and click Edit. Paste the following into the file:
:loopme C:\u2xmp\System\ucc.exe server XMP-Lowlands goto loopme
This batch file will ensure that when your server crashes, it is restarted. Clearly, you may substitute part of the second line for the correct path to your server. Save the file, close it, and then run it. An XMP icon should appear in the system tray, and your server should now be up and running.
FireDaemon is a great program for running processes such as game servers. Whilst ultimately it achieves the same result as the batch file above, it allows far more control over the server. Firstly, download and install the Lite version of FireDaemon from here. Note that you must be running Windows 2000 or XP in order to use the program - otherwise you will need to use the batch file above.
Once installed, load up FireDaemon. Click Service, then New. You only need to make changes on the first 3 tabs in the window that pops up. Click on each of the images below to enlarge them. Modify the service on your computer so that it matches the one shown in the images below. Adjust the path to the Executable if you have installed XMP into a different directory. Also ensure that you have ticked Interact with desktop on the second tab. If your processor supports hyper-threading, tick both 0 and 1 in the CPU Bindings section in the third tab. Once you are satisfied that your setup matches the one below, click Install.
The server will be automatically started and you should see window appear minimised to the taskbar - this is the XMP server. You are free to configure FireDaemon to act however you wish - note that a default configuration will lead to your services automatically loading on startup.
Testing Your Server
If you left the option to connect to the master server enabled in the configuration file, your server should appear in the list within 5 minutes. Be sure to get someone else to test your server if you are hosting it off your own connection. This way you can be sure that any firewall is working correctly and allowing data to pass through the appropriate ports. You can connect to your server by loading up XMP and pressing the console key (check the key setup in the options menu). Then, type
open ip:port where the IP is the IP from which the server is being run and the port is the number you specified when creating the configuration file. If you are hosting the server from your own connection and do not know your IP, you can find it here. You should be able to connect successfully to your server and begin hosting games - if so, congratulations!
If the server does not start correctly, be sure to read the log file UCC.log in the System directory. Scroll to the end of the file to find the error message which is causing problems. If you are not able to read the message from the log file, you may watch the output directly from the server instead. If using the batch script, right click the XMP icon and choose the Console option. If using FireDaemon, click on the XMP window to see what is being outputted to the server log file.
Admining Your Server
There are currently no admin commands that can be executed through the XMP console using the admin password. Aside from the in-game kick and ban-voting feature, you must use webadmin to carry out admin tasks. Webadmin can be accessed using the URL that you were provided with when using the configuration editor. It is a web address in the form of . Once logged into webadmin, you can configure almost every aspect of your server. The options are self-explanatory, but be sure to click Restart Level after making changes to ensure that they take effect straight away. Since you have already configured the server, the main changes you will most likely be making are kicking and banning players. This can be done by clicking the Current Players link on the left whilst logged into webadmin. From the list of players, tick the appropriate box(es) and press Kick/Ban. The actions will be instantly carried out by the server.
Troubleshooting Poor Performance
If your server is performing poorly (all players have pings of 150ms+), either your server or connection to the internet is overloaded. The original XMP release (version 6497) was very harsh on resources and requires a great deal of power to perform well. Version 7710 has been slightly improved in terms of performance, but is still very resource-hungry. Firstly, check the CPU usage of your server (right click on the taskbar, click Task Manager and then Performance). If your CPU usage is below 70%, the problem is unlikely to be directly CPU related. Now check the number of players currently on the
server and how much data the server is transmitting and receiving (right click on the taskbar, click Task Manager and then Networking). Compare the actual throughput to the maximum your connection can achieve. If they are nearly the same, the best solution is to reduce the Max Players value of your server. This will also lower CPU usage. Another option is to stop your server and edit the file
Myserver1.ini. Scroll down until you find the line
NetServerMaxTickRate=20 and try decreasing this value to something a little lower. This will lessen the load on the CPU and at the same time cause less information to be transmitted between clients and the server. Whilst this may degredate playing experience a little, it is preferable to the poor performance that would otherwise be seen due to high pings. The release of the first patch does include server optimisations which will decrease CPU usage, so make sure you have the latest version (7710).
Customising Your Server - including the Community Bonus Pack
Click here to open the seperate community bonus pack installation guide in a new window. Make sure you have a working server before installing the pack!