User:Kesta/FO4Configuration

From Step Mods | Change The Game

Introduction

This page aim to provide both basics and advanced informations on how to configure Fallout 4 with the launcher options, in-game configuration menu, and INI modifications.

It is critical to understand that ALL the external configuration of the game is handled through the INI parameters. The options menu in the launcher, the in-game configuration menu, and various third-party tools to alter the settings are only graphical interface to edit them in a convenient manner.

Settings non exposed through the INI files are handled inside plugins (.esp and .esm files) in the form of "Game Settings - GMST" records, and need a plugin active in the load order to be altered.


Files relevant to the actual configuration are located in ...\My Documents\My Games\Fallout4 and are :

  • Fallout4.ini
  • Fallout4Prefs.ini
  • Fallout4Custom.ini
  • ControlMap_Custom.txt

Other INI files located in the game's installation folder are only used as presets by the launcher to generate pre-defined configurations (see Launcher's Initialization section).

Fallout4.ini

Fallout4.ini handle general settings. This file is created once by the launcher's initialisation process (see Launcher's Initialization section), and never altered again by launcher's options menu nor the in-game configuration menu. Note that by default, very few of the available settings are actually present in the file.

Fallout4Prefs.ini

Fallout4Prefs.ini handle most of the configurable settings. This is the file altered by the launcher's options and the in-game configuration menu, and allow the user to customize their experience.

Fallout4Custom.ini

Fallout4Custom.ini is used atop of Fallout4.ini.
Settings present in Fallout4Custom.ini will override their equivalent in Fallout4.ini (and only fallout4.ini, it is impossible to use this file to override Fallout4Prefs.ini).

ControlMap_Custom.txt

ControlMap_Custom.txt is the file altered by the "Controls" section of the in-game configuration menu. This file isn't created by default, but only if the user modify at least one binding through the menu. Note that because of the very limited possibilities of rebinding in Fallout 4, the use of this file and the configuration menu is deprecated, in favor of the Fallout 4 Script Extender rebinding feature. Thus, this file should be deleted if present to let F4SE rebinding take precedence.

Additional INIs modifications

It is also possible for a mod to override an INI setting from Fallout4.ini (exactly like Fallout4Custom.ini do), and by extension those from Fallout4Custom.ini. This is done by supplying an INI file along with a plugin, with the following conditions :

  • PluginName.esp is active in the load order.
  • PluginName.ini is present in the Data folder, and its name match exactly the plugin's name.
  • PluginName.ini contains valid settings.
  • If two mods use this method to override the same setting, the one associated with the higher's priority plugin take precedence.

There is a way to alter the configuration in-game, by using console commands.

  • SetINISetting or setini can modify the value of an INI parameter. This command use the following syntax :
    setini "Parameter:Category" value

Other notable commands related to INI configuration are :

  • GetINISetting or getini : display the value of an INI parameter in the console, or an error message if the setting is invalid. This command use the following syntax :
    getini "Parameter:Category"
  • RefreshINI or refini : refresh the game's configuration based on the INI parameters. This can be used to force manual modifications made to the INI files while the game were running to take effect.
  • SaveINIFiles or saveini : Save a file in the Data folder by the name of XXX.ini with the full list of valid INI parameters and their value as seen by the game when the command have been used. XXX is the name of the last plugin in the load order (Fallout4.ini in case no mods are installed).

The Fallout 4 Launcher

This chapter describe the behavior of the official launcher configuration tool, and its interaction with the INI parameters.

Initialization process

INI files will be created when you first run the launcher and get this message

Fo4detectvidhardware.PNG

The initialisation process compare your hardware and choose a preset between "Low", "Medium", "High", and "Ultra", and generate Fallout4.ini and Fallout4Prefs.ini with the following protocol :

  1. Fallout4_Default.ini is copied and renamed as Fallout4.ini
  2. Fallout4Prefs.ini located in the Fallout4 folder is copied and renamed Fallout4Prefs.ini
  3. The sD3DDevice is added to Fallout4Prefs.ini under the [Display] section and contains the name of your identified GPU.
  4. Settings from the selected preset (Low, Medium, High or Ultra) are read from Low.ini/Medium.ini/High.ini/Ultra.ini and override the settings in Fallout4Prefs.ini
Warning-Logo.png
WARNING:
It appears that some settings aren't read from the Low/Medium/High/Ultra ini files and thus can't override those in Fallout4Prefs.ini

This process have several impacts on your INI files :

  • Each time the initialization process run both Fallout4.ini et Fallout4Prefs.ini are completely replaced. Fallout4Custom.ini, if present, will remain unaffected.
  • It is possible to modify the default values used to generate Fallout4.ini and Fallout4Prefs.ini by modifying the Fallout4_Defaults.ini and Fallout4\Fallout4Prefs.ini files in the installation folder.
  • Irrelevant settings (usually typo errors from Bethesda or artifacts from previous games) that can be found in those files will be carried over your INI files despite being bogus.

