// Factorio

Factorio-server opzetten: headless, mods, Space Age en saves

Factorio-server opzetten: headless, mods, Space Age en saves

Een Factorio-server draai je met de gratis headless-versie van het spel: factorio --start-server save.zip host jouw save, dag en nacht, zonder dat jouw pc aan hoeft te staan. Weet vooraf drie dingen: iedereen heeft exact dezelfde versie en mods nodig, een nieuwe kaart op de headless-server is standaard een Space Age-kaart, en je UPS hangt meer af van de processor dan van veel RAM. Hieronder de opzet stap voor stap, met 2.0.77 (stable) en 2.1.20 (experimental) als stand van 28 september 2026.

Headless of hosten vanuit de game?

Hosten vanuit het menu (Multiplayer, dan Host new game of Host saved game) is het snelst: vrienden verbinden via Steam of je IP-adres. Maar de wereld bestaat alleen zolang jij speelt, en thuis moet UDP-poort 34197 openstaan. Factorio gebruikt uitsluitend UDP.

Een dedicated server met de headless-versie (Linux, zonder graphics) laadt direct een save, heeft zelf geen personage, pauzeert als er niemand online is en slaat op bij het afsluiten. Sinds Friday Facts #446 (18 september) bestaat er ook een headless-build voor ARM64-Linux, dus zelfs een Raspberry Pi kan hosten, al is die build er voorlopig alleen voor experimental 2.1. Spelen jullie op wisselende tijden, of wil je dat anderen verder kunnen als jij offline bent, dan is een dedicated server de logische keuze. Spelen jullie alleen samen op vaste avonden, dan is hosten vanuit de game genoeg.

Versies: iedereen op precies dezelfde

Volgens de wiki moeten alle spelers en de server exact dezelfde versie en mods hebben. Staat iemand in Steam op de experimental-branch (nu 2.1), dan moet de server ook op experimental. In ons paneel kies je de versie met de startup-variabele Factorio Version: latest (stable, standaard), experimental, of een vast nummer zoals 2.0.77. De server haalt die versie op bij de installatie; alleen herstarten werkt hem niet bij. Maak dus eerst een back-up en herinstalleer dan, zoals beschreven in Factorio-server updaten en savegames beheren.

Space Age staat standaard aan op een nieuwe kaart

Space Age is een betaalde uitbreiding die uit mods bestaat. De headless-server heeft ze al aan boord: space-age, quality en elevated-rails staan in de map data/. In onze test met 2.0.77 zette de server ze bij het maken van een nieuwe kaart allemaal aan in mods/mod-list.json. Op onze servers maakt de installatie de eerste save automatisch aan, dus ook die is een Space Age-kaart. Omdat iedereen exact dezelfde mods nodig heeft en die mods bij de betaalde uitbreiding horen, moet dan ook iedereen die meespeelt Space Age hebben.

Wil je zonder uitbreiding spelen, zet dan in mods/mod-list.json de drie mods op "enabled": false, kies bij Save Name een nieuwe naam en herstart. Bestaat die save nog niet, dan maakt de server hem aan met alleen base.

Drie kolommen met waar je een Factorio-server instelt: startup-variabelen in het paneel, bestanden zoals saves, mods/mod-list.json en server-settings.json, en consolecommando's zoals /promote en /server-save
Waar je wat instelt op een Factorio-server: paneel, bestanden en console (headless 2.0.77).

Je eigen save uploaden

Saves zijn gewone .zip-bestanden. Op je pc staan ze in de map saves van %appdata%\Factorio (Windows), ~/.factorio (Linux) of ~/Library/Application Support/factorio (macOS). Upload de zip via bestandsbeheer of SFTP naar saves/, zet Save Name op de bestandsnaam zonder .zip en herstart. Dat veld accepteert alleen letters, cijfers, streepjes en underscores, dus hernoem Mijn fabriek.zip eerst naar mijn-fabriek.zip. Gebruikt je save mods of Space Age, dan moeten die op de server ook aanstaan. Zelf gehost start je dezelfde save zo:

./bin/x64/factorio --start-server ./saves/mijn-fabriek.zip \
  --server-settings ./data/server-settings.json

server-settings.json: de knoppen die ertoe doen

Het voorbeeld data/server-settings.example.json uit het headless-pakket laat alle sleutels zien; op onze servers is het bij de installatie al omgezet naar data/server-settings.json. De belangrijkste, met hun standaardwaarde:

  • visibility: public zet je server in de publieke lijst; dat vereist je factorio.com-gebruikersnaam en een token.
  • require_user_verification (true): alleen spelers met een geldig factorio.com-account.
  • max_players (0 = onbeperkt). Admins komen ook op een volle server.
  • autosave_interval (10 minuten) en autosave_slots (5).
  • auto_pause (true): de wereld staat stil zonder spelers.
  • allow_commands (admins-only): wie Lua-commando's mag gebruiken.

