Бинды и консоль

KF2 без раздражителей: правки конфигов, вылеты, эффекты

В этом руководстве сообщества собраны настройки, которые опытный игрок меняет, чтобы Killing Floor 2 стал спокойнее, чище и стабильнее: меньше вылетов, тряски экрана, тумана, крови и мусора из частиц, правильные лимиты FPS и несколько удобных биндов. Автор называет текущую версию «финальной» для KF2 и добавляет необязательные косметические приёмы. Все ini лежат в Documents\My Games\KillingFloor2\KFGame\Config. Для быстрого поиска параметра в редакторе жмите Ctrl+F. Для глубокой оптимизации FPS см. FPS на больших серверах и расширенную настройку FPS.

Основа защиты от вылетов

В KFEngine.ini задайте:

MaxObjectsNotConsideredByGC=33476
SizeOfPermanentObjectPool=0

Это классическая правка для модовых серверов (Controlled Difficulty, Zedternal Reborn и других), и вообще повышает стабильность, даже если вы не играете с модами. Остальные вылеты в основном из-за NVIDIA Flex, поэтому в настройках видео (Basic) отключите Flex. Автор называет Flex недоделанным и заброшенным; у пользователей AMD он выключен по умолчанию.

Своё разрешение

KF2 поддерживает пользовательское разрешение (в том числе растянутое, как в CS:GO) в полноэкранном режиме: найдите его в списке разрешений игры. Создать его можно через утилиты AMD или NVIDIA. Автор приводит пример растянутого 16:10 с большим FOV.

Убрать тряску и лазеры

В Steam\steamapps\common\killingfloor2\KFGame\BrewedPC\Packages\Effects удалите:

  • FX_CameraShake_ARCH.upk: убирает большую часть тряски камеры, в частности от навыка Demolitionist Destroyer of Worlds (но не от попаданий по вам, не от стрельбы и не тряску самой карты, например Nuked).
  • FX_Wep_Laser_Emit.upk и FX_Wep_Laser_MESH.upk: убирают лазерные целеуказатели оружия (M14, Eviscerator).

После удаления сначала зайдите на неофициальный сервер с белым списком, чтобы игра докачала файлы, потом можно играть на любых серверах, в том числе официальных. Правки откатываются при проверке файлов в Steam. В Workshop есть мод для удаления вспышек выстрелов с установкой перетаскиванием (элемент 2782552571).

Консольные команды и бинды

Консоль открывается клавишей тильда. Чтобы setbind сохранялся, снимите «только чтение» с KFInput.ini и пользуйтесь главным меню или сервером с белым списком.

  • gamma X: яркость от 1 до 5 (2.2 - яркий по умолчанию), допускаются десятичные.
  • fogdensity 0: убирает весь туман, лучше видно на Nuked.
  • setbind "gba_grenade customstartfire 4 | onrelease customstopfire 4 | say GRENADE OUT": сообщает команде о броске гранаты, удобно для замораживающих гранат Sharpshooter.
  • getall kfgamereplicationinfo bossindex: угадать босса (0 Hans, 1 Patriarch, 2 King Fleshpound, 3 Abomination, 4 Matriarch); см. как узнать босса.
  • setbind RightMouseButton "SpectateNextPlayer|GBA_IronsightsHold|Showhud|OnRelease Showhud": прячет HUD при прицеливании.
  • setbind MouseScrollUp TossMoney и setbind MouseScrollDown TossMoney: бросать доши колесом мыши.
  • setbind Subtract "gamma 5 | fogdensity 0": одна клавиша для яркости и удаления тумана.
  • stat FPS: показывает частоту кадров. Выше примерно 300 FPS игра начинает вести себя странно.

KFEngine.ini

  • Строки против вылетов выше.
  • bForceNoMovies=true: нет вступительных и загрузочных видео (видео главного меню остаётся).
  • Убрать только логотипы, оставив видео загрузки карты (гайд Stok с форума killingfloor.ru): в секции [FullScreenMovie] файла KFEngine.ini (Документы\My Games\KillingFloor2\KFGame\Config) закомментируйте строки StartupMovies=LogoTripwire, LogoUE3, LogoGA, MainMenu и SkippableMovies=LogoTripwire, LogoUE3, LogoGA, Credits (автор ставил \\\ в начале строки), а LoadMapMovies оставьте. Если игра сбрасывает настройки, то же самое сделайте в KillingFloor2\KFGame\Config\DefaultEngine.ini: там те же строки начинаются с +, и \\\ ставится перед +. По словам автора, bForceNoMovies=true выключает абсолютно все видео, включая загрузку карты, а -nostartupmovies не работал в сборках, которые запускаются через Launcher.exe или KF2Launcher.exe.
  • Частота кадров: bSmoothFrameRate=True и MinSmoothedFrameRate, MaxSmoothedFrameRate, MinDesiredFrameRate равны частоте вашего монитора (или частоте, которую вы стабильно держите). Эти параметры встречаются в файле дважды. В KFGame.ini тоже задайте bSmoothFrameRate=True (в игре это Variable Frame Rate) и такие же min и max.

