This wiki is archived from 2021-09-05
Planetary Annihilation Custom / Dedicated / LAN / Local Servers
Planetary Annihilation: Titans & Classic PA Custom / Dedicated / LAN / Local Servers Wiki
The following is archived content.
Custom server support was integrated into Titans & Classic PA from build 94684 so that players do not require any mods to view, host, join, spectate or reconnect to custom servers.
There are three ways to host custom server games:
- dedicated servers on a public IP address usually in a data centre
- public local servers shared over the internet via a port mapped public IP address
- local servers via LAN
Custom servers can enable the new multi-threading improvements.
Servers do not require a GPU.
A PA server is included in every install on all platforms for local, dedicated or offline games.
Your computer specs and settings > server > local server determines when a local server is used for single player games.
- auto (based on your computer specs)
Playing PA with a local server on the same computer requires a mid-top spec CPU and plenty of free RAM.
eg minimum 8GB and ideally 16GB.
The minimum specs for using local servers with Titans are:
- quad core
- 8GB RAM for dedicated GPUs
- 12GB RAM for integrated GPUs
Failing to connect to a local server is usually caused by:
- antivirus interfering with network connections
- corrupt files
- broken mods
Hosting a LAN Game
LAN games can be played on the same physical network either online or offline.
The following ports need to be open in your firewall:
- UDP 8192 (LAN beacon)
- TCP 20545 (server)
The host creates a game on their personal super computer using: start menu > multiplayer > custom > host game locally checkbox > public (top right)
This will automatically broadcast a beacon on the LAN.
Players join using: start menu > multiplayer > custom.
The game will be listed under the local region.
If online you must be logged into different accounts or if offline different usernames must be used.
Game invites are not used with LAN games.
The steam install automatically adds PA to the allowed apps in Windows Defender Firewall:
- Planetary Annihilation (32 bit) %INSTALLDIR%\\bin_x86\\PA.exe
- Planetary Annihilation - Crash Reporter (32 bit) %INSTALLDIR%\\bin_x86\\crashupload.exe
- Planetary Annihilation - User Interface (32 bit) %INSTALLDIR%\\bin_x86\\host\\CoherentUI_Host.exe
- Planetary Annihilation (64 bit) %INSTALLDIR%\\bin_x64\\PA.exe
- Planetary Annihilation - Crash Reporter (64 bit) %INSTALLDIR%\\bin_x64\\crashupload.exe
- Planetary Annihilation - User Interface (64 bit) %INSTALLDIR%\\bin_x64\\host\\CoherentUI_Host.exe
- Planetary Annihilation - LAN and Offline Game Server (64 bit) %INSTALLDIR%\\bin_x64\\server.exe
Those rules do not apply to
- third party firewalls or security suites
- moved steam apps
- other installations
Hosting a Local Server Over the Internet
You'll need high quality broadband or fibre to host a server over the internet.
At least 5 Mbit/s upload is recommended and ideally 10+ Mbit/s for bigger games with specators.
Larger games with more players and spectators will require more bandwidth.
Preferred approach is to start the server manually.
Local Public Servers Mod
The local public servers mod is not currently available.
Install the Public Local Servers mod from Community Mods to publicly host games on your personal super computer. (no longer available)
The host can create a game using: start menu > multiplayer > custom > host game locally checkbox > public (top right).
WARNING: Do not use palobby.com as your region.
NOTE: Hosting in the public server browser will be advertising your public IP address.
To avoid exposing your public IP address use game invites to PA friends with the public checkbox disabled.
PA Friends Only Games
Using game invites to PA friends when logged in (preferred):
- leave the public checkbox on left disabled and send game invites to PA friends
Players must be logged in and online to accept your game invites.
OR using the server browser (exposes public IP address):
enable the public checkbox on left and change to friends on top right (logged in and online only) enable the public checkbox on left, change to public on top right and set a password (offline OR logged in and online) Players join using: start menu > multiplayer > custom (look for the game name and region you specified with the correct filters).
PA friends are only available when logged in and online. They must be added in PA. ie not steam friends
enable the public checkbox on left and change to public on top right Players join using: start menu > multiplayer > custom (look for the game name and region you specified with the correct filters).
Port Mapping / Port Forwarding / Pinholes
You'll need to figure this out yourself... don't ask for help about your specific router.
Your local PC hosting your local PA server on TCP port 20545 will be using a private IP address not accessible from the internet. eg 192.168.x.x or 10.x.x.x
Port mapping / port forwarding / pinholes open a port on your public IP address so that your local PA server can be accessed via the internet.
eg assuming your public IP address is 220.127.116.11 and the private IP address of your local computer with PA is 192.168.1.100 then you want to port map external TCP 20545 to internal 192.168.1.100 TCP 20545.
NEVER use DMZ unless you know what you are doing and have a very secure firewall setup.
Manually Starting a Local Server and Saving Local Replays
To manually start a local server in lobby config mode create a desktop shortcut to the server executable in your Planetary Annihilation Installation Directory or create a script with the following command line parameters:
--allow-lan --game-mode PAExpansion1:lobby (for Titans) OR --game-mode lobby (for classic PA) --server-name "local" (initial name displayed in server browser) --enable-crash-reporting --mt-enabled (for multi-threading)
Customise with the following additional command line parameters:
--max-players 12 (depending on the specs of your local super computer) --max-spectators 5 (depending on the specs of your high speed internet) --output-dir "path-to/your/[[Planetary Annihilation Installation Directory|planetary-annihilation-data-directory]]" (to save local replays) --replay-filename "UTCTIMESTAMP" (to automatically name replays using a UTC timestamp) --replay-timeout 180 (timeout after game over when replay is written even if players are still reviewing) --gameover-timeout 360 (timeout after game over when server is shutdown even if players are still reviewing) --headless (no window)
Once the server is started in lobby config mode you can connect locally on your LAN via the multiplayer server browser to configure a game.
To make the server publicly available in the server browser add the following command line parameters:
--community-servers-url "auto" --community-server-region "region" (eg USWest, USCentral, USEast, EUWest, EUEast, AU, etc)
The server will automatically advertise using your public IP address (which also exposes your public IP address to others).
If you want to specify a different public IP address or domain name then add the following command line parameter with your DNS hostname or IP address:
--community-server-public-host "0.0.0.0" (eg an IPv4 address or DNS hostname)
Hosting Dedicated Servers
Recommended specs are:
- 4+ cores / 8 threads ideally 8+ cores with great single thread performance
- 16+ GB RAM ideally 32 GB RAM
- gigabit network
Servers do not require a GPU.
Currently hosting on 64GB overclocked water cooled 5 GHz quad core / 8 threads Intel i7-7700K using 1 Gbit/second network with 250 Mbit/second guaranteed outgoing on Ubuntu.
Intel i7-7700K info:
Now is a really bad time to buy server hardware. Next generation CPUs will be available in early 2018.
AMD is finally applying some top end pressure to Intel across desktops and servers. If that continues we'll see big improvements in 2018.
Many data centres will be refreshing their hardware in 2018 which will be good for PA servers. ie they are waiting for Xeon's based on 10nm Cannon Lake. We may see some earlier refreshes using Purley Xeon's based on 14nm Skylake in early 2018.
The best server CPUs for PA are currently the following released in August 2017 with limited availability:
- Intel Xeon W-2155 10 core 3.3 GHZ / 4.5 GHz turbo workstation CPU: https://ark.intel.com/products/125042/Intel-Xeon--W-2155-Processor-13_75M-Cache-3_30-GHz (new motherboards)
- Intel Xeon Gold 6144 8 core 3.5 GHz / 4.2 GHz turbo server CPU: https://ark.intel.com/products/124943/Intel-Xeon-Gold-6144-Processor-24_75M-Cache-3_50-GHz (recent motherboards)
- Intel Xeon E3-1285v6 server CPU: https://ark.intel.com/products/99978/Intel-Xeon-Processor-E3-1285-v6-8M-Cache-4_10-GHz (older motherboards)
Key criteria are:
- high base CPU frequency
- high sustainable turbo CPU frequency across all cores (sustained single core performance)
Overclocked water cooled desktop CPUs are also an option.
Guide to single core performance (not always sustainable with desktop CPUs):
The best data centre location for all players globally is US West or US Central on a tier 1 network transit point. Typical outbound bandwidth is a minimum of 1-2 Mbit/second per player / spectator. eg 32 players + 5 spectators can easily consume 50 Mbit/second.
SoftLayer bare metal servers have performed the best so far in terms of raw server / network performance, fast deployment, central data centre locations and network transit capability. Hopefully they will refresh their data centre stock to include newer CPUs in 2018.
In general you want to rent server hardware... not buy it.
Multi-threading improvements in build 99377 or newer can be enabled on local, custom or dedicated servers.
Local servers are enabled using settings > server > local server multi-threading > on.
On the command line use --mt-enabled.
Multi-threading is enabled for:
- multiple planets
- navigation updates
- physics updates
Community Servers Feed The community servers feed filters out and returns error codes for the following:
bad data (400) old builds (426) private IP addresses 10.0.0.0/8 / 172.16.0.0/12 / 1192.168.0.0/16 (412)
- blocked or banned servers
PA servers are free shared public servers hosted in three regions:
Shared servers are limited to:
- 10 players
- 3 spectators
Core servers are hosted on AWS each region.
As shared servers performance can be impacted by other games on the same server.
During steam sales there are often lots of new players hosting massive maps and hoarding units so it's very much luck of the draw.
Community Dedicated Server We are testing an overclocked 5GHZ water cooled i7-7700K 64GB Planetary Annihilation Community Dedicated Server.