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

KF2: полезные ini-твики - FPS без лимита, больше gore, текстуры

В Killing Floor 2 много полезных настроек, которых нет в игровом меню. Здесь собраны стабильные проверенные твики для FPS, текстур и теней, стриминга текстур, gore, ввода и звука. Файл .ini - это скрытый набор подробных настроек; неверное изменение может привести к вылетам, поэтому правьте осторожно. Если что-то пошло не так, удалите ini-файлы, и игра создаст значения по умолчанию. Смотрите также полное руководство Tweaks and Improvements.

Где лежат файлы

Запустите игру хотя бы раз, чтобы файлы появились. Они находятся здесь:

C:\Users\<пользователь>\Documents\My Games\KillingFloor2\KFGame\Config

Открывайте нужный файл Блокнотом, ищите записи через Ctrl+F, меняйте и сохраняйте через «Файл - Сохранить».

Снятие лимита FPS

По умолчанию игра ограничена 60 FPS. Параметр Variable Framerate поднимает потолок до 150, но не снимает лимит полностью. В некоторых руководствах советуют ставить bSmoothFrameRate в FALSE, но тогда в мультиплеере останется потолок 150, поэтому оставьте TRUE.

Сначала отключите Variable Framerate в настройках игры, затем отредактируйте:

KFEngine.ini

bSmoothFrameRate=TRUE
MinSmoothedFrameRate=1
MaxSmoothedFrameRate=999

(каждая запись встречается в KFEngine.ini дважды - меняйте оба вхождения)

KFGame.ini

bSmoothFrameRate=True
MinSmoothedFrameRate=1
MaxSmoothedFrameRate=999

(здесь bSmoothFrameRate тоже встречается дважды)

Текстуры, тени и отражения

KFSystemSettings.ini, раздел [SystemSettings]:

DetailMode=5
MinShadowResolution=2048
MinPreShadowResolution=4096
MaxShadowResolution=4096
MaxWholeSceneDominantShadowResolution=4096
ShadowFadeResolution=1024
PreShadowFadeResolution=4096
bEnableForegroundSelfShadowing=True

В том же файле измените все строки TEXTUREGROUP_..., чтобы они использовали MinLODSize=1,MaxLODSize=4096,LODBias=0,MinMagFilter=Aniso,MipFilter=Linear (или Point в строках, где он уже Point),MipGenSettings=TMGS_Sharpen5. Пример:

TEXTUREGROUP_World=(MinLODSize=1,MaxLODSize=4096,LODBias=0,MinMagFilter=Aniso,MipFilter=Linear,MipGenSettings=TMGS_Sharpen5)

Тот же шаблон применяется к группам Character, Weapon, Vehicle, Cinematic, Effects, Skybox, UI, Lightmap, Shadowmap, Creature, Weapon3rd, Cosmetic и другим, включая варианты NormalMap и Specular. MipFilter в каждой строке оставляйте прежним. Особые случаи автора: у TEXTUREGROUP_Shadowmap остаётся NumStreamedMips=3, у TEXTUREGROUP_ImageBasedReflection MinLODSize=256, у TEXTUREGROUP_Bokeh MinMagFilter=Linear. Также задайте InstancedRendering=False.

KFEngine.ini, раздел [Engine.Engine]:

MaxProcBuildingLODColorTextureSize=4096
MaxProcBuildingLODLightingTextureSize=4096
ImageReflectionTextureSize=4096

Отключение texture streaming

Стриминг текстур может вызывать заикания и появление текстур на ходу. Если у видеокарты минимум 6 ГБ VRAM, лучше его отключить, чтобы всё загружалось в видеопамять при старте уровня. В большинстве руководств меняют только bUseTextureStreaming, но этого мало; поменяйте всё следующее:

KFEngine.ini

bUseTextureStreaming=False
bUseBackgroundLevelStreaming=False
AllowStreamingLightmaps=False
UsePriorityStreaming=False
UseDynamicStreaming=False

KFGame.ini

bUseBackgroundLevelStreaming=False

Больше gore и трупов

В KFGame.ini, раздел [KFGame.KFGoreManager], значения по умолчанию такие:

GoreFXLifetimeMultiplier=1.200000
BodyWoundDecalLifetime=30.000000
BloodSplatterLifetime=10.000000
BloodPoolLifetime=20.000000
GibletLifetime=10.000000
MaxBodyWoundDecals=5
MaxBloodSplatterDecals=20
MaxBloodPoolDecals=20
BloodSplatSize=100.000000
BloodPoolSize=125.000000
MaxDeadBodies=15
MaxBloodEffects=40
MaxGoreEffects=15

Рекомендации автора (меняйте по вкусу, но слишком большие значения могут вызвать заикания или вылеты):

ПараметрПо умолчаниюРекомендуется
MaxBodyWoundDecals520
MaxBloodSplatterDecals2080
MaxBloodPoolDecals2080
MaxDeadBodies1580
MaxBloodEffects4080
MaxGoreEffects1580

Остальные записи (время жизни, размеры, AllowBloodSplatterDecals=True, PersistentSplatTraceLength=1000, MaxPersistentSplatsPerFrame=100) остаются как были.

Дополнительные твики

  • KFSystemSettings.ini: FlexRigidBodiesCollisionAtHighLevel=True - трупы сталкиваются и складываются в кучи, а не проходят друг сквозь друга.
  • KFInput.ini: bEnableMouseSmoothing=false и bViewAccelerationEnabled=False отключают сглаживание и ускорение мыши для более отзывчивого прицеливания.
  • KFEngine.ini: AllowNvidiaStereo3d=True и MaxChannels=128 дают более объёмный звук и позволяют воспроизводить гораздо больше звуков одновременно.
  • Параметр запуска -nostartupmovies (библиотека Steam, шестерёнка, «Свойства», «Общие», «Параметры запуска») пропускает вступительные ролики.

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

Как полностью снять лимит FPS в KF2?
Отключите Variable Framerate в настройках, затем в KFEngine.ini и KFGame.ini задайте bSmoothFrameRate=TRUE, MinSmoothedFrameRate=1 и MaxSmoothedFrameRate=999 (меняйте все вхождения).
Почему bSmoothFrameRate лучше оставить TRUE, а не FALSE?
По словам автора, при FALSE лимит снимается только в одиночной игре, а в мультиплеере остаётся 150 FPS; TRUE с указанными значениями работает в обоих режимах.
Что будет, если выставить слишком большие значения gore?
Возможны заикания и вылеты. В руководстве приведены значения по умолчанию, чтобы вернуть их, либо удалите ini-файлы, и игра создаст новые.