Post by UT3 on May 12, 2024 13:41:30 GMT
Unreal Tournament 3 Server Installation Guide
This [non-profit] document, which is neither affiliated with Epic Games, nor supported by them, is a guide only. It aims to be as accurate as possible, to help UT3 gamers/ Developers get the most out of UT3. Due to regional variances, the gathering & processing of information and other factors, some information may be inaccurate/ outdated.
Use at your own risk. Anyone, whether directly or indirectly, involved in this document should be excluded from the accountability or responsibility of any issues caused to your game &/or equipment from using this guide.
Some of this information can be adapted for other Unreal & Unreal Engine Based games
Before we get started
You do not need your UT3 DVD for this.
Download the UT3 dedicated server patch or use the pack provided (links at end)
Pack should contain UTOrbFix, Gamespy fix, ExploitFix, webadmin
Read the tutorial links provided to gain a better understanding of the UT3 server.
The installation of a UT3 server is not guaranteed.
Always install as admin
This guide does not cover Linux
learn the commands and what they do (see common command lines)
For more information, see check the links or official Epic forums
Installing the server
Install the dedicated Server
Restart PC
Open Ports for PC (See Ports)
Open Ports for GameSpy (see gamespy notes)
Copy the folder to the directory OR
Update the game like you would normally with the latest patch is installed
(run server log in to test )
Main Ports (Also see more port info for additional ports)
UDP
6500 (Query)
6515 (Dplay UDP)
7777 (Port for UT3 – default is 7777, you can change in server setup)
13000 (Port for UT3)
13139 (Custom UDP Pings)
27900 (Master Server UDP Heartbeat)
TCP
3783 (Voice)
6667 (IRC)
28900 (Master Server List Request)
29900 (GP Connection Manager)
29901 (GP Search Manager)
Config Changes
Change the lines in red to your information
Add any lines that are missing
UTEngine
[OnlineSubsystemGameSpy.OnlineSubsystemGameSpy]
bHasGameSpyAccount=True
EncryptedProductKey=NotForShip
QueryPort=6500
MaxRemoteTalkers=16
bIsUsingSpeechRecognition=True
MaxLocalTalkers=1
StunServerAddress=stunserver.org
StunServerAddress=stun.xten.com
StunServerAddress=99.99.999.999:7777.com
UTWebAdmin
[WebAdmin.BasicWebAdminAuth]
RequireUsername=Admin
[WebAdmin.WebAdmin]
bHttpAuth=True
UTWeb
[UWeb.WebServer]
ListenPort=1234
bEnabled=True
My example:
99.99.999.99:7777.com
http://192.168.2.2/ServerAdmin/current
StunServerAddress=stunserver.org
StunServerAddress=stun.xten.com
StunServerAddress=99.99.999.99:7777.com
One command line is bugged and requires settings to be made in the UTGame.ini
?BotSkill=5
Please do not include this in your command lines
Skill range = 0-7 and can be set in your UTGame.ini
GameDifficulty=5
Server Instructions
Rename the Directory below to your directory
Rename the IP ADDRESS below to your directory
Copy all of it into a notepad document and save it as a “.bat” file. (batch file)
This must be all on one line and will be explained later, first get it working
:one
C:
cd\UT3\Unreal Tournament 3\Binaries
UT3.exe Server VCTF-Necropolis?maxplayers=24?MinNetPlayers=0?NumPublicConnections=24?NumPrivateConnections=0?NumOpenPublicConnections=24?NumOpenPrivateConnections=0?bShouldAdvertise=True?bIsLanMatch=False?bUsesStats=True?bAllowJoinInProgress=True?bAllowInvites=True?bUsesPresence=True?bAllowJoinViaPresence=True?bUsesArbitration=False?bIsDedicated=True?bIsListPlay=True?AverageSkillRating=2987.000000?EngineVersion=3810?MinNetVersion=3467?ServerIP=999.99.999.999?BotSkill=5?Difficulty=5?Numplay=10?game=UTGameContent.UTVehicleCTFGame_Content -multihome=999.99.999.999 -Login=xxxx -Password=xxxx -Port=7777 -QueryPort=6500 -nohomedir -unattended -log=server.log
UT3 Server Admin Commands:
AdminLogin – Logs you in as an admin
AdminLogout – Logs you out of admin mode
AdminRestartMap – Restarts the current map
AdminChangeMap – Loads a different map (gametype will change too, depending on map)
Admin addbots <#> – Adds number of bots
Admin killbots – Removes all bots
AdminPlayerList – Shows PlayerID of players
Adminkick – Kicks player from current game
Adminkickban – Kicks player from current game and bans player from reconnecting (bans are stored in .ini file for later editing)
AdminForceVoiceMute – Blocks a player from sending voip to others
AdminForceVoiceUnMute – Allows a player to resume sending voip to others
AdminForceTextMute – Blocks a player from sending text to others
AdminForceTextUnMute – Allows a player to resume sending text to others
AdminPublishMapList – Overrides the server’s map list for the current game type with the one on the client that used the command
Server Administration for Unreal Tournament 3
Document Summary: Definitive guide to server administration for the third generation Unreal Tournament game.
Server Administration for Unreal Tournament 3 & Running a Dedicated Server
For PC Servers
For PS3 Servers
Admin Commands
Web Admin
Benchmarking
Demo
Running a PC Dedicated Server
UT3 server <map name?options?etc> <-login> <-password>
server required to start up in dedicated server mode. The first argument after this must be the map name.
map name enter the name of the map you’d like to launch on the server (for instance: “UT3Demo server DM-Heatray -login -password” will launch a dedicated server on DM-Heatray with default settings)
-login= You must indicate a valid GameSpy? login to start a dedicated server from the commandline. You can create these in-game under “Create Profile” on the title screen. These options must be the last in the command line, after any ?options.
-password= The matching password to the login must also be indicated. You can create these in-game under “Create Profile” on the title screen. These options must be the last in the command line, after any ?options.
?numplay=x The number of AI bots you’d like in the game. These bots will quit as human players join the game, and replace them when they quit.
?maxplayers=x The number of human or AI players you want in your game. This is the number that is reflected on the server browser.
?timelimit=x Determines the amount of time that must elapse before the server rotates to the next map. A victory by either team before this time limit is reached will trigger a rotation as well.
?goalscore=x Determines the number of ‘scores’ required to trigger a server rotation. In CTF this is flag captures. In DM/TDM the number of kills per individual or team.
?botskill=x The skill level of the AI bots. Ranges from 0-7 with 7 being the most difficult.
?minnetplayers=x The minimum number of human players required for a match to start.
?game=UTGame.UTTeamGame Forces a DM map to be a TDM match.
?forcerespawn=x Forces fragged players to instantly respawn. 0 for off, 1 for on.
?vsbots=x Forces all humans to one team and all bots to the other. Additionally it determines whether the bots will outnumber the humans. 1.0 indicates an equal number of AI bots to humans, 1.5 indicates the bots will outnumber the humans by 50%, and 2.0 indicates the bots will outnumber the humans by 100%.
?bUsesStats=x Determines whether the stats acquired on the server will be reported to the leaderboards. True for yes, False for no.
Example:
ut3 server DM-Deck?numplay=8?maxplayers=8?timelimit=20?goalscore=40?botskill=3 -login=FakeUser -password=FakePassword
This configuration would start a DM-Heatray free-for-all with 8 players. There would be 8 bots until players joined at a middle difficulty level. It would show up in the server browser as FakeUser.
For PS3 Servers
With the release of the recent PS3 patch (released today), we have a PC dedicated server for for PS3 clients. This is only for PS3 clients, this does not support PC vs PS3 play (mostly because of the differences in the gamerate).
Instructions:
First, install the dedicated server (the default installation directory is the same as the PC dedicated server, so you will want to change the directory if you have the PC dedicated server installed)
Since this server runs in the PS3 GameSpy? namespace, you will need to create a PS3 namespace GameSpy? account. It can be the same username as your PC GameSpy? account, but they will be separate accounts. To do that, run the CreateAccount?.bat file:
CreateAccount.bat MyUserName MyPassword MyEmailAddr
From a commandline, run the following:
utgame server <map?option?option> -seekfreeloading -login=MyUserName -password=MyEmailAddr
Of course, be sure to set the the map, options, and GameSpy? info as normal. Note that it’s utgame.exe, not ut3.exe, and you need the -seekfreeloading option.
The server will now show up (as MyUserName?) in the PS3 server browser.
NOTE: Package downloading will not work, so this is really just for straight-up shipped maps, mutators, etc. There will probably be too many incompatibilities between maps/mods cooked for PS3 vs PC, and the PS3 would need to have installed the mod by hand, but if you try it put a password on the server so we there aren’t too many PS3 clients connecting to problematic issues. Adding mods to a PC DS for PS3 is not a supported operation.
Admin Commands
These commands allow the server operator to manage the server remotely. Once logged into the server, the admin will be able to kick and ban trouble players.
?AdminPassword=<password>: Append to the end of the command line argument to start the server.
Example:
ut3 server DM-Deck?numplay=8?maxplayers=8?timelimit=20?goalsc ore=40?botskill=3?AdminPassword=FakeAdminPW -login=FakeUser -password=FakePassword
When a player is logged into the server, they can access Admin commands by bringing down the Console by pressing the ~ (tilde) key and typing:
AdminLogin <password>
Example:
AdminLogin FakeAdminPW
To logout of Admin mode bring down the console and type:
AdminLogout <password>
Example:
AdminLogout FakeAdminPW
To kick a player while Admin on server type:
Adminkick <playername>
Example:
Adminkick AnnoyingPlayer
To kick and ban a player while Admin on server type:
Adminkickban <playername>
Example:
Adminkickban OffensivePlayer
Removing a restriction on a banned player can be done by modifying the utgame.ini file for the server. This is stored by default in the following location:
C:\Documents and Settings\<Windows User Name>\My Documents\My Games\Unreal Tournament 3 Demo\UTGame\Config.
To change the map the server is playing while Admin type:
Adminchangemap <mapname>
Example:
Adminchangemap DM-Deck
Note that the goal and time limits will persist from the arguments used in the commandline when starting the server. This can lead to problems where a reasonable VCTF score limit of 3 will translate to a frag limit of 3 when when switching gametypes this way. Leaving those limits blank when starting the server will however use the defaults for the gametype. This allows some flexibility in switching gametypes using this command.
Web Admin
A separate web admin application has been created – separate from the core game patch to permit faster iteration and updates to this critical feature.
You can download the latest web admin patch here:
NOTE: Be sure that the latest patch is installed!
Follow these steps to install: 1. Extract the contents of the WebAdminPatch?.zip archive into the root folder of your UT3 server installation. Be sure to preserve the folder structure contained within the archive file.
2. Start your server. This will create a new configuration file in your /UTGame/Config/ folder: UTWeb.ini
3. Shut down your server.
4. Open /UTGame/Config/UTWeb.ini in a text editor.
5. Make the following changes to the file, setting the webserver port to whatever you desire (default is 80):
[UWeb.WebServer]
ListenPort=80
bEnabled=true
6. Save this file, restart your UT3 server. This will create a new configuration file in your /UTGame/Config/ folder: UTWebAdmin?.ini
7. Shut down your server.
8. Open /UTGame/Config/UTWebAdmin.ini in a text editor.
9 Make the following optionsal changes to the file:
[WebAdmin.WebAdmin]
bHttpAuth=true
[WebAdmin.BasicWebAdminAuth]
RequireUsername=Admin
You don’t have to set bHttpAuth to true. When you leave it to false you get a nice log in form and the ability to remember authentication information (for 1 month). With bHttpAuth set to true the web admin will use “basic” http authentication (like the previous versions of the webadmin).
The RequireUsername? setting is also optional, when it’s left blank any username is accepted. This way multiple admins can log in on the server using different names. The log in name is also used as nickname during chat.
10. Save the file, restart your UT3 server.
11. Test Web Admin functionality by opening a web browser and pointing it to your server IP address. If you changed the default port then specify the port in the URL.
12. Login using the following info: – username: Admin – password: [YourServerAdminPassword]
Benchmarking
Demo
Unlike the full game, the demo does not contain demo recording functionality. But not all hope is lost for benchmarking as most maps in Unreal Tournament 3 have a flyby that can be used to benchmark GPU performance of static geometry. This means there are no weapon FX and AI overhead, but at least it’s something
Below is the commandline that we use for this purpose:
MAPNAME?causeevent=FlyThrough?quickstart=1?nocusto mchars=1?numplay=0 -seconds=300 -unattended -novsync -fixedseed -CaptureFPSChartInfo -nomoviestartup
You may want to remove the “-CaptureFPSChartInfo” if you want to use an external capture application. By default data is written to the Stats folder in your My Documents folder.
Additionally, you will want to modify UTEngine.ini and set bSmoothFrameRate from TRUE to FALSE to disable frame-rate smoothing/limiting, as follows:
[Engine.GameEngine]bSmoothFrameRate=TRUE
Another form of benchmarking is to run botmatches as a spectator, though the variance between runs is fairly high, so this is mostly good for broader comparisons and trending. Having said that, it does fully test your system the way that playing against bots would and also stresses the GPU via weapon effects, player models and such.
The commandline that we use for this purpose is
MAPNAME?numplay=12?timelimit=5?automatedperftestin g=1 -unattended -novsync -fixedseed -CaptureFPSChartInfo -nomoviestartup
The results of the benchmarking will be put in the following location in the form of a HTML page per level, with newer runs at the top:
My Documents\My Games\Unreal Tournament 3 Demo\UTGame\Stats
How to connect to servers: Example; Server IP is 199.99.99.99
Load Game
Press F10 & Type:
open 99.999.999.999:8377?password=w4rfaCe
(only for admin login)
Note: 99.999.999.999 needs to be changed to you IP, the 8377 is the port that can be open
Command Line to Start a UT3 server
Note:
o Copy the following text to a notepad file, edit as needed & save as a “.bat” file.
[Host UT3] Start > Run > CMD
-h 92.9.135.43 -a 127.0.0.1 –v
99.99.999.99:7777.com
192.111.9.9/ServerAdmin/current
StunServerAddress=stunserver.org [can be removed]
StunServerAddress=stun.xten.com [can be removed]
StunServerAddress=99.99.999:7777.com [replace with yours]
Example:
User: adminforut3server
Pass: passwordforut3server
Query Protocol
The server uses the GameSpy query Protocol ( v4 ) which can be queried with qstat e.g.
qstat -R -gs4 <ip>:<port>
Common Variables
MaxPlayers=<number> Maximum number of players on the server (overrides ini setting)
MinNetPlayers=<number> Minimum number of players before a match starts (real players not bots)
bShouldAdvertise=[True|False] Show the server in the server browser (default: true)
bIsLanMatch=[True|False] Is this a LAN only game? (default: false)
bIsDedicated=[True|False] Changes dedicated server flag (default: false, even if started as dedicated)
GamePassword=<password> Sets a game password
AdminPassword=<password> Sets an admin password
Port=<port> Sets the server game port (default: 7777; can also be changed via the INI file)
QueryPort=<port> Sets the server query port (default: 6500)
GoalScore=<number> Sets the max frags / max caps before the server will change maps.
bUsesStats=[True|False] Report stats or not?
TimeLimit=<number> Sets the timelimit in minutes for each map.
Most of these can be set in the server’s INI file, so there’s no need to clutter up the command line.
*Added few more since i got the GAMETRACKER TO WORK
FIRST OF ALL i removed DMZ and openned these ports and it workded INSTANTLY:
UDP Any -> 6667
UDP Any -> 8777
UDP Any -> 9777
UDP Any -> 8000 <—Webadmin
UDP Any -> 6500 <—GAMETRACKER
UDP Any -> 13000
UDP Any -> 42292
UDP Any -> 27900
UDP Any -> 7777-7788
UDP Any -> 27000-28000
UDP Any -> 29900-29901
TCP Any -> 27000-28000
TCP Any -> 29900-29901
TCP Any -> 7777-7788
TCP Any -> 27900
TCP Any -> 42292
TCP Any -> 13000
TCP Any -> 8000 <—Webadmin
TCP Any -> 6500 <—GAMETRACKER
TCP Any -> 9777
TCP Any -> 8777
TCP Any -> 6667
Multiple Servers on One Machine
Each server process needs to run under a different gamespy account (can be created in the game). Important things to note are:
The -nohomedir command forces the servers to use the install directory instead of My Documents…
The -configsubdir=<serverfoldername> will create a folder under ..\UTGame\config\ so each server instance can have it’s own ini files
-login=<login> and -password=<password> as these must be unique
The servers port is changed with -Port=<port> in the URL, or via the setting in UTEngine.ini
The servers query port is changed with -QueryPort=<port>
You must specify -unattended as without it you will get prompted to confirm the upgrade of the server’s configuration files. This option needs to be last in the command line.
Note: -configsubdir= does not work unless -nohomedir is specified.
Enable Mapvote
Edit the …\UTGame\Config\UTGame.ini. Under the [UTGame.UTGame] section, be sure to have this:
bAllowMapVoting=True
VoteDuration=45
GameSpecificMapCycles=(GameClassName=”UTDeathmatch”,Maps=(“DM-Arsenal”,”DM-Biohazard”,”DM-CarbonFire”,”DM-Deck”,”DM-Defiance”,”DM-Deimos”,”DM-Diesel”,”DM-Fearless”,”DM-Gateway”,”DM-HeatRay”,”DM-RisingSun”,”DM-Sanctuary”,”DM-Sentinel”,”DM-ShangriLa”))
GameSpecificMapCycles=(GameClassName=”UTTeamGame”,Maps=(“DM-Arsenal”,”DM-Biohazard”,”DM-CarbonFire”,”DM-Deck”,”DM-Defiance”,”DM-Deimos”,”DM-Diesel”,”DM-Fearless”,”DM-Gateway”,”DM-HeatRay”,”DM-RisingSun”,”DM-Sanctuary”,”DM-Sentinel”,”DM-ShangriLa”))
GameSpecificMapCycles=(GameClassName=”UTCTFGame_Content”,Maps=(“CTF-Coret”,”CTF-Hydrosis”,”CTF-Reflection”,”CTF-Vertebrae”,”CTF-OmicronDawn”,”CTF-Strident”))
GameSpecificMapCycles=(GameClassName=”UTVehicleCTFGame_Content”,Maps=(“VCTF-Containment”,”VCTF-Corruption”,”VCTF-Kargo”,”VCTF-Necropolis”,”VCTF-Sandstorm”,”VCTF-Suspense”))
GameSpecificMapCycles=(GameClassName=”UTOnslaughtGame_Content”,Maps=(“WAR-Avalanche”,”WAR-Downtown”,”WAR-Dusk”,”WAR-FloodGate”,”WAR-Islander”,”WAR-Islander_Necris”,”WAR-MarketDistrict”,”WAR-OnyxCoast”,”WAR-Powersurge”,”WAR-Serenity”,”WAR-Serenity_Necris”,”WAR-SinkHole”,”WAR-TankCrossing”,”WAR-Torlan”,”WAR-Torlan_Leviathan”,”WAR-Torlan_Necris”))
GameSpecificMapCycles=(GameClassName=”UTDuelGame”,Maps=(“DM-Arsenal”,”DM-Biohazard”,”DM-CarbonFire”,”DM-Deck”,”DM-Defiance”,”DM-Deimos”,”DM-Diesel”,”DM-Fearless”,”DM-Gateway”,”DM-HeatRay”,”DM-RisingSun”,”DM-Sanctuary”,”DM-Sentinel”,”DM-ShangriLa”))
Game Types & Mutators
This is a list of the valid gametypes:
Name GameType
Deathmatch UTGame.UTDeathmatch
Capture the Flag UTGameContent.UTCTFGame_Content
Warfare UTGameContent.UTOnslaughtGame_Content
Vehicle Capture the Flag UTGameContent.UTVehicleCTFGame_Content
Team Deathmatch UTGame.UTTeamGame
Duel UTGame.UTDuelGame
For mutators you need to set the variable of each mutator:-
Mutator=<MutatorIdentifier>
Here is a list of Mutators shipped with the Retail Version:
Name MutatorIdentifier
Instagib UTGame.UTMutator_Instagib
BigHead UTGame.UTMutator_BigHead
Low Gravity UTGame.UTMutator_LowGrav
Super Berserk UTGame.UTMutator_SuperBerserk
Friendly Fire UTGame.UTMutator_FriendlyFire
No Translocator UTGame.UTMutator_NoTranslocator
Speed Freak UTGame.UTMutator_SpeedFreak
Handicap UTGame.UTMutator_Handicap
No Powerups UTGame.UTMutator_NoPowerups
Slomo UTGame.UTMutator_Slomo
Weapon Replacement UTGame.UTMutator_WeaponReplacement
Weapon Respawn UTGame.UTMutator_WeaponsRespawn
Useful Server Tutorial Links
thepizzy.net/blog/2008/01/how-to-setup-a-ut3-internet-server/
www.youtube.com/watch?v=hiTq4kGm9is&feature=related
wiki.unrealadmin.org/FAQ:UT3#Admin_Commands
www.dcsautomatisering.nl/Unreal/UT3Server.aspx
forums.epicgames.com/threads/612389-HOW-to-SETUP-a-UT3-server-Webadmin-AND-troubleshoot
forums.epicgames.com/threads/603695-Creating-a-web-admin-server
ut3webadmin.elmuerte.com/
www.gamefront.com/files/UT3+Tweaker+Version+50/;9675524;/fileinfo.html
www.epicgames.com/download/WebAdminPatch.zip
forums.epicgames.com/forumdisplay.php?f=20.
www.epicgames.com/download/WebAdminPatch.zip
wiki.unrealadmin.org/FAQ:UT3
Credits:Document Changelog: Created by Richard Nalezynski?.
Share this:
TwitterFacebook
Leave a comment
Write a comment...
Comment
Recent Comments
Create a free website or blog at WordPress.com.