KFGame.ini

  • Масштаб гравитации: RBPhysicsGravityScaling=X выше стандартного 1 не даёт трупам и гильзам улетать далеко. Слишком большое значение роняет оружие сквозь пол в соло, а в мультиплеере оружие может выглядеть пропавшим. Автор ставит 3.
  • Отключение крови и лимит трупов: установите в ноль или false BloodPoolDelay, GoreFXLifetimeMultiplier, BodyWoundDecalLifetime, BloodSplatterLifetime, BloodPoolLifetime, GibletLifetime, MaxBodyWoundDecals, MaxBloodSplatterDecals, MaxBloodPoolDecals, BloodSplatSize, BloodPoolSize, MaxBloodEffects, MaxGoreEffects, AllowBloodSplatterDecals, PersistentSplatTraceLength, MaxPersistentSplatsPerFrame, bAllowBloodSplatterDecals. MaxDeadBodies=4: тесты показали, что 4 - минимальное работающее значение, меньшее откатывается к 7 трупам.
  • Без следов от пуль: MaxImpactEffectDecals=0.
  • FOV: FOVOptionsPercentageValue=X умножает базовый FOV 90 (1.25 даёт 112.5).

KFInput.ini

  • bEnableMouseSmoothing=false, bViewAccelerationEnabled=false, LookRightScale=0, LookUpScale=0.
  • MouseSensitivity=X и ZoomedSensitivityScale=X: ползунок в игре неточен, в файле хранится реальное значение с длинной дробью. Автор использует 85 для zoomed.
  • Бросок доши колесом: добавьте Bindings=(Name="MouseScrollUp",Command="TossMoney",...) и то же для MouseScrollDown.
  • Скрытие HUD при прицеливании: привяжите RightMouseButton к GBA_IronsightsToggle | SpectateNextPlayer | ShowHUD | OnRelease ShowHUD.
  • Сделайте файл только для чтения, чтобы игра не перезаписывала управление, но тогда новые бинды придётся вносить в файл вручную.

KFSystemSettings.ini

Задайте MotionBlur=False, MotionBlurPause=False, MotionBlurSkinning=0, DepthOfField=False, UseVsync=False (кадры ограничивайте иначе) и оставьте Distortion=True, чтобы видеть размытие сталкера даже на низкой графике.

Частицы

В KFEngine.ini и KFGame.ini: MaxFluidNumVerts=1, FluidSimulationTimeLimit=0.0 и MaxParticleVertexMemory=X. По умолчанию это семизначное число; автор ставит 384, что убирает мусор на экране (особенно от замораживающих гранат и Firebug), но иногда делает огненные шары Husk невидимыми.

Пластиковый мир и другие «пластиковые» настройки

Для слабых ПК в KFSystemSettings.ini задайте для TEXTUREGROUP_World, WorldNormalMap и WorldSpecular значения MinLODSize=1,MaxLODSize=1,LODBias=10. Для «пластиковых ZED» поставьте MaxLODSize=1 у TEXTUREGROUP_Creature, CreatureNormalMap и CreatureSpecular (ZED станут угловатыми и однотонными). То же работает для групп Character, Weapon и Skybox. Интерфейс так менять нельзя.

Параметры запуска Steam

  • -nostartupmovies: убирает стартовые ролики.
  • -dx10: DirectX 10, якобы стабильнее (проверьте сами).
  • -notexturestreaming: отключает стриминг текстур.

Менее раздражающие моды Workshop

  • Peelz's Crosshair (версия для ReShade, на Linux ставится через reshade-steam-proton).
  • Controlled Difficulty - Chokepoints Edition от Fanta: любимая версия CD автора с командами для соло-практики, без сезонных ZED и без модификаторов негативных эффектов от блока.
  • Моды, отключающие голос торговца и сезонных ZED.

Необязательные косметические приёмы

  • Смена скина оружия: в самый конец KFGame.ini добавьте блоки [KFGameContent.KFWeap_...] с SkinItemId=<id> для каждого оружия; скин должен быть у вас в инвентаре. В примере 3330 (Circuit Glow Mint для HX25).
  • Замена видео в игре: через RAD Video Tools конвертируйте ролик в Bink (.bik) и замените файл в KFGame\Movies, например MenuBG.bik для фона меню.
  • Переименования в игре: правьте INT-локализации в KFGame\Localization\INT (KFGame.int, KFGameContent.int), чтобы переименовать персонажей или оружие.
  • Без рук: удалите файл меша вашего персонажа в KFGame\BrewedPC\Packages\Characters; для нарядов вроде Horzine Armor удалите файл наряда.

Linux

Используйте Proton (смотрите ProtonDB для приложения 232090). Папка «Документы» лежит в compatdata\232090\pfx\drive_c\users\steamuser\Documents\My Games\KillingFloor2\KFGame. Автор пользуется Linux Mint, параметром запуска gamemoderun %command% и Proton-GE для дополнительной оптимизации.

Лучшее улучшение

KF2 долго загружается. Оценки автора: HDD 5-10 минут на загрузку игры и 1-2 минуты на смену карты; SATA SSD 1-3 минуты и около 30 секунд; M.2 SSD лишь секунды. Перенос игры на M.2 SSD - самое эффективное одиночное улучшение.

Вопросы и ответы

Как избавиться от вылетов KF2 на модовых серверах?
В KFEngine.ini задайте MaxObjectsNotConsideredByGC=33476 и SizeOfPermanentObjectPool=0 и отключите NVIDIA Flex в настройках видео.
Как пропустить вступительные видео?
Поставьте bForceNoMovies=true в KFEngine.ini или добавьте -nostartupmovies в параметры запуска Steam.
Сохраняются ли правки после проверки файлов Steam?
Удалённые файлы эффектов и изменённые ini откатываются при проверке целостности, их нужно применить заново.