Een Killing Floor 2 dedicated server is eenvoudig zodra je de twee eigenaardigheden kent: je moet hem één keer opstarten voordat je een configuratie bewerkt, en hij heeft geen RCON, dus je beheert hem vanuit een webpaneel. Als je dat goed doet, is de rest een klusje van vijf minuten. Hier is het hele proces.
Installeer de server
De KF2 dedicated server is app 232130 en installeert anoniem (geen Steam-login nodig, je hoeft de game niet te bezitten op het serveraccount):
./steamcmd.sh +login anonymous \
+app_update 232130 validate \
+quitBelangrijk: gebruik validate alleen bij de EERSTE installatie. Als je app_update 232130 validate later nog eens uitvoert, wist dat je KFGame/Config INI-bestanden. Laat het woord validate daarna weg om te updaten.
De valkuil: één keer opstarten voordat je iets bewerkt
KF2 genereert zijn configuratiebestanden opnieuw bij de eerste keer opstarten en overschrijft alles wat je daar van tevoren in hebt gezet. De volgorde is dus: installeren, één keer opstarten, stoppen, en PAS DAARNA bewerken. Start hem één keer op met de standaardargumenten:
./Binaries/Win64/KFGameSteamServer.bin.x86_64 KF-BioticsLabLaat hem doorgaan tot "steam initialised", en stop hem dan met Ctrl+C. Hij heeft nu de bestanden weggeschreven die je zo gaat bewerken, in:
<install>/KFGame/Config/Serverinstellingen: LinuxServer-KFGame.ini
Open KFGame/Config/LinuxServer-KFGame.ini en stel deze sleutels in. Ze staan in verschillende secties, dus zoek naar elke sectiekop:
[Engine.GameInfo]
GameDifficulty=1.000000 ; 0=Normal 1=Hard 2=Suicidal 3=Hell on Earth
MaxPlayers=6 ; see "six players" below
[Engine.AccessControl]
AdminPassword=pick-a-secret ; login for the web panel
GamePassword=friends-only ; leave blank for open, set to lock the server
[Engine.GameReplicationInfo]
ServerName=My Private KF2 Server
[KFGame.KFGameInfo]
GameLength=1 ; 0=short (4 waves) 1=medium (7) 2=long (10)Het Web Admin-paneel inschakelen (KF2 heeft geen RCON)
KF2 heeft helemaal geen RCON. Alles wat je normaal via een console zou doen, spelers kicken, kaarten wisselen, logs lezen, gebeurt in een browsergebaseerd Web Admin-paneel dat standaard UITGESCHAKELD is. Zet het aan in KFGame/Config/LinuxServer-KFWeb.ini:
[IpDrv.WebServer]
bEnabled=true
ListenPort=8080Zodra de server draait, open je http://your.server.ip:8080 in een browser en log je in met de gebruiker Admin en het AdminPassword dat je hierboven hebt ingesteld. Open poort 8080/TCP in je firewall.
De opstartregel
KF2 gebruikt één argument in URL-stijl dat de map, spelmodus en per-boot overrides combineert, gevolgd door een paar vlaggen voor poorten:
./Binaries/Win64/KFGameSteamServer.bin.x86_64 \
KF-BioticsLab?Game=KFGameContent.KFGameInfo_Survival?Difficulty=1?GameLength=1 \
-Port=7777 -QueryPort=27015 -WebAdminPort=8080- KF-BioticsLab is de startkaart. Vervang deze door een andere KF-kaart (KF-Outpost, KF-Nuked, KF-VolterManor…).
- Game= bepaalt de modus: KFGameInfo_Survival (co-op), KFGameInfo_WeeklySurvival, KFGameInfo_VersusSurvival of KFGameInfo_Endless.
- Difficulty en GameLength in de URL overschrijven de INI voor die opstart, handig voor snelle wijzigingen zonder bestanden te bewerken.
- Open 7777/UDP (game), 27015/UDP (Steam-query) en 8080/TCP (webbeheer) in je firewall.
Het enige addertje: zes spelers
Standaard KF2 begrenst een server op zes spelers. MaxPlayers hoger dan 6 zetten in de INI heeft geen effect: de engine zet het terug naar 6. Dat is de bedoelde co-op-grootte en vereist geen mods. Wil je meer dan zes spelers, dan heb je een server-mutator nodig (de populairste leest de echte limiet uit een ?MaxPlayers=-waarde in de launch-URL, niet uit de INI) plus een bijpassende ?MaxMonsters=, zodat de extra spelers ook genoeg Zeds hebben om tegen te vechten.