Fallout.ini

Fallout.ini is the configuration file in which the basic and default settings are deposited, the Gamebryo engine needs to run Fallout 3 and Fallout: New Vegas properly on any personal computer. It contains values about audio and graphical options, background processes, implementation of the Havok Physics engine, and many more.

Overview
The Fallout.ini, together with the FalloutPrefs.ini, is created when for the first time the launcher of the game is started. It is then saved in the user's My Game directory. It normally remains unchanged, though the Fallout: New Vegas version is overwritten with default values each time the game is started via Steam.

There are several types of variables, determining the possible values one can have. Some comments are contained, lines starting with.
 * Variables starting with : Boolean variables. They can only have the valid values of 0 and 1, where 0 means "false" or "disabled", and 1 means "true" or "enabled".
 * Variables starting with : Floating-point numbers, using up to 6 decimal places. The console commands  creates a configuration file, where all these are cut down to 4 decimal places, while the command  puts them out with only 2. Usage of them in the G.E.C.K. is also often reduced to 4 or 2 decimal places.
 * Variables starting with : Integers. They can be either positive or negative.
 * Variables starting with : Colors. They are composed of the three RGB values (ranging from 0 to 255), divided by commas and without blanks.
 * Variables starting with / : Strings. Values are plain text without quotation marks. Often used for file references or to display text.
 * Variables starting with : Unsigned integers. They have always positive values.

The variables are organized in sections, with some appearing in more than one section. Also some variables are contained in both configuration files, the Fallout.ini and the FalloutPrefs.ini, where the former determine the default values and the latter the values used by the game when playing it (with one definite and one possible exception: iPresentInterval and iRadialBlurLevel).

The sections and variables are in no specific order. Some variables appear twice in the same section, in which case it's unclear which value is taken into account by the game, though it can be assumed, that this would be the first one. Even faulty entries exist. For some variables it is unknown if the game really uses them. Some possible variables aren't listed at all, but default values for them are hard-coded.

There are many guides and utilities spread across the web, regarding optimization, cleaning, and tweaking for an audio-visual appearance exceeding the game's ultra settings.

Editing
It is strongly recommended to, before doing any changes to game files at all, make a backup copy of them. In addition it is wise to do changes step-by-step, so that unwanted effects can easily be reverted.

Editing the file can lead to game crashes, strange visual behavior, more errors or even a blue screen. In the worst case all changes can be undone by deleting the Fallout.ini from its directory, so the game will create a new, default one with the next start.

A file of this type can be edited with any text editor, though it is recommended to use a simple one – such as Windows' Notepad – to avoid unallowed symbols or unwished formatting.

Sections are defined by square brackets around the name, e.g. Audio. Only the first section with a specific label is taken into account, a second section with the same name would be completely ignored.

Variables have to be put into the according section, to be taken into account by the game, with their value following a  in the same line.

Removing the value of a variable or the variable at all will not disable the according setting, instead the default value will be used by the game. This doesn't count for string variables, which use nothing if their value is set to empty.

Though floating-point variables may have up to 4 decimal places, it is recommended to cut them down to the last digit that is not 0. In rare cases values with high numbers, e.g. 1800.0000, might be read incorrect by the game engine and cause bugs, if not altered to e.g. 1800.

Text after a  isn't regarded by the game and can serve for annotations. It doesn't matter, if this is done in an extra line, or directly after a valid value, though the latter isn't recommended. This way it is possible to disable variables or placing comments. A good way to make reverts easier would be to copy the entry, the change shall be applied to, and inserting it below with the altered value, then commenting the original value out.

The Fallout: New Vegas version of the file is read-only, and changing it will result in nothing, because Steam overwrites it with the default version each time the game is started.
 * Fallout: New Vegas

A workaround would be to change the template itself, in which case the backup is even more recommended.

A better way to apply changes to this file, would be a "custom" configuration file. It is possible to make a copy of the original Fallout.ini, and rename it to FalloutCustom.ini. The game then uses this file over the default one, and it is not overwritten by Steam. Though this method has a small restriction: No variables, that are not already part of the default file, can be added, at least not with any effect.

A word about "tweaking"
This guide isn't intended as a tweaking guide. There are better ones – more focused, less blown up, more fun to read. (See the credits for some examples.) Instead it's more of a documentation and shall serve as a reference.

Though it's possible to use it for such a purpose…

