Guide:Path of Exile on Wine

From Path of Exile Wiki
Revision as of 21:42, 26 August 2013 by >Sovyn (How to get Path of Exile running smoothly on Ubuntu and most Linux Distros with Wine and PlayOnLinux)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Guide to install PoE on latest Wine version under PlayOnLinux to fix memory leaks, crashes, FPS drops and font corruption

Originally posted by Sovyn on the official Path of Exile forums, here.

First, my system is:

Ubuntu Linux 12.04 64-bit 4 GB RAM Nvidia GT 545 with GDDR5 memory video card Nvidia proprietary driver 310.44

If your system is different, this guide may or may not solve the font corruption issue but it should get you up and running without memory leak issues or crashes.

Step 0) If you don't yet have PlayOnLinux, go get it. It's free and makes it easy to manage different versions of Wine. After installation of PlayOnLinux, you can resume this step-by-step guide.

Step 1) in PlayOnLinux: in the menu, click Tools / Wine Versions. If you have used PlayOnLinux before, remove whatever old version of Wine you were using for PoE by highlighting it and clicking the left arrow to uninstall it.

Step 2) Still in the Wine Versions window, select the latest version of Wine for installation (1.5.26 as of this writing). You want the x86 version regardless of your operating system. Follow the simple prompts to install Wine. After that finishes, close the Wine Versions window.

Step 3) Back in the main PlayOnLinux window, click the Configure button. Click the New button. In the virtual drive creator wizard, select 32 bits windows installation, the latest Wine version that you installed in step 2, name the drive (PoE, for example).

Step 4) After completing the virtual drive creator wizard, click the name of your old virtual drive where you had Path of Exile installed (if any). Go to the Miscellaneous tab. Click "Open virtual drive's directory." Then, click the name of the new virtual drive you created (PoE). Go to the Miscellaneous tab. Click "Open virtual drive's directory." You now have two file manager windows. Drag them so they are side-by-side. Open the folder drive_c, then Program Files. Right click the Grinding Gear Games folder and left click "Cut". In the other window, navigate to drive_c, then Program Files. Right click in the empty white space in the window, and left click "Paste." You have now moved your game over to the new virtual drive. Close both file manager windows. Basically, in this step we are getting a fully working Path of Exile install from somewhere and pasting it into the new virtual drive's programs directory. It does not matter where you get it from - a Windows partition, etc.

Step 5) In the PlayOnLinux configuration window again, which should still be open, click the name of the old virtual drive. Assuming you had only Path of Exile installed, it is OK to remove it, so click the remove button.

Step 6) Still in the PlayOnLinux configuration window, click the name of your new Path of Exile virtual drive (PoE in this example). Click "Make a new shortcut from this virtual drive" Follow the wizard to make a shortcut for Client.exe. It should show as one of the options. You will need to name the shortcut, I named it Path of Exile. The wizard will ask you if you want to make another shortcut, select "I don't want to make another shortcut".

Step 7) Make sure you have the latest version of Winetricks installed. I just edited my copy which was located at /usr/bin and cleared the file, pasted in the latest Winetricks code (20120912 as of this writing) from the link above, then saved the file. In a system terminal type: sudo gedit /usr/bin/winetricks

Back in the PlayOnLinux configuration window again, click the name of your new Path of Exile virtual drive (PoE in this example). Go to the Miscellaneous tab. Click "Open a shell." From the shell prompt, type: winetricks d3dx9_36 vcrun2010

You will see a couple of downloads and installations reported in the window. Don't be alarmed if there are what appears to be a few error messages sprinkled in. When it's done, close the window.

Step 8) Fixing the crashes: Still in the PlayOnLinux configuration window, once again click on the name of the virtual drive that we made (PoE).

- Click the "Wine" tab.

- Next, click "configure wine".

- When the Wine configuration opens as a new window, click the "Libraries" tab.

- Under "New override for library" select "openal32" and click "add".

- "openal32 (native, builtin)" will now appear in the "Existing overrides" box below the *d3dx9_36 and *msvcr100 entries that should be already in there from step 7.

- Click apply and OK.

That's it!

For Nvidia Graphics Card Owners only - FPS drops fix:

In the PlayOnLinux configuration window, once again click on the name of the virtual drive that we made (PoE).

- Click the "Display" tab.

- Next, select "disabled" in the drop-down box next to "GLSL Support".

- Close the PlayOnLinux configuration window.

- Enjoy graphics free of FPS drops.

For ATI/AMD Graphics Card Owners only - I recommend that you buy, beg, or borrow a decent Nvidia card, but if you must, here is a possible improvement for the extreme FPS drop issues on AMD/ATI graphics cards, at least on my test system (Ubuntu Linux 12.04.1 LTS AMD64, ATI HD 4770, 4 GB ram, Samsung SSD).

First, I removed the AMD proprietary drivers (FGLRX), if present. In a system terminal:

sudo apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev*

I then rebooted just in case.

In a system terminal:

sudo add-apt-repository ppa:ubuntu-x-swat/x-updates sudo apt-get update

Then I went to the Update Manager as I wanted to see exactly what packages were being updated.

I installed everything suggested.

Then I rebooted again.

In a system terminal:

glxinfo | grep "OpenGL version"

....Now reads Mesa 9.0 instead of 8.x.

Basically this mini guide reverts from the proprietary driver back to the free open source (FOSS) driver, and then updates the FOSS driver to a newer version than available from the default sources.

The average FPS is not super, but I think overall the game is more playable than with the 'faster' proprietary driver with its more extreme hesitations in PoE.

Intel Graphics Owners - Intel Sandy Bridge/Ivy Bridge graphics (HDxx00) needs the latest Linux kernel for best performance. Older Intel graphics chipsets (GMA series) are too problematic and/or slow for PoE to be playable.

Optional Fix for Launcher Window Appearance

In the PlayOnLinux configuration window, click the name of your Path of Exile virtual drive (PoE in this example). Go to the Miscellaneous tab. Click "Open a shell." From the shell prompt, type: winetricks riched20

Possible fix for the LONG Allocating Space issue Credit to FeepingCreature and Drakier

I'm running a Debian based 64-bit system so I had to "apt-get install eatmydata:i386" from a terminal (since wine is 32-bit, you need the 32-bit version of the lib). Normal users on 32-bit installations should be able to "apt-get install eatmydata" (or whatever the relevant command is for your distro - for example it would be "emerge libeatmydata" on Gentoo).

Once that was done, I had to track down where it put the lib, which I found on my system at the following location: /usr/lib/libeatmydata/libeatmydata.so

I then went into PlayOnLinux and clicked Configure on the Path of Exile shortcut, then under the Miscellaneous tab the bottom box is a command to exec before running the program, and I put in there export LD_PRELOAD=/usr/lib/libeatmydata/libeatmydata.so

I closed the dialog. Then to test it, I renamed my old Content.ggpk to a backup and launched the Path of Exile shortcut. Allocating Space took only a few minutes rather than the HOURS it was before.