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 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.
- 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 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 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 :)
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 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: bUseMyGames
Values: 0 = Use the Oblivion directory (directory is wherever Oblivion.exe is) 1 = Use the My Documents\My Games\Oblivion directory (default)
Oblivion.iniis stored in the
My Documents\My Gamesdirectory for each user. Similarly,
Plugins.txtis stored under
Users\TheNameoftheUser\Local Settings\Application Data\Oblivion\Plugins.txt. If
bUseMyGamesis set to 0, Oblivion.exe will try to find
Plugins.txtin 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).
- OblivionLauncher.exe does not respect these values, and will only edit
My Documents\My Games\Oblivion.iniand
Users\TheNameoftheUser\Local Settings\Application Data\Oblivion\Plugins.txt; However, Oblivion.exe started from OblivionLauncher.exe will still respect
bUseMyGames. Wrye Bash and also respects
- Oblivion reads the
Oblivion.iniin the directory where it exists first, and only if
bUseMyGamesis non-existent or set to 1 does it then look for
My Documents\My Games\Oblivion.ini. In other words, both can exist simultaneously, and only the value of
Oblivion.inidirectory where Oblivion.exe is run from will actually matter.
- OblivionLauncher.exe does not respect these values, and will only 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 a 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 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 framerate.|
|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 all together. 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 speed ups. 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.|
|These settings control how far grass is rendered, lowering these values can give large performance boosts for computers experiencing memory related stuttering.|
uExterior/Interior Cell Buffer
|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 sets the maximum amount of data that can be loaded into memory whenever the game loads an area (when entering and exiting an area, i.e entering/exiting a house, fast traveling, basically whenever a loading screen appears).
Multi-core CPU tweaks
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 much benefit.
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
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.
Mouse Code = Button
FF = No mouse button
00 = Left-click
01 = Right-click
02 = Middle-click (aka center or scroll-button)
03 = Fourth mouse button
04 = Fifth mouse button
Change action key mappings accordingly.
For Example, possible mouse mappings are:
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)