The Elder Scrolls IV: Oblivion
Version 1.2.x (GOTY, with Shivering Islands downloadable content or official 1.2 patch)
WINEARCH=win32 Obviously running and installing. Launcher menu. Changing settings. Intro videos and main menu. Builtin DX9 works marvelously. Patching and installing DLCs and simple mods. Winetricks wasn't necessary.
What does not
However, once the game starts: it starts grabbing/leaking memory until it hits around 842Mb. Then the game hangs up, frozen. Also once patched, the main menu loses music and Wine complains about MIDI. Minor issue was the graphics chip being properly detected.
Nothing seemed to alleviate the memory/hang issue...
Winetricks -> .NET + native DX9 + native D3Dcompiler4.7 = nope
Regedit values were useless.
The music issue *might* be solved with native Directmusic or WMP. Wasn't my biggest concern.
Use a much earlier version of Wine for this game.
Maybe buy Crossover for additional support/influence.
What was not tested
The unplayable part of the game, which was most of it. Also did not exhaust all my debugging options, I simply don't have time to do a lot of debugging these days.
Started with Gentoo's packages: wine-vanilla 5.22, wine-mono 5.1.1, wine-gecko 2.47.1
Options on wine-vanilla: "X dos fontconfig gecko jpeg lcms mono mp3 ncurses nls opengl osmesa perl png pulseaudio
realtime run-exes ssl threads truetype udev udisks unwind v4l xcomposite xinerama xml"
Used the above with linux-5.9.10-gentoo (hardened profile) under KDE Plasma 5.20.3 I thought is might be some system config error, being just an Athlon64x2, 2Gb RAM, Nvidia 8400GS/nouveau.
...so I swapped drives with my gaming rig (Ryzen5 6-core, 8Gb RAM, RX570/amdgpu): problems reproduced.
Also tried a Macbook (Intel Core 2 Duo, 4Gb RAM, GeForce9400M) with PlayOnMac... problems reproduced on Wine 5.22 _and_ 5.0.3. Wine 3.20 works just fine.
Standard WINEDEBUG wasn't helpful, there was a _lot_ of:
fixme:d3dx:D3DXLoadSurfaceFromMemory Unhandled filter 0x5
Again, I don't have time for Bugzilla. If someone else wants to take this up, thank you.
|Operating system||Test date||Wine version||Installs?||Runs?||Used|
|Current||Gentoo Linux x86_64||Jan 02 2021||5.22||Yes||Yes||Yes||Bronze||William J May|
|Show||Debian 10.x "Buster"||May 19 2020||5.0||Yes||Yes||No||Silver||Alexander|
|Show||Arch Linux x86_64||Jan 02 2018||3.0-rc4||Yes||Yes||No||Platinum||Heinrich Bormann|
|Show||Debian GNU/Linux 8.x "Jessie" x86_64||Jun 06 2017||2.9||Yes||Yes||Gold||Centrino|
|Show||Debian GNU/Linux 8.x "Jessie" x86_64||Mar 16 2017||2.3||Yes||Yes||Platinum||Arthur Nismo|
|Bug #||Description||Status||Resolution||Other apps affected|
|3112||Get bink videos working correctly||CLOSED||ABANDONED||View|
|6740||Oblivion pagefaults on start||CLOSED||FIXED||View|
|7411||GLSL shaders work badly with fglrx||CLOSED||INVALID||View|
|7928||DirectX installer for Oblivion crashes when trying to load fusion.dll||CLOSED||ABANDONED||View|
|8021||Oblivion map stopped working from Wine 0.9.33 (pbuffer)||CLOSED||FIXED||View|
|8184||Oblivion Some shader effects cause screen to go vomit green||CLOSED||FIXED||View|
|8635||Oblivion magical effects render visual artifacts on screen||CLOSED||DUPLICATE||View|
|8715||Oblivion pagefaults when loading outdoor area||CLOSED||FIXED||View|
|8866||Oblivion trees have black artifacts on them||CLOSED||FIXED||View|
|8867||Oblivion water lacks any shader effects||CLOSED||FIXED||View|
|8868||Oblivion crashes outdoors when moving across load boundry||CLOSED||FIXED||View|
|9930||Leaves on Oblivion's trees are rotated||CLOSED||ABANDONED||View|
|10039||F.E.A.R. Perseus Mandate demo fails to launch||CLOSED||FIXED||View|
|10047||Oblivion water lacks transparency||CLOSED||FIXED||View|
|10280||Oblivion: Horse Armor Crash||CLOSED||FIXED||View|
|10485||Oblivion gameplay slows to an unplayable level when it rains||CLOSED||FIXED||View|
|10684||Some games fail to restore pre-launch gamma||CLOSED||FIXED||View|
|11795||Oblivion giant tree sprite(s) follow the player||CLOSED||FIXED||View|
|12929||Games crash/wined3d doesn't work with ATI's fglrx driver||CLOSED||FIXED||View|
|13335||Wine virtual memory exhaustion causing OpenGL crashes / slowdowns||CLOSED||FIXED||View|
|13728||Crash when running Oblivion installation program||CLOSED||FIXED||View|
|13827||Oblivion distant trees flicker and look like 2D sprites||CLOSED||FIXED||View|
|13915||Oblivon Script Extender (OBSE) fails to start (needs address space layout randomization (ASLR) disabled and prelink enabled)||CLOSED||FIXED||View|
|14128||Oblivion crashes during certain quests when entering certain doors or jumping into water||CLOSED||FIXED||View|
|14186||Morrowind stucks for 3-5seconds during background music change (in combat)||CLOSED||FIXED||View|
|14591||Oblivion crashes in wine 1.1.1||CLOSED||FIXED||View|
|14600||Oblivion has wrong thunderbolt spell||CLOSED||FIXED||View|
|15900||Oblivion: Vertex pipeline replacement breaks rendering||CLOSED||INVALID||View|
|16302||[oblivion] can not skip the intro movie by press ESC||NEW||View|
|18069||Oblivion frequently crashes||CLOSED||FIXED||View|
|18381||Oblivion: blank screen when HDR is enabled||CLOSED||FIXED||View|
|18387||Oblivion doesn't quite make it all the way down||CLOSED||FIXED||View|
|18439||Crash dialog appears underneath fullscreen (D3D9?) apps||CLOSED||ABANDONED||View|
|18893||Oblivion installation crashed with an uncought exception||CLOSED||FIXED||View|
|19625||Oblivion: shadows flicker||CLOSED||FIXED||View|
|19890||Trine crashes game if joystick connected.||CLOSED||FIXED||View|
|19967||Oblivion - crashes in quartz if compiled without mpg123||CLOSED||INVALID||View|
|20074||Oblivion: black skin of main hero without native d3dx9_27.dll||CLOSED||DUPLICATE||View|
|20091||Oblivion crashes at startup with some keyboards||CLOSED||DUPLICATE||View|
|20118||Oblivion slows down with sound||CLOSED||FIXED||View|
|20277||Elder Scrolls: Oblivion slowdown and loss of background music since introduction of mpg123||CLOSED||DUPLICATE||View|
|21609||Multiple games loose most sound effects or crash||CLOSED||FIXED||View|
|22066||installshield installers terminate||CLOSED||FIXED||View|
|22885||Oblivion don't react on keyboard and steps to the left side in the game.||CLOSED||INVALID||View|
|23249||Fallout 3, Oblivion: Most sound effects missing.||CLOSED||FIXED||View|
|24611||Install Shield fails on 64bit multilib wine if WINEPREFIX was created by 64bit wine||CLOSED||FIXED||View|
|24720||Oblivion crashes, debugger NOT started||CLOSED||FIXED||View|
|24978||Assertion error in winegstreamer||CLOSED||FIXED||View|
|25472||Oblivion: Conversation engine causes crashes||CLOSED||FIXED||View|
|25585||Release key event is lost during lags in some games||CLOSED||FIXED||View|
|26292||Oblivion GOTY: OpenGL_Out_of_Memory (505)||CLOSED||INVALID||View|
|26356||Mouse "lags" and doesn't pick up quick movements.||CLOSED||FIXED||View|
|26495||Some games crash with Gstreamer issues||CLOSED||FIXED||View|
|26796||Deadlock and crash in "gstdemux.c: GSTImpl.csFilter"||CLOSED||FIXED||View|
|27979||Oblivion: Mouse drag broken||CLOSED||FIXED||View|
|27996||Oblivion 1.2.0416: Flickering grass, magic and flickering trees||CLOSED||FIXED||View|
|28066||Sound stops after some time (restarting sound in game usually possible)||CLOSED||FIXED||View|
|29015||Oblivion setup calls unimplemented function apphelp.dll.ApphelpCheckInstallShieldPackage||CLOSED||DUPLICATE||View|
|31340||Oblivion : black skin of all the npc's||CLOSED||FIXED||View|
|32127||Oblivion Launcher crash on start||CLOSED||FIXED||View|
|32629||Oblivion crashes, when using magic||CLOSED||INVALID||View|
|35534||Oblivion: very loud/distorted/horrible collision sounds||CLOSED||FIXED||View|
|37508||Some Bethesda games sometimes freeze during gameplay||UNCONFIRMED||View|
|40198||Oblivion: corrupted screenshot using the stamp key||UNCONFIRMED||View|
|49238||Oblivion: No sound/music||CLOSED||FIXED||View|
If you're using WINE version 1.3.x or above, you can launch the game without any native DirectX DLLs, but bug #20074 is still actual for now, therefore installing DirectX9 or just placing d3dx9_27.dll to your drive_c/windows/system32 directory would be preferable.
Since stable release 1.2.1 Oblivion Game of the year works stable on many popular distros.
Although, if you're running older WINE or have some regression issues, you can use some tips listed below.
Prior running the game,you will need to obtain d3dx9_27.dll. You can obtain it using winetricks
Or you can get this from the DirectX supplied with Oblivion like this (guide adapted from http://uesp.net/wiki/Oblivion:Linux):
Âcp d3dx9_27.dll ~/.wine/drive_c/windows/system32/
If the game fails to start, try renaming the Video folder in the Data directory. The videos should work since Wine 0.9.45.
Alternatively you can enter the Video directory and remove some specific files that could cause a crash. my Video folder currently contains these files: 'bethesda softworks HD720p.bik', ' Map loop.bik', 'OblivionOutro.bik' ,'CreditsMenu.bik' and 'Oblivion iv logo.bik'; and works fine with an unaltered main menu screen.
Currently it's needed to enter some additional registry entries into Wine manually prior running the game. VideoMemorysize to the memory size your video card has. Optional key is OffscreenRenderingMode, where value 'fbo' is recommended and value 'pbuffer' has best results. See the example .reg file below:
pbuffer is only recommended if you are using 0.9.38. Should you choose to use pbuffer instead of fbo, you may have to switch off refraction shader in game's Oblivion.ini file to workaround bug 8184.
Users of ATI cards may have to set the following in Oblivion.ini to prevent it from producing solid colors on the screen.
If you experience game freezes on combat start or combat end, these are related to music change. Try loading native quartz.dll instead of Wine one. Or workaround by setting the following in Oblivion.ini
If you are having problems, or would like more info on running The Elder Scrolls IV: Oblivion more smoothly, please see the Oblivion Linux Wiki.
When you paste the comment about game graphic lag or other issue, please write your system information within the comment text!
For example, under GNU/Linux you can use following commands:
$ uname -a
$ wine --version
$ lspci | grep -i vga
And paste the output with system hardware info to the comment text. Nobody can help you without this essential information!
If you have tested newer version of WINE, you can process some next lines to test bug #20074 presence:
$ mkdir /tmp/mywinejail
$ export WINEPREFIX="/tmp/mywinejail"
$ wine "C:\MyProgram.exe"
This lines creates EMPTY directory in /tmp and your program starts without any overrides, in a FULLY CLEAR WINE PREFIX.
For our OBLIVION you can process something like that:
[assume that Oblivion prefix is "~/.wine"]
$ cp -PR ~/.wine /tmp/mywinejail
$ rm -rf /tmp/mywinejail/drive_c/windows*
$ export WINEPREFIX="/tmp/mywinejail"
$ wine "C:\Program Files\Oblivion\OblivionLauncher.exe"