Running a Server

KF2 Listen Server: Host a Game From Your Client

A listen server lets a host start a Killing Floor 2 server directly from the game so others can join, with no separate dedicated server. Normally KF2 does not support this properly; this guide enables it with a patch and a small mod. For the dedicated alternative see the server setup guide and the console commands list.

What you need

  • The Delta Patcher (xdelta tool from romhacking.net).
  • The listen server patch (an xdelta file) and the listen server mod KFListenServer.u, both distributed by the author through links in the original guide.

Installation

  1. Put the xdelta patcher and the xdelta patch anywhere.
  2. Place KFListenServer.u in Documents\My Games\KillingFloor2\KFGame\Published\BrewedPC (create the folders if missing).
  3. In Steam, right-click Killing Floor 2, Manage, Browse local files, and open Binaries\Win64.
  4. Open the xdelta patcher, select the patch in the "XDelta patch" field, then click the folder icon for the original file and choose KFGame.exe in that Win64 folder.
  5. Click Apply Patch; you should get a success message.
  6. Open Documents\My Games\KillingFloor2\KFGame\Config\KFGame.ini, find [Engine.GameInfo] and set DefaultGame to KFListenServer.KFGameInfo_ListenServer.
  7. Start Killing Floor 2 and wait for the main menu. Open the console (F3 or tilde) and type Mutate SetIP <your IP>, using the public IP you find on a site such as whatismyip.com.
  8. You can now host: use Find a Match, or the open command with ?Listen=1 appended.

You can edit all server settings in the same config files in Documents\My Games\KillingFloor2\KFGame\Config. You still need to forward ports (see the KF2 wiki), though realistically only the game port 7777.

Starting the server from the console

Maps: KF-Airship, KF-AshwoodAsylum, KF-BarmwichTown, KF-Biolapse, KF-BioticsLab, KF-BlackForest, KF-BurningParis, KF-CarillonHamlet, KF-Catacombs, KF-ContainmentStation, KF-Crash, KF-Desolation, KF-DieSector, KF-Dystopia2029, KF-Elysium, KF-EvacuationPoint, KF-Farmhouse, KF-HellmarkStation, KF-HostileGrounds, KF-InfernalRealm, KF-KrampusLair, KF-Lockdown, KF-Manor, KF-MonsterBall, KF-Moonbase, KF-Netherhold, KF-Nightmare, KF-Nuked, KF-Outpost, KF-PowerCore_Holdout, KF-Prison, KF-Rig, KF-Sanitarium, KF-SantasWorkshop, KF-ShoppingSpree, KF-Spillway, KF-SteamFortress, KF-TheDescent, KF-TragicKingdom, KF-ZedLanding.

Game length: 0 short, 1 medium, 2 long. Difficulty: 0 Normal, 1 Hard, 2 Suicidal, 3 Hell on Earth.

Example commands:

open KF-ZedLanding?GameLength=2?Difficulty=3?Listen=1
open KF-Prison?GameLength=2?Difficulty=1?Mutator=UnofficialKFPatch.UKFPMutator?Listen=1
open KF-Crash?Game=ControlledDifficulty.CD_Survival?GameLength=2?Difficulty=3?Mutator=UnofficialKFPatch.UKFPMutator,DamageDisplay.DmgMut?Listen=1

FAQ

What is a listen server?
A server where a host starts the server directly from the game and others join, without a separate dedicated server.
Which port must be forwarded?
Realistically only the game port 7777.
How do I start the listen server from the console?
Use open <Map>?GameLength=2?Difficulty=3?Listen=1, for example open KF-ZedLanding?GameLength=2?Difficulty=3?Listen=1.