How to run Fallout3 in linux with Wine on Ubuntu (nvidia)
To run Fallout3 installer and game in Wine, you need to download the source code, patch and compile Wine.
1. Download the wine sources
I use 1.1.8: http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.1.8.tar.bz2
2. Get the following patches (save them to your computer):
- the mouse patch (mousepatch.diff)
http://bugs.winehq.org/attachment.cgi?id=15638
- the directx patch (driver.diff)
http://bugs.winehq.org/attachment.cgi?id=17130
3. extract the source code files within the archive to any folder, copy the patches into the the same folder, change directory to it and run the following commands using a terminal:
patch -p1 < mousepatch.diff
patch -p1 < driver.diff
4. to build wine type the following:
./configure
Once ready, you will get some messages, make sure you download all required deppendencies should configure tell you so. (should you get an error sayin no opengl support and you are sure you downloaded libGL, go to /usr/lib and: sudo ln -s libGL.so.1 libGL.so)
Next run:
make depend
make
sudo make install
5. You should have a patched wine ready and installed. It's time to get winetricks
http://wiki.winehq.org/winetricks
and use it to install vcrun2005, directx
6. type in "regedit" to bring up the registry editor. Open HKEY_CURRENT_USER/Software/Wine/Direct3D
- make a new string value: VideoDescription
- set it to something like: NVIDIA GeForce 8600M GT
- make another string value: VideoDriver
- set it to: nv4_disp.dll
- do a search on "MouseWarpOverride" and set it to: true
if it does not exist create the string value inside HKEY_CURRENT_USER/Software/Wine/DirectInput and add it as a new string value.
7. Install the game. Run the launcher and configure video options, then quit the launcher.
Start game with: wine Fallout3.exe
Everything should be set. If you have problems drop a line in the comments and we'll try to figure it out.
-----------------------------------
EDIT:
If xlive.dll gives you any trouble try installing this: Try this: http://www.microsoft.com/downloads/details.aspx?familyid=D6A69B9F-2AEF-4125-B162-EDF0AE922CAF&displaylang=en
You will also need XINPUT1_3.dll, which you should google around and download from somewhere.
Both dlls are ment for your .wine/drive_c/windows/system32/ directory.
1. Download the wine sources
I use 1.1.8: http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.1.8.tar.bz2
2. Get the following patches (save them to your computer):
- the mouse patch (mousepatch.diff)
http://bugs.winehq.org/attachment.cgi?id=15638
- the directx patch (driver.diff)
http://bugs.winehq.org/attachment.cgi?id=17130
3. extract the source code files within the archive to any folder, copy the patches into the the same folder, change directory to it and run the following commands using a terminal:
patch -p1 < mousepatch.diff
patch -p1 < driver.diff
4. to build wine type the following:
./configure
Once ready, you will get some messages, make sure you download all required deppendencies should configure tell you so. (should you get an error sayin no opengl support and you are sure you downloaded libGL, go to /usr/lib and: sudo ln -s libGL.so.1 libGL.so)
Next run:
make depend
make
sudo make install
5. You should have a patched wine ready and installed. It's time to get winetricks
http://wiki.winehq.org/winetricks
and use it to install vcrun2005, directx
6. type in "regedit" to bring up the registry editor. Open HKEY_CURRENT_USER/Software/Wine/Direct3D
- make a new string value: VideoDescription
- set it to something like: NVIDIA GeForce 8600M GT
- make another string value: VideoDriver
- set it to: nv4_disp.dll
- do a search on "MouseWarpOverride" and set it to: true
if it does not exist create the string value inside HKEY_CURRENT_USER/Software/Wine/DirectInput and add it as a new string value.
7. Install the game. Run the launcher and configure video options, then quit the launcher.
Start game with: wine Fallout3.exe
Everything should be set. If you have problems drop a line in the comments and we'll try to figure it out.
-----------------------------------
EDIT:
If xlive.dll gives you any trouble try installing this: Try this: http://www.microsoft.com/downloads/details.aspx?familyid=D6A69B9F-2AEF-4125-B162-EDF0AE922CAF&displaylang=en
You will also need XINPUT1_3.dll, which you should google around and download from somewhere.
Both dlls are ment for your .wine/drive_c/windows/system32/ directory.
30 Comments to How to run Fallout3 in linux with Wine on Ubuntu (nvidia)
Leave a comment
Categories
Ce citesc
History of The One
| M | T | W | T | F | S | S |
|---|---|---|---|---|---|---|
| « Mar | ||||||
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | |||


