How To: Setup a UT3 Internet Server

Surprisingly there are no complete blog postings or forum topics that tell you how to set up a UT3 Internet Server from start to finish…so here we go:

1. Open the ports

To play online, you need not only the UT3 ports, but also the GameSpy 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)

Be sure to open the ports on your localhost as well (Windows Firewall, Linux Firewall, etc.)

2. Download the Dedicated Server Package.

You can get the Windows package from the EpicGames.com thread or directly from fileplanet.
You can get the Linux package here.

3. Install the Dedicated Server Package.

Once you finish downloading, unzip it to some kind of temporary location.
Run the SetupUT3.exe program, and follow through the install process.

4. Create your server’s GameSpy Account.

Before you’re able to do anything, you need to load the original game, and create an account for the server to use. Every instance of online UT3 requires a GameSpy account to play.

  1. Load the game (and log out if automatically logged in)
  2. Hit Create Profile at the bottom of the login screen
  3. Type in credentials for your new account
  4. Hit Create Profile, and then login to make sure they work.
  5. Log out.

5. Create the configuration script.

I made my configuration script using this website *this* website (via Boz), simply because it was easier than reading the wiki to figure out how everything works. Once that was done, I then went back to look at what everything was in the command line, and customized it according to the wiki.

Server:

  • Port: 7777
  • Login: <the new account you just created>
  • Password: <the password for your new account>
  • Server Description: <use this website to create a description>

Players:

  • Max Players: ## (max on the server)
  • Min. Players: ## (min real-players, not bots, before a match begins)
  • Number of Bots: ## (number of bots in the game – bots quit as humans join, unless configured to be vs humans)
  • **Public Connections: ## (max number of advertised connections)
  • **Private Connections: ## (reserve slots for local connections – i.e. you host the internet game on a server in your network, and you’re playing on another computer local to the server)
  • **Open Public Connections: ## (max number of public connections)

** These I’m not really sure about the descriptions. “Public Connections” does show max advertised for the server, but not sure about the others)

Game Setup:

  • Game Mode: <choose your game type>
  • Map Name: <be sure to choose an appropriate map for the game type. Find your maps available here in the configuration line for your game mode. I’ll get to that configuration further down.>
  • Goal Score: ## <max frags/caps before next map>
  • Time Limit: ## <timelimit for the map>
  • Versus Bots: #.# <here’s where you deicide if it will be humans vs bots>
  • Bot Skill: ## <1-6 bot skill, 1: Novice – 6: Godlike>

Game Flags:

  • Force Respawn: <make the user respawn upon death>
  • Pure Server: <game mode is forced on all maps, even maps belonging to other game modes>

Mutators:

  • Choose the mutators you want for the map

Community Options:

  • Allow Join in Progress: <allows people to join mid-game>
  • Allow Invites: <allow users to invite others to the game>
  • Uses Presence: <tell the Master Server that a user is playing on this server>
  • Allow Join via Presence: <allow friends of a user to follow the user currently playing on the server>

Server Options:

  • Advertise Server: <show it in the server browser>
  • Report Stats
  • Is LAN Only: <only a lan server?>
  • Is Dedicated: <is it a dedicated server?>

Passwords:

  • Game Password: <password to join the server>
  • Admin Password: <admin joining password>

Once you have done all those settings on the site, you click Create Lines button and come up with some code…your code will be all scrunched up into one line. Broken down it looks something like this (for Vehicle CTF):

ut3.exe Server
vCTF-Suspense?
ServerDescription=116000104000101000045000115000112000111000116000
MaxPlayers=12?
MinNetPlayers=1?
NumPlay=4?
NumPublicConnections=12?
NumPublicConnections=2?
NumOpenPublicConnections=12?
GoalScore=3?
TimeLimit=20?
VsBots=1.5?
BotSkill=4?
PureServer=1?
bAllowJoinInProgress=True?
bAllowInvites=True?
bUsesPresence=True?
bAllowJoinViaPresence=True?
bShouldAdvertise=True?
bUsesStats=True?
bIsLanMatch=False?
GamePassword=playme?
AdminPassword=bigbawls

