Сервер KF2 не обновляет Workshop: исправление 2025 года
С середины июля 2025 года выделенные серверы Killing Floor 2 не могут обновлять только что опубликованный контент Workshop. Здесь описаны причина и обходной путь от сообщества. Если сервер ещё не настроен, начните с руководства по настройке сервера.
Проблема
Любой мод (карта, набор или мутатор), скомпилированный или созданный с 11 июля 2025, не обновляется на стороне сервера. На стороне клиента проблемы нет.
Причина
- Примерно в феврале 2025 года или раньше Steam добавил для некоторых блоков данных поддержку сжатия ZSTD - более быстрого и эффективного, чем прежний LZMA, чтобы ускорить загрузки.
- Свежие Steam DLL из SteamCMD (на момент написания версия 9.86.62.31 от 27 июня 2025) подтверждённо работают с новыми элементами Workshop, видимо, потому что понимают блоки ZSTD.
- 11 июля 2025 Workshop, судя по всему, начал сохранять новый контент блоками ZSTD.
- Выделенный сервер KF2 поставляется со старыми Steam DLL, которые не читают новый формат, поэтому загрузка падает.
Настоящее решение - новый релиз выделенного сервера от Tripwire с обновлёнными Steam DLL. До этого DLL придётся заменить самостоятельно.
Временное решение для Windows
- Запустите SteamCMD, чтобы он обновился.
- Скопируйте из каталога SteamCMD файлы:
- steamclient.dll
- steamclient64.dll
- tier0_s.dll
- tier0_s64.dll
- vstdlib_s.dll
- vstdlib_s64.dll
- Вставьте их в каталог
Binaries\Win64вашего сервера и подтвердите замену.
Временное решение для Linux
Автор не пользуется Linux и не смог проверить решение сам, но предлагает следующее:
- Запустите SteamCMD для обновления.
- Из папки
linux32SteamCMD скопируйтеcrashhandler.soиlibtier0_s.so, изlinux64-steamclient.so. - Поместите их в каталог
Binaries\Win64\lib64сервера. Старые файлы можно заранее переименовать в.so.oldдля резервной копии.
Перед заменой сохраните оригинальные DLL и помните, что обычное обновление сервера может перезаписать их снова.
Вопросы и ответы
- Почему новые предметы Workshop не скачиваются на сервер KF2?
- Элементы, созданные с 11 июля 2025, хранятся в сжатии ZSTD, а старые Steam DLL из комплекта выделенного сервера KF2 его не читают.
- Как исправить на Windows?
- Скопируйте DLL steamclient, tier0_s и vstdlib_s (32 и 64 бит) из папки SteamCMD в Binaries\Win64 сервера.
- Это постоянное решение?
- Нет. Это временная мера, пока Tripwire не выпустит сборку сервера с обновлёнными Steam DLL.