Oblivion:Ini Settings
There is a default .ini file in Oblivion root directory: "Oblivion_default.ini
". On a Windows machine when the user first starts a game, this file is copied into the user's newly created "My Documents\My Games\Oblivion\
" directory as "Oblivion.ini
", which is then used for that user. So if you wish to change a setting for all new users, change the default (not recommended), otherwise change your own copy directly under "My Documents\My Games\Oblivion\
".
Warning! Make a copy of your Oblivion.ini
before you make any changes. Changes in the Oblivion.ini
can corrupt game saves, prevent Oblivion from starting, or cause the game to intermittently crash. It is safe to leave the original values in the INI file, just place a ";" sign at the beginning of the line, and the game will not use it. You can put the modified line below that line. If you have trouble identifying which change you made is causing issues, you can delete the Oblivion.ini file, the default one will automatically be restored the next time you start Oblivion.
Enable Print Screens - This will allow the use of the Print Screen key to dump a screenshot (BMP) to your game directory. Note, however, that screenshots will not work if you have anti-aliasing enabled in-game. The HDR lighting option requires anti-aliasing to be disabled. However, if your graphics card's software allows game-level 3D settings, you may be able to turn on HDR in-game and override the game's anti-aliasing setting in your graphics card's control panel.
- Variable: bAllowScreenShot
Values: 0 = No, 1 = Yes
Current Screenshot Index
- Variable: iScreenShotIndex
Values: <Current Index>
Base Screenshot Name
- Variable: SScreenShotBaseName
Values: <Default: "Oblivion">
Disable Intro Sequence and Main Menu Movie Intro - This will disable the logos at startup as well as the intro movie of the main menu, so you can just start the game and get directly into the main menu without hitting the Escape Key even once.
Disable Intro Sequence
- Variable: SIntroSequence
Values: <Default: bethesda softworks HD720p.bik,2k games.bik,game studios.bik,Oblivion Legal.bik> remove all values to have no videos at startup.
Disable Main Menu Movie Intro
- Variable: SMainMenuMovieIntro
Values: <Default: Oblivion iv logo.bik> remove values to get directly to the main menu without the intro movie.
Disable Main Menu Background Movie - If you remove this value there is no map in the background of the main menu.
- Variable: SMainMenuMovie
Values: <Default: Map loop.bik> remove the value and there won't be that (pretty) video of the moving map in the background of the main menu. alternatively, set the value to "Oblivion iv logo.bik" and see the logo animation behind the menu :)
Colorful local map - This will disable the sepia colouring shader on the local map, making the local map appearing colourful.
- Variable: bLocalMapShader
Values: 0 = No shader (colorful map), 1 = Yes, enable shader (sepia colored local map, default)
Instant Level Up - This will make it so when you gain enough skill to level up, it happens automatically, no sleeping needed.
- Variable: bInstantLevelUp
Values: 0 = No, 1 = Yes
More powerful horse jump
- Variable: fHorseRunGravity
Value: 3.0000 affects your horse's jump; lower the value to make it leap higher & longer
Remove Borders - This toggles the borders that prevent you from entering other provinces
- Variable: bBorderRegionsEnabled
Values: 0 = Off, 1 = On
Toggle Full Screen/Windowed mode - Toggles between the full screen and windowed display modes
- Variable: bFull Screen
Values: 0 = Windowed Mode, 1= Full Screen
Additionally, the windowed mode can be altered with these parameters:
- iSize W=
- iSize H=
These set the size of the game window. Defaults are the resolution you have selected in the game's video settings (e.g. 1024x768).
- iLocation X=
- iLocation Y=
These alter the game window's position on the screen (default is 0 in both, which makes the window appear in the top-left corner). Increasing the X coordinate moves the window to the right, while increasing the Y coordinate moves it down. For instance, to get the window to appear in the middle of the screen, you have to calculate how much extra space (pixels) there is on your desktop besides the game window, then divide those amounts by two and add them to the coordinates. An example would be a desktop resolution of 1280x960 and a window resolution of 640x480. That leaves another 640x480 pixels that aren't used by the game. That, of course, is 320x240 when divided by two. By setting the X coordinate to 320 and the Y coordinate to 240, the window is now right in the middle.
Use Oblivion.ini and Plugins.txt in Oblivion Directory - Allows you to have all settings neatly bundled in the same directory as Oblivion.exe
- Variable: bUseMyGamesDirectory
Values: 0 = Use the Oblivion directory (directory is wherever Oblivion.exe is) 1 = Use the My Documents\My Games\Oblivion directory (default)
- Normally,
Oblivion.ini
is stored in theMy Documents\My Games
directory for each user. Similarly,Plugins.txt
is stored underUsers\TheNameoftheUser\Local Settings\Application Data\Oblivion\Plugins.txt
. IfbUseMyGamesDirectory
is set to 0, Oblivion.exe will try to findOblivion.ini
andPlugins.txt
in the directory Oblivion.exe is run from. - This setting is mainly useful when not using OblivionLauncher.exe to set which mods are being loaded (that is, using Wrye Bash to manage your mods).
- Notes
- * OblivionLauncher.exe does not respect these values, and will only edit
My Documents\My Games\Oblivion.ini
andUsers\TheNameoftheUser\Local Settings\Application Data\Oblivion\Plugins.txt
; However, Oblivion.exe started from OblivionLauncher.exe will still respectbUseMyGamesDirectory
. Wrye Bash also respectsbUseMyGamesDirectory
. - * Oblivion reads the
Oblivion.ini
in the directory where it exists first, and only ifbUseMyGamesDirectory
is non-existent or set to 1 does it then look forMy Documents\My Games\Oblivion.ini
. In other words, both can exist simultaneously, and only the value ofbUseMyGamesDirectory
in theOblivion.ini
directory where Oblivion.exe is run from will actually matter.
Performance tweaks[edit]
Boolean (0=off, 1=on) | |
---|---|
bEnableTrees | This controls whether trees are displayed. If disabled, dynamically generated trees (basically trees in the landscape) will not be displayed. Trees that are specifically placed (e.g custom house mods that add a courtyard with a tree(s) that is not randomly generated by the game) will remain, as this command only disables the dynamic generation of trees. Disabling this will give a massive performance increase, but at the loss of an extreme amount of realism and immersion, the landscape will be empty and bland. |
bUseFaceGenHeads | Controls whether or not heads generated using the "FaceGen" aspect of Oblivions engine are rendered. Since all heads are generated using FaceGen, disabling this will remove heads from characters. |
bUseEyeEnvMapping | Controls whether NPC's eyes have reflections and Specular Highlights. Disabling this will cause eyes to look similar to those of the in-game horses; dull and lifeless. |
bDoTallGrassEffect | This setting changes the grass rendering somewhat, making it appear shorter or less dense and improving performance slightly. |
bDoTexturePass | Determines whether meshes have textures applied. If it is disabled, the default yellow texture will be used to indicate the lack of texture. Although disabling this will likely grant a massive increase of FPS, the loss of realism is so great that the game will not be worth playing without it. |
bDoSpecularPass | Determines whether "Specular Highlights" are rendered on objects. Specular Highlights take the form of white glare on a reflective surface, usually due to a light source shining directly on the object. Unfortunately, disabling this can cause crashes at some places, especially ones containing secret passages - Weynon Priory, Skingrad Castle Courtyard, Anvil castle. If you turn it off then remember that the game may crash in certain places. (Re-enable it for the time needed to pass through these areas.) |
bDoDiffusePass | Determines whether the Diffuse Pass of the Lighting System is used in scenes, disabling this will increase performance with low-end video cards, though a severe loss in the quality of static shadows (shadows cast by architecture or immovable objects) and the contrast between bright and dark areas in scenes. Leaving this on is generally recommended, as scenes will look very artificial and dull with it off. |
bDoAmbientPass | Similar to the above command variable, this determines whether the Ambient Pass of the Lighting System is used in scenes. The Ambient Pass is used to complement that of the Diffuse Pass, disabling it will reduce the quality of static shadows and reduce the contrast between bright and dark areas in a scene. Like the above variable, disabling this will yield a good performance boost with low-end video cards, though there will be a significant loss in realism with it disabled. |
bUseRefractionShader | Disable to remove most of the particle effects for Oblivion Gates and summoned creatures. Almost mandatory on pre x800/nv58xx series cards if AA is in use. |
bForceFullLOD | If set to 1, trees will look slightly better, usually with little impact on overall frame rate. |
Numeric | |
fLightLOD1 fLightLOD2 |
These two settings will change the distance when dynamic light(candles, fireballs, torches, etc) is applied to objects. By setting them to large negative values you can disable lighting altogether. This is very helpful for those graphics cards (like GeForce FX's) that have slow shaders. When fighting in exterior areas ALL lighting effects from fireballs etc are completely removed which will result in large speedups. You should also switch on bDoAmbientPass otherwise the world can be too dark to play. |
iMinGrassSize | The bigger the value the less grass will be shown. For older PC's use values of 130-200. It should be noted this doesn't actually change the dimensions of the grass, it changes the amount of grass per cell, so lower values means denser fields of grass, higher values reduce the amount of grass. |
fGrassEndDistance fGrassStartFadeDistance |
These settings control how far grass is rendered, lowering these values can give large performance boosts for computers experiencing memory-related stuttering. |
uGridsToLoad uExterior/Interior Cell Buffer iPreloadSizeLimit |
uGridsToLoad controls the distance at which LOD objects and textures are scaled to their full quality. Changing uGridsToLoad is not recommended, as it may significantly reduce performance, and has been found to cause issues with the LOD aspect of Oblivion.
The Cell Buffer related settings control the maximum amount of "cells" that can be stored in RAM/Video RAM at once. Increasing this will allow Oblivion to cache more textures/objects into RAM, so increasing these values will yield a performance increase for computers with enough RAM (1.5GB and up) Note: The extra 'buffers' are primarily loaded into your video RAM, which may cause problems. Keep this in mind when adjusting these values and always make sure you have 50-100MB of spare video RAM. iPreloadSizeLimit doesn't do anything, contrary to popular belief. Reverse engineering of game code shows it only affects intro movie loading. |
Multi-core CPU tweaks[edit]
If you have a Dual/Quad core Processor or a processor with Hyper-Threading, then set these values to this:
bUseThreadedBlood=1 (default 0)
bUseThreadedMorpher=1 (default 0)
bUseThreadedTempEffects=1 (default 0)
bUseThreadedParticleSystem=1 (default 0)
bUseBackgroundPathing=1 (default 0)
bUseBackgroundFileLoader=1 (default 0)
iNumHavokThreads=3 (default 1)
iThreads=10 (default 3)
Otherwise, leave them at the default.
However, it should be noted that an article on FiringSquad found no benefit in using these settings. Whatever the configuration of these INI variables, it is generally acknowledged that Oblivion makes very little use of additional CPU's/CPU cores. This may be because all of the functions that these variables enable multithreading for are not CPU intensive tasks, there appears to be no variable related to enabling multithreading for the main scene renderer, which would most benefit from such an optimization. Things such as the Particle System and Shader Effects are not used in excess in Oblivion, so using multiple threads for processing related to them will likely not have many benefits.
Despite dubious significance to performance, these options can effectively prevent or at least reduce crashes on multi-core systems.
Warning! Before you make any change, make a copy of your Oblivion.ini and your latest game save files. Changes in the Oblivion.ini can corrupt game saves or prevent the game from starting. In the event of an issue arising, simply replace the modified INI file with your backup and try using a backed up or earlier save file.
Remap Mouse and Keyboard Buttons[edit]
For remapping the mouse buttons through normal game UI see Technical Support entry. The bindings in the INI are 8-digit hex codes XXXXYYZZ where XXXX is the keyboard button, YY is the mouse button, and ZZ is the joystick button.
- EDIT NOTE: this section needs to be filled properly, adding i.e. 03(fourth mouse button) doesn't do anything. Rest of the mouse 4th key code is required.
002EFFFF is cast keyboard code, replacing FF with 03 is not enough. Need full code.
Mouse Code = Button
FF = No mouse button
00 = Left-click
01 = Right-click
02 = Middle-click (a.k.a. center or scroll-button)
03 = Fourth mouse button
04 = Fifth mouse button
Change action key mappings accordingly.
For Example, possible mouse mappings are:
Block=003802FF (MMB)
Cast=002E01FF (RMB)
Toggle POV=0013FFFF (removes this from MMB)
Change View=0013FFFF (removes this from MMB)
Keyboard Keys A list of Keyboard codes can be found here To remap a Key, simply drop the x in favor of a second 0 for the button you want and replace the first four digits of the entry with it.
For Example, possible keyboard mappings are:
Block=001001FF (Changes keyboard blocking key to Q)
Cast=0010FFFF (Changes the casting key to Q as well)
Auto Move=002EFFFF (Makes Auto Move C)
Grab=0038FF07 (Changes grab to Left-Alt)