Robot Roller-Derby Disco Dodgeball

Robot Roller-Derby Disco Dodgeball

Ei tarpeeksi arvosteluja
Disco Dodgeball dedicated server hosting instructions
Tekijältä Erik Asmussen
Describes how to configure, run, and administer your own dedicated server for Disco Dodgeball.
   
Palkinto
Lisää suosikkeihin
Lisätty suosikkeihin
Poista suosikeista
Introduction
This guide will help you run your own Disco Dodgeball server that you and other nearby players can access online with lower latency than the default servers provided by the game.

There are a lot of instructions, but they should be pretty easy to follow. The high-level requirements are:

  • Pick a computer that is running Windows and has constant internet access (a computer you own or rent like Amazon EC2) to be your server
  • Download Photon Server and run it
  • Download the Disco Dodgeball Server Application and run it
  • Run the client version of Disco Dodgeball, connect to your server, and create a room on it

Configuring Server Machine
The computer you choose to be your server must be running Windows, as it is required for both the Photon Server application as well as the Disco Dodgeball server application.

Additionally, you will probably need to configure some ports and firewall rules to allow the necessary connections.

Add the following Inbound rules:

  • Type UDP for ports: 5050, 5055, 4530, 5056, 5057, 8766, 27016
  • Type TCP for ports: 5055, 4530

If you are renting a server with it's own security settings, you'll need to open those ports in the proper security group as well.
Downloading and running Photon Server application
On your server you will need the Photon Server application configured and running to handle room creation and send messages back and forth between players. These steps will tell you how to get it running on your server.

Download

First, open Photon's download page: https://www.photonengine.com/en/OnPremise/Download

Under Photon Server SDKs / Server, click the download link.

Extract the downloaded files to a folder, this will be the root of your photon server root. Go into the server files and open a folder called "deploy". Here you will find the folders "Bin_Win32", "Bin_Win32xp", "Bin_Win64", "Bin_Win64xp". open the folder that supports your current running system.

  • Bin_Win32 supports: Windows 8.1 32Bit, Windows 8 32Bit, Windows 7 32Bit, Windows Visa 32Bit, Windows Server 2008 sp2 32Bit
  • Bin_Win32xp Supports: Windows xp 32Bit, ?windows server 2003?
  • Bin_Win64 supports: Windows 8.1 64Bit, Windows 8 64Bit, Windows 7 64Bit, Windows Visa 64Bit, Windows Server 2008 sp2 64Bit, Windows Server 2012 R2 64Bit
  • Bin_Win64xp Supports: Windows xp 64Bit

Optional License

By default, you can have up to 20 concurrent users on your server. You can optionally download a free license from photon's server page[www.photonengine.com] that will allow up to 100 concurrent users. Once you download the license, place it in the Deploy folder that matches your operating system.

Running & Configuring

Run PhotonControl.exe from within the Deploy folder that matches your operating system. You will notice that an icon will appear on the right side of the task bar. This is how you access the server to stop and start the services.

Within Photon Control go to Game Server IP Config. Choose "Set Public IP".

Go into [Your Photon Root Folder]/src-server/Loadbalancing/Loadbalancing/App.config and change the PublicIPAddress setting to match the public IP you selected above.

Then go to the option "Loadbalancing (MyCloud)", and choose "Install service". You should be prompted that the install finished, then go back to the load balancing option and click "start service". you should see the icon flashing, and then turn a solid color.

Note that 'Run TestClient' option may not be successful with Public IPs, but you'll still be able to connect from other computers.
Downloading the DD Server Application
1. If you have the Steam client installed on your server:

  • Log in to the Steam client
  • Click on Library
  • Select "Tools" from the drop-down menu
  • Locate "Robot Roller-Derby Disco Dodgeball Dedicated Server" and right-click on it
  • Select "Install Game" from the pop-up menu
  • Double-click on it once it is installed

2. If you don't have the Steam Client installed on your server:

  • Create a folder on your computer for steamcmd (e.g. C:\steamcmd)
  • Download steamcmd from: https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip
  • Extract / save to a folder on your desktop. (It’s a good idea to not put SteamCMD directly on your desktop because it will download a bunch of smaller files and folders that sit next to steamcmd when you run it.)
  • Double-click on SteamCMD to run it (OR follow the .bat file instructions below)
  • This may trigger some updates. When complete, you should be in a terminal window with the prompt “Steam>”
  • type "login anonymous" (no quotes) in the "Steam>" prompt.
  • Optional Step: Change the install directory for the DD server. Note: If you skip this, it'll be installed within \SteamCMD\steamapps\common\Disco Dodgeball Server. To change the install path, type "force_install_dir <path>" where <path> is a location on your computer, using backslashes between folders. e.g. "force_install_dir c:\users\administrator\desktop\dodgeserver". If the folder doesn’t exist at that location, one will be created.
  • Download the DD server tool by typing "app_update 426660" (no quotes) in the "Steam>" prompt
  • type "quit" (no quotes) to log off and exit steamcmd.
  • Double-click on Disco Dodgeball Server.exe to launch it.