-Port=7777
-Login=SurvurBocks
-Password=sekratshiz
-log=DedicatedServer.log

Note the red line of text: Change that from “NumPublicConnections” to NumPrivateConnections” – that is an error in the script creator’s website
Also note the orange line of text: If you’re not using the default 7777 port number as described above, then change that information here.
The blue lines of text are the server logins to play the game
The green lines of text are the GameSpy credentials for your server.

5b. Optional: Edit the DefaultGame.ini file to allow for map voting.

Chances are, you want to allow for map voting, or at least a map rotation…here’s how you do that:

  1. Locate the Dedicate Server files (e.g. “C:Program FilesUnreal Tournament 3 (Dedicated)”) and navigate to “.UTGameConfig”
  2. Change the Properties on the DefaultGame.ini to remove “Read-Only”, and then open it in Notepad and search for “bAllowMapVoting”
  3. Find your map-cycle-list here.
  4. Make sure your Game Mode is shown in the .ini file with maps to cycle. I know that on mine, the Vehicle CTF did not have a map rotation already in the .ini file, and I had to add it.

6. Create the batch file to load the server.

To make things easy on you, you’ll probably want to create a batch file to load the server with a single click. Here’s how you do that:

  1. Open Notepad
  2. Start off with the location of the Dedicated Server files (e.g. cd “C:Program FilesUnreal Tournament 3 (Dedicated)Binaries”)
  3. Then enter your commandline from above
  4. You should then have a batch file that looks something like this (only 2 lines, cd and ut3.exe):cd “C:Program FilesUnreal Tournament 3 (Dedicated)Binaries”
    ut3.exe Server
    [this should all be on one line]vCTF-Suspense?ServerDescription=11600010400010100
    0045000115000112000111000116000?MaxPlayers=12?Min
    NetPlayers=1?NumPlay=4?NumPublicConnections=12?Nu
    mPublicConnections=2?NumOpenPublicConnections=12?
    GoalScore=3?TimeLimit=20?VsBots=1.5?BotSkill=4?Pu
    reServer=1?bAllowJoinInProgress=True?bAllowInvite
    s=True?bUsesPresence=True?bAllowJoinViaPresence=T
    rue?bShouldAdvertise=True?bUsesStats=True?bIsLanM
    atch=False?GamePassword=playme?AdminPassword=bigb
    awls -Port=7777 -Login=SurvurBocks -Password=sekratshiz -log=DedicatedServer.log
    [/end one line]
  5. Save the file where ever you want to keep your server batch files, and then all you have to do is double click it to start your server.
  6. When the batch file runs, it should call the ut3 console and start processing the attributes in there. When the last line says “Log: GAME PATH IS UTVehicleCTFGame_Content” (or whatever game mode you’ve chosen) then your server is up, and ready to be searched for in the Server list. You’ll have to play around with the filter to find your server.

That’s all there is to it. At least, that’s all there was to mine.
Happy Fraggin’!

Update: I don’t run my server much anymore – but when I did, it worked, and I followed these instructions. I can’t provide individual support for everyone that tries to create a server, but doesn’t figure it out by these steps. I documented everything I did, step-by-step, and put them here – I didn’t do anything extra or different from what’s here. So if you have trouble getting your server up, you’re just going to have to play around with it like everyone else did before you to get their server up.

Blogged with Flock

Tags: , , , , , , , , , , , ,


twitter.com/neotsn

Related Posts Plugin for WordPress, Blogger...

Technorati Tags: , , , , , , , , , , , , , , , , , , , , , , , , , ,

About [[Neo]]

I'm a web developer, white-hat, idea-integrator. I specialize in automating human thought, using the knowledge of how various systems work (technical, organic, etc) to do something new that was previously too difficult, and implementing mash-up technologies. I work on several other websites, as part of "The-Spot.Network", including blogs, projects, and idea incubation, with my flagship social experiment at the-spot.net. This blog is my repository for technical discussion, project documentation, and open-sourced solutions I've developed along the way. Feel free to leave me comments and ideas and such and I'll respond in kind.