Thanks for the howto guide.
In which directory should I put driver.diff and mousepatch.diff? I see in other faqs that diffs should be put in the ‘top level wine directory’, but I don’t know which directory that is. I tried it in .wine/ and .wine/drive_c, but I’m guessing it’s neither.
Since you are trying to compile wine, you could put them in directory you extracted the wine sources to, remember that you must recompile wine after applying the patches. However you can specify full path for the diff files, just make sure you are running patch from the directory you extracted the sources.
That’s part of my problem I guess, I didn’t extract any sources first-hand. I used Ubuntu’s application manager to install everything, and in the case of Wine also the latest version. I know where to find the .wine folder, but I don’t know anything about installing Wine manually as it were.
The whole point is that the standard mainstream binary package of wine you get from the installer cannot be used to play Fallout3. I wrote this tutorial to help people who are not used to meddling with source files. So in order to play Fallout3 you MUST get the sources, patch them, and recompile and install your new wine version. Simply follow the steps i wrote in this tutorial.(the outcome will be a recompiled, installed and patched wine)
Unfortunately there is NO OTHER WAY to make the game runnable, unless in some future release of wine these patches will be included by default into the Ubuntu installer base, but it is unknown when that will happen..
Aha, I get it now. Thank you very much, it seems obvious enough now. I’ll give it a go.
The required packages Flex and Bison weren’t present on my Ubuntu installation, but I got them. My installation is fairly clean, two weeks old at the most, so I guess no regular Ubuntu user has them.
Now it says
“X development files not found. Wine will be built without X support, which probably isn’t what you want. You will need to install development packages of Xlib/Xfree86 at the very least. Use the –without-x option if you really want this.”
I haven’t progressed beyond that point yet, I’m just browsing sites to get a clue what to do next. I found out that ’sudo apt-get build-dep wine’ will install Wine from source plus all dependencies, but I’m guessing straight from the Ubuntu library, without the mouse and directx patch I already applied.
Basically whenever you get a message after configure you need to install those packages. You can do this two way, either if you know the package name or through aptitude.
Should be something like:
sudo apt-get install bison
sudo apt-get install flex
to get the dev files for X i am not sure, but you may try:
sudo apt-get build-dep wine
afterwards run ./configure again and see if everything is fine, afterwards continue as specified in the walkthrough i wrote, drop a line if you succeed!
I decided not to apt -get build-wine, as I found a list of the required packages for Wine, including x-dev
# bison
# flex
# gcc
# libc6-dev
# libfontconfig-dev (libfontconfig1-dev)
# libfreetype6-dev
# libgl-dev (libgl1-mesa-dev or xlibmesa-gl-dev)
# libglu-dev (libglu1-mesa-dev or xlibmesa-glu-dev)
# libgphoto2-dev (libgphoto2-2-dev)
# libice-dev
# libjpeg-dev (libjpeg62-dev)
# libldap-dev (libldap2-dev)
# libncurses5-dev
# libpng-dev (libpng12-dev)
# libsm-dev
# libssl-dev
# libusb-dev
# libx11-dev
# libxcomposite-dev
# libxcursor-dev
# libxext-dev
# libxi-dev
# libxinerama-dev
# libxml2-dev
# libxrandr-dev
# libxrender-dev
# libxslt-dev (libxslt1-dev)
# libxt-dev
# libxxf86vm-dev
# make
# x-dev
I went through the entire list, installed everything that was missing and then ./configure worked.
I’ll have to resume the installation at a later time, as I’ll be visiting my parents for the weekend. I’ll get back to you next week.
Ok, I’m back. Pretty quick huh?
Let’s see. Underneath HKEY_CURRENT_USER/Software/Wine/ I can’t find the Direct3D key. That’s odd because I think the winetricks DirectX9 installation should have taken care of that.
Installing DirectX gives me some weird feedback as well, but I don’t know if it’s related (I’ve been told to ignore such feedback before). I get a few hundred lines of “err:setupapi:do_file_copyW Unsupported style(s) 0×144″, but the installation finishes in the end.
Should I just add the DirectX key myself and then add the VideoDescription string value?
Yes, add the keys just like I wrote in in the howto.
No luck. I’ve made the preparations, but nothing happens. Console feedback:
~/.wine/drive_c/Program Files/Bethesda Softworks/Fallout 3$ wine fallout3.exe
err:module:import_dll Library XINPUT1_3.dll (which is needed by L”C:\\Program Files\\Bethesda Softworks\\Fallout 3\\fallout3.exe”) not found
err:module:import_dll Library xlive.dll (which is needed by L”C:\\Program Files\\Bethesda Softworks\\Fallout 3\\fallout3.exe”) not found
err:module:LdrInitializeThunk Main exe initialization for L”C:\\Program Files\\Bethesda Softworks\\Fallout 3\\fallout3.exe” failed, status c0000135
I think I saw somebody mention something about xlive a few days ago on WineAppDB, but I’m still looking for the original post. If you have any suggestions, I’m all ears.
You are almost there!!!
Look around on google or on an existing windows installation to find that library: XINPUT1_3.dll, and copy it into your .wine/drive_c/windows/System32 folder
After this all should be fine.
Not quite. While that did take care of XINPUT1_3.dll, it still asks for xlive.dll. I went ahead downloaded a copy at http://www.dll-files.com/dllindex/dll-files.shtml?xlive and I put it in the windows/system32 folder again, but this time the dll didn’t work:
wine fallout3.exe
err:module:import_dll Loading library xlive.dll (which is needed by L”C:\\Program Files\\Bethesda Softworks\\Fallout 3\\fallout3.exe”) failed (error c0000020).
err:module:LdrInitializeThunk Main exe initialization for L”C:\\Program Files\\Bethesda Softworks\\Fallout 3\\fallout3.exe” failed, status c0000135
It seems to think it’s not there at all.
Then I noticed something even more odd. Firstly, the xlive.dll I downloaded was much larger that any of the other dlls in the directory. Secondly, I noticed Nautilus seems to think it’s not a dll at all. I can’t explain it, here’s a screenshot of what I mean:
http://img146.imageshack.us/img146/3892/screenshotec6.png
I think maybe the dll is bogus? I’m still trying to find another download.
I found another copy which was 2 megabytes larger (?) and while that one was ‘recognized’ by Nautilus, it made no difference. In short, placing the missing dlls only worked for the XINPUT1_3.dll.
Should be 9.7 Mb (10.155.840 bytes)
Try this: http://www.microsoft.com/downloads/details.aspx?familyid=D6A69B9F-2AEF-4125-B162-EDF0AE922CAF&displaylang=en
But i can’t get it to install on wine.. I got the xlive by asking a friend to install fallout3 on windows(or just the above xlive redistributable package), and got the xlive.dll from there.
The correct Xlive redist installer is also located on the Fallout3 cd.
The download got me a little further. It doesn’t finish installing, but it gets far enough to put xlive.dll in system32. Now, if I launch the game I see an autoconfig screen. I pass the graphics test and I ‘get’ medium settings. However, says it can’t find an audio device (while I hear music in the background).
I’ve read on Wine AppDB that PulseAudio causes some kind of problem for Ubuntu. While I do use Ubuntu, pulseaudio isn’t on my computer and I have already switched to ALSA. That can’t be the problem.
Close the launcher app, and start Fallout3.exe directly. It should run with no problems. Also, i would set stuff for minimum graphics and resolution.
Ah, I already found a fix for that audio problem:
“In order to get past the launch splash screen where it says “no sound device detected. Fallout 3 cannot run” Just rename the splash screen audio file to something other than “Maintitle.wav” so it does not play before you click launch… “.wine/drive_c/Program Files/Bethesda Softworks/Fallout 3/Maintitle.wav” Running patched 1.1.8 compiled from source with mouse fix. ”
Unforunately this apparently also means no sound. I’m in the fallout 3 menu, but I don’t hear a thing.
Also the opening .bik video kinda made wine crash, but they often do that on my system. I fortunately know how to get around that, either by replacing the video or by launching the game in a separate x session.
I’ll get back to you if when I know more.
(it appears the last two posts were made simultaneously)
Ah, strike what I said earlier about PulseAudio, it was active. Still no sound, but getting there, slowly.
YES the game runs! No sound, still, but I managed to get past the opening videos by renaming the video directory. Damn Bik videos always giving me trouble.
Thank you VERY much for getting me this far. I know at last it’s possible to run the actual game, so I’ll have a little incentive to get the minor details about sound and video playback worked out.
I owe you one.
Np, fortunately there are not too many binks in the game. For me OSS Driver worked best, and I have ALSA wrapper installed on my system. But I guess there can be many issues with the sound.
Cheers
I may have found another alternative to the xlive dll: http://www.fallout3nexus.com/downloads/file.php?id=1086
It’s originally for Windows and I’m not going to try it out yet, I have done enough for today. But it might be interesting. I’m glad things finally work.
hey,
ive done everything on this.
but it still freezes on the loading screen
im not sure why.
You should post the beginning of the output. Start the game in a terminal window with “wine Fallout3.exe” and copy some of the output.
im reinstalling it currently
but ill try when its done
last night i tried it and i think it didnt reconize it the .exe.
yeah heres what it said
wine: could not load L”C:\\windows\\system32\\Fallout3.exe”: Module not found
Thank you for the tutorial. it worked for me with on exception:
I ran this in the terminal
mkdir -p `pwd`/lib32
ln -s /usr/lib32/libX11.so.6 `pwd`/lib32/libX11.so
ln -s /usr/lib32/libXext.so.6 `pwd`/lib32/libXext.so
ln -s /usr/lib32/libfreetype.so.6 `pwd`/lib32/libfreetype.so
ln -s /usr/lib32/libfontconfig.so.1 `pwd`/lib32/libfontconfig.so
ln -s /usr/lib32/libGL.so.1 `pwd`/lib32/libGL.so
ln -s /usr/lib32/libGLU.so.1 `pwd`/lib32/libGLU.so
ln -s /usr/lib32/libXrender.so.1 `pwd`/lib32/libXrender.so
ln -s /usr/lib32/libXinerama.so.1 `pwd`/lib32/libXinerama.so
ln -s /usr/lib32/libXxf86vm.so.1 `pwd`/lib32/libXxf86vm.so
ln -s /usr/lib32/libXi.so.6 `pwd`/lib32/libXi.so
ln -s /usr/lib32/libXrandr.so.2 `pwd`/lib32/libXrandr.so
ln -s /usr/lib32/liblcms.so.1 `pwd`/lib32/liblcms.so
ln -s /usr/lib32/libpng12.so.0 `pwd`/lib32/libpng.so
ln -s /usr/lib32/libcrypto.so.0.9.8 `pwd`/lib32/libcrypto.so
ln -s /usr/lib32/libssl.so.0.9.8 `pwd`/lib32/libssl.so
ln -s /usr/lib32/libxml2.so.2 `pwd`/lib32/libxml2.so
ln -s /usr/lib32/libjpeg.so.62 `pwd`/lib32/libjpeg.so
ln -s /usr/lib32/libXcomposite.so.1 `pwd`/lib32/libXcomposite.so
ln -s /usr/lib32/libcups.so.2 `pwd`/lib32/libcups.so
ln -s /usr/lib32/libXcursor.so.1 `pwd`/lib32/libXcursor.so
ln -s /usr/lib32/libdbus-1.so.3 `pwd`/lib32/libdbus-1.so
ln -s /usr/lib32/libhal.so.1 `pwd`/lib32/libhal.so
ln -s /usr/lib32/libsane.so.1 `pwd`/lib32/libsane.so
ln -s /usr/lib32/libgphoto2.so.2 `pwd`/lib32/libgphoto2.so
ln -s /usr/lib32/libgphoto2_port.so.0 `pwd`/lib32/libgphoto2_port.so
ln -s /usr/lib32/libldap-2.4.so.2 `pwd`/lib32/libldap.so
ln -s /usr/lib32/libldap_r-2.4.so.2 `pwd`/lib32/libldap_r.so
ln -s /usr/lib32/liblber-2.4.so.2 `pwd`/lib32/liblber.so
ln -s /usr/lib32/libxslt.so.1 `pwd`/lib32/libxslt.so
ln -s /usr/lib32/libcapi20.so.3 `pwd`/lib32/libcapi20.so
ln -s /usr/lib32/libjack.so.0 `pwd`/lib32/libjack.so
ln -s /usr/lib32/libodbc.so.1 `pwd`/lib32/libodbc.so
ln -s /usr/lib32/libgnutls.so.13 `pwd`/lib32/libgnutls.so
without it I kept getting the freetype error.
I think you should post more from the error message, that message can be caused by many things.
$ wine Fallout3.exe
wine: could not load L”C:\\windows\\system32\\Fallout3.exe”: Module not found
sam@computer-time:~$ wine: Unhandled page fault on read access to 0×00000000 at address (nil) (thread 0018), starting debugger…
Unhandled exception: page fault on read access to 0×00000000 in 32-bit code (0×00000000).
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
EIP:00000000 ESP:0033b4c8 EBP:0033b804 EFLAGS:00010202( - 00 - -RI1)
EAX:00000000 EBX:7ed630cc ECX:c000007a EDX:00000079
ESI:00000000 EDI:0001002c
Stack dump:
0×0033b4c8: 0041f1bd 0033e7fc 00000000 00000000
0×0033b4d8: 00000000 00000000 00000000 00000000
0×0033b4e8: 00000000 00000000 7b8b3824 0014d548
0×0033b4f8: 00000000 0033b54c 7b85fe13 b7f16e20
0×0033b508: 00000000 0014d548 00000001 0033b7f0
0×0033b518: 00000001 00000000 00000000 00000000
Backtrace:
=>1 0×00000000 (0×0033b804)
2 0×0041ab91 in wlancfgg (+0×1ab91) (0×0033bc98)