Killing Floor 2

Killing Floor 2

34 ratings
Dedicated Server Steam Workshop Issue (2025)
By H U N ナ E R
   
Award
Favorite
Favorited
Unfavorite
About the problem
Currently, there is a problem with updating new workshop items on the KF2 server side. More specifically, all mods (maps, packs, and mutators) that have been compiled/created since 11 July 2025 will no longer be updated on the server. This behavior is not observed on the client side.


Summary
  • Around February 2025 or before, Steam has added support for ZSTD compression, a faster and more efficient compression algorithm, to improve game download speeds. This new compression method will be used for downloading game files, replacing the previous LZMA compression for certain data chunks.

  • The latest Steam DLLs from SteamCMD appear to be version 9.86.62.31 from 27 June 2025, and are confirmed working with new workshop items (presumably supporting those new ZSTD compressed chunks).

  • On 11 July 2025, Steam workshop presumably started saving new content as ZSTD compressed chunks.

  • Killing Floor 2 dedicated server ships old Steam DLLs, which appear too old to support the new chunks format, and so started failing when downloading them.
Troubleshooting
TWI needs to make a new dedicated server release with updated Steam DLLs. But we don't know when that will happen. Therefore, I am providing a temporary solution to this problem.


Short-term solution (Windows Platform)
  • Launch SteamCMD to get the latest updates.

  • Copy the following DLL files from the SteamCMD directory, which are required for updating the server side:
    • steamclient.dll
    • steamclient64.dll
    • tier0_s.dll
    • tier0_s64.dll
    • vstdlib_s.dll
    • vstdlib_s64.dll

  • Place the copied DLL files in the Binaries\Win64 directory of your server and confirm the replacement.

Short-term solution (Linux Platform)
    I am not currently using Linux and cannot find a solution for this platform on my own. But you can use the following solution if it helps:
  • Launch SteamCMD to get the latest updates.

  • Copy the following SO files from the linux32 and linux64 of SteamCMD directory, which are required for updating the server side:
    • crashhandler.so (linux32 dir)
    • libtier0_s.so (linux32 dir)
    • steamclient.so (linux64 dir)

  • Place the copied SO files in the Binaries\Win64\lib64 directory of your server. Beforehand, you can rename the old files to so.old if you need them.
4 Comments
H U N ナ E R  [author] 18 hours ago 
The guide has been updated with a short-term solution for the Linux platform.
г. 5 Aug @ 11:28am 
Thank you.
I can confirm that the solution for the Linux edition works fine. It's just that you won't be able to find the all the .so equivalents to .dll as in Windows machines.

The files you have to look for: steamclient.so, crashhandler.so, steamconsole.so, libtier0_s.so

1. Launch Steam through steamcmd to make sure all its libraries are up-to-date;
2. Replace all the original .so files belonging to Steam, wherever you can find them in your KF server directory (most of them are under /Binaries/Win64/lib64 AND /linux64) and give them another name (use mv command).
You can use find command (in the root directory of your KF2 server) to quickly locate those files (look up their name above in the post and my reply's first paragraph.)
3. You then symlink the original .so files from steam that are under linux32 and linux64 directories of steam, to where the previous KF .so steam libraries were.

And it worked for me as well.
H U N ナ E R  [author] 5 Aug @ 12:55am 
@Kill Master, Yeah, it seems that now in KF2 we are responsible for the maintenance of our servers.But I feel sorry for those people who don't even realize what's going on and why they can no longer play because of it. These developers love their games so much, even more than we do. But they breathe new life into their games not with updates, but with a new number in the game title :Tolyan:
Kill Master 5 Aug @ 12:08am 
This isn't all too surprising considering KF2's EoL status.

KF1 server operators have been doing the same thing for years, by that I mean replacing the out of date binaries with up to date ones from Steam CMD .
Fail to do so and you're server will fail to even show up on the server list.

The simplest way I've found to do this is to set up a Cron job to run nightly that simply involves copying the prescribed binaries from the Steam CMD directory and overwriting the ones in the server directory. :pcrace: