Moonbase Alpha: Dedicated Server Setup Guide

Ported and posted from the word document from MBA dedicated server document from 2012 that is no longer easy to find.

 

MBA Dedicated Servers: A How-to Guide

1. If you are behind a firewall or a non CGNAT, you may have to set up port forwarding.
2. Launch the STEAM® client. The Steam client does not need a person logged in; the client only needs to be “active.” You can log into an account and use the following steps.
3. Open a command window in the “<MoonBaseAlpha install directory>\Binaries\Win32” directory.
4. To start a server, run the following command in the command line:

MoonBaseAlphaGame.exe server <Map Name>[?Game Params] [-Server Params]

Example – The following file launches the dedicated server with the map that supports up to 6 players and plays the cinematic at the start of each game:

“C:\Program Files\Steam\steamapps\common\moon base alpha\Binaries\Win32\MoonBaseAlphaGame.exe” server mba_5_6?cinematic=1

5. At this point the server is active and running. You can actually log into the (already running) Steam client at this point and the dedicated server will continue to run and you will be able to play in it (or another server!) at the same time.

See below for information regarding the parameters which must be included in the launch string.

Command-line parameters

1. Map Name – The map name MUST be specified or the server will not show up in the Steam server browser. The available map options are:

  1. mba_1_2
  2. mba_3_4
  3. mba_5_6
  4. mba_madness
  5. mba_sandbox

2. Game Parameters – There are several game specific parameters you can include in the launch string that modify how the gameplay of the map will work. One or more of these parameters may be appended to the end of the map name and delimited with a ‘?’ character.
Note: there is no space between the map name and the question mark.

  1. Freeplay=<0|1>

    – The Freeplay parameter specifies whether the map should be run in ‘competitive’ or ‘free play’ mode. In Competitive mode the team must restore oxygen to the settlement before time runs out; in Free play mode there is no time limit. If this option is specified with a value > 0 the map will run in free play mode; otherwise the map will default to ‘competitive’ mode if this parameter isn’t provided or if the value is “0,” “F,” or “false.”

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_1_2?freeplay=1

    Launches a server with the mba_1_2 level in freeplay mode.

  2. Cinematic=<0|1>

    – The Cinematic parameter specifies whether the level introduction cinematic will play when the level starts. If this option is specified with a value > 0, the introduction cinematic will play when the level starts. If the parameter isn’t provided or if the value is “0,” “F,” or “false,” the cinematic will not play.

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_1_2?cinematic=1

    Will launch the mba_1_2 level in competitive mode, and will show the introduction cinematic when the level begins.

  3. GamePassword=<ServerPassword>

    – Use the GamePassword parameter if you wish to password protect your server to prevent unknown players from joining. The password should be alpha-numeric without any spaces in it. When players attempt to join your server, they will be presented with a password entry dialog; if they specify the correct password the server will allow them to join, otherwise their connection will be denied.

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_3_4?GamePassword=hello

    This launches a server with the mba_3_4 level, and with ‘hello’ as the game server password.

  4. MaxPlayers=<integer>

    By default, the maximum number of players is 6 on any map (in freeplay mode), but you can play with more players by specifying this parameter in conjunction with setting the Game parameter to “MoonBaseAlphaGame.MBA_GameInfoExtended,” as in the following example.

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_5_6Game=MoonBaseAlphaGame.MBA_GameInfoExtended?MaxPlayers=8

    Setting this parameter will automatically disable uploading stats to Steam, so it is impossible to cheat on the leaderboards by having more people on your team. For the MBA_Madness map, you don’t have to set the Game parameter; e.g.,

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_madness?MaxPlayers=8

    This launches the server with the mba_madness level allowing 8 players.

    Note: playing with more than 6 players is not officially supported. In particular, the in-game UI only supports displaying 6 player names, and you may need a fairly powerful machine to handle the extra activity on the server. However, we provide the MaxPlayers parameter as an option for advanced users who wish to experiment with gameplay.

  5. NeverEnd=<0/1>

    For the sandbox map, this parameter prevents a dedicated server from resetting the level after the oxygen has been restored and all players leave the game (in freeplay mode). This is expected to be desirable for the sandbox level, where you may want your creations to persist. Note: the sandbox level defaults to Freeplay=1.

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_sandbox?NeverEnd=1
  6. BeaconSafeZoneRadius=<integer>

    (only for MBA_Madness) Controls the radius of the beacon safe zone in Unreal units in the madness map. The default value is 300. Sixteen Unreal units are approximately one foot.

  7. SabotageDelay=<integer>

    (only for MBA_Madness) Controls the delay, in seconds, when sabotaging enemy circuit boards. The default value is 4.

  8. MuteOtherTeam=<0/1>

    (only for MBA_Madness). Controls whether or not the other team is muted in MBA_Madness. By default, the other team is muted.

    Examples:

    MoonBaseAlphaGame.exe server mba_madness?GamePassword=hello?BeaconSafeZoneRadius=125?SabotageDelay=0?MuteOtherTeam=0

    This launches the server with the mba_madness level with the beacon safe zone modified to 125 Unreal units (about 8 feet in-game), no sabotage delay, and no automatic muting of the other team, with a maximum of 6 players. Also, a password of “hello” is set.

3. Server Parameters – It’s likely that you won’t need to use the following server parameters depending on how you configure your router. However, if you need to change the ports on which the game server listens, you can specify the following server parameters when launching it. One or more of these parameters may be specified in the server launch string, separated by a space character and prefixed with a ‘-.’

  1. Port=<port number>

    – This specifies the TCP and UDP port the server will listen on for new connections and handle general game communication. By default the server port is 9777 if this parameter isn’t specified. This should be used if you plan to run 2 or more servers on the same machine; each server should use a separate port to prevent conflicts.

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_1_2 -Port=7777

    This launches a server running on port 7777.

  2. SteamAuthPort=<port number>

    – This specifies the UDP port the server will use for Steam authentication tasks. By default the server will use port 8766 if this parameter isn’t specified. This should be used if you plan to run 2 or more servers on the same machine, each server should use a separate port to prevent conflicts.

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_1_2 -Port=7777 -SteamAuthPort=8780

    This launches a server running on port 7777 and routing Steam Authentication tasks through port 8780.

  3. SteamMSUPort=<port number>

    – This specifies the UDP port the server will use to expose itself to the Steam Master Server Updater. The Steam Master Server will periodically communicate to the server through this port. By default the server will use port 27016 if this parameter isn’t specified. This should be used if you plan to run 2 or more servers on the same machine, each server should use a separate port to prevent conflicts.

    Sample Usage:

    MoonBaseAlphaGame.exe server mba_1_2 -Port=7777 -SteamAuthPort=8780 -SteamMSUPort=8781

    This launches a server running on port 7777, routing Steam Authentication tasks through port 8780 and Steam master server update tasks through port 8781.

Other

To change the NAME of the dedicated server you need to modify the DefaultGame.ini located in moon base alpha\MoonBaseAlphaGame\Config\

By default, the game server listens on the following three ports:

  1. 9777: Game traffic [TCP/UDP]
  2. 8766: Steam authentication tasks [UDP]
  3. 27016: Steam master server updater tasks [UDP]

Leave a Comment