Archive of TweakGuides.com under the Creative Commons Attribution International (CC BY 4.0) license by PCGamingWiki


Fallout 3 Tweak Guide

[Page 10] Advanced Tweaking (Pt.3)



Grass


iMinGrassSize=80 - This setting controls the density of grass clumps. The higher the value, the less tightly packed grassy areas will be; the lower the value, the more grass there will be. In other words, lowering this value will significantly reduce FPS in most outdoor areas, but can make the game world seem more lush and overgrown. For example, try a value of 10 and it will radically alter what the wasteland looks like. Alternatively if you're after a performance boost or just want less grass for visual reasons, raise it to a value such as 140 to greatly thin out the grass (Fallout.ini).


fGrassStartFadeDistance=7000 - This variable controls the spread of grass into the distance, and is normally controlled via the Grass Fade Launcher option (See In-Game Settings section). Here you can adjust the grass range beyond the limits possible in the Launcher menu (FalloutPrefs.ini).


bDrawShaderGrass=1 - If set to 0 removes all grass from the wasteland, which obviously improves FPS in outdoor areas at the cost of realism (Fallout.ini).


fGrassWindMagnitudeMax=125.0000

fGrassWindMagnitudeMin=5.0000


These settings determine the extent to which wind affects grass swaying. For example, if you set both variables to =0, this will eliminate all grass swaying, which can improve FPS to some degree but reduces realism. Alternatively, you can raise both variables to make grass sway much more (Fallout.ini).



Water


iWaterReflectWidth=1024

iWaterReflectHeight=1024


The above variables control the width and height (i.e. the resolution) of water reflections. The higher the value for each, the more crisp and detailed reflections will be; the lower the value, the lower the detail. For example setting both of these to =256 will greatly reduce reflection detail in return for a boost in FPS around water areas. Conversely, you can raise these values to something like =2048 for an increase in reflection quality above the maximum normally possible using the in-game settings, however there will be a very sharp drop in performance around water (FalloutPrefs.ini).



Audio


fMainMenuMusicVolume=0.6000 - The volume of the music which plays in the background when in the game's main menu can't be adjusted anywhere in the game, except by using the Master Volume slider, which then in turn affects all sound and music. To alter just the menu music volume independently, change the value of this variable. Note that if you try to disable the main menu music altogether using the sTitleMusic=MainTitle variable, it will likely result in a crash, so instead just set this variable to =0.0000 to effectively disable the menu music (Fallout.ini).


bEnableAudioCache=1

iAudioCacheSize=2048

iMaxSizeForCachedSound=256


bEnableAudioCache=1 - The audio cache should be enabled to ensure a reduction in stuttering, however you can fine tune how much memory the game uses to cache audio with the iAudioCacheSize=2048 variable. The cache size is in KB, so a value of 2048 = 2MB for caching audio data. You can experiment with raising this value, e.g. double it to 4MB (=4096) to see if it further improves stuttering and audio performance in the game. You can also alter the iMaxSizeForCachedSound=256 value to change how many sounds are cached; higher values should mean more sounds are cached. Note however that the audio system in Fallout 3 seems very sensitive, and raising these variables too high, or indeed changing other audio-related variables can result in crashes at startup or exit (Fallout.ini).



Memory, Loading & Multi-threading


bPreemptivelyUnloadCells=0 - If set to 1, this variable attempts to unload cell data it thinks you won't need. This may help those with only 1GB of RAM, however for those with more RAM I recommend leaving it at =0 for greatly reduced stuttering. Setting this variable to =1 can also work against the benefits brought about by the other buffering/preload tweaks in this section, so again, it is not recommended (Fallout.ini).


bSelectivePurgeUnusedOnFastTravel=0 - If set to 1, this option removes a range of unnecessary data when you Fast Travel to another location. This can help keep memory usage down for those with less RAM, so it is recommended such people set this to =1, otherwise leave it at =0 for optimal performance on most systems (Fallout.ini).


bUseThreadedAI=1


All of the above variable relates to the use of the GameBryo engine's multithreading capabilities. Multithreading splits tasks into 'threads' where possible, and runs them in parallel across the cores of multi-core CPUs to potentially improve performance. Fallout 3 is already multi-threaded by default, however by enabling all these options you may gain additional performance if you run a multi-core CPU. In my testing I didn't see a dramatic improvement in CPU usage across both cores by enabling these options, nor an increase in FPS, but by the same token it can't hurt to enable them in case they provide marginal improvement. Note however that I found that setting bMultiThreadAudio=1 would cause a freeze upon exiting the game every time, so you may wish to keep this variable disabled for that reason. Indeed if you find you're having any other new problems after applying the above tweaks then revert them all to their original values as part of your troubleshooting (Fallout.ini).


Update: Some dual core and quad core CPU users have said that by inserting a new command iNumHWThreads=2 under the General section of Fallout.ini, and setting it to a value of 1, 2 or 4 (typically 2), this prevents freezing at certain points in the game. In practice this setting should not be required, as it appears to restrict the number of threads used by the game, however you can experiment with different values depending on how many cores of your CPU you want the game to use.


Update 2: In recent times many people have written to me and/or have also posted around the Internet that the tweaks in the [Memory, Loading & Multi-threading] section of the guide are either useless or harmful. I have clearly noted from day one that that these tweaks may have no impact, and having tested them myself to ensure that they aren't harmful, I mention that you can experiment with them if you wish, and reset them if you run into any problems. The reason they are still listed here is for the sake of completeness, so I don't receive hundreds of emails telling me that my guide is 'incomplete' because I don't cover these famous tweaks.


Update 3: Known harmful or placebo settings have been removed from this guide. They have been verified as such by the Bethesda game reverse engineering community. -Ed.



That covers the list of the most useful .ini variables I have found. Remember that I have tested all of the main variables in both .ini files, and in most cases the variables either do nothing useful, or nothing at all. That's why there are many seemingly important variables missing from the list above. If you know of any important .ini tweaks not listed above which do something useful, and importantly, you have actually tested them properly yourself (i.e. direct screenshot and FPS comparisons), then please Email Me and I will consider including them. Again, some of the popular Fallout 3 tweaks doing the rounds right now don't actually do anything at all - people have simply taken a guess at what an option in the .ini file does based on its name and then neglect to actually test the tweak under a consistent reproducible environment.


Also note that many people want 'pre-tweaked' .ini files which supposedly contain all the major customizations and optimizations. As always, my advice to such requests is that this is totally inappropriate; using other peoples' .ini files and settings will only lead to instability and/or graphical anomalies, since many of the entries are designed specifically for each system's capabilities, and/or the .ini file author hasn't tested the .ini file out on various systems, and/or they are simply not well aware of what all the .ini settings actually do and are just guessing on the impacts based on the names of the settings. Smart tweakers who want good image quality, performance along with system stability will familiarize themselves with the variables in this section and only apply the relevant tweaks after testing them on their system. There is no 'one size fits all' or automated approach to tweaking.



The next section covers the Console Commands available for use in Fallout 3.