Note: You can automate much of the SteamCMD work with a batch file:

  • Open a new text file in notepad
  • Paste in (without quotes): "steamcmd.exe +login anonymous +app_update 426660 +quit"
  • Save the file into the same directory as SteamCMD as a type ".bat" (whatever filename you want)
  • From then on, you can just double-click on the .bat file and it will install or update Disco Dodgeball server into the install directory you specified earlier.
Updating the DD Server Application
You shouldn't need to update the Disco Dodgeball Server application very often - it runs independently of the main game version. But every now and then new features may be added. If you want to update the version of Disco Dodgeball Server running on your machine:

Close Disco Dodgeball Server.

If using the Steam Client:

Open Steam Client
Click on Library / Tools
Locate Robot Roller-Derby Disco Dodgeball Server
Right-click on it, choose 'Properties'
Click on 'Local Files' tab
Click 'Verify integrity of tool cache'
Wait for it to finish

Note: Steam will likely keep Disco Dodgeball Server up-to-date automatically whenever you quit and restart Steam, but the steps above allow you to update manually.

If using SteamCMD:

Follow the install instructions above after opening SteamCMD.
You can skip the step where you specify the install directory, that only needs to be done once.
It's recommended that you create the batch file, because then you can just double-click to run that batch file and Disco Dodgeball Server will update in one step.
Running the Disco Dodgeball Server Application
At this point, you've installed the Disco Dodgeball Server application on your computer. If you have the full Steam client, run it via the Tools menu. If you have it installed on your desktop via steamcmd, open it like any other application.

This application gives you controls to configure connection settings, start up the server, shut it down, and add commands that can restrict the kinds of matches that can be played.

Launching the Server

All you need to do is hit "Start Server" and it will register your server with Steam and make it discoverable for other players within the main Disco Dodgeball game.

In most cases, you should leave the IP Address, Game Port, Steam Port, and Query Port blank so that the defaults are used. The IP Address will be autodetected to match the address of the computer running the server app. Game Port defaults to 5055 which matches the default port of Photon.

The Steam port defaults to 8766, and is the local port used to communicate with the steam servers.

The Query port defaults to 27016 and is the port that will manage server browser related duties and info pings from clients.

Additionally, you have the option of using 'Steam Auth' and 'VAC'. Steam Auth will validate users joining your server against Steam, which causes players joining the server to take a few extra seconds.

VAC Auth enables VAC Protection on the server. It runs like every other VAC-protected server on Steam - it has the potential to apply VAC bans to user accounts that have known cheats running. There's not a lot of Disco Dodgeball hackers so this is not a strictly necessary option.

Once launching the server, hit 'Status'. It may show that the IP is 0 for a few seconds immediately after starting it, but very soon it should reflect the correct IP of the computer you're running the server from.

When you want to close the server, hit 'Shut Down'. The server will shut down automatically if you close the server app, so you'll need to keep this window open as long as you want to run the server.

There are also input fields for Server Name, Max Players, and 'Command'. These can be entered before or after your server is launched (just hit enter when done changing the text). See below for more information on how Admin Commands are used.



Server Admin Commands
Admin commands are used to restrict the types of modes / maps / etc. that can be played on your server. Additionally they can be used to elevate certain players to mods or ban other players from your server.

These are all entered using the 'Command' input field. Just type in the command, hit enter, and you'll see an update in the output log. Hit the 'Status' button to see a list of all active server commands.

Previously entered commands will persist if you shut down the server and launch it again, but will reset to defaults if you fully exit the Server application.

Command List
  • mode [mode] [on/off/only/reset]
  • mode reset
  • map [mapname] [on/off/only/reset]
  • map reset
  • bots [easy/med/hard/off] [on/off/only/reset]
  • bots reset
  • player [ban/mute/mod/reset] [steamid]
  • player reset
  • team [1/2] [on/off/only/reset]
  • team reset
  • powerups [on/off] [on/off/only/reset]
  • powerups reset
  • modifier [modifier] [on/off/only/reset]
  • modifier reset
  • all reset

Examples:
  • "mode deathmatch off" prevents Deathmatch from being selected as a game mode.
  • "mode superball only" forces all matches to be of type Super Ball.
  • "mode superball reset" reverts any commands entered for mode Super Ball.
  • "mode reset" reverts all game mode restrictions to default.
  • "map arena off" prevents Arena from being selected as a map.
  • "map radius only" forces all matches to be played on the Radius map.
  • "bots hard only" forces all matches to be played with Hard Bots enabled.
  • "player 76561198114323090 ban" prevents that Steam user from joining the server.
  • "player 76561198114323090 mod" makes that Steam user a mod of the server.
  • "team 1 only" forces all matches to be FFA.
  • "powerups on only" forces powerup pickups to be on.
  • "powerups off only" forces powerup pickups to be off.
  • "modifier alljetpack on" forces 'all jetpack' modifier to always be on.
  • "modifier alljetpack off" disables the 'all jetpack' modifier so it can't be selected.
  • "modifier alljetpack only" disables all modifiers except 'all jetpack', but doesn't force it on.
  • "modifier none only" disables all modifiers.

