INI Tuning Assistant

This page is designed to help you customize your configuration by offering a visual comparison of different settings and helping you determine the ones right for your hardware and personal taste.

  1. First, download the default recommended INI. This one is tuned for high-end configurations, but can be adjusted below in the "Optimizations" section.

If you are happy with the performance (framerates) after the ini adjustments- feel free to skip to the "Visual Preferences" section down below.

1b. Alternative default INI configurations:

Optimized default for Low-to-Medium configurations: https://www.nexusmods.com/dragonquestxisdefinitiveedition/mods/198

Optimized default for Steam Deck: https://www.nexusmods.com/dragonquestxisdefinitiveedition/mods/171

--------------

If unsure: stick with the high-end configuration listed at the top of this page, and follow the "Optimizations" section below. It's much easier to scale-down a good looking configuration to perform better, than to try to scale-up a worse looking configuration to look better!

2. Next, lets determine the capabilities of your hardware by looking up the name of your CPU and GPU using these widgets:

Use these Passmark values as a general guideline:

20000+ -> Very High, you should have very little performance drawback, feel free to use any/all tweaks as they are

15000-20000 -> High, you might have some performance drawback, maybe take a few things in mind when recommended below but otherwise don't worry much

10000-15000 -> Medium, there will be some performance drawback, take some recommendations but don't need to take extreme measures. use the

5000-10000 -> Low, you're absolutely going to be sacrificing framerates for visuals, take the recommendations below to strip things down and find a happy medium

less than 5000 -> Very Low, consider starting from scratch and using the basic tweaks posted here instead, maybe adding a couple things with virtually no performance impact [See: "Visual Preferences" section below] to match your tastes.

below 1000 -> Ooof. Try Low-Spec Optimizations

NOTE: Any of the values shown below can just be pasted at the bottom of the Engine.ini you downloaded in step 1.

They will take precedence over anything else.

Optimizations

  • r.ScreenPercentage - highly depends on the resolution you run the game at and your GPU performance.

--> Values above 100 enables superscaling. This increases the internal render resolution of the game above the display resolution.

Superscaling gets exponentially more taxing the higher your display resolution is.

A value of "150" may markedly improve visuals @ 720p with a "Low" class GPU, or as high as @ 1080p with a "Medium" class GPU with minimal performance hit to each.
Resolutions
between 1440p and 4k will see less gain at a higher cost to performance. With a "High" class GPU the maximum value should be "125" at the most.

If you run a display above 1080p that outclasses your GPU ("Medium" or below) -- recommended value: 100

r.ScreenPercentage=150

r.ScreenPercentage=100

  • r.JackLoadReduction.HiddenThresholdDistance - Controls how far away you will see NPCs

