Server Setup & Configuration (WIP)

This page is outdated after the release of the v469 "Server Pack".

Go check out the new TO Server Pack page.

Server Setup & Configuration (WIP)

This guide is useful in 2 ways, you can create your own TO3.4 or 3.5 server file set. Or learn how to add and configure things on an existing server or downloaded server package.

When you are looking for a quick and fast way to host a server, try out any of the 15+ Server Packs from the Anti Cheat & Server section.

New are also 2 seperate guides that go into detail which custom/monster gametypes you can run on a server: Monster Gametypes and Custom Gametypes

When installing custom files to your server, follow these basic rules:
u, int, dll, exe, so, ini -> System
unr -> Maps
utx -> Textures
uax -> Sounds
umx -> Music

This means when you are finished there should be no file extensions of a different type in the Maps, Music, Sounds or Textures folders. (Except "TO-SnowSkybox.unr" an official TO file in the Textures folder)
Also check that the System folder doesn't have any .utx, .uax or .umx files, if so move them to their proper place.

Any ".uz" files you might find in any of the downloads are meant to be placed on your HTTP File Redirect, what that is and how to use it is explained at the bottom of the guide.

1. Fresh TO Folder

First start by extracting a fresh TO340 or TO350 folder depending on which version you want to run the Server. The TO:AoT Fixed Pack has very clean TO folders with all unneeded setup, language and others files removed combined with clean ini files that have all unneeded parts removed.

Then rename it to something like TO340Server or TO350Server and avoid using spaces.

Choice 1: Run server on Engine v451
Download the "Legacy" Fixed Pack from here: Legacy Fixed Pack
It uses the original UT v436 engine and can be used in this guide to be updated to v451.

Choice 2: Run server on Engine v469
Download the v469 Fixed Pack from here: v469 Fixed Pack
When using v469 you can skip 5. UCC2 v2 (Only Windows) and 7. ServerCrashFix as they are no longer needed.
Attention: And skip 4. Updating Engine to v451 (And adding Linux files) of this guide and retreive the Linux files from the v469c github.

2. Remove Unwanted Files

Delete the "TacticalOps.exe" file from the “System” folder as don't want to run the game from the same files set as the server.

3. Fix Server Configuration

Fix the Master Servers, re-arrange the ServerPackages and ServerActors, fix the CacheSize and disable the Sound.

Open "TacticalOps.ini" with Notepad and replace the full "[Engine.GameEngine]" section with the following one:

ServerActors=IpServer.UdpServerUplink MasterServerPort=27900 DoUplink=True
ServerActors=IpServer.UdpServerUplink MasterServerPort=27900 DoUplink=True
ServerActors=IpServer.UdpServerUplink MasterServerPort=27900 DoUplink=True

Also important is a server start up map in the section [URL] at the top of the ini
Make sure LocalMap=Intro.unr is changed to the startup map of your liking.
Example: LocalMap=TO-Trooper.unr

4. Updating Engine to v451 (And adding Linux files)

This step is both important to update the internal engine version to v451 and to add all necessary files for when running the server on Linux. By default TO3.4 and TO3.5 both run on Unreal engine v436, the community has made an unofficial v451 patch with large number of modifications, fixes and upgrades to the engine. Currently a v469 patch is in development, maybe a choice for the future.

Download for Windows:

Download for Linux:

Install by copying the "System" and "Web" folders directly into your main server folder.

5. UCC2 v2 (Only Windows)

A modified UCC with various server crash fixes only available for Windows.


Install by copying the "UCC.exe" file to the "System" folder.


TOST: Tactical Ops Server Tools is as the name describes, a set of tools that will add many features to your server. Mapvote, kick/ban control, server sounds, menu to configure server settings, weapons and much more.

Download TO340:

Download TO350:

Install "TOST" by copying all .u files into the server "System" folder. Install the "TOST Weapons" addon by copying all .u files into the "System" directory and the 2 .utx Textures into the Server "Textures" folder.

For TO3.4 there is also an updated TOSTTools in the downloads, this version stops the annoying message in the server that TOST is outdated. To install overwrite the TOSTTools from thee TOST v4.2.4.0 download.

Configuration TO340:
To enable them add the following lines after the last ServerPackage in "TacticalOps.ini", before the first "ServerActors=".


Configuration TO350:
To enable them add the following lines after the last ServerPackage in "TacticalOps.ini", before the first "ServerActors=".


Configuration Extra:
After first running server server many new lines will be generated in your "TacticalOps.ini" allowing you to configure all the settings. Alternatively you can login with the Admin Password you have set in your "TacticalOps.ini" and use the commands "showgametab, showadmintab and showweapontab" in the console.

7. ServerCrashFix