Op onze servers vult het paneel een deel van dit bestand bij elke start in: naam, beschrijving, maximaal aantal spelers, autosave, AFK-kick, publieke zichtbaarheid, gebruikersnaam en token. Wat je daarvan in het bestand zelf wijzigt, wordt bij een herstart overschreven; pas die dus aan via de startup-variabelen. Sleutels als auto_pause en allow_commands pas je wel in het bestand zelf aan.

Mods toevoegen

Mods zijn zipbestanden met de naam modnaam_versie.zip. Zet ze in mods/, controleer in mods/mod-list.json dat ze op true staan en herstart. Spelers hebben dezelfde mods in dezelfde versie nodig. Voeg er één tegelijk toe en maak vooraf een back-up, zodat je bij een fout terug kunt.

Admins en commando's

Een admin maak je met /promote naam in de console van het paneel. De server legt dat vast in server-adminlist.json, in dezelfde map als factorio-current.log; je kunt dat bestand ook zelf aanmaken als lijst: ["naam1", "naam2"]. Handige commando's daarna:

  • /kick naam reden, /ban naam reden en /unban naam
  • /whitelist add naam: alleen spelers op de lijst komen binnen; een lege lijst laat iedereen toe
  • /server-save: nu opslaan, handig vóór een herstart
  • /admins en /players: wie is admin, wie is er online

Prestaties: UPS, processor en wat RAM wel en niet doet

Factorio rekent 60 updates per seconde, één tick per 16,7 milliseconden. Wordt je fabriek te zwaar, dan zakt die UPS en loopt het spel voor iedereen trager. Twee dingen om te weten:

  • Iedereen rekent mee. Factorio werkt in lockstep: elke speler simuleert de hele wereld en alleen de acties gaan over het netwerk. Een trage pc bij één speler lost een grotere server dus niet op.
  • Niet alles loopt parallel. Losse onderdelen zijn over meerdere threads verdeeld, maar niet alles: volgens Friday Facts #421 draait bijvoorbeeld het elektriciteitsnet op één thread, omdat meer threads daar niet sneller werden. Extra kernen lossen een zware fabriek dus maar beperkt op.

Geheugen is zelden het probleem. In onze tests met 2.0.77 gebruikte een verse kaart zonder spelers zo'n 200 MB (alleen base) en 350 tot 370 MB (Space Age). Dat groeit naarmate je meer bouwt en verkent, maar het instappakket Amateur (2 GB, € 3,00) is voor een nieuwe fabriek ruim genoeg. Beginner (4 GB, € 6,00) geeft lucht voor een grote Space Age-basis of een flinke modlijst. Wanneer níét upgraden: loopt je UPS terug omdat de fabriek zelf te zwaar wordt, dan helpt meer RAM niet.

Alle Factorio-pakketten hebben NVMe-opslag en DDoS-bescherming, zijn maandelijks opzegbaar en draaien in Hengelo, Frankfurt, Warschau of Beauharnois; kies de locatie die het dichtst bij je spelers ligt. Nog geen server? Zie een Factorio-server starten.

Veelgestelde vragen

Welke poort gebruikt een Factorio-server?

Standaard UDP-poort 34197; Factorio gebruikt alleen UDP. Bij een gehoste server verbind je met het IP-adres en de poort die het paneel toont, want die geeft de server mee met --port.

Moeten alle spelers dezelfde Factorio-versie hebben?

Ja. De server en alle spelers hebben exact dezelfde versie en dezelfde mods nodig. Speelt iemand op de experimental-branch, zet de server dan ook op experimental, of zet die speler terug op stable.

Kan ik mijn singleplayer-save op een Factorio-server spelen?

Ja. Upload de .zip uit je map saves naar de map saves op de server en start de server met die save; in ons paneel zet je de variabele Save Name op de bestandsnaam zonder .zip. Gebruikt de save mods of Space Age, dan moeten die op de server ook aanstaan.

Hoeveel RAM heeft een Factorio-server nodig?

Weinig om te beginnen: in onze tests gebruikte een verse kaart op de headless-server 2.0.77 zo'n 200 MB, of 350 tot 370 MB met Space Age. Het groeit met je fabriek, maar 2 GB is voor een nieuwe fabriek ruim genoeg. Voor de snelheid (UPS) telt vooral de processor.

Verder lezen

// ZELF PROBEREN
Je Minecraft-server binnen 60 seconden online
Bekijk de pakketten →