On modern hardware Fallout 3 and Fallout: New Vegas with all their add-ons should be automatically put to ultra settings by the launcher, when the default option is used. And run well on your computer. However there are possibilities to change some things, both, the audio-visual game appearance, as well as game mechanics. Be warned again, that such changes might have unwanted consequences, such as low performance, crashes, even corrupted save games, and worse. In addition many of these promising variables, listed below, are exactly this: promising – and nothing more. Some have a huge impact on the appearance of the game, some do simply nothing, or at least nothing remarkable. This documentation tries to cover these things, but doesn't claim to be absolutely accurate and complete.

Fallout.ini
The Fallout.ini can by default be found in the user's My Games directory, together with the Saves\. The exact path differs by operating system.

On Windows Vista and later, assuming C:\ as the user profile drive, it is located under C:\Users\USERNAME\Documents\My Games\Fallout3\ C:\Users\USERNAME\Documents\My Games\FalloutNV\ On Windows XP, assuming C:\ as the user profile drive, it is located under C:\Documents and Settings\USERNAME\My Documents\My Games\Fallout3\ C:\Documents and Settings\USERNAME\My Documents\My Games\FalloutNV\

Fallout_default.ini
The template for this file can be found in the installation directory of the game. It is named Fallout_default.ini. This is also the file to be edited – if wished! – when applying changes for the Fallout: New Vegas Steam version. Locating it is dependent on some more conditions; the default installation path is assumed, using C:\ as the installation drive.

On a 32-bit Windows, game installed via Steam: C:\Program Files\Steam\steamapps\common\Fallout 3\ C:\Program Files\Steam\steamapps\common\Fallout New Vegas\ On a 64-bit Windows, game installed via Steam: C:\Program Files (x86)\Steam\steamapps\common\Fallout 3\ C:\Program Files (x86)\Steam\steamapps\common\Fallout New Vegas\ On a 32-bit Windows, game installed off Steam: C:\Program Files\Bethesda Softworks\Fallout 3\ On a 64-bit Windows, game installed off Steam: C:\Program Files (x86)\Bethesda Softworks\Fallout 3\

Clean and default version
With the use of the console a configuration file can be created that contains only the hard-coded default values. This can serve as a reference, but shouldn't be used for playing the game because it lacks many variables existing in the default file.

Whenever in the following tables a comment exists, "Not part of the default file", then that specific variable is taken from this file.

To get this file the game has to be started (preferrably with default settings), then the existing file has to be deleted. Back in the game open the console by using the key directly left of the  and below. On a US keyboard this is, the label of the key varies by country specific keyboard layouts. Type and , and a new file will be created. You can copy this to a safe location, but should – as mentioned – replace it with it's original version after quitting the game.

Technical background
Distances are measured in game units, where 64.0000 units equal 1 yard, or around 70 units 1 meter.

Some terms will appear frequently:
 * AI, Artificial intelligence – Scripts and calculations used to determine actors' behavior
 * Bloom – Visual effect related to lighting
 * FOV, Field of view – The visual field the player has, as degrees of an angle
 * FPS, Frames per second, aka frame rate – The frequency of displayed frames in the game, normally defined by monitor settings, but dependent on the performance. Low performance means low FPS.
 * HDR, High-dynamic-range rendering – Visual effect related to lighting
 * IK, Inverse Kinematics – In combination with certain body parts related to the ragdoll system
 * LOD, Level of detail – The amount of details shown, the complexity of objects, depending on the distance to the player
 * Ragdoll – A system used by the game engine to coordinate physics effects and actors' skeletons
 * Shader – Technology used to display graphics and do rendering

Sections and variables
In the following tables all possible sections and variables are listed – those initially created by the game, those that can be added, faulty ones, also those which don't seem to have any purpose. Just a few variables appear in only one of the games, a few more have different values for each game.

Those that are not part of the default file, as it is created by the game, are taken from that one, that can be created via the console command – see above.

Many variables appear in the G.E.C.K. configuration file, GECKCustom.ini, too, though sometimes with different values. Also that file contains additional variables and even whole sections.

[Absorb]

 * It is unknown which effects these settings have, so it is not advised to edit them.
 * They are present in the original file.
 * They are not created by the console command.
 * This is the only section, whose entries can also be found in the game settings in the G.E.C.K, if at least the Fallout.esm or FalloutNV.esm is loaded, with the same values. It is unknown, which of these settings would gain the upper hand, if the values in the Fallout.ini would be altered.