Server Crash Fix is a DoS Protection Mod, prevents servers crashes and has the ability to control the CPU Affinity of the server. 


Installation Windows:
Copy these files into server "System" folder.

To enable it add this line at the bottom as last ServerActor in in your "TacticalOps.ini".


Change the settings in the "ServerCrashFix.ini" file.

8. TechsNoDodge and Disabling TOST Protect

When running a TO340 server most admins disable the TOST Protect function as its known to cause kicks for players. When TOST Protect is disabled players are able to "UT99 Dodge Jump" if they modify their "User.ini", this prevents that.


Disable TOST Protect:
Remove this ServerPackage in “TacticalOps.ini”:


After having run the server with TOST enabled search for “TostPiece” list and remove:


Install by copying the .u file into the Server System Directory

Add the following line as ServerPackage


Add the following line as ServerActor above ServerCrashFix, so that ServerCrashFix remains the last one.

9. ACE

ACE: Anti Cheat Engine, has the ability to make screenshots from players and more features. Beside that it also does some internal "Timing" related things either way even if you are not using it for the Anti Cheat functions it is still highly recommended to run on any server. It also impacts things player side since ACE also runs on the client. For more information read this Timings.txt from an older version.


Install by copying all files from the ACE download into the servers main TO340/ or TO350/ folder.

Afterwards add the following ServerPackages to the bottom of your ServerPackage list:


Add the following ServerActors above Server CrashFix:


ACE will mostly configure itself, the only 2 important settings are discussed in upcoming "Basic Server Settings" and "Server Ports / Firewall Rules"

10. Nexgen

Nexgen is a mod for servers to facilitate server administration tasks. Rather than having the execute console commands or edit configuration files, Nexgen allows server administrators to change settings and perform actions in game via an user friendly interface.

Downloads for Nexgen v1.12:

Installation for Nexgen v1.12:
Add as bottom Server Packages:


Add these above ServerCrashFix and below the ACE ones if you are using that:

11. Windows Starter File

Save the following as "StartServer.bat" with notepad, make sure to set Save as Type to: "All Files (*.*)" so you don't save it as "StartServer.bat.txt"

In this start up file example the -multihome parameter is already set, this is used when you host multiple servers from the same machine.
Make sure to not forget to change it to the Public IP Address of the machine you are hosting the server from, or an error will appear when starting the server.

@echo off

title Tactical Ops Server
set UTBINARY=ucc.exe
set UCCOPTIONS=server
set OPTIONS=-nohomedir -multihome=123.456.789.123 -port=7777
set SERVERINI=TacticalOps.ini
set USERINI=User.ini


title Tactical Ops Server %CMDLINE%

:: todo: sleep 10;
goto while
12. Linux Starter File

Save the following as "". 

In this start up file example the -multihome parameter is already set, this is used when you host multiple servers from the same machine.
Make sure to not forget to change it to the Public IP Address of the machine you are hosting the server from, or an error will appear when starting the server.


OPTIONS="-nohomedir -multihome=123.456.789.123 -port=7777"

while true; do

echo $CMDLINE;
nice $CMDLINE;

echo -e "\n\nYou have 10s to kill this script\n\n";
sleep 10;
13. Start The Server

This is a good moment to start your server for 15 seconds and shut it down afterwards. This way all the addons can write their config lines to "TacticalOps.ini" or their own ini files and you can continue configuring the server.

14. Important Server Settings

You can set the Tickrate with the following values:


It is mostly recommended to stick to a TickRate of 40, however the set TickRate can be different then effective ingame TickRate. Test this by joining your server, press F6 and read the Packet/Sec value. This may vary on server load (empty / 30 players). Just experiment which TickRate gives the most stable 40 ingame. (40, 41, 42 etc.)

Tickrate in 2020:
Server admins have tested both 120 and 60 and it seems that 60 runs best on both v451 and v469a servers. (This can be 60, 61 etc. depending on your OS/Hardware etc.)



The Server always defines the maximum allowed Netspeed, Setting it higher won’t do anything as players will need to manually set it higher and since the effective used Netspeed/Rate used by the player is affected by the maximum FPS which is most likely 100-200 they will never ever need or exceed higher then 20000. (You can observe the current effective Netspeed/Rate also in the F6 menu when joining your server).

Admin Password:
In “TacticalOps.ini” set:


ACE Screenshot Password:
In “TacticalOps.ini” set:


Disable Nexgen HUD
Disable it or players will get kicked by ACE. In “Nexgen.ini” set:

15. TOST Weapons Configuration

Enable TOST Weapons for TO3.4:
In the TOST Pieces section of TOST make sure it has the following piece configured:


Enable TOST Weapons for TO3.5:
In the TOST Pieces section of TOST make sure it has the following piece configured:


To create weapon profiles for TOST Weapons log in as admin in your server and open the "showweapontab" from the console.

From this menu you can select which weapons + equipment is allowed, free or limited to which team etc. Then on the final page you can Save them to a profile. Just click an empty box, give it a title and click Save.

The Load button is only meant if you want to load a Custom Profile on a map that has it not configured at the moment.

In the "TacticalOps.ini" is a "TOSTWeaponsServer" section, where there are rows like this:

RecordString[0]=Default Profile;1;1;1;1;1;1;1;1;1;1;1;1;1;0;1;0;1;1;1;1;0;1;1;1;1;1;1;0;1;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;1;1;1;0;1;0;1;1;0;1;0;0;0;1;-1;
RecordString[1]=War Weapons;3;1;3;3;3;2;3;3;2;1;2;1;1;1;1;0;3;2;2;1;0;2;2;0;3;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;1;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;1;0;0;1;0;1;0;0;0;0;-1;



and a setting:


So you first make the profiles ingame in the server, then in the Server Configuration you set the custom maps that automatically load a custom profile. The last setting "CurrentDefSettings=0" dictates what the default profile is for all maps that do not have a profile set. This is usually used for a Normal / Default Weapon Profile.

16. How To Use Ingame Admin

To login as admin in your server, open the console and type "adminlogin YourAdminPW". To logout use the command "adminlogout".

When logged in as admin you can use the ingame console commands "showadmintab, showgametab and showweapontab" in the console to open the TOST configuration windows.

When using Nexgen most of the basic server settings such as Maximum Players, Server Title, Admin Name, Admin Email, the Message Of The Day etc all can be configured from the “Nexgen.ini”. If not using Nexgen all those settings can be configured from “TacticalOps.ini”

You can open the Nexgen menu by typing !open or !o in the ingame server chat. Then login with the admin password you have configured in “TacticalOps.ini”.

17. Running Other Mutators / Addons

95% Of all mutators/addons will require you to add it as ServerPackage and some as ServerActor, so always read the included readme file of a download, usually it is explained which steps you must take to make it work.

Some might not work together, for example to run the CTF Gametype, or the TO2.2 Weapons Mutator the TOST Weapons addon must be disabled.

Custom Mutators
There are 2 ways to start a mutator on your server.

1. When using TOST there will be a section called "[TOST42.TOSTServerActor]" or "[TOST44.TOSTServerActor]" for TO3.5  in "TacticalOps.ini", for example:


2. An alternative method is is to add them as variable to the "LocalMap=" setting in "TacticalOps.ini".


Custom Gametype
Same with mutators, gametype also have 2 ways of being started with the server.

1. When using TOST and the builtin TOST Mapvote you can configure it to load from it.
In the section "[TOSTTools.TOSTMapHandling]" you will find the following:

GameType[0]=Tactical Ops;s_SWAT.s_SWATGame;
GameType[1]=Capture The Flag;TOCTF.TFMod;

In this example i added the CTF gamemode as GameType[1], Wih the setting "CurrentGameType=" you set the default server gametype.

2. An alternative method is is to add them as variable to the "LocalMap=" setting in "TacticalOps.ini".


This can also be combined with starting mutators:

18. Server Ports / Firewall Rules

If you are using ACE on your server, then you must configure the ACEPort in "TacticalOps.ini" in "ACEPort=". What i have observed is that sometimes it might take the Port you have set for ACE and take +1 or -1. So if Ace if you are getting kicked from your server because ACE can't make a connection, try forwarding also 1 port higher or 1 port lower.

If you are running multiple servers, or running a different port then 7777, the other 2 are simply +1 and +2. For example 8888,8889 and 8890 if using 8888.

7777 UDP (Game port)
7778 UDP (Query port)

27900 TCP/UDP (Master Server)

ACEPort TCP/UDP (The port you have configured for ACE)

7670 TCP (WebAdmin Graphical User Interface, only needed when wanting to use the Web Admin)

Depending on where or on what the server is hosted, make sure to Forward these in your Firewall (Windows) and when behind a router these ports must be forwarded to the Local IP Address of the machine you are running the server from. Since this is different for every setup / router, i advice to research this on Google and YouTube.

19. Redirect

A redirect is a http server / website that sends all the custom files required to the player when he connects to the server. If you don’t have a redirect the player will be limited to 20KB/s so downloading 10-20MB of files will take minutes so this is absolutely necessary if you plan to play custom maps on your server.

A plus side of a redirect is that the files can be stored in .uz format, sort of an Unreal Zip file format. This makes the file size smaller making the downloads even faster then without a redirect.

You must compress all custom files in use by your server yourself, a handy tool for this is UnrealDeps (Preview Video), a player will decompress the files automatically when joining the server.

Here an example when using the 3.4 Public Redirect.