If you want to rent a Supraball server, we suggest:

 

How can I create my own Supraball Server?

To have a proper dedicated server you have to start UDK with the server parameter:

   

UDK.exe server mapname

If you don’t know how to start a program with parameters, have a look at this guide

You can add numerous settings to your server. There are two types of settings: switches and options.

The following switches are available:

 

  • -port=<port>  — to set the port the server should be listening at
  • -log   — to get logging output on the console
  • -multihome=<ip> — to set the ip the server should listen at. Must be used together with the option ServerIP!
  • -unattended — prevents anything that requires user interaction (like a pop up dialog asking you for stuff)

 

The following options are available:

 

  • ?MaxPlayers=<num> — Maximum amount of players that can join your server
  • ?MaxSpectators=<num> — Maximum amount of spectators that can join your server
  • ?GamePassword=<pass> — Use this if you want your server to be passworded
  • ?AdminPassword=<pass> — Using this you can administrate your server (more info on that later)
  • ?MatchTitle=<title> — The name your server will have in the server list
  • ?Timelimit=<num> – How long the match is in minutes
  • ?MatchDescription=<descr> — Description of your server (visible when you click on it in the server browser)
  • ?ServerIP=<ip> — Must be used when you want your server to listen to a different ip
  • ?game=DBGame.DBTrainingGame – Starts the game in Training mode (no waiting times, no goals)
  • ?game=DBGame.DBGame – Normal game mode, only needed if server is in training mode
  • ?QueryPort=<Port> — Which query port should be used

 

Here an example of how options and switches can be mixed and applied:

 

UDK.exe server db-pitch?timelimit=20?MaxPlayers=12?MaxSpectators=10?AdminPassword=password?Matchtitle=myMatch?MatchDescription=mydescr?QueryPort=12345?ServerIP=1.2.3.4 -port=6161 -multihome=1.2.3.4

The available maps are:

 

  • db-pitch (5v5)
  • db-stadium (5v5)
  • db-pitch_snow (5v5)
  • db-pitch_rain (5v5)
  • db-beach (5v5)
  • db-moon (5v5)
  • db-smallpitch (3v3)
  • db-cave (3v3)
  • db-hall (3v3)
  • db-hall_night (3v3)
  • db-hall2 (3v3)

Make sure the port you have chosen is open, that is default UDP 7777 and UDP 27015

 The command line argument documentation of UDK provides further documentation to look into if you are very curious.

To create a map rotation: in udkdeathball.ini add this somewhere in the [DBGame.DBGame] section:
MapRotation=db-pitch
MapRotation=db-beach
MapRotation=db-pitch_snow
MapRotation=db-stadium
MapRotation=db-pitch_rain
MapRotation=db-moon

How to setup a server for the steam version?

Just like for UDK, but there are some more options and a few more things to set up. If the following things are not done right, you will for example see no Ping in the server browser (it will show as 9999):

In UDKEngine.ini, make sure the according section looks like this:

[OnlineSubsystemSteamworks.OnlineSubsystemSteamworks]
QueryPort=27015
bEnableSteam=false

Now the commandline overrides do NOT work
Further, you need to copy the following files from the steam client to where the UDK.exe lives (Supraball/Binaries/Win32):

vstdlib_s.dll tier0_s.dll steamclient.dll

Or the according 64 bit versions if you use the 64bit UDK living in Binaries/Win64/
You know for sure that it works when you see this in the log/console:

Log: Steam game server UID: <some id>


Optional settings

Match or Public – In UDKDeathball.ini you can set bMatchmaking=True for lobby matches and bMatchmaking=False for public training
Ranked or Unranked – In UDKDeathball.ini you can set ranked=true or false. This only applies if bmatchmaking is true. Players can only join ranked servers when they have 50XP+.
Rank Limitations – Min_Rank and Max_Rank in UDKDeathball.ini determine which ranks are allowed to join the server. You enter a number between 0-19.
The other limits are:

  • 0 = No limit in this direction
  • 1 = Paper 1
  • 2 = Paper 2
  • 3 = Paper 3
  • 4 = Wood 1
  • 5 = Wood 2
  • 6 = Wood 3
  • 7 = Bronze 1
  • 8 = Bronze 2
  • 9 = Bronze 3
  • 10 = Silver 1
  • 11 = Silver 2
  • 12 = Silver 3
  • 13 = Gold 1
  • 14 = Gold 2
  • 15 = Gold 3
  • 16 = Diamond 1
  • 17 = Diamond 2
  • 18 = Diamond 3
  • 19 = Kryptonite

 

 

Can I run a Linux Server? 

 

Using UDK limits us to Windows-only binaries, however we managed to run all our servers with Linux. Here is how:

  • Install winetricks and make sure libwine-gl is installed (might be called different in your distribution, usually it’s installed with wine anyway)
  • We recommend to run the server as an extra user, not as root, thus this howto assumes you follow this recommendation:
    • adduser supraball –system –home /srv/supraball
  • Login as that user
    • sudo -u supraball bash
  • Install the dependencies for UDK:
    • winetricks -q d3dx9_43
    • winetricks -q d3dx11_43
    • winetricks -q dotnet40
  • The game needs to compile shaders the first time it’s run. This shader compilation fails under wine/linux, thus it is important that you run the game on your windows machine one time. After that, copy over your installation folder to the server, going with the setup above to /srv/supraball/Supraball/
  • Copy X3Audio1_7.dll and XAPOFX1_5.dll from your windows machine (if you have 64bit from the WowSys64 folder) into the Binaries/Win32 folder in the game folder
  • Make sure the permission on that folder are correct:
    • chown supraball:nogroup /srv/supraball -R

And that should be enough. You can now start the game with

    sudo -u supraball wine UDK server …