At the beginning of 2021, ArenaNet announced that they would no longer be supporting the macOS client for Guild Wars 2. As a longtime player, I found this… unfortunate.
There are several ways to run the Windows client on a Mac including dual-booting Windows with Bootcamp, but that’s not an option for me. Running in a virtual machine like VMWare or Parallels is too slow, so that leaves some form of Wine which is a Windows compatibility layer. The old macOS 32-bit Guild Wars 2 client actually used a version of Wine to run. It wasn’t as good as when they released a 64-bit native client, but it worked for a time.
I tried several ways to run Guild Wars 2 using Wine before finding one that works for me. In this post I’ll explain how to set it up.
Note (23 July 2022): I have an updated version of this post for handling DX11.
(Click the images for larger versions.)
I am running a 2019 iMac with:
- macOS 10.14.6
- 3.6 GHz Intel Core i9
- 32 GB 2667 MHz DDR4
- Radeon Pro 580X 8 GB
So it really should be able to handle this really old game…
What I Tried
The first thing I tried was PlayOnMac 4.4.1. It worked alright for general PvE, but it was still too slow even on basic graphics settings and the code to install different WINE versions was broken. They fixed the download problem in 4.4.2, but they made that version require macOS 10.15+ for some reason.
The next thing I tried was a straight Wine build – version 6.5 (wine-devel-6.5-osx64) which I downloaded from here. This worked alright as well, a bit better than the PlayOnMac one, but didn’t have any nice config & install capabilities like some of the wrappers do.
Then I found Gcenx/WineskinServer. This did the trick.
I’ll step through everything I did to get Guild Wars 2 up-and-running at a reasonable framerate for me.
This looks like a lot, but I’ve just been incredibly verbose for those that need a bit more direction.
We need to download two things:
- the 64-bit version of the Guild Wars 2 Windows installer from ArenaNet
- the latest WineskinServer (v126.96.36.199 at the time of writing – there’s a link under “Manually installation” (sic))
Generate The Wineskin Wrapper
Decompress the Wineskin.Winery.txz file we just downloaded by double-clicking it, right-click the Wineskin Winery.app, and select Open. You’ll probably get a dialog complaining about something and you’ll have to click another button that says Open.
Click the “+” to add a new engine.
Select WS11WineCX64Bit20.0.2 and click Download and Install.
When that’s complete, it will show up in the list in the main window. Next we need a wrapper, so click the Update button in the Wrapper Version section.
Click OK to download and install the latest one.
Back in the main window, click the Create New Blank Wrapper button at the bottom of the window.
Give it a name like GW2 and click OK.
As it sets itself up, you will get this window asking about Gecko a couple of times. Just click Cancel to skip it.
Once it has finished, it will show you this window. Click View Wrapper in Finder to show the new application.
The application will be in your home directory’s Applications folder. Once we’ve completed all the setup and installation, this is what you will run when you want to play Guild Wars 2.
Setting Up The Environment
When you run new application, GW2.app, you will be presented with the Wineskin main window to finish your setup.
Click the Screen Options button and turn on all the options.
Note (16 May 2021): After writing this up I experimented a little. You don’t need to turn on Retina Mode. With it off, the loading window will be a more reasonable size and the resolutions will still work properly when the game is running.
Go back to the main window and click Advanced.
Go to the Tools tab.
Click the Winetricks button in the Utilities section in the middle. Winetricks is a tool used to easily set some configuration and install other libraries and programs.
We are going to install an application, several libraries, and change a couple of settings.
Under the apps section, select 7zip. (I don’t know if this is strictly necessary for what we’re doing, but I have it installed, so I’m including it here.)
Under the dlls section, select d3dcompiler_47 and d3dx9_43.
Under the settings section, choose fontsmooth=rgb and win10.
Click the Run button and you should get a confirmation dialog.
Click Yes, wait for it to install and set everything up, and close the window.
Back in the Advanced Settings, choose the Advanced tab. If it is not on, turn on the last setting to disable Gecko installation. This will prevent that window we saw earlier from popping up all the time.
Note (25 June 2021): This may already be turned on. It is possible a newer version of the wineskin wrapper does this for you.
Click the Install Software button at the bottom of the window.
Click the Choose Setup Executable button and select the Windows Guild Wars 2 installer you downloaded earlier.
Installing Guild Wars 2
The first thing it will do is a bunch of downloading and updating…
Once it’s finished with that, you will be at the main Guild Wars 2 window with a bright INSTALL button. Click that. This will pop up a save dialog that’s hard to read (because we have the Retina thing on), but it should be installing in the correct location: C:\Program Files\Guild Wars 2.
Now it will begin the main install process.
When the install is completed, or you interrupt it to copy over the data file, you will be asked to set the executable for this wrapper. Choose the Gw2-64.exe we just installed.
Copying The Data File From An Old Installation
If you have an old installation of Guild Wars 2 and don’t want to re-download the ~50 GB of data, you can close the window with the “x” in the top-right and copy over the data file.
This is where the data file is on the macOS client:
You need to right-click the Guild Wars 2 64-bit.app file and choose Show Package Contents.
Find the Gw2.dat file and copy it to the wine installation we just completed. To find that, go to your home Applications/Wineskin/GW2.app, right-click it and choose Show Package Contents. (Note this is not the system Applications folder – it’s in your home directory.)
The file we want to replace is here:
Once it’s all installed, you should be able to play! For reference, these are the graphics settings I’ve been using lately:
You will have to play around with your graphics settings to get something that works for you.
Getting Back To The Wineskin Settings
To get back to the Wineskin settings for your GW2.app to install new things or to adjust your settings, go to your home Applications/Wineskin/GW2.app, right-click it and choose Show Package Contents. Then double-click Wineskin.app.
An icon isn’t strictly necessary, but it’s nice to see it in the dock when Guild Wars 2 is running. If you have your old macOS installation, you can click the Browse button next to the icon and navigate to /Applications/Guild Wars 2 64-bit.app/Contents/Frameworks/Gw64.framework/Versions/GuildWars2.111959/Resources/app.icns
I found the default double-click speed super annoying. To change it, go to the Advanced -> Tools tab and click the Registry Editor (regedit) button. This will run the Windows registry editor for your installation. Navigate to the HKEY_CURRENT_USER/Control Panel/Mouse section and double click the DoubleClickSpeed entry to enter a new value. I use 1000.
So far it’s been pretty solid. Things I’ve noticed:
- Because I set Retina Mode on, the main Guild Wars 2 login screen is tiny. Not that big a problem since it handles the resolution properly in-game.
- I get a very occasional crash when switching maps. (Twice in the three weeks I’ve been playing with this version?)
- Sometimes your character ends up mounting inside the ground & it takes a while to resolve itself. It then plays all the events that happened while “paused” and launches you across the map… This used to happen with the old macOS client, but seemed to have been fixed in the native one. Annoying, but not a deal-breaker.
- Participating in large events can be slow – not too surprising since it used to happen before anyways. It’s definitely slower than the native client was, but so far it’s playable for me. It might not be good enough for competitive PvP or WvW though.
If you have any feedback on ways to improve this process or ways to improve performance, please leave a comment below.
That’s it. I hope it works for you and I’ll see you around Tyria!
Note (23 July 2022): I have an updated version of this post for handling DX11.