Oblivion:Linux
This page provides information on how to run Oblivion and the expansions under the Wine compatibility layer in Linux. These are instructions for installing in Ubuntu Linux. There are specific instructions to make it easy for Ubuntu users throughout this guide, however you should be able to infer how to apply those details to your own distribution. To get Oblivion running under proprietary products, see the External links section below.
It's been possible to have a great Oblivion play experience in Wine since version 0.9.29. The Oblivion core game, along with all of the official plug-ins (including both Knights of the Nine, Shivering Isles, and the minor add-ons) are known to work. Most unofficial mods also work without any problems. Given your hardware you should be able to have the same performance as Windows, and the same experience except where noted below. The TES Construction Set also works, though there are several obvious and not-so-obvious ways to make it crash.
Índice
- 1 On Wine versions
- 2 Alternatives to Wine
- 3 Specific system requirements
- 4 Installing Wine
- 5 Setting up Wine
- 6 Starting Oblivion
- 7 Playing!
- 8 Notes
- 9 Known Issues
- 9.1 Bugs in Oblivion itself
- 9.2 Crashes
- 9.3 Hangs and freezes
- 9.4 Rendering errors
- 9.4.1 A very large tree sprite appears outside.
- 9.4.2 People's faces do not render properly
- 9.4.3 HDR renders as black
- 9.4.4 Local map texture is rendered improperly using fbo
- 9.4.5 Some spells (invisibility) cause screen filled with solid color objects
- 9.4.6 Map markers disappear
- 9.4.7 Main Character has Black Skin
- 9.5 Sound errors
- 9.6 Control problems
- 10 Mods and Expansions
- 11 External links
On Wine versions
It must be kept in mind that Wine is in state of a flux; major releases have hope of working consistently (i.e. if it worked in previous major release, it probably will work in the next major release too, assuming the bug has been reported in time), but between individual n.n.X patches, new bugs may crop up while others get fixed, so playing on them can be a hit and miss experience.
- Current Versions from 1.1.20 have improved and simplified the setup process significantly. However, the format of this article is still geared towards older versions of wine. Also, each new update brings the possibility of new bugs or regressions.
- Old version of Wine, 0.9.38, provides possibly the best play experience so far.
- If you want to have a very good play experience and possibly more compatibility with other games as well, Wine 1.0 is a good choice.
- In Version 1.1.41, oblivion fails to install with a message like "current version could not be determined" (German: "Die aktuelle Version der Anwendung wurde nicht erkannt. Das Setup wird nun beendet."). Use either wine version 1.1.40 or version 1.1.42 or later. See http://bugs.winehq.org/show_bug.cgi?id=22066
Alternatives to Wine
PlayOnLinux is a front-end for Wine which greatly simplifies the installation of Oblivion on most major Linux distributions. Look for your distribution at the PlayOnLinux downloads page. After installing and launching PlayOnLinux, simply click Install, select The Elder Scrolls IV: Oblivion from the menu, and follow the on-screen instructions. You can install official mods, such as Knights of the Nine, by choosing "Install a non-listed program" in the menu and selecting "Edit or update and existing program", then selecting Oblivion from the menu. Though PlayOnLinux offers support for Shivering Isles, the installer appears to be broken; however, the method described on the Shivering:Linux page still works.
Specific system requirements
Aside of the normal Oblivion system requirements, you need to make sure you have up-to-date OpenGL drivers with GLSL support.
If you have a card allegedly supported by Oblivion and up-to-date, properly installed drivers, you probably shouldn't have any problems.
Installing Wine
Where do you get Wine for Ubuntu?
Follow the instructions at winehq.org's setup guide, or download from the archives at wine.budgetdedicated.com. If you want the 'bleeding edge' of the developer tree you can build from source code via GIT Wine. It's suggested to use the packaged Wine deb, since it's known to be stable and has been tested.
Also, you can open terminal and run the following lines
sudo apt-get update
sudo apt-get install wine
This downloads and installs the most recent version of wine.
Where do you get Wine for other Linux distributions?
Look for your distribution at the winehq download area.
Wine installation in Ubuntu.
You just need to download and install the package you need based on your version. At the release of Hardy Heron, it became the only Ubuntu release to be supported. The Ubuntu version number is the year.month (Y.MM) the version was released in case you were curious. Feisty, for example, was released in 4th month of 2007. Clicking the System menu then About Ubuntu will show which version is installed for those that can't tell.
One should take note wine.budgetdedicated.com now provides amd64 packages for Ubuntu Feisty users. The term amd64 is what Linux uses for the instruction set used by Intel and AMD x86_64 desktop processors, and the packages will run on both Intel and AMD x86_64 computers. If you don't have amd64 Wine packages for your version of Ubuntu the following instructions will show you how to install the i386 packages for amd64 operating systems.
Users of x86_64 installs aka '64bit PC' on the official packaging can use the same i386 package by using the --force-architecture flag. You need to install lib32 and supporting libraries as well on x86_64. Those that are unsure should run the command uname -m
to determine if an x86_64 machine architecture is installed. The output will be 'x86_64' for '64bit PC'.
# x86_64 users should install the needed ia32-libs and force architecture apt-get install -u ia32-libs lib32asound2 lib32z1 lib32stdc++6 linux32 dpkg -iE --force-architecture wine_0.9.38~winehq0~ubuntu~7.04-1_i386.deb
# i386 users just install as normal dpkg -iE wine_0.9.38~winehq0~ubuntu~7.04-1_i386.deb
# x86_64 users with 64bit packages install as normal dpkg -iE wine_0.9.38~winehq0~ubuntu~7.04-1_amd64.deb
Setting up Wine
Wine Prefix: Default location, or separate?
Oblivion requires some registry settings that might clash with other applications. If you are concerned about this, you can install Oblivion's Wine settings in a location separate from your default Wine settings by changing the WINE prefix. This will also allow you to lump your Desktop Integration files into a location under this directory, and if you completely hose the installation, just copy the Desktop Integration files to recover your savegames, delete the directory, and start over. The downside is that whenever you start Wine-related programs, you have to specifically set the prefix.
To use a different location, the environment variable WINEPREFIX
has to be set. The default value for this is $HOME/.wine
and is used in the examples below. If you use a different Wine prefix, adapt the following accordingly.
You can use a different location by using this command:
export WINEPREFIX=/path/to/your/OblivionWine
...before running any of the following commands. You should naturally also add this to the Oblivion start-up script below, somewhere above the "wine" command.
Wine dotfile setup
The first step to start using Wine is to create the initial setup. For Wine versions 1.0rc1 and later, creation and maintenance of the directory is done automatically.
For Wine versions before 1.0rc1, this has to be done by hand, using the following command:
wineprefixcreate
On the first run, Wine will copy relevant files to your ~/.wine
directory, and perform some initial setup.
Note: If you're using Wine versions earlier than 1.0rc1, you should re-run this command every time you install a new version of Wine; it will not affect your existing settings, but will try to ensure that your setup is "modern and complete". Not running this command upon upgrade may cause unexpected behavior; at worst, problems you had with previous Wine versions won't get fixed at all. After 1.0rc1, this command can still be used, but it is considered deprecated, and the directory is now maintained automatically when needed.
Setup Wine for running Oblivion
Wine provides a great GUI, so you can do most of your tweaking via point and click. Start up this nice little application by running:
winecfg
Graphics tab
[Note: It is not required to make any adjustments on this tab if using 1.0 or later.]
Virtual desktop will prevent your screen from behaving oddly if the game crashes
[x] Emulate a virtual desktop Desktop size: 1024 x 768
Vertex Shader Support [Hardware] [x] Allow Pixel Shader
Note, however, that if you get Oblivion performing reliably without crashing, you can then unmark "Emulate a virtual desktop" and you will then run in full screen mode with excellent performance.
Oblivion will run on a compiz desktop in fullscreen mode quite well (Trusty).
Audio tab
[Note: It is only necessary to click on this tab so that the ALSA driver is automatically chosen if using 1.0 or later.]
[x] ALSA Driver Hardware Acceleration [Emulation] Default Sample Rate [44100] Default Bits Per Sample [16] [x] Driver Emulation
To get things working with PulseAudio you will need to turn off everything except OSS, have hardware acceleration to "Full", driver emulation unchecked, and change your shortcut icon to run `padsp wine ...` to run wine in the pulseaudio wrapper.
Desktop Integration tab
[Note: This is not required for 1.0 or later.]
Here you should make a folder as your 'Windows folder base' and populate it; for example, ~/Documents/Windows/ works. After you make these folders match them up in this interface, since Oblivion follows the logo requirements and uses a 'My Games' folder.
mkdir -p ~/Documents/Windows/{Desktop,Documents,Pictures,Music,Video}
Your ini and saved games will be under:
~/Documents/Windows/Documents/My Games/Oblivion/
Your old Windows save games and autosaves can be copied to the 'Saves' folder under Oblivion and accessed. Remember to make sure any saves you copy have permissions set read/write by the user running Wine.
Drives tab
Add a new drive for example 'D:' and click Show Advanced to set it as a CDROM drive. Browse to the mount point for your Oblivion DVD or loopback image, for example '/opt/games/Windows/CDROM/'.
If you have the space, you can copy your Oblivion DVD to a disk image instead of having to use the original DVD all the time. Here's a handy, dandy shell script to mount your Oblivion.iso. You can save it as mount-oblivion.sh and run it before loading the game, or add the line to the shell script at the end of this guide.
#!/bin/sh sudo mount -o loop -t iso9660 /opt/iso/Oblivion.iso /opt/games/Windows/CDROM/
On some systems, you may need to replace iso9660
with udf
in the preceding command. If you are in doubt, try running without the -t iso9660
and let the operating system try to guess the format.
If space is an issue, you could try to create a sparse DVD image that just contains some megabytes from the start and from the end. If Oblivion.iso is your full image, Oblivion_sparse.iso could be created like this:
$ dd if=Oblivion.iso of=Oblivion_sparse.iso bs=1024k count=16 $ dd if=Oblivion.iso of=Oblivion_sparse.iso bs=1024k skip=4200 seek=4200
Olivions_sparse.iso will have the same size as Oblivion.iso using "ls -l", but "du -k" will show that only a fraction of this is actually used on disk:
$ du -k *.iso 4322664 Oblivion.iso 34068 Oblivion_sparse.iso
The value "4200" in the "skip" and "seek" options of the second "dd" command may vary depending on the layout (and size) of your DVD. If you do not succeed with this value, you could first use a 16MB image (only use the first dd command), mount it, run the launcher and check "dmesg" afterwards for an error like this:
attempt to access beyond end of device loop0: rw=0, want=8619652, limit=32768 udf: udf_read_inode(ino 2154912) failed !bh
Divide 8619652 (the "want" block number) by 2048 and reduce it a bit to find a candidate for the "skip" and "seek" value.
DirectX DLL For Missing Symbols
[Note: This is not required for wine 1.1.20 or later.]
You will also need to copy d3dx9_27.dll to your ~/.wine/c_drive/Windows/System32 if you don't already have it installed. This dll is mainly for some symbol resolution issues. You can copy it from a Windows install or use cabextract and get it from the Oblivion DVD's DirectX. It is not a good idea to install DirectX in Wine, so we only install this one DLL to avoid any conflicts with other games and applications.
# This assumes /media/cdrom is what your DVD mount point is called. apt-get install cabextract cabextract /media/cdrom/DXREDIST/Aug2005_d3dx9_27_x86.cab cp d3dx9_27.dll ~/.wine/drive_c/windows/system32/
Registry editing in Wine
[Note: No registry editing is required for wine 1.1.20 or later.]
Run the command below and it will open a Wine version of regedit.
regedit
Now browse to the HKEY_CURRENT_USER / Software / Wine / Direct3D folder.
If the Direct3D key folder does not exist then you can create it yourself:
- 1. Right-click on the Wine folder icon.
- 2. Select New > Key from the pop-up menu.
- 3. Name the new 'folder' key "Direct3D" without the quotes.
Once you find or create the Direct3D key you can enable shaders in Wine:
- 1. Select the Direct3D key folder icon.
- 2. Right-click the mouse in the pane to the right to open the right-click menu.
- 3. Use the right-click menu command New > String Value to create each of the following key pairs:
OffscreenRenderingMode pbuffer UseGLSL enabled VideoMemorySize 256
These are only the tried-and-true recommendations; the following sections explain what you can try for optimizing performance.
This guide has been tested with a Nvidia 6800 GS with 256MB of RAM, and it performs well. Cards with less shader operations per second may have unacceptable framerates.
VideoMemorySize
Wine does not currently have a way of knowing how much memory your video card has. Thus, specifying it on registry is the way to go. Set the VideoMemorySize to whatever you currently have (e.g. "128" for 128MB card, "256" for 256MB card, etc.)
UseGLSL
Note that Oblivion will not run unless your card and its driver supports GLSL.
OffscreenRenderingMode
[Note: It is not necessary to adjust this in version 1.1.20 or later.]
In the bleeding-edge versions of Wine, OffscreenRenderingMode setting is a trade-off between performance and stability. Also, it's a trade-off between one set of bugs and another set of bugs. You should pick whichever setting causes less problems for you.
pbuffer
orbackbuffer
- This is the recommended setting for OffscreenRenderingMode (since Wine 0.9.32). It will likely result in slightly better performance and picture quality. Regrettably, in certain situations and certain Wine versions
pbuffer
might cause more crashes. Pbuffer is preferred for the well tested 0.9.38. However, pbuffer (and possibly backbuffer) is working again in version 1.0 and above. However, there is a bug which causes the screen to occasionally flip upside down for a split second. This bug is apparently fixed in the development version 1.1.23. fbo
- This is the stable setting, and the only setting that works for Wine versions before 0.9.32. It will give a tolerable performance, and will be less likely to crash. If
pbuffer
causes problems for you, you can go back tofbo
. Due to the exterior cell boundary crash bug,fbo
is the preferred setting for the bleeding-edge Wine versions.
See Known Issues section for possible bugs related to this setting.
Starting Oblivion
Installing Oblivion
The various installers used to work with Wine, but as of 2011, and wine-1.4 this is no longer the case. Try with your version of wine, and please report your results.
With Wine
There is nothing to this one, you just click and go. The only thing that might bite you is if you see the error 'out of disk space', and you know you have enough space. If you see this you might want to map another drive in Wine to the partition you're installing on. For example, you could map G: to your /opt partition. After this Wine will see the correct disk space for /opt on the G: drive.
# Use /media/cdrom or whatever your mount point is here. cd /media/cdrom wine setup.exe
Manually
Mount the CD, then use unshield to extract the game files from the .cab files.
mount <Oblivion CD> /mnt/cdrom mkdir -p ~/.wine/drive_c/games/oblivion unshield -d ~/.wine/drive_c/games/oblivion x /mnt/cdrom/data1.cab umount /mnt/cdrom mount <Shivering Isles CD> /mnt/cdrom unshield -d ~/.wine/drive_c/games/oblivion x /mnt/cdrom/English/data1.cab umount /mnt/cdrom
The Knights of Nine is a little more involved, requiring IsXunpack.exe, which is bundled with UniExtract, but is available elsewhere.
- Install IsXunpack (for instance, install UniExtract using wine). Then:
mkdir -p ~/bin ln -s ~/.wine/drive_c/Program\ Files\ \(x86\)/Universal\ Extractor/bin/IsXunpack.exe ~/bin
- Copy the installers
mount <KON CD> /mnt/cdrom mkdir ~/tmp/kon cp /mnt/cdrom/English/*exe ~tmp/kon # we don't need the patch cd ~/tmp/kon rm Oblivion_v1.1FinalEnglish.exe
- Extract the installers (you may want to do this manually)
cd ~/tmp/kon mkdir plugin-data BIFS=${IFS} for i in *exe ; do mkdir ${i/.exe} mv $i ${i/.exe} cd ${i/.exe} wine ~/bin/IsXunpack.exe ${i} unshield -d cab x Data1/data1.cab mv cab/Plugin/Data/* ../plugin-data cd .. done IFS=${BIFS}
- Merge the contents into your install
mv ~/tmp/kon/plugin-data/* ~/.wine/drive_c/games/oblivion/Data
If you install manually, you will have to manually create a registry entry to install patches:
# regedit is bundled with wine regedit # Create a key: [HKEY_LOCAL_MACHINE\Software\Bethesda Softworks\Oblivion] # Set "Installed Path"="C:\\games\\oblivion"
Install the Oblivion patch.
Go grab the latest patch for Oblivion, and install it under Wine. If you installed Oblivion under Wine then this is just watching the bar scroll to complete. The Knights of the Nine content can be installed the same way from the disc.
# Check for your version's latest patch. 'English' is shown here. http://www.bethsoft.com/eng/downloads_01.html wine Oblivion_v1.2.0416English.exe
First run
Copying the Oblivion icon on your desktop to your Windows/Desktop is recommended. Go ahead and run the icon or OblivionLaucher.exe directly once. Set the general options you want, and exit. You want to disable HDR and bloom due to current support level in wined3d as of this writing. You'll want to reduce your game resolution and lower defaults as needed. In general the types of shaders cause more game slowdowns than the draw distance and other settings. You can also write Oblivion 'batch files' to toggle on/off some of these features as you play. For example you can disable more features as needed outside in sunlight, which is the worst slow down in the game right now. Check Google for details.
Tweaking Oblivion.ini.
[Note: It is not necessary to make such adjustments with 1.1.20 or later.]
There are a lot of sites that do an entire article on just this; these are the suggested changes:
bForce1XShaders=0 bSaveOnInteriorExteriorSwitch=0 SIntroSequence= bUseWaterShader=0 bUseJoystick=0 bMusicEnabled=0
The 1X shaders cause crashes for menus and outdoors, so you don't want them. The other option avoids saving every time you open a door, and that means less file I/O. If you don't care about looks so much you can enable global light model, which is much faster, but looks much worse. Clearing out the intro sequence resolves a crash for some. Disabling the water shader means no pretty water, but it can be worth up to 50fps or more. If you get 2fps anywhere in the game try disabling this shader, and you'll likely get a huge speed boost. You can remove the purple color from the water by replacing its DDS texture. For example, edit the texture below to be a highly transparent light grey, or whatever you prefer.
If you get 'purple water' once you turn off the water shader you can fix that by using a replacement water texture such as:
Just extract the contents ( 'Textures\water\water00.dds' ) into your Oblivion/Data directory.
Playing!
Now you can finally play the game. Remember you must have the disc or the iso for Oblivion mounted and setup as CDROM device in Wine to play. Disabling all the debug spew improves performance. The following shell script can be used to start the game. Open up a text editor and save the text below to Oblivion.sh. Change the OBLIVION_DIR to be your install directory, and set the permissions of execute bit on the script. You can do this by right clicking on the file, click the Permissions tab, and checking the Execute box. Also the command 'chmod +x Oblivion.sh' in a terminal works as well.
#!/bin/sh # This script disables all the text output for Wine # debugging for improved performance. export WINEDEBUG=fixme-all,err-all,warn-all,trace-all OBLIVION_DIR=/opt/games/Windows/Oblivion cd "${OBLIVION_DIR}" wine OblivionLauncher.exe
You can either run the shell script from a terminal or make a menu entry.
# Command for use in terminal sh Oblivion.sh
To optionally make a menu entry:
- Open the menu editor from the main panel: System > Preferences > Menu Layout
- Select the Games menu.
- Click the New Item button.
- Select the icon you want to use.
- Type in a name, for example: "The Elder Scrolls: Oblivion."
- Browse for Oblivion.sh using the Browse button and dialog.
- You may need to add the 'sh ' in the Command textbox, e.g.:
sh /home/${USER}/scripts/Oblivion.sh
- You may need to add the 'sh ' in the Command textbox, e.g.:
- Click OK button.
Now you should see the new menu entry under Applications > Games. Now it's just click and go. Normally you could just use the desktop icon Oblivion made during install, but then you'd still have all the debug output turned on.
Notes
- Confirmed working Wine install with Knights of the Nine content from CD install.
- Confirmed 1.2 patch installs cleanly.
- If you have trouble with the water shaders, you might want to try some water mod, for example A-WaterMod
Known Issues
This section only covers the issues in the last 'really well tested' Wine release, which of this writing is Wine 0.9.32 unless noted. You should visit Wine AppDB page for the most up-to-date bug reports.
Bugs in Oblivion itself
Check the Oblivion Patches section to be informed about bugs in the game itself. That section has information on the well known 'savegame' and 'guard' bugs. Note that some information in the section will still only apply to Windows users.
Crashes
Crash when crossing boundaries in exterior areas
Wine versions 0.9.39 through 0.9.49 (and possibly later) will hang and crash when crossing boundaries in exterior scenes when using the pbuffer
registry setting (see Wine bug #8868). Wine version 0.9.38 is the most recent release that works with pbuffer
as of this writing. If you experience this, try setting the mode to fbo
. NOTE: This bug has been fixed in wine version 1.0-rc2.
Crashes specific to Wine 0.9.39 - 0.9.41.
Do not use these versions of Wine to play Oblivion. There is a known issue with these versions, and it is suggested to use Wine 0.9.38, 0.9.42, or later versions. This bug involves thread safety. That means it may appear to work but randomly crash, or possibly corrupt your save data.
Crashing when launching Oblivion
If Oblivion crashes with an error beginning like this:
1 0x7e2dc466 glTexImage2D+0x406() in libgl.so.1 (0x7cabb950) 2 0x7ccc7a75 in d3d9 (+0x7a75) (0x7cabb980) ...
Try disabling the logo videos in the Oblivion.ini as suggested earlier in the guide. If this doesn't resolve the issue then rename the Video Folder in the Data directory. Note that renaming the directory will disable all videos in the game, and should only be used as a last resort. If you don't want to see any movies there is also an option in the Oblivion.ini to disable them.
ATI cards crash using shader functions
ATi OpenGL drivers do not offer stability and support for many shader features as of this writing. This leads to Oblivion crashing on save, starting the game, etc. Right now the only way to play Oblivion in Wine is by using a GPU and drivers properly supporting OpenGL 2.0 such as Nvidia 6800 or higher with 1.0-9xxx drivers or later. Note that OpenGL 2.0 compliance of hardware does not mean the driver supports all features of OpenGL 2.0 -- just that it's possible for the hardware to do so. Please send your debug logs to ATi and request fixes for crashes found in the driver. This issue only affects ATi users.
Some people have tried using emulated shaders, but performance with software emulated shaders makes Oblivion unplayable. Modifying the Oblivion runtime and data to remove the use of shaders is possible, but often leads to instability and quite poor visual quality. It should be possible to only modify the shader data to allow play with poor visual quality without modifying the game.
- It is possible to run Oblivion with the more recent ATI Catalyst linux drivers, but many users experience weird graphical artifacts, especially outdoors.
Horse armor crash
It seems that if a horse has armor equipped and plays a certain animation -- while animations threading is enabled in the Oblivion.ini -- you will experience a game crash. You can disable threading for the feature or don't put armor on your horse as the workaround. If your horse has armor and you don't ride it you'll likely not see the crash as it is a strafe turn animation.
Crash after 2-3 minutes when wine has no mpg123 support
When using a version of Wine compiled without mpg123 (for instance, Fedora's version of wine), after about 2-3 minutes of in-game time, the game will crash with the error:
err:winediag:FILE_CreateFile Too many open files, ulimit -n probably needs to be increased
Raising the ulimit would only postpone the crash, since it's apparently opening files constantly. For more information, see: https://bugs.winehq.org/show_bug.cgi?id=19967
Additionally, performance is impacted somewhat by not having mpg123, and no background music will play, though those are less dire than the crashing behavior.
Hangs and freezes
Some people get a freeze starting the battle with the Emperor's assassins
; Disable music and joystick in the Oblivion.ini if setting FBO doesn't help. ; This has been known to resolve the issue for everyone so far. bUse Joystick=0 bMusicEnabled=0
Rendering errors
A very large tree sprite appears outside.
SpeedTree instancing causes rendering errors outside in Wine 0.9.32 and later. If this bothers you downgrade to 0.9.31, since it is not affected. These trees only appear if you use distant LOD, so turning it off is a kind of a "fix". This bug is now fixed.
People's faces do not render properly
You see just the eyes and mouth of character's heads. This is caused by using an old Nvidia 1.0-8xxx OpenGL driver. Update your graphics drivers to 1.0-9746 or later to fix.
HDR renders as black
Almost all versions of wine, even 1.1.25, if not all, do not yet work by default with HDR. Keep it off and use the Bloom effect if desired.
A workaround exists. Replace c:\Program Files\Bethesda Softworks\Oblivion\Data\Shaders\shaderpackage002.sdp with a different shader model. (make a backup first! and use a link rather than copying the file: 'mv shaderpackage002.sdp shaderpackage002.sdp.bak; ln -s shaderpackage019.sdp shaderpackage002.sdp') This author uses shaderpackage019.sdp with an nvidia GeForce 9800. Other shaderpackages will work; some experimentation may be required if shaderpackage019.sdp does not work for you. Once that's done, enable 3.0 shaders in Oblivion.ini:
bAllow30Shaders=1
Enable HDR in the options, restart, and you should have HDR. Confirmation is needed how well, if at all, this works with ATI cards.
Local map texture is rendered improperly using fbo
Setting the Wine registry key OffscreenRenderingMode to 'pbuffer' will cause the local map and overlays to render properly, however some report stability issues using 'pbuffer'. If you have a crash while saving revert the key back to the 'fbo' setting.
Some spells (invisibility) cause screen filled with solid color objects
This could be temporarily resolved by switching off refraction shader in game's Oblivion.ini file. However, note that it may render Gamma correction menu option unusable. This bug also manifests as a yellow-green background during certain effects (e.g., an Oblivion gate or an active spell on a dying monster) (see Wine bugs #8184 and #8635). Disable the refraction shader to avoid these issues:
bUseRefractionShader=0
Map markers disappear
There may be occasional cases where all local map markers and the player location arrow disappears. This is not fatal - simply save, exit to main menu, and reload. This has also been seen under Windows 7.
Main Character has Black Skin
During character creation and in-game, the main character has all-black skin. There are other glitches, but this is the most obvious. See this wine bug for a fix. (2012-03, wine 1.4)
Sound errors
No sound at all
Try uninstalling pulseaudio.
Music doesn't render properly or at all in game
; Disable music in the Oblivion.ini if you have issues bMusicEnabled=0
As of Wine 0.9.37 music works properly in the opening movies, main menu, and in game. Some users have reported game save bugs were resolved by disabling music on several occasions. This is unconfirmed.
Even as of 0.9.49, game music can sometimes create noise if you skip through some of the game intro dialog in the prison cell. Saving and reloading the game can fix game music.
Certain in game sound effects render static during audio mixing
Turn down the Audio 'Effects' slider to 25% and all other Audio sliders to 100%, and set 'Master' to desired level. This will enable you to still hear hits/attacks/magic/etc and the static will be inaudible if you're using speakers. Voice and footsteps are not affected by the mixing bug.
Voice tracks stutter and/or have silent gaps
Switch to software audio mixing. Warning! This will make your processor do a little more work, so if you notice serious slowdowns when there is a lot of audio going on, you may not want to do this. You probably won't notice any difference though.
bDSoundHWAcceleration=0 bUseSoftwareAudio3D=1
Oblivion Doesn't Allow Other Applications To Use Sound
If you are not getting sound in other apps while using Oblivion (such as Pidgin or Skype), the best solution is to install the aoss package (may be called libaoss or alsa-oss, depending on your distribution). Then, in your launcher script, change the line that says "wine OblivionLauncher.exe" to "aoss wine OblivionLauncher.exe". If you do not get sound when you start the game itself, go into Audio preferences, set volume levels to default, and then continue to the game. As your saved/new game is loading, the sound will start working.
Control problems
The player's shield is stuck always blocking
This is often caused by your mouse cursor leaving the game window while blocking. Pressing the keyboard command for block again to force the state to stop blocking is the best fix. The default key is Left Alt, however you can check Options > Controls if you changed the key and forgot. If you encounter this bug very often you may want to increase your framerate by tweaking the Oblivion.ini, since DirectX input sometimes drops when framerate is low.
This can be caused by a USB gamepad or joystick plugged in before starting the game. Unplug the controller and reload the game. Note: true for the macbook pro's with motion sensors at least, remember that if you use the applesmc driver, this will be recognized as a joystick!
Possibly caused by a joystick problem. It can be fixed by disabling Joysticks in the ini:
[Controls] bUse Joystick=0
Emulated desktop steals mouse when game is fullscreen
When the game is in full-screen mode and wine is running with the emulated desktop, you may run into an issue where the mouse refuses to leave the window, which can be problematic in some cases, such as a program that you need to respond to. (author's note: or if you're a heavy multi-tasker and have a web browser with oblivion-related websites opened on a second monitor)
However, there is a simple workaround. Keep a program window minimized while the game is running, and make sure that window, when restored, will fully or partially cover the game window. When you need to do something outside of Oblivion's window, you just pause the game, and then press alt-tab to make the window manager bring that minimized window, which will cause the mouse's focus to be released.
Another workaround involving alt+tab is holding the two keys to take the mouse's focus away and moving it off of the game screen. This method requires less preparation than covering the Oblivion window partially.
Mods and Expansions
Shivering Isles Expansion
In Wine versions approximately 0.9.55 and later, Shivering Isles will install normally through Wine, if Oblivion has been already installed following the guidelines on this page. It isn't possible to use the Shivering Isles setup.exe directly in older Wine versions due to the Securom DRM on the disc and the downloadable installer. Instructions for installing the Shivering Isles expansion are at the wiki entry: Shivering:Linux.
Oblivion Game of the Year Edition
Likewise, Oblivion GOTY Edition uses Securom and won't install with pre 0.9.55 versions of Wine. Use a version of Wine above 0.9.55 or, it can be installed by setting the Windows version to "Windows Vista" in winecfg, and creating the key "HKEY_LOCAL_MACHINE\System\MountedDevices" in regedit before running OblivionLauncher.exe. Otherwise, the above instructions work normally. If using the ISO image instead of the DVD-ROM, is not necessary to create an ISO of Disc 2; the game requires only Disc 1 to be at hand and mounted.
Update: Securom is properly implemented in wine-1.1.28. Modifying the registry and changing the windows version is no longer necessary. The only requirement is to ensure the DVD mount point is listed in the "drives" tab in winecfg.
Note: Wine 1.1.41 has an issue with Securom. Either use version 1.1.40 or version 1.1.42 (or above) or wine.
Unofficial Oblivion Patch
The Unofficial Oblivion patch installs and works cleanly on linux, and it is highly recommended that you use it. Make sure to install any official patches first, as the UOP needs them to work. Just run the installer under wine and it should be all set.
Other Mods
- An Oblivion specific solution for using Mods written for use under the Microsoft Windows OS, with the Linux kernel instead.
External links
- There is a Wine AppDB contains bug and status reports for playing Oblivion under the current version of Wine.
- There is a popular ubuntuforums thread that deals with troubleshooting Oblivion in Ubuntu. The first post is the basis for this wiki entry.
- Screenshot of Oblivion in action in Wine 0.9.29.
- Screenshot of Oblivion in Wine 0.9.32. Note the lighting improvements and higher resolution on the same hardware.
- CodeWeavers' CrossOver - contains bug and status reports for playing Oblivion under the current version of CrossOver.
- TransGaming Technologies' Cedega - Members Only Area
- Oblivion on Wine - A new series of blog posts that reports Oblivion's functionality under Wine and Arch Linux, starting with version 1.1.23.