Starbound Server Setup Guide
This guide covers setting up and configuring your Starbound dedicated server on Legion Hosting, including Steam authentication prerequisites, first-time startup, server configuration, universe settings, connecting players, and save management. For mod installation, see Starbound Mod Installation. For admin commands and privileges, see Starbound Admin Commands.
Prerequisites
Before starting your Starbound server, you must have the following:
- A Steam account that owns Starbound. The server binary is not available for anonymous download -- the account you provide must have Starbound in its library.
- Steam Guard considerations. If your Steam account has Steam Guard (two-factor authentication) enabled, you will need to provide the authentication code via the
STEAM_AUTHstartup variable during the first installation. After the initial authentication, SteamCMD caches the session and subsequent starts should not require the code again unless the cache expires. - Dedicated Steam account recommended. For security, consider using a separate Steam account that owns Starbound solely for server hosting. This avoids sharing your primary account credentials and prevents conflicts if you want to play on the same account simultaneously.
First Start
After purchasing your Starbound server from Legion Hosting, follow these steps to get it running for the first time:
- Log into GPanel and select your Starbound server.
- Go to the Startup tab.
- Fill in the required Steam credentials:
- STEAM_USER -- Your Steam account username (required).
- STEAM_PASS -- Your Steam account password (required).
- STEAM_AUTH -- Your Steam Guard 2FA code, if prompted (optional, only needed on first install or when the cached session expires).
- Go to the Console tab and click Start.
- The server will download the Starbound dedicated server files via SteamCMD. This may take several minutes on first launch.
- Once the download completes, the server will generate a default universe and start listening for connections.
STEAM_AUTH field, and restart the server. Check your email or authenticator app for the code. You typically only need to do this once -- SteamCMD will cache the session for future starts.
GPanel Startup Variables
| Variable | Required | Description |
|---|---|---|
STEAM_USER |
Yes | Steam account username. Must own Starbound. Cannot be anonymous. |
STEAM_PASS |
Yes | Steam account password for the above username. |
STEAM_AUTH |
No | Steam Guard two-factor authentication code. Only needed during initial setup or when the cached session expires. |
WORKSHOP |
No | Set to 1 to enable Steam Workshop mod support, or 0 to disable. Default is 0. See Starbound Mod Installation for details. |
starbound_server.config
The primary server configuration file is located at:
storage/starbound_server.config
This file uses JSON format. Edit it via the File Manager in GPanel or through SFTP. The server must be stopped before editing, as changes are loaded on startup.
Key Server Settings
| Setting | Default | Description |
|---|---|---|
serverName |
"A Starbound Server" |
The name displayed in the server browser and when players connect. |
maxPlayers |
8 |
Maximum number of players that can be connected simultaneously. |
gameServerPort |
21025 |
The port the game server listens on. On Legion Hosting, this is set automatically -- do not change it unless instructed by support. |
gameServerBind |
"::" |
The network interface to bind to. The default "::" binds to all interfaces (IPv4 and IPv6). Leave this as-is. |
serverPassword |
"" |
Password required to join the server. Leave empty for no password (public access). |
allowAnonymousConnections |
true |
When true, players can connect without a Starbound account. Set to false to require account authentication for all players. |
allowAssetsMismatch |
true |
When true, players with different mod sets can still connect. Set to false to enforce matching assets between server and client (recommended for modded servers). |
maxTeamSize |
4 |
Maximum number of players per party/team. |
clientIPJoinable |
false |
Whether the server can be joined via direct IP. Should be true for dedicated servers. |
clientP2PJoinable |
false |
Whether peer-to-peer connections are allowed. Typically false for dedicated servers. |
Example starbound_server.config
{
"serverName" : "My Legion Starbound Server",
"maxPlayers" : 8,
"gameServerBind" : "::",
"serverPassword" : "",
"allowAnonymousConnections" : true,
"allowAssetsMismatch" : true,
"maxTeamSize" : 4,
"clientIPJoinable" : true,
"clientP2PJoinable" : false,
"allowAdminCommands" : true,
"allowAdminCommandsFromAnyone" : false,
"serverUsers" : {
"YourUsername" : {
"admin" : true,
"password" : "your-admin-password"
}
}
}
World and Universe Settings
Starbound uses a procedurally generated universe. Each time a player visits a new star system or planet, the game generates it based on a universe seed and coordinate system. The server's universe data is stored in:
storage/universe/
This directory contains all generated world data, including planets, space stations, and player-built structures placed in the world.
Universe Configuration
Universe generation parameters can be adjusted in the starbound_server.config file or through universe-related asset files. Key concepts:
| Concept | Description |
|---|---|
| Universe Seed | The universe is procedurally generated based on coordinates. All servers with the same game version will generate identical planets at the same coordinates, but player-placed objects and modifications are unique to each server. |
| Starting Planet | New players spawn on a procedurally selected starting planet. The starting world is a garden-type planet suited for early-game progression. |
| World Files | Each visited planet generates a .world file in storage/universe/. These files contain terrain modifications, placed objects, and tile changes made by players. |
| Celestial Data | The universe.chunks and universe.dat files in the universe directory store the overall state of the universe map. |
storage/universe/ directory. Be aware that this removes all generated worlds, including any player-built structures. Always back up before doing this.
How to Connect
Players connect to your Starbound server using the in-game multiplayer menu.
Direct Connect via IP
- Launch Starbound.
- From the main menu, click Multiplayer.
- Select your character.
- In the Server Address field, enter your server's IP address and port in the format:
IP:Port - If the server has a password set, enter the Account Name and Password matching a
serverUsersentry in the server config. IfallowAnonymousConnectionsistrueand no server password is set, these fields can be left empty. - Click Join Server.
Steam Friends (Not Applicable)
The Steam "Join Game" feature is for peer-to-peer hosted games, not dedicated servers. Players must use the direct IP connection method described above to join your Legion Hosting server.
- The server is running and fully started (check the GPanel console for "Info: Server listened on").
- The correct IP and port are being used.
- If using a server password, the player is entering the correct
serverUserscredentials. - If
allowAssetsMismatchisfalse, the player's installed mods must exactly match the server's mods. - Both the server and client are running the same version of Starbound.
Save Management
Starbound stores all server data within the storage/ directory. Understanding the file structure helps with backups, transfers, and troubleshooting.
Key Storage Directories and Files
| Path | Description |
|---|---|
storage/universe/ |
Contains all generated world data -- planets, space stations, and player modifications to worlds. Each visited planet has a .world file. |
storage/player/ |
Contains player save files. Each player has a .player file storing their inventory, progress, quest state, and ship data. |
storage/starbound_server.config |
The main server configuration file. |
storage/starbound_server.log |
Server log file. Useful for diagnosing crashes, errors, and connection issues. |
Creating Backups
Regular backups protect your server's universe, player data, and configuration from accidental loss or corruption.
- Stop your server in GPanel to ensure all data is written to disk.
- Connect to your server via SFTP or use the File Manager.
- Download the entire
storage/directory to your local computer. - Store the backup in a safe location with a date label (e.g.,
storage-backup-2026-02-26).
storage/universe/ and storage/player/ directories. These contain all world and player progress data. You should also back up starbound_server.config to preserve your server settings.
Restoring from Backup
- Stop your server.
- Upload your backup files to the corresponding locations in the
storage/directory, overwriting the existing files. - Start the server.
Transferring a World from Another Server
To move your Starbound universe from another server or a local game:
- Stop both the source and destination servers.
- Copy the
storage/universe/directory from the source to the destination server. - Optionally, copy
storage/player/if you want to transfer player data as well. - Copy your
starbound_server.configto preserve server settings. - Start the destination server and verify the world loads correctly.
Related Articles
- Starbound Mod Installation
- Starbound Admin Commands
- How to Find Your Server IP and Port
- How to Upload Files via SFTP
- Server Startup Guide
Need Help?
If you are experiencing issues not covered in this guide, our support team is available to assist. Open a ticket at legionhosting.net/submitticket.php with your server details and a description of the problem.