[AnimationWarning]

 * It is unknown which effects these settings have, so it is not advised to edit them.
 * They are not present in the original file.
 * They are present in the GECKCustom.ini.

[Archive]

 * This section manages the game's use of BSA archives.
 * It is present in the original file.
 * Only those entries, that appear for both games, are created by the console command.
 * It is present in the GECKCustom.ini, though with slightly different values.

[Audio]

 * This section manages nearly all audio related settings.
 * The variables are mostly present in the original file.
 * Many of them are present in the GECKCustom.ini, though with slightly different values.

[BackgroundLoad]

 * These settings manage how various processes are handled by the game: loading those in the background can reduce stutter, but may also reduce performance.
 * Most of these entries are present in the original file.
 * Some entries are not created by the console command.
 * Some are present in the GECKCustom.ini.

[bLightAttenuation]

 * These settings handle how light in general is created by the engine.
 * They are present in the original file.
 * They are present in the GECKCustom.ini.

[BlurShader]

 * This section covers the various settings for bloom screen effects.
 * It is present in the original file.
 * It is present in the GECKCustom.ini, though with slightly different values.

[BlurShaderHDR]

 * This section covers the various settings for HDR screen effects.
 * It is present in the original file.
 * It is present in the GECKCustom.ini, though with different values.

[BlurShaderHDRInterior]

 * This section covers the various settings for interior HDR screen effects.
 * It is present in the original file.
 * It is present in the GECKCustom.ini.

[BudgetCaps]

 * This section seems to handle the maximum number of certain processes, in order to retain a good game performance.
 * They all are possibly unused by the game.
 * It is not present in the original file.
 * It is present in the GECKCustom.ini.

[CameraPath]

 * This section seems to handle some camera related processes. It possibly contains legacy variables for testing purposes.
 * It is present in the original file.

[Combat]

 * At this time it is unknown if changes have effect on the game.
 * It is not present in the original file.

[Controls]

 * This section manages some basic control options, more are handled through the FalloutPrefs.ini.
 * Only the first three entries are present in the original file.
 * More entries are present in the GECKCustom.ini.

[CopyProtectionStrings]

 * Messages being displayed if the game was installed via DVD, and the launcher is started without the DVD present in the drive. Valid at least for Fallout 3.
 * This section is present in the original file.

[Debug]

 * The effects of these settings are currently unknown, they are possibly not used.
 * They are present in the original file.
 * The first two are present in the GECKCustom.ini.

[Decals]

 * This section manages the handling of decals in the game.
 * Only three of the entries are present in the original file.
 * All except uMaxDecalCount are present in the GECKCustom.ini.

[Display]

 * This section covers many entries that can be used for either improving the game's visual appearance or its performance.
 * Many only serve as default values for various entries in the FalloutPrefs.ini; changing them here wouldn't have effect, with one exception: iPresentInterval.
 * Most entries are present in the original file.
 * Only a few are not created by the console command.
 * Many entries are present in the GECKCustom.ini, though partially with different values.

[DistantLOD]

 * This section is related to the handling of LOD effects.
 * It is present in the original file.
 * Only the last entry is created by the console command.
 * Only the last entry is present in the GECKCustom.ini, though that contains another one, not listed here.

[Fonts]

 * This section determines the fonts used by the game for different situations. They can't – for example – be changed to default Windows fonts; the font files are part of the game's Data\ directory.
 * It is present in the original file.

[FootIK]

 * This section handles the IK of feet.
 * Most are present in the original file.
 * All are present in the GECKCustom.ini, though partially with different values.

[GamePlay]

 * This section handles some general game play settings. More variables are found in the FalloutPrefs.ini.
 * Most of these entries are present in the original file.

[General]

 * The largest section, handling general – as the name suggests – game features.
 * Most entries are present in the original file.
 * The GECKCustom.ini has slightly different values, and other settings, too.

[GeneralWarnings]

 * Two messages to be displayed if game files, used in a save game, aren't in the current load order anymore when this save is loaded.
 * They are present in the original file.
 * They are present in the GECKCustom.ini.

[GethitShader]

 * Some variables, handling the visual effect whenever the player gets hit.
 * They are present in the original file.
 * They are present in the GECKCustom.ini.

