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.

Tags: , ,

Thursday, November 13th, 2008 Games, In English, Tutoriale

30 Comments to How to run Fallout3 in linux with Wine on Ubuntu (nvidia)

  1. 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.

  2. Maarten on December 6th, 2008
  3. 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.

  4. admin on December 6th, 2008
  5. 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.

  6. Maarten on December 6th, 2008
  7. 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..

  8. admin on December 6th, 2008
  9. Aha, I get it now. Thank you very much, it seems obvious enough now. I’ll give it a go.

  10. Maarten on December 6th, 2008
  11. 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.

  12. Maarten on December 6th, 2008
  13. 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!

  14. admin on December 6th, 2008
  15. 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.

  16. Maarten on December 6th, 2008
  17. 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?

  18. Maarten on December 8th, 2008
  19. Yes, add the keys just like I wrote in in the howto.

  20. admin on December 8th, 2008
  21. 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.

  22. Maarten on December 9th, 2008
  23. 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.

  24. admin on December 9th, 2008
  25. 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.

  26. Maarten on December 9th, 2008
  27. 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.

  28. Maarten on December 9th, 2008
  29. 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.

  30. admin on December 10th, 2008
  31. 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.

  32. Maarten on December 10th, 2008
  33. 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.

  34. admin on December 10th, 2008
  35. 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.

  36. Maarten on December 10th, 2008
  37. (it appears the last two posts were made simultaneously)

  38. Maarten on December 10th, 2008
  39. Ah, strike what I said earlier about PulseAudio, it was active. Still no sound, but getting there, slowly. ;)

  40. Maarten on December 10th, 2008
  41. 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.

  42. Maarten on December 10th, 2008
  43. 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

  44. admin on December 10th, 2008
  45. 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.

  46. Maarten on December 10th, 2008
  47. hey,
    ive done everything on this.
    but it still freezes on the loading screen
    im not sure why.

  48. Sam on December 19th, 2008
  49. 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.

  50. admin on December 19th, 2008
  51. im reinstalling it currently
    but ill try when its done
    last night i tried it and i think it didnt reconize it the .exe.

  52. Sam on December 20th, 2008
  53. yeah heres what it said
    wine: could not load L”C:\\windows\\system32\\Fallout3.exe”: Module not found

  54. Sam on December 20th, 2008
  55. 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.

  56. tim on December 20th, 2008
  57. I think you should post more from the error message, that message can be caused by many things.

  58. Robi on December 20th, 2008
  59. $ 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)

  60. Sam on December 22nd, 2008

Leave a comment

  Osváth - Boros Róbert

Project manager / consultant and developer (freelancer)

http://www.ready2run.ro

---------------------------

Special skills: DDR dance-a-holic

History of The One

September 2010
M T W T F S S
« Mar    
 12345
6789101112
13141516171819
20212223242526
27282930