01 Decide whether you need a separate headless server
Factorio can host a multiplayer world from a running game or through a separate dedicated/headless process. A separate server is useful when the group needs a common world without one player keeping their game open. It is not automatically a requirement to rent an exclusive physical machine.
The official-site multiplayer documentation ↗ describes headless operation and requires matching game versions and mods across participants. Record the release, enabled expansion/content and mod versions before comparing hosting plans. “Supports Factorio” is not enough if the provider cannot run your intended combination.
02 Start with an explicit new save
The documented native Linux examples create a save and then launch it:
./bin/x64/factorio --create ./saves/hostzaro-test.zip
./bin/x64/factorio --start-server ./saves/hostzaro-test.zipRun these only in your own prepared installation with a suitable non-privileged service account. The filename is an example for a fresh test world. Do not use a production save as the place to experiment with unknown map-generation settings.
Keep server settings, map-generation settings and the saved factory distinct. Choose map-generation options when deliberately creating a new world; do not assume editing a creation template rewrites an existing factory’s map. A game panel may generate its own configuration, so confirm the effective command and file path.
03 Separate connectivity from version and mod mismatch
The multiplayer documentation identifies UDP gameplay with default port 34197, configurable by the server. Use the actual configured port in the host firewall and router or provider allocation. A TCP-only reachability test does not prove the UDP game route works.
- Confirm the server process loads the intended save without an error.
- Match a client’s game release and enabled mods to the server.
- Test a supported local path, then have an outside player join.
- Record whether failure occurs before connection, during synchronization or after loading.
- Keep account or listing credentials private when collecting diagnostics.
A factory that loads correctly but rejects a different mod set needs a compatibility check before a network overhaul. Conversely, a matching client cannot reach an unforwarded or misallocated endpoint merely by reinstalling its mods.
04 Test a developed factory before committing to a plan
Use a copy of your real factory for the second test. Have regular players inspect production, trains and expected progression, and record repeated simulation slowdowns or disconnects. A new empty map cannot establish capacity for a late-game save. Ask how a provider handles resource upgrades without replacing the world.
Before migration or cancellation, preserve the save, mod/version manifest and relevant settings outside the hosting account. Restore them on an isolated destination, save a small new change and confirm it survives restart. Also check the configured empty-server pause behaviour: the official documentation describes automatic pausing by default, and your desired unattended production policy should be intentional rather than assumed.
Compare actual renewal, region and export conditions. This is a deployment and acceptance guide, not a performance ranking. For a broader recovery procedure, use the backup and restore checklist.