For Linux users, using WINE to upgrade World of Warcraft after the release of Mists of Pandaria has proven a bit tricky. If your update is crashing, you’re having problems with
DNSAPI.DLL, or you’re hitting the dreaded ‘
Agent.exe failed‘ message, don’t worry: here at MMO Melting Pot we’ve compiled a series of tweaks, fixes and solutions to get you up and running again.
Last updated: 26th September 2012 for Mists of Pandaria
If your installation isn’t playing ball, try the following steps, in order:
Step 1: Consider reinstalling from scratch
A fresh installation of WoW is often a good idea when a new expansion is released. If you have the time and the bandwidth, consider reinstalling World of Warcraft completely. By far the best way to do so is by using the online installer. You can download the installer from your Battle.net page. Then, just run
wine World-of-Warcraft-Setup-enUS.exe (substituting the correct name of the installer if yours is different, obviously).
If you’d rather not go through the hassle of a complete reinstall, keep reading for a few tricks that might save your bacon (and your bandwidth).
Step 2: Rename your configuration folders
The chances are good that the configuration folders automatically created by the Blizzard downloader are not working correctly for your installation. Luckilly, if the download can’t find these files it will recreate them automatically. So, let’s deliberately remove these files, to force the downloader to recreate them.
Rather than permanently deleting the files, we’re going to just rename them – that way, we can always put them back later if we need to. Here’s how to do it:
- Open a file browser (use Nautilus, or whatever file browser you normally use).
- Navigate to your
Ctrl+H‘, or choose ‘Show hidden files’ from the View menu. You’ll now be able to see all the ‘hidden’ files and hidden directories in your home directory – those are the files whose name starts with a period (
- The directory you’re looking for is called
.wine. Once you find it, double-click it to open it.
~/.wine/drive_c/users/Public/Application Data/.1 You’ll see a directory called
Battle.netand a directory called
Blizzard Entertainment. Don’t worry about any other directories – they’ve just been created by other programs you’ve run under WINE.
Blizzard Entertainment.Cataclysm.2 Don’t close the file browser just yet.
Step 3: Run Wow.exe and watch it crash
Now open a Terminal, and run
wine ~/.wine/drive_c/Program\ Files/World\ of\ Warcraft/Wow.exe.3 The WoW updater will open, start to download something, and then after a short while it will crash. Don’t worry: this is what we actually want to happen at this stage.
Check the Terminal from which you launched WoW. The Launcher will have printed a whole bunch of information and error messages. You can ignore most of it: the specific line we’re interested in will look something like this:
err:module:import_dll Library DNSAPI.dll (which is needed by L"C:\\users\\Public\\Application Data\\Battle.net\\Agent\\Agent.1363\\Agent.exe") not found<br /> err:module:LdrInitializeThunk Main exe initialization for L"C:\\users\\Public\\Application Data\\Battle.net\\Agent\\Agent.1363\\Agent.exe" failed, status c0000135.
Ugly, huh? The important bit is the
Agent.1363. Your error message might well contain a different number than
1363. Whatever the number, take a note of it: we’ll need it soon.
No Warcraft-related programs should be running right now, but just to be sure, let’s manually run commands to stop them. In your Terminal, type the following commands one after the other:
- In your file browser, check that the directories
Blizzard Entertainmenthave been recreated.
Step 4: Fix DNSAPI.dll
- Run the WINE configuration utility, either by clicking
Configure Winein your applications menu, or by running
winecfgfrom a terminal.
- Click the Libraries tab.
- Click the drop-down list under ‘New overrides for library:’, and choose ‘
- Click ‘Add’.
- Cick ‘Edit’, and change the Load Order to ‘Builtin (Wine)’.
- Click ‘OK’, then click ‘OK’ again to close the WINE configuration utility.
Step 5: Profit! Run Agent.exe with a special flag
We’re almost done.
Back in your Terminal, run the following command (you’ll need the number you noted down earlier):
wine ~/.wine/drive_c/users/Public/Application\ Data/Battle.net/Agent/Agent.<<your number>>/Agent.exe --nohttpauth &
Note, that’s two dashes (–) before
- Wait a few seconds, just to make sure the
Agent.exetool has had a chance to kick in. Don’t worry about the text being printed to your Terminal.
wine ~/.wine/drive_c/Program\ Files/World\ of\ Warcraft/Wow.exe.3
The World of Warcraft updater will launch again, but this time it won’t crash! Once it’s downloaded the update, the proper WoW Launcher will open and will start to download the new patch. Once it’s done, congratulations: you’re ready to play!
I’ve got the Launcher working, but it won’t download anything!
WINE can sometimes have trouble with the peer-to-peer technology used by the Launcher. Try disabling Peer-to-Peer transfers. You’ll find it in the Launcher, under
Options > Downloader Preferences > Enable Peer-to-Peer Transfer.
I’m on a 64-bit system, and WoW runs really slowly / times out constantly
Try forcing WINE to run WoW in 32-bit compatibility mode. Use the following command:
setarch i386 -3 -L -B -R wine ~/.wine/drive_c/Program\ Files/World\ of\ Warcraft/Wow.exe
I’ve got a decent graphics card, but WoW runs slower than I’d expect
Try forcing WoW to run in OpenGL mode. Just append
--opengl to the end of the command, like this:
~/.wine/drive_c/Program\ Files/World\ of\ Warcraft/Wow.exe --opengl
I have a different problem, which is not covered by your useless so-called Troubleshooting section!
Make a comment on this post. I’ll try to help you out if I can. Alternatively, have a read through the World of Warcraft entry on WINE’s AppDB site. There’s some pretty good tips on there.
The information in this post has been compiled from the expert knowledge of the MMO Melting Pot staff, along with tips and tricks shared online by many WINE-using Warcraft players, particularly the great community at WINE’s AppDB site.
1 If your installation is in a different location than
.wine (if you’re using a different wine prefix, or you’re running Vineyard or Crossover or PlayOnLinux, or you just like being awkward), navigate to that directory instead.
2 You can choose any name you like here – the
.Cataclysm suffix is just what I choose.
3 Or whatever command you normally use to run WoW.
Have you spotted a mistake? Did the tips in this article work for you? Do you have any tips to share with other Linux users? Let us know in the comments!