The sD3DDevice parameter contains a value representing the name of your GPU. If your GPU is unrecognized (most likely because it is below the official Bethesda's specifications), this setting can default to "AMD Radeon HD 8950", which is the official minimal requirement to run the game. Note that this setting isn't used by the game itself and having it set to a value which doesn't match your actual configuration only affect the launcher's behavior.

Everytime the launcher is run, it scan the hardware and compare it against the sD3DDevice parameter from Fallout4Prefs.ini. If it doesn't match, it will update the INIs using one of the preset according to the detected hardware, repeating steps 3 and 4 of the initialization process.

Options configuration

The launcher's options configuration menu is accessed by clicking on "Options" in the launcher.

The impact of the various options on the INI configuration files is described below.

Using this menu to alter the configuration will only modify the related parameters in the INI files, without completely replacing it. Each setting configurable here affect one or several INI parameters in a pre-defined way as described below.


Graphics Adapter and Resolution

Fo4options.PNG

Resolutions

[Display]
iSize H=XXXX
iSize W=XXXX

Match selected value.

Antialiasing

Off
[Display]
sAntiAliasing=
FXAA
[Display]
sAntiAliasing=FXAA
TAA
[Display]
sAntiAliasing=TAA

Anisotropic Filtering

Off
[Display]
iMaxAnisotropy=1
Info-Logo.png
NOTE:
While choosing "Off" in the options set iMaxAnisotropy to 1, the default value for this setting in the Low preset is 0
2 Samples
[Display]
iMaxAnisotropy=2
4 Samples
[Display]
iMaxAnisotropy=4
8 Samples
[Display]
iMaxAnisotropy=8
12 Samples
[Display]
iMaxAnisotropy=12
16 Samples
[Display]
iMaxAnisotropy=16

Other

Windowed Mode

Off
[Display]
bFullScreen=1
iSize H=XXXX
iSize W=XXXX
On
[Display]
bFullScreen=0
iSize H=XXXX
iSize W=XXXX

Borderless

Off
[Display]
bBorderless=0
On
[Display]
bBorderless=1

Advanced - Details

Fo4advoptions.PNG

Texture Quality

While this option exist in the launcher, the affected INI setting is actually unrecognized by the game. This option is an artifact from previous Bethesda games and is obsolete in Fallout 4. Mipmaps are managed through the new .BA2 archive format in a much more efficient way.

Medium
[Display]
iTexMipMapSkip=2
High
[Display]
iTexMipMapSkip=1
Ultra
[Display]
iTexMipMapSkip=0

Shadow Quality

Low
[Display]
uiOrthoShadowFilter=1
uiShadowFilter=1
iShadowMapResolution=1024
iMaxFocusShadows=1
fBlendSplitDirShadow=0
Medium
[Display]
uiOrthoShadowFilter=2
uiShadowFilter=2
iShadowMapResolution=2048
iMaxFocusShadows=2
fBlendSplitDirShadow=48
High
[Display]
uiOrthoShadowFilter=3
uiShadowFilter=3
iShadowMapResolution=2048
iMaxFocusShadows=4
fBlendSplitDirShadow=48
Ultra
[Display]
uiOrthoShadowFilter=3
uiShadowFilter=3
iShadowMapResolution=4096
iMaxFocusShadows=4
fBlendSplitDirShadow=48

Shadow Distance

Medium
[Display]
fDirShadowDistance=3000
fShadowDistance=3000
iDirShadowSplits=2
High
[Display]
fDirShadowDistance=14000
fShadowDistance=14000
iDirShadowSplits=3


Ultra
[Display]
fDirShadowDistance=20000
fShadowDistance=20000
iDirShadowSplits=3

Decal Quantity

There is multiple issues with the Decal Quantity option. bDecals, bSkinnedDecals, uMaxSkinDecals and uMaxSkinDecalsPerActor are misplaced by this option in Fallout4Prefs.ini while they would actually belong into Fallout4.ini. To have these options working as expected, they should be set by adding them to Fallout4Custom.ini. Atop of this issue, uMaxSkinDecalsPerActor should be spelled uMaxSkinDecalPerActor instead to take effect.

None
[Display]
iMaxSkinDecalsPerFrame=0
iMaxDecalsPerFrame=0

[Decals]
uMaxDecals=0
[Decals]
bDecals=0
bSkinnedDecals=0
uMaxSkinDecals=0
uMaxSkinDecalsPerActor=0
Medium
[Display]
iMaxSkinDecalsPerFrame=3
iMaxDecalsPerFrame=10

[Decals]
uMaxDecals=100
[Decals]
bDecals=1
bSkinnedDecals=1
uMaxSkinDecals=35
uMaxSkinDecalsPerActor=20
High
[Display]
iMaxSkinDecalsPerFrame=25
iMaxDecalsPerFrame=100

[Decals]
uMaxDecals=250
[Decals]
bDecals=1
bSkinnedDecals=1
uMaxSkinDecals=50
uMaxSkinDecalsPerActor=40
Ultra
[Display]
iMaxSkinDecalsPerFrame=25
iMaxDecalsPerFrame=100

[Decals]
uMaxDecals=1000
[Decals]
bDecals=1
bSkinnedDecals=1
uMaxSkinDecals=100
uMaxSkinDecalsPerActor=40

Lighting Quality

Medium
[Display]
bForceIgnoreSmoothness=1

[LightingShader]
bScreenSpaceSubsurfaceScattering=0
High
[Display]
bForceIgnoreSmoothness=0

[LightingShader]
bScreenSpaceSubsurfaceScattering=0
Ultra
[Display]
bForceIgnoreSmoothness=0

[LightingShader]
bScreenSpaceSubsurfaceScattering=1


Godrays Quality

None
[Display]
iVolumetricLightingQuality=0
bVolumetricLightingEnable=0
Low
[Display]
iVolumetricLightingQuality=0
bVolumetricLightingEnable=1
Medium
[Display]
iVolumetricLightingQuality=1
bVolumetricLightingEnable=1
High
[Display]
iVolumetricLightingQuality=2
bVolumetricLightingEnable=1
Ultra
[Display]
iVolumetricLightingQuality=3
bVolumetricLightingEnable=1

Depth of Field

Standard
[Imagespace]
bDoDepthOfField=1
bScreenSpaceBokeh=0
Bokeh
[Imagespace]
bDoDepthOfField=1
bScreenSpaceBokeh=1

Ambient Occlusion

Off
[Display]
bSAOEnable=0
SSAO
[Display]
bSAOEnable=1

Screen Space Reflection

On
[Display]
bScreenSpaceReflections=0
Off
[Display]
bScreenSpaceReflections=1

Wetness

Off
[Display]
bEnableWetnessMaterials=0
On
[Display]
bEnableWetnessMaterials=1

Rain Occlusion

Off
[Display]
bEnableRainOcclusion=0


On
[Display]
bEnableRainOcclusion=1

Motion Blur

Off
[Imagespace]
bMBEnable=0
On
[Imagespace]
bMBEnable=1

Lens Flare

Off
[Imagespace]
bLensFlare=0
On
[Imagespace]
bLensFlare=1

Advanced - View Distance

Fo4advoptions2.PNG

Object Fade

Minimum
[LOD]
fLODFadeOutMultObjects=5
Maximum
[LOD]
fLODFadeOutMultObjects=5

Actor Fade

Minimum
[LOD]
fLODFadeOutMultActors=5
Maximum
[LOD]
fLODFadeOutMultActors=15

Grass Fade

Minimum
[Grass]
fGrassStartFadeDistance=1000
Maximum
[Grass]
fGrassStartFadeDistance=7000

Item Fade

Minimum
[LOD]
fLODFadeOutMultItems=1.5
Maximum
[LOD]
fLODFadeOutMultItems=10

Distant Object Detail

Low
[TerrainManager]
fTreeLoadDistance=12500
fBlockMaximumDistance=100000
fBlockLevel2Distance=75000
fBlockLevel1Distance=25000
fBlockLevel0Distance=15000
fSplitDistanceMult=0.5
Medium
[TerrainManager]
fTreeLoadDistance=75000
fBlockMaximumDistance=100000
fBlockLevel2Distance=80000
fBlockLevel1Distance=32000
fBlockLevel0Distance=20000
fSplitDistanceMult=1.1
High
[TerrainManager]
fTreeLoadDistance=75000
fBlockMaximumDistance=180000
fBlockLevel2Distance=110000
fBlockLevel1Distance=60000
fBlockLevel0Distance=30000
fSplitDistanceMult=1.1
Ultra
[TerrainManager]
fTreeLoadDistance=75000
fBlockMaximumDistance=250000
fBlockLevel2Distance=110000
fBlockLevel1Distance=90000
fBlockLevel0Distance=60000
fSplitDistanceMult=1.5

Object Detail Fade

Note : While lower values exists in presets, all 4 settings Low, Medium, High and Ultra will save the same value in the INI file. Thus, the values below are related to the presets, and not the actual setting, which always set the two parameters to 999999.

Low
[Display]
fMeshLODLevel2FadeDist=1600
fMeshLODLevel1FadeDist=4000
Medium
[Display]
fMeshLODLevel2FadeDist=3000
fMeshLODLevel1FadeDist=6000
High
[Display]
fMeshLODLevel2FadeDist=4000
fMeshLODLevel1FadeDist=8000
Ultra
[Display]
fMeshLODLevel2FadeDist=999999
fMeshLODLevel1FadeDist=999999

In-Game Settings

Gameplay

Difficulty

Very Easy
[GamePlay]
iDifficulty=1
Easy
[GamePlay]
iDifficulty=2
Normal
[GamePlay]
iDifficulty=2
Hard
[GamePlay]
iDifficulty=4
Very Hard
[GamePlay]
iDifficulty=4
Survival
[GamePlay]
iDifficulty=6

Invert Y

Off
[Controls]
bInvertYValues=0
On
[Controls]
bInvertYValues=1

Look sensitivity

Minimum
[Controls]
fMouseHeadingSensitivity=
Maximum
[Controls]
fMouseHeadingSensitivity=

Vibration

On
[Controls]
bGamepadRumble=1
Off
[Controls]
bGamepadRumble=0

Controller

On
[General]
bGamepadEnable=1
Off
[General]
bGamepadEnable=0

Save On Rest

On
[MAIN]
bSaveOnRest=1
Off
[MAIN]
bSaveOnRest=0

Save On Wait

On
[MAIN]
bSaveOnWait=1
Off
[MAIN]
bSaveOnWait=0

Save On Travel

On
[MAIN]
bSaveOnTravel=1
Off
[MAIN]
bSaveOnTravel=0

Save On Pip-Boy

Minimum
[SaveGame]
fAutosaveEveryXMins=5.0000
bSaveOnPause=1
Maximum
[SaveGame]
fAutosaveEveryXMins=60.0000
bSaveOnPause=1
Disabled
[SaveGame]
fAutosaveEveryXMins=
bSaveOnPause=0

Pip-Boy App Enabled

Off
[General]
bPipboyCompanionEnabled=0
On
[General]
bPipboyCompanionEnabled=1

Visuals

Actor Fade

[LOD]
fLODFadeOutMultActors=5.0000

Item Fade

[LOD]
fLODFadeOutMultItems=1.5000

Object Fade

Minimum
[LOD]
fLODFadeOutMultObjects=5.0000
fMeshLODFadeScalar=1.0000
Maximum
[LOD]
fLODFadeOutMultObjects=30.0000
fMeshLODFadeScalar=3.0000

Grass Fade

[Grass]
fGrassStartFadeDistance=400.0000

Crosshair

[MAIN]
bCrosshairEnabled=0

Dialogue Camera

[Interface]
bDialogueCameraEnable=0

Dialogue Subtitles

[Interface]
bDialogueSubtitles=1

General Subtitles

Off
[Interface]
bGeneralSubtitles=0
On
[Interface]
bGeneralSubtitles=1

Show Floating Markers

On
[Gameplay]
bShowFloatingQuestMarkers=1
Off
[Gameplay]
bShowFloatingQuestMarkers=0

HUD Opacity

Minimum
[MAIN]
fHUDOpacity=0.0000
Maximum
[MAIN]
fHUDOpacity=1.0000

HUD Color *

  • is either R, G or B depending on the color.
Minimum
[VATS]
fModMenuEffectHighlightColor*=0.0050
fModMenuEffectColor*=0.0050
[Interface]
iHUDColor*=1
Maximum
[VATS]
fModMenuEffectHighlightColor*=1.0000
fModMenuEffectColor*=1.0000
[Interface]
iHUDColor*=255

Pip-Boy Color *

Minimum
[Pipboy]
fPipboyEffectColor*=0.0050
Maximum
[Pipboy]
fPipboyEffectColor*=0.0050

Audio

Master

Minimum
[AudioMenu]
fAudioMasterVolume=0.0000
Maximum
[AudioMenu]
fAudioMasterVolume=1.0000

Voice

Minimum
[AudioMenu]
fVal0=0.0000
Maximum
[AudioMenu]
fVal0=1.0000

Music

Minimum
[AudioMenu]
fVal1=0.0000
Maximum
[AudioMenu]
fVal1=1.0000

Effects

Minimum
[AudioMenu]
fVal2=0.0000
Maximum
[AudioMenu]
fVal2=1.0000

Footstep

Minimum
[AudioMenu]
fVal3=0.0000
Maximum
[AudioMenu]
fVal3=1.0000

Radio

Minimum
[AudioMenu]
fVal4=0.0000
Maximum
[AudioMenu]
fVal4=1.0000