Command Categories
mode
Changes visibility of various game mode options in the Match Select panel.
map
Changes visibility of various map (level) options in the Match Select panel.
player
Controls player privileges on the server.
bots
Enables or disables various bot settings.
team
Enables or disables various team settings. Note that if a game mode requires a team setting that is disabled, that game mode will also be disabled.
powerups
Enables or disables the powerup pickup setting.
modifier
Enables or disables various game mode modifiers on the server.

Command Values for categories: mode, map, team, powerups, modifier
on
The option is visible and selectable. Note this is the default setting and is not strictly necessary, as you could just use the 'reset' command for any modes you had previously turned off. The exception is multi-selection lists like Modifiers - the 'on' value will force that modifier to always be turned on.
off
Hides / disables the option so it can't be selected. For settings with a random option like modes or levels, this also prevents the option from getting randomly chosen when rooms change.
only
The option is exclusively enabled. All other options for that setting will be disabled unless they too are set with the 'only' value. For multi-selection lists like Modifiers, this does not force the modifier to be on, but simply allows it to be selectable.
reset
Reverts any commands previously entered for this option. Resets to its default state, which is enabled and selectable.

Command Values for category 'player'

Values:
ban
Prevents that Steam ID from joining the server.
mute
Prevents that Steam ID from using the in-game chat function while on the server.
mod
Makes that player a moderator on the server, giving them more powerful in-game kicking and muting capabilities. Note you can also enter the Steam ID of a Steam Group a.k.a. 'clan' and all members of that steam group will be given mod capabilities on the server.
reset
Resets properties to default for that player.

The [steamid] parameter can be retrieved by taking the URL of the player's Steam profile and adding "?xml=1" (no quotes) to the end. In the resulting XML file look for the value in the steamID64 tag.

To find a Steam Group's Steam ID (if you want to make an entire group/clan mods), find the group's URL and append "/memberslistxml/?xml=1" (no quotes) to the end.

Note: Mods are able to kick / ban players from rooms, but not from the server.

Command Parameters for 'mode'

  • randommode
  • deathmatch
  • scorebattle
  • superball
  • elimination
  • hoops
  • grandprix
  • capturethecube
  • kingpin
  • horde
  • juggernaut
  • airraid
  • timetrials
  • fugitive
  • laserjetpacks
  • galaxyjam
  • attrition
  • duckhunter
  • headhunter
  • kartrace
  • hoopdefense
  • hunterhunted
  • pinball
  • teamwork

Command Parameters for 'map'

  • randomlevel
  • arena
  • radius
  • airborne
  • chasm
  • reactor
  • cage
  • temple
  • vortex
  • nexus
  • octagon
  • trifecta

Command Parameters for 'modifier'

  • alljetpack
  • allsuperboost
  • allpogojump
  • allbigball
  • alllaserball
  • allhoming
  • allboomerang
  • allfireball
  • lowgravity
  • highgravity
  • bighead
  • superbounce
  • fastrespawn
  • slowrespawn
  • stackpowerups
  • blocking
  • harmlesscatches
  • airbrake
  • slickcharge
  • chargeabsorb
  • groundpound
  • nopowercubethrows
  • glowinthedark
  • incognito
  • bigballs
Playing on the Server
Once you have your server fully running (Photon is running, and you've launched the server within the Disco Dodgeball Server application), you will be able to join your server within the main Disco Dodgeball client.

You can connect by going to Options / Network, choosing Community Server, and joining the server within the list that appears. Once you are connected, you can find matches, create matches, or use QuickPlay just like if you were connected to the default dedicated servers.

Similarly, you can jump right to the Find Match panel, select 'Community Servers' in the left-side connection list, and view the server list there.

Note that anyone connected to your server can create a room, and your server can host multiple rooms simultaneously.

You can also confirm your server is running by opening the Steam client, go to View / Servers, and change the Game to Disco Dodgeball Servers. Currently you can't join a game from this list but this is planned future functionality.
12 kommenttia
whis 11.11.2019 klo 18.32 
5 months ago, i was able to run it
chicken- 11.11.2019 klo 8.25 
I've run this before on the client so I'm familiar with the process. However the furthest I'm getting with the dedicated is "API Init Failed". I've tried the latest version of photon as well as the previous 3.4.31 - Any suggestions? Running on Windows Server 2019.
whis 13.6.2018 klo 10.21 
Please help
whis 25.5.2018 klo 21.25 
Now it says user it´s not pending
whis 25.5.2018 klo 20.11 
Why " game does not exist" ?
whis 25.5.2018 klo 20.10 
In the console appears " error : 4"
whis 25.5.2018 klo 20.06 
It worked but i cant get in, it says error session timed out. And if i quit "Auth steam" it says Timed out
ℋℴℳℰℜ 5.2.2017 klo 10.05 
DirectX problems with installing dedicated RRDDD-Server.exe
see http://test-steamproxy.haloskins.io/app/270450/discussions/0/135508272511209110/
Dannation 17.4.2016 klo 8.09 
I 2nd the linux support question here, I'd love to host a RRDDD server but all I run is linux.
Austinisftw 21.1.2016 klo 7.40 
Erik, will this tool ever maybe see the day on linux with mono?