Abiotic Factor

Abiotic Factor

41 ratings
Optimized frame rate configuration (my settings) (depreciated!)
By Kai
NEW UPDATE: See my thread on DXVK as a possible alternative for performance (especially if you got a old GPU)
https://steamhost.cn/steamcommunity_com/app/427410/discussions/0/4762081699104744300/

UPDATE: It seems like the developers basically rendered the ability to use config files to override ingame functionalities to be moot, by editing their executable to basically ignore the config files. I'm not sure if the settings needs to be saved somewhere else since everything you toggle has to be saved as data somewhere.

Essentially this disables all the UE5 stuff that kills performance, and may or may not help, but it at least becomes viable to know what the cvar is.

Added:
You use the config files that already exists in the "%LOCALAPPDATA%\AbioticFactor\Saved\Config\Windows"
Some ini files might not be there so you may need to create them as a text file then rename to the ".ini" extension.

Naming format used in this guide are generally 'Engine' and 'Scalability' ini files.
2
2
   
Award
Favorite
Favorited
Unfavorite
Configuration
EDIT2: My configuration works on other UE5 games too, for instance Stalker 2:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=3370303301

EDIT: New Cvar I found from a youtuber's video
r.TemporalAA.Algorithm=0
r.TemporalAA.HistoryScreenPercentage=200
r.TemporalAA.Upsampling=1
r.TemporalAACatmullRom=0
r.TemporalAAFilterSize=0.09
r.TemporalAASamples=2
r.TemporalAACurrentFrameWeight=0.6



Engine.ini

[SystemSettings] r.DynamicGlobalIlluminationMethod=0 r.Lumen.DiffuseIndirect.Allow=0 r.Lumen.HardwareRaytracing=0 r.Lumen.Reflections.HardwareRayTracing=0 r.Lumen.ScreenProbeGather.ShortRangeAO=0 r.Lumen.Reflections.Temporal=0 r.Lumen.ScreenProbeGather.Temporal.MaxFramesAccumulated=4 r.Lumen.ScreenProbeGather.TemporalFilterProbes=0 r.ReflectionMethod=2 r.Nanite=0 r.VRS.Enable=true r.VRS.BasePass=2 r.VRS.NaniteEmitGBuffer=2 r.VRS.Translucency=1 r.VRS.LightFunctions=1 r.VRS.ReflectionEnviromentSky=2 r.VRS.SSR=2 r.VRS.SSAO=0 r.RayTracing=0 r.RayTracing.Enable=0 r.RayTracing.GlobalIllumination=0 r.RayTracing.Reflections=0 r.RayTracing.Reflections.Hybrid=0 r.RayTracing.Reflections.Shadows=0 r.RayTracing.Shadows=0 r.RayTracing.ForceAllRayTracingEffects=0

Scalability.ini

[PostProcessQuality@0] r.DynamicGlobalIlluminationMethod=0 r.BlurGBuffer=0 r.AmbientOcclusionRadiusScale=1.7 r.BloomQuality=4 r.Tonemapper.Sharpen=1.25 r.MipMapLODBias=-5.00 r.TemporalAA.Algorithm=0 r.TemporalAA.HistoryScreenPercentage=200 r.TemporalAA.Upsampling=1 r.TemporalAACatmullRom=0 r.TemporalAAFilterSize=0.09 r.TemporalAASamples=2 r.TemporalAACurrentFrameWeight=0.6 [PostProcessQuality@1] r.DynamicGlobalIlluminationMethod=0 r.BlurGBuffer=0 r.AmbientOcclusionLevels=0 r.AmbientOcclusionRadiusScale=1.7 r.DepthOfFieldQuality=0 r.RenderTargetPoolMin=300 r.FastBlurThreshold=0 r.Upscale.Quality=1 r.Tonemapper.Sharpen=1.25 r.MipMapLODBias=-5.00 r.TemporalAA.Algorithm=0 r.TemporalAA.HistoryScreenPercentage=200 r.TemporalAA.Upsampling=1 r.TemporalAACatmullRom=0 r.TemporalAAFilterSize=0.09 r.TemporalAASamples=2 r.TemporalAACurrentFrameWeight=0.6 [PostProcessQuality@2] r.DynamicGlobalIlluminationMethod=0 r.BlurGBuffer=0 r.AmbientOcclusionLevels=0 r.AmbientOcclusionRadiusScale=1.7 r.DepthOfFieldQuality=0 r.RenderTargetPoolMin=300 r.LensFlareQuality=0 r.SceneColorFringeQuality=0 r.FastBlurThreshold=0 r.Upscale.Quality=1 r.Tonemapper.GrainQuantization=0 r.Tonemapper.Sharpen=1.25 r.MipMapLODBias=-5.00 r.TemporalAA.Algorithm=0 r.TemporalAA.HistoryScreenPercentage=200 r.TemporalAA.Upsampling=1 r.TemporalAACatmullRom=0 r.TemporalAAFilterSize=0.09 r.TemporalAASamples=2 r.TemporalAACurrentFrameWeight=0.6 [PostProcessQuality@3] r.DynamicGlobalIlluminationMethod=0 r.BlurGBuffer=0 r.AmbientOcclusionLevels=0 r.AmbientOcclusionRadiusScale=1.7 r.DepthOfFieldQuality=0 r.RenderTargetPoolMin=300 r.LensFlareQuality=0 r.SceneColorFringeQuality=0 r.FastBlurThreshold=0 r.Upscale.Quality=1 r.Tonemapper.GrainQuantization=0 r.Tonemapper.Sharpen=1.25 r.MipMapLODBias=-5.00 r.TemporalAA.Algorithm=0 r.TemporalAA.HistoryScreenPercentage=200 r.TemporalAA.Upsampling=1 r.TemporalAACatmullRom=0 r.TemporalAAFilterSize=0.09 r.TemporalAASamples=2 r.TemporalAACurrentFrameWeight=0.6 [ReflectionQuality@0] r.Lumen.Reflections.DownsampleFactor=2 r.Lumen.Reflections.MaxRoughnessToTraceForFoliage=0.2 r.Lumen.Reflections.ScreenSpaceReconstruction.TonemapStrength=1 r.Lumen.TranslucencyReflections.FrontLayer.Allow=0 r.Tonemapper.Sharpen=1.25 r.MipMapLODBias=-5.00 [ReflectionQuality@1] r.SSR.Quality=0 r.Lumen.Reflections.DownsampleFactor=2 r.Lumen.Reflections.MaxRoughnessToTraceForFoliage=0.2 r.Lumen.Reflections.ScreenSpaceReconstruction.TonemapStrength=1 r.Lumen.TranslucencyReflections.FrontLayer.Allow=0 r.Tonemapper.Sharpen=1.25 r.MipMapLODBias=-5.00 [ReflectionQuality@3] r.SSR.Quality=2 r.SSR.HalfResSceneColor=1 r.Lumen.Reflections.Allow=0 r.Lumen.Reflections.DownsampleFactor=2 r.Lumen.Reflections.MaxRoughnessToTraceForFoliage=0.2 r.Lumen.Reflections.ScreenSpaceReconstruction.TonemapStrength=1 r.Lumen.TranslucencyReflections.FrontLayer.Allow=0 r.Tonemapper.Sharpen=1.25 r.MipMapLODBias=-5.00 [ShadowQuality@0] r.LightFunctionQuality=1 r.Shadow.MaxResolution=512 r.Shadow.RadiusThreshold=0.06 r.Shadow.DistanceScale=0.8 [ShadowQuality@1] r.ShadowQuality=1 r.Shadow.MaxResolution=1024 r.Shadow.RadiusThreshold=0.05 r.Shadow.DistanceScale=0.9 r.Shadow.CSM.TransitionScale=0.2 [ShadowQuality@2] r.ShadowQuality=2 r.Shadow.CSM.MaxCascades=2 r.Shadow.DistanceScale=1.0 r.Shadow.CSM.TransitionScale=0.5 [ShadowQuality@3] r.ShadowQuality=3 r.Shadow.CSM.MaxCascades=4 r.Shadow.MaxResolution=1024 r.Shadow.RadiusThreshold=0.03 r.Shadow.CSM.TransitionScale=0.7 [FoliageQuality@1] foliage.DensityScale=0 grass.DensityScale=0 [FoliageQuality@2] foliage.DensityScale=0 grass.DensityScale=0 [FoliageQuality@3] foliage.DensityScale=0 grass.DensityScale=0

Try these cvar out yourself to tweak the game basically, obviously the effects of these command lines varies but for the most part, nothing is touching the textures and stuff. It's just the minor stuff that would otherwise kill GPU performance.

My PC went from 30 fps on my 7900 XTX due to immense use of raytracing and lumen global illumination, to 144 fps, and it looks almost exactly the same gameplay.

https://youtu.be/M00DGjAP-mU?si=AB5QrKF9kh0juOom

UE5 apparently isn't all people think it is.
101 Comments
Kai  [author] 25 Jul @ 10:22am 
I can confirm that the engine.ini gets erased and replaced with a empty one, so you will need to do a read-only permission to lock it.

I suggest doing the same with scalability but right now mine doesn't seem to get overriden, so use scalability.ini to update the cvar in the game.
Kai  [author] 7 Jun @ 3:05pm 
That's good it still works
TaurusJ3 7 Jun @ 8:20am 
apparently if you just create the text documents copy and paste it then set it to read only it works thank you so much for the comment that figured it out i remember how pissed i was after the update because i wanted to set all my games on my new ssd and was now getting fps drops like crazy now i get 120 when the areas are loaded
Kai  [author] 8 Apr @ 11:22am 
https://steamhost.cn/steamcommunity_com/app/427410/discussions/0/4762081699104744300/

My thread in the forums on a DXVK solution, we don't technically need a guide yet unless someone else wants to streamline it.
AguilaDeAcero 8 Feb @ 9:51pm 
Wellk U5 and forced Lumen it's a big turd...
Dainank 20 Oct, 2024 @ 2:08pm 
Okay thanks for the insights!
Kai  [author] 20 Oct, 2024 @ 1:46pm 
"OptiScaler is middleware that enables various upscaling technologies in DLSS2-only games. It allows non-Nvidia users to use upscaling by applying DLSS2 inputs to XeSS, FSR2, or FSR3. It also offers extensive customization options for all users, including those with Nvidia GPUs using DLSS."
Kai  [author] 20 Oct, 2024 @ 1:46pm 
I did notice Optiscaler mod that popped up on github that is being talked about by gaming channels. You could try that.
https://github.com/cdozdil/OptiScaler
Kai  [author] 20 Oct, 2024 @ 1:45pm 
There is no alternative guide for messing with UE5 configuration on it's own, they locked us out of that. The only other way you can tweak this game is though modding, but I haven't seen any benefit using DXVK to replace DX12.

Then the other gains I could get is using my hardware drivers like frame generation and all those stuff, the software of the game itself is mostly locked out (if there is any other way I dunno).
Kai  [author] 20 Oct, 2024 @ 1:43pm 
@Dainank anything you do to the config files might not work now, basically changing the acceptable settings still work (like 1 to 4 for low medium high epic), but you can't purposely put cvar in the file to run more commands, it won't listen to it.