[GrabIK]

 * This single variable presumably handles the IK of the grab feature.
 * The effect is unknown.
 * It is not present in the original file.
 * It is present in the GECKCustom.ini.

[Grass]

 * This section manages how grass is handled in the landscape.
 * It is present in the original file.
 * It is present in the GECKCustom.ini, though with slightly different values.

[Hacking]

 * This section sets the difficulty levels for hacking terminals.
 * The values are related to the Science skill and represent the minimum skill level necessary to hack a terminal with the given difficulty.
 * It is not present in the original file.

[HAVOK]

 * This section handles the implementation of the Havok Physics engine.
 * Most entries are present in the original file.
 * Only a few entries are not created by the console command.
 * Most entries are present in the GECKCustom.ini – not all from the original file, and not all from the additional ones, though some of these.

[HeadTracking]

 * This section handles actors' head tracking: whether or not they react with a head movement to certain events in their surrounding, follow other actors with their eyes, and the physics behind this process.
 * This section is not present in the original file.
 * If for any reason the bDisableHeadTracking setting is wished to be enabled (no more head tracking of actors), the entry in the [General] section should be changed, and this section with the same changed entry added.

[Imagespace]

 * This section applies visual effects to the game.
 * The entries are not present in the original file.
 * The entries are present in the GECKCustom.ini.
 * This section possibly misses an entry, originally found in the FalloutPrefs.ini, which it – as second exception to the rule – possibly would overwrite: iRadialBlurLevel.

[Interface]

 * This section manages the handling of menus and related things.
 * Some entries are present in the original file.
 * Not all entries are created by the console command.
 * A few entries are present in the GECKCustom.ini, though with slightly different values.

[InterfaceFX]

 * This section handles effects, applied to interface elements.
 * Many entries are not present in the original file.
 * Not all entries are created by the console command.

[Landscape]

 * This section manages the handling of the landscape in general.
 * It is present in the original file.
 * It is present in the GECKCustom.ini.

[LANGUAGE]

 * This section seems to handle some general error messages.
 * It is not present in the original file.
 * The entries created by the console command have values which hint probably to the FalloutPrefs.ini, but in the default US version of that file, the entries aren't present, neither.
 * It is present in the GECKCustom.ini.

[Loading]

 * This section covers the management of loading processes, primarily the main menu.
 * It is present in the original file.

[LOD]

 * This section manages the LOD handling in general.
 * It is present in the original file.
 * Many entries are not created by the console command.
 * Some entries are present in the GECKCustom.ini, though with different values.
 * One variable is named wrong in the original file, as it is created by the game, and its value also differs from that one, created by the console command. So it can be assumed that the non-present, default value would be taken into account. The name of this variable in the GECKCustom.ini is correct, and it also uses the default value. See fFadeInTime and fFadeInTimet.

[LookIK]

 * This section handles the IK of head tracking.
 * Only two entries are present in the original file.
 * Other entries are created by the console command.
 * Only those are present in the GECKCustom.ini.

[MAIN]

 * This section handles some further general settings.
 * Only a few entries are present in the original file.
 * The first two entries are not created by the console command.
 * Not all of these entries, but some different ones, are present in the GECKCustom.ini.

[Menu]

 * This section handles menu related processes, many of them related to the console.
 * Only one entry is not present in the original file.

[MESSAGES]

 * This section handles some message and debug features.
 * It is present in the original file.
 * One entry is not created by the console command.
 * One additional entry is not present in the GECKCustom.ini.

[NavMeshGeneration]

 * This section is mainly related to the GECKCustom.ini and extensive there.
 * It is not present in the original file.
 * One single variable is created by the console command.
 * As the effect is unknown, it is not advised to add the section.

[Online]

 * These two settings presumably manage the handling of the downloadable content feature of the main menu, though the specific effects are unknown.
 * They are not present in the original file.

[Pathfinding]

 * This section manages pathfinding routines, i.e. how actors calculate which path to take, to get from A to B.
 * Many entries are not present in the original file.
 * The GECKCustom.ini covers those partially.

[Pathing]

 * Related to the [Pathfinding] section.
 * The specific effects are unknown.
 * These two variables are not present in the original file.
 * The first one is present in the GECKCustom.ini.

[Pipboy]

 * This section handles the appearance of the Pip-Boy.
 * Not all entries are present in the original file.
 * One entry is not created by the console command: fScanlineScalePipboy.