--> Recommended values are between 12000 (this was about OG version's default) and 15000 - you'll basically be able to see NPCs from across town in virtually any situation.

"Medium" or "Low" class CPUs/GPUs may see a small performance gain from a value of 8000, without much noticeable drawback.

r.JackLoadReduction.HiddenThresholdDistance=15000

r.JackLoadReduction.HiddenThresholdDistance=8000

  • r.ViewDistanceScale - Controls how far away many world elements are drawn. Most will want to leave it where it is ("5" by default).

--> "Very High" configurations might consider raising the value to "6" or "7"

"Medium" configurations might consider lowering the value slightly to "4" to provide a small performance benefit

"Low" configurations should probably lower this value to "2" or "3"

r.ViewDistanceScale=2

r.ViewDistanceScale=6

  • r.JackMonsterViewDistanceScale - Controls how far away you will see monsters spawn (also somewhat depends on r.ViewDistanceScale above)

--> "High" configurations might try a value of 3

"Medium" configurations- leave it alone ("2" by default)

"Low" configurations- use a value of 1

r.JackMonsterViewDistanceScale=1

r.JackMonsterViewDistanceScale=3

  • r.SSS.HalfRes controls the resolution of the subsurface scattering model (basically how high-resolution the reflections are). Oftentimes the change in the resolution of the reflections are very difficult to notice in-game, so this is a near-universal performance gain without much quality loss.

---> "High" configurations may consider setting r.SSS.HalfRes=1 particularly if you notice reflections are slow to change when moving the camera around

"Medium" and below builds should set r.SSS.HalfRes=1 as well

r.SSS.HalfRes=1

r.SSS.HalfRes=0

  • foliage.LODDistanceScale - Controls the scale at which LODs (or Levels of Detail) are applied to foliage at certain distances. A higher value means higher levels of detail remain at larger distances

NOTE: Earlier INI configurations (including the default recommended linked above) set this at an arbitrarily high value (15) to prevent the game from loading lower LODs with the default grass. The default grass used very few LOD levels which caused LOD scaling to be jarringly obvious.

--> "Very High" configurations should lower the value to "7" or "8" at most

"High" configurations should consider a value of "5" or "6"

"Medium" configurations might consider lowering the value to "4"

"Low" configurations should probably lower this value to "3" (or below)

Those using the Grass and Foliage Mod should notice a considerable performance benefit by lowering this value with no visual impact. This is because the mod makes much more fine-grained use of LODs than the original grass.

(The images below have been repurposed from above, but showcase the same basic concept)

foliage.LODDistanceScale=2

foliage.LODDistanceScale=6

Miscellaneous

  • r.Streaming.PoolSize - This should be approximately half your VRAM. You can use the "Find GPU" tool in step 2, which should tell you how much VRAM your card has.

Ex: Your card has 4GB VRAM ("Medium") -- "r.Streaming.PoolSize=2048"

Ex: Your card has 3GB VRAM ("Low") -- "r.Streaming.PoolSize=1500"

Ex: Your card has 6GB+ VRAM ("High") -- (leave it alone) or "r.Streaming.PoolSize=3072"

  • r.Streaming.FramesForFullUpdate - This will depend on your CPU.

-"Very High" CPU -- "r.Streaming.FramesForFullUpdate=2"

-"Medium" CPU -- "r.Streaming.FramesForFullUpdate=4"

-"Low" CPU -- "r.Streaming.FramesForFullUpdate=5"

  • a.URO - "Update Rate Optimization". Only mess with this if you run a "Low" class CPU or "Medium" at the highest

"a.URO.ForceInterpolation=0" and "a.URO.ForceAnimRate=0"

  • r.PostProcessingColorFormat and r.HZBOcclusion - Provides a very slight visual quality difference for higher CPU load

-GPU > CPU? -- "r.PostProcessingColorFormat=0" and "r.HZBOcclusion=0"

Visual Preferences

NOTE: Any of the values shown below can just be pasted at the bottom of the Engine.ini you downloaded in step 1.

They will take precedence over anything else.


Motion Blur

  • Some people suffer from motion sickness or otherwise cannot stand the effects of motion blur.

--> For these individuals, "r.DefaultFeature.MotionBlur=0" should be set at the bottom of the ini to disable motion blur.

Depth of Field

  • Likewise, Depth of Field is a very divisive option and can be disabled. This creates an artificial "lens focus" effect, blurring objects in the background

r.DepthofFieldQuality=0

r.DepthofFieldQuality=4

Eye Adaptation

  • Similar to the two effects above, eye adaptation is designed to simulate the behavior of human eyes when lighting conditions change (it can be very strong, however).

Example: When walking from a dark room out into the sunlight (or vice versa), the strength of the lighting changes

--> r.EyeAdaptationQuality=0 to disable

Dim lighting indoors

Bright when first walking outside

Eyes "adjust" after a few moments

Screen Space Reflections (SSR) Style

  • r.SSR.Cone enables a far more diffuse style of Screen Space Reflection that gives floors and other reflective surfaces a more "realistically scuffed" instead of a "freshly polished" look

r.SSR.Cone=1

r.SSR.Cone=0

Bloom

  • r.BloomQuality can either disable and/or control the quality of the bloom effects

r.BloomQuality=0

r.BloomQuality=5

  • r.Bloom.Cross controls the strength of the bloom effect (can have different effects with either a positive or negative value)

r.Bloom.Cross=0

r.Bloom.Cross=-0.7

  • r.BloomReduceFlicking affects not only the strength of bloom, but particle effects, reflections, and much more

--> This can be used to make reflective materials "shimmer" less (very subjective)

r.BloomReduceFlicking=1

r.BloomReduceFlicking=1

r.BloomReduceFlicking=0

r.BloomReduceFlicking=0

Note: The exact ideal values for the cvars listed below can vary wildly based on your display type, display resolution, and even video card settings
(NVIDIA users may want to make sure they
disable "Digital Vibrance" in the NVIDIA control panel!)

Tonemapper (Sharpening)

  • r.ToneMapper.Sharpen allows you to sharpen the graphics using the tonemapper. Set to "0" to disable

--> Those using 4k Upscaled Textures may find a slightly higher value more ideal.

r.ToneMapper.Sharpen=0

r.ToneMapper.Sharpen=1

r.ToneMapper.Sharpen=3

Color Balance

  • r.ToneMapperGamma enables a non-linear ("s-curve") gamma output - changes how colors are scaled ("0" and/or "2" reverts to linear gamma!)

  • r.Color.Mid - directly affects the vibrance of colors by changing the "midpoint" of the color spectrum

r.ToneMapperGamma=0 (or r.ToneMapperGamma=2)

r.ToneMapperGamma=1.5

r.ToneMapperGamma=0.5

r.Color.Mid=0.35

r.Color.Mid=0.7

r.Color.Mid=0.9

Antialiasing

There are a couple different types of antialiasing available:

  • TAA (Temporal Antialiasing): This is the type that most will prefer and the default in the recommended INI -- r.DefaultFeature.Antialiasing=2

  • FXAA (Fast Approximate Antialiasing): Produces less ideal results, very slightly less performance impact -- r.DefaultFeature.Antialiasing=1

The big tradeoff between these two is that TAA offers better results by blending between multiple (previous) frames -- however, this can also result in ghosting on some configurations. (UE4's TAA implementation is notorious for its drawbacks, though it has been patched over time)

There are a few ways for tuning TAA, but there isn't one perfect fix.

  • The most foolproof "ghosting fix" is by reverting to FXAA by using "r.DefaultFeature.Antialiasing=1" -- this will result in lower quality AA, however


Tuning TAA

  • r.TemporalAASamples - controls the # of frames that are used to sample AA

-Default is 32

-Lower this value for a sharper image -- anywhere from 4-16

  • r.TemporalAAFilterSize - controls the "spread" of the TAA samples

-Default is 0.6

-Lower this value for a sharper image -- anywhere from 0.2 to 0.5

  • r.TemporalAACurrentFrameWeight - sets the weight the most recent frame has on TAA

-Default is 0.08

-Increase this value for a sharper image -- anywhere from 0.12 to 0.30

NOTE: Adjusting any of these values too far will result in "shimmering" instead


Alternatives

  • Some may find that disabling motion blur (see above) helps alleviate issues with ghosting in TAA.

  • Superscaling can also be used to supplement AA. Try increasing r.ScreenPercentage if it doesn't impact performance.

  • Your GPU may even have its own AA settings that can be used (you'll have to look in your GPU's control panel), in which case you can switch off in-game AA and just use that.