[RagdollAnim]

 * Processes, related to the animation of actors' ragdolls.
 * Only a few entries are present in the original file.
 * More entries are present in the GECKCustom.ini.

[RagdollFeedback]

 * This single variable's effect is unknown.
 * It is not present in the original file.
 * It is present in the GECKCustom.ini.

[RenderedMenus]

 * This single variable presumably determines the duration of the distort effect, present in the race-sex-menu.
 * It is not present in the original file.

[RenderedTerminal]

 * This section manages the visual appearance of terminals and the race-sex-menu.
 * It is present in the original file.
 * The first entry is not created by the console command.

[SaveGame]

 * This section handles save game management.
 * It is not present in the original file, though some possible entries are listed in the [General] section. If those are wanted to be used with altered values, it is advised to add this section, and change the settings in both places.

[ScreenSplatter]

 * This section is somehow unclear. The game creates the third entry, while the console command does not, instead creating the first one.
 * It is currently unknown, which one is used, if not both.
 * In the Fallout: New Vegas file there's an additional entry.

[SpeedTree]

 * This section handles how trees are displayed in the game.
 * It is present in the original file.
 * The last entry is not created by the console command.
 * More entries are not present in the GECKCustom.ini.

[Surgery3D]

 * The specific effects of this section are unknown, so changes aren't advised.
 * It is unclear if these entries are related to the race-sex-menu, which is actually managed in other sections.
 * It is not present in the original file.

[TerrainManager]

 * This section mainly handles textures and the distance in which landscape and trees are displayed.
 * Most entries are present in the original file.
 * Some entries only contain default values for the FalloutPrefs.ini.
 * Except those latter ones, all are present in the GECKCustom.ini, though with one interesting different value.

[TestAllCells]

 * This section seems to serve debugging purposes, but the specific effects are unknown.
 * Changes should, if at all, be applied carefully.
 * All but two entries are present in the original file.
 * All entries are present in the GECKCustom.ini.

[VATS]

 * This section handles the visual appearance of the V.A.T.S..
 * Most entries are not present in the original file.

[Voice]

 * This section defines extensions of files, needed to create speech in the game.
 * They definitely shouldn't be changed!
 * It is present in the original file.
 * It is present in the GECKCustom.ini, though with one differing and one additional entry.

[Water]

 * This section handles all things related to water, mainly the visual appearance.
 * Increasing certain settings here to much higher values or even enabling some features, disabled by default, can have a strong impact on game performance, whenever the player finds himself near a water surface.
 * Not all entries are present in the original file.
 * Some entries only contain default values for the FalloutPrefs.ini.
 * The GECKCustom.ini has some different entries.

[Weather]

 * The last section handles the weather and the sun.
 * It is present in the original file.
 * It is present in the GECKCustom.ini with partially different values.

Enabling v3.0 shaders
The game is able to do some graphic processes using shader model 3 if the graphics adapter is compatible. Though "being able" doesn't mean it will always do so – but it can be forced.

Prerequisites
In the same directory where the Fallout.ini file is located (see above for instructions), another text document can be found, called RendererInfo. It is also created when starting the launcher for the first time, and contains basic informations about the abilities of the graphics adapter.

It contains a line "Shader Package" with a number behind. This number will be needed in the next step. It is not advised to change anything here in this text file!

Changing the shader package
In the game's installation directory (see above for instructions) there's a subfolder Data\, containing another subfolder Shaders\. Here shaderpackages#….sdp can be found, one of them ending with the previously found number.
 * 1) Rename this file, e.g. by putting "BackUp_" to the start of the name. (It's not advised to renaming it by deleting the number at the end.)
 * 2) Copy shaderpackage019.sdp and paste it right here, into the same place.
 * 3) Rename the copy of shaderpackage019.sdp to "shaderpackage0….sdp", using the previously found number.


 * Example
 * 1) RendererInfo contains the line "Shader Package : 13"
 * 2) Rename shaderpackage013.sdp to BackUp_shaderpackage013.sdp
 * 3) Make a copy of shaderpackage019.sdp
 * 4) Rename the copy of shaderpackage019.sdp to shaderpackage013.sdp

Note: The file index ".sdp" may not be shown, depending on the system configuration. In this case, the files will only be named shaderpackage0##. This doesn't have an affect on the renaming instructions.