in Games, HowTo

Running Guild Wars 2 With DX11 On macOS Using Wine

At the beginning of 2021, ArenaNet announced that they would no longer be supporting the macOS client for Guild Wars 2. At that time I worked out a way to set up and use Wine to run it.

Since then, the Wine set up and capabilities have changed. So this post is an update to my previous one to simplify the process and enable DX11 which is what Guild Wars 2 now uses.

(Click the images for larger versions.)

Requirements

We need to download two things:

  1. the 64-bit version of the Guild Wars 2 Windows installer from ArenaNet
  2. the latest WineskinServer (v1.8.4.2 at the time of writing – there’s a link under “Manual installation” or if you use homebrew you can install using that)

ARM-Based Macs

Does it work with ARM-based Macs? I don’t know since I don’t have one. If you want me to test it you can contact me and send me a machine 😃. Otherwise you can try it and let me know in the comments below.

macOS Version

Added 17 September 2022

When I wrote this I was using macOS 10.14.6. I have since updated to 12.6, but I want to note that I had a problem with 10.15.5. It would crash when trying to enter the game.

macOS Version
Result
10.14.6 runs great
10.15.5 crashes
12.6 runs great

Troubleshooting

Added 17 March 2023

It’s difficult to troubleshoot using the comment section in WordPress, so I set up a GitHub repository to track issues. I understand it may be a hassle because you may need to sign up for another site to troubleshoot, but it’s the best way for me to manage any issues right now.

So if you run into problems and need to troubleshoot them, please first check if the problem has already been addressed. If not, you can create a new issue.

Fixing “-usecoherent” In An Existing Installation (Previously: Tweaking Config)

If you are doing a fresh install, you can skip this section.

Added 20 July 2023

With the 18 July 2023 patch, the launcher broke again because -usecoherent stopped working.

Thanks to Dean Greer, we have a way to get up and running running again. If you have an existing application that has stopped working, you can do the following to get going:

Open the Wineskin for your application.

Wineskin - Main Window

Wineskin – Main Window

Click Advanced.

Go to the Tools tab and click Config Utility (winecfg).

Go to the Libraries tab, find dxgi.

Click Edit and set to Builtin (Wine), click OK, click Apply, and click OK.

Wait for it to finish (see the spinner in the upper-left corner of the window).

You should be able to play now! (And you can remove the -coherent switch since it doesn’t do anything anymore.)

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.

Wineskin Winery - Main

Wineskin Winery – Main

Click the “+” to add a new engine.

Wineskin Winery - Add Engine

Wineskin Winery – Add Engine

Select WS11WineCX64Bit22.0.1-2 (or the latest one) and click Download and Install.

Wineskin Winery - Engine Added

Wineskin Winery – Engine Added

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.

Wineskin Winery - Update Wrapper

Wineskin Winery – Update Wrapper

Click OK to download and install the latest one (2.9.1.1 is likely out of date by now).

Back in the main window, click the Create New Blank Wrapper button at the bottom of the window.

Wineskin Winery - Create Wrapper

Wineskin Winery – Create Wrapper

Give it a name like GW2 and click OK.

Once it has finished, it will show you this window. Click View Wrapper in Finder to show the new application.

Wineskin Winery - Wrapper Created

Wineskin Winery – Wrapper Created

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.

You can then close Wineskin Winery as we no longer need it.

Installing Guild Wars 2

Next, we need to install Guild Wars 2.

When you run new application (GW2.app) for the first time, you will be presented with the Wineskin main window to finish your setup.

Wineskin - Main Window

Wineskin – Main Window

Click Advanced.

Click the Install Software button at the bottom of the window.

Wineskin - Install Executable

Wineskin – Install Executable

Click the Choose Setup Executable button and select the Windows Guild Wars 2 installer you downloaded earlier.

The first thing it will do is a bunch of downloading and updating…

Guild Wars 2 - Updating Itself

Guild Wars 2 – Updating Itself

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 which should be set to the correct location: C:\Program Files\Guild Wars 2.

Guild Wars 2 - Install

Guild Wars 2 – Install

Now it will begin the main install process.

Wait until it gets to the login screen and starts downloading data:

Guild Wars 2 - Login Screen

Guild Wars 2 – Login Screen

If you already have the GW2 data from a previous install and don’t want to re-download the ~60 GB of data, you can close the window with the “x” in the top-right and copy over the data file (see optional section below).

When the installation is complete, (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.

Wineskin - Choose Executable

Wineskin – Choose Executable

Copying The Data File From An Old Installation (optional)

If you have an old installation of Guild Wars 2 and don’t want to re-download the ~60 GB of data, you can copy over the data file.

To get to the file, you need to right-click the Guild Wars 2 64-bit.app file and choose Show Package Contents. This is where the data file is on the old (official) macOS client:

Guild Wars 2 - macOS Data File

Guild Wars 2 – macOS Data File

Find the Gw2.dat file and copy/move it to the wine installation we just created. To find the right location, 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:

Wineskin - Guild Wars 2 Data Location

Wineskin – Guild Wars 2 Data Location

Setting Up The Environment

When you run new application (GW2.app) for the first time, you will be presented with the Wineskin main window to finish your setup.

Wineskin - Main Window

Wineskin – Main Window

Click Advanced.

Wineskin - Advanced Settings

Wineskin – Advanced Settings

Added 07 May 2023

First we need to work around a problem with the latest GW2 version.

The Guild Wars 2 update from 18 April turned on the Chromium Embedded Framework (CEF) as a replacement for the Coherent UI – which is what they use for various parts of the interface including the storefront. This broke things for those of us using WINE since CEF fails to run. This results in being stuck on “Initializing” in the loading screen.

Thankfully there is a way to work around it (for now!) by using a command line argument to force GW2 to use the older Coherent UI. To do this, add -usecoherent to the command line where Windows app is set as in the image above.

Added 20 July 2023

Since the patch from 18 July 2023 broke the -usecoherent switch, it is no longer necessary. This problem has been worked around above in the Tweaking Config section.

Next we’ll install some winetricks to add DX11 capabilities. Go to the Tools tab.

Wineskin - Tools

Wineskin – Tools

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.

Wineskin - Winetricks

Wineskin – Winetricks

Next we need to update winetricks to the latest version. Click the Update Winetricks button in the lower-left and let it update.

Wineskin - Winetricks Update

Wineskin – Winetricks Update

Next we are going to install the dxvk library (which enables DX11), and change the wrapper to Windows 10.

Under the dlls section, select dxvk1102_macOS (or a more recent version if available).

Under the settings section, choose win10.

Click the Run button and you should get a confirmation dialog.

Wineskin - Winetricks Install

Wineskin – Winetricks Install

Click Yes, wait for it to install and set everything up, and close the window.

Finally we will turn off folder mapping from macOS to Windows. This is not strictly necessary, but it keeps the installation cleaner and can help prevent accidents…

Go to the Options tab and deselect the Map User Mac OS X folders in wrapper option.

Wineskin Winery - Do Not Map Folders

Wineskin Winery – Do Not Map Folders

Now you can quit Wineskin. To run Guild Wars 2 from now on, you just need to run your GW2.app.

Play!

Once it’s all installed, you should be able to play!

For reference, I am running a 2019 iMac with:

  • macOS 12.6.7
  • 3.6 GHz Intel Core i9
  • 32 GB 2667 MHz DDR4
  • Radeon Pro 580X 8 GB

These are the graphics settings I have been using:

Guild Wars 2 - Graphics Settings

Guild Wars 2 – Graphics Settings

Edited 07 May 2023

Note: Make sure you Enable DX11 Rendering in the graphics settings.

Note: The graphics settings screenshot above is out of date. DX11 is now the default for GW2.

You will have to play around with your graphics settings to get something that works for you.

Note that the first time you run it will be even slower than normal as it needs to build & cache the shaders. It gets better given time.

Useful Extras

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.

Icon

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

Edited 02 April 2023

I’ve added the .icns file to the GitHub repository so it’s easy to access.

Wineskin - Ready To Roll

Wineskin – Ready To Roll

Caveats/Bugs

So far the DX11 version has been pretty solid – even better than the DX9 version. I think the main problems have to do with shaders and there’s not much we can do about that. The issues I’ve noticed are:

  1. Loading screens when moving between maps can be quite slow.
  2. Every time you run it, it has some slowdowns/hitching at the beginning that slowly sort themselves out. I believe this is a shader-related issue with using Vulkan (which is what is being used to emulate DX11).
  3. 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 it is playable for me. It might not be good enough for competitive PvP or WvW though.

Conclusion

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!

Praise Joko!

Updates

20 july 2023

  • Added Tweaking Config section to change the winecfg. This allows us to run CEF using DXVK which in turn lets us launch GW2 again! Thanks to Dean Greer!

7 May 2023

  • Reordered GW2 installation & winetricks to avoid problem with CEF introduced in the 18 April 2023 update
  • Updated commentary on DX9
  • Added info on working around the Chromium Embedded Framework (CEF) using -usecoherent

Write a Comment

Comment

39 Comments

  1. Thank you so much – I can run it on my M1 mini! How did you try to install arcdps? I want to make reshade work, but so far to no success…

    • I just followed the instructions on the acrdps site. Basically just copying in a .dll if I recall correctly. I’ve not heard of reshade.

      As I mentioned elsewhere arcdps was kind of random whether it would start or not, but it never crashed on me.

      (Also note that any overlay addons won’t work – at least when using Vulkan.)

  2. I don’t know if anyone said it already but I am using macOS with arm (m2 pro to be exact) and it works great can even run with highest graphic settings (except for the model limit in massive events)

  3. Great guide, you helped me a lot to get the game working, but I still have a little doubt..Is there a way to use addons like Blish HUD I have no idea how to use it and if it can be

    • I’ve never tried Blish HUD. The only extension I have tried is arcdps – with mixed success. Sometimes (usually) it fails to load at the start. It doesn’t crash or anything; it just doesn’t load. When it does load it works great though!

  4. Awesome guide… Any chance you have one for MacOS 10.12 (Sierra)? Unfortunately running the wrapper says that I need at least 10.13 :'(

    • No – I’m afraid 10.12 is too old for WINE these days. I wish I could have stayed with 10.12 – it was one of the last good ones!

      Alas, 10.12 stopped receiving security updates in 2019, so, if you can, consider updating.

  5. Awesome thanks. Question, my headset (AirPods) does not work when running GW2. Sound works only when using the Mac inbuilt speakers. I tried both Bluetooth and wires headset. Sound works ok for anything else outside of wineskin…. Any tips for how to connect headset when playing GW2 via wine?

    • Huh – that’s an odd one. I just tried with Bose earbuds (wired) and it’s working for me on an Intel iMac. But they don’t have a special driver or anything – they are just “dumb” headphones.

      1. Are you able to try any other Windows apps/games under WINE? That might tell us if it’s WINE or GW2 itself.
      2. Have you double-checked your in-game sound settings? Looks like there’s a bunch which could affect this.

      Here’s what I have set:

      Guild Wars 2 Sound Settings

      It’s possible that your AirPods require a different audio device which isn’t recognized by WINE, but I couldn’t find anything about it.

  6. Anyone getting frozen launcher at “Initializing…”?

    It happened after the latest patch. I’ve tried to remake the wrapper with every possible DXVK version. It runs without any of them installed, but without it the fps is obviously unplayable.

    Any input would be greatly appreciated! 🙂

    • Two thoughts:

      1. Start by turning all graphics settings to “low/lowest” and turn off “Ambient Occlusion” and “Depth Blur” and see how it runs. If it’s better, then you can turn things on one at a time to see which one is having the most impact.
      2. You can try loading shaders asynchronously – this should help a bit with hitching (where the FPS drops all of a sudden, then pops back up). See my response to the comment right below yours on how to do this (or search this page for enableAsync).
      • Hi Andy i tried with your recommendations however, it doesn’t see to improve the FPS so far :/

        Here is a link with my settings. I have played with all settings ingame but nothing seems to help to improve the fps expect for having less players in an “instance” but its still bearly playable with 14 fps

        https://imgur.com/a/SH7WDEn

        • Ok my bad, i seems to have to forgot to click on “run” in the winetricks part. Now got 80 fps but with the stuttering. Will try some settings to see what would cause this

          • The stuttering is likely caused by shader compilation. This is what the async stuff I mentioned helps smooth out; it doesn’t go away completely though. Every time I start up GW2 it takes a while for the hitching (stuttering) to calm down, but then it’s OK.

            Another thing to try is to limit the FPS to 60 in the settings to help prevent spikes.

  7. Great guide.

    I’ve tried both Crossover and Wineskin Server setup.

    From what I can gather the Crossover one runs a lot smoother. The FPS is the same, but it stutters and gets FPS drops while turning the camera with Wineskin.

    [Wineskin]
    M2 Mac Mini 8GB @ 1920×1080
    FPS 60-75 (open world). In cities it tanks a lot.
    If I turn camera quickly it tanks a lot and stutters…

    [Settings]
    Animation: Medium
    Antialiasing: FXAA
    Env: High
    LOD Distance: High
    Reflections: None (heavy performance usage)
    Textures High
    Rendering: Native
    Shadows: High
    Shaders: Low (heavy performance usage)
    Postprocessing: none (medium performance usage, prefer it off anyway)
    Char limit: High (probably better with lower in cities)
    Char model: High
    All checkboxes below turned on.

    • Enabled V-synch and it’s running really well at 60 🙂 Small stutters every once in a while, but definitely playable (and free).

    • One thing you could try to reduce the hitching is to turn on asynchronous loading of shaders. To do this:

      1. create a file named dxvk.conf
      2. the contents should simply be dxvk.enableAsync = true
      3. put the file next to Gw2-64.exe

      This should reduce the hitches, but it means that the textures aren’t all there when you start the game – they load in over time.

    • You’re welcome! Glad it works for others.

      I have not tried GW2-Addon-Manager, but I was able to get arcdps sort-of working. It doesn’t load every time though. When it does load, it works great!

  8. It works super fine thanks for that. However, when I closed the game and want to open it again through my GW2.app, the game does not open. Wineskin opens instead. I have to go through the GW 2 Install process again. choose and execute my GW2.exe to get to the launcher.

    Is there a way to get the GW2.app to open the Launcher directly

  9. Hey, I know this is super late but I finished downloading the game. But there is no pop-up asking to set the executable for the wrapper. The game downloader doesn’t have the play button either, it just says ready, which I can’t click. If you’re still around I would really appreciate the help!

  10. Hi, I’m having a problem where when I select the executable for the guild wars 2 setup.exe I get this message “If you tried to install somewhere other than C: drive (drive_c in the wrapper) then you will get this message too. All software must be installed in C: drive.”
    If anyone knows how to fix it please help

  11. This worked perfectly on my MacBook Pro (13″ 2020). Thank you very much for taking the time to write it all up!

  12. Hey thanks for writing this up. However I’m having an issue. I did everything here (well based on the previous writeup) and it wasn’t working. So I removed it and started over, and used the copy data method because I’d already downloaded it through the installer, but it still gets an error as soon as I enter the game after logging in. The only difference is that now I am seeing the in-game cursor on the black screen (with the same issue as the user above, stuck to top left and won’t move), and I can hear the music from the game starting but there is no visual. There is a window that says, “A serious error has occurred that prevents the game from continuing to run.” and asks if I want to send an error report to ArenaNet. If I look at the details, it says “Memory at Address 00000000`00000200 could not be read”

    Any ideas?

    • It could be related to the version of macOS you’re running? I found that running 10.14.6 worked fine, 10.15 crashed like that, and 12.5/12.6 work.

      Or it might be the settings – when I had shaders set to “low” it was rock-solid. I’ve upped it to “medium” and now I get the occasional crash.

      Given where it’s crashing though it’s probably related to DXVK itself. Did you install the latest (dxvk1103_macos) through winetricks? There’s a new “moltenvk” setting in winetricks that you might try installing as well.

      I have also made a couple of DXVK adjustments to mine since I wrote this up (including that “moltenvk” setting) that I’ll have to include in the write up when I get a chance.

      • Ahhh okay I am using 10.15.7 I believe. It may be time to finally accept the software update haha

        • I needed to update from 10.14 and wanted to go to 10.15, but GW2 broke, so I gave up and updated to the latest 😄

          I had lots of little (non-GW2) issues with updating, so it was kind of annoying. Some things still don’t work properly…

  13. Thank you for updating your instructions to include DX11 settings. I tried making a clean install following these instructions rather than updating my previous installation, aside from copying over the .dat file. So far almost everything works. However the one thing that doesn’t is once GW2 is open the ability to move the mouse is gone. The cursor is stuck in the upper left corner and responds to a left click, but will not move. Tabbing out of the game immediately restores mouse function.

    Any suggestions?

    • Haven’t seen this… I looked around to see if there’s any info on this problem (or similar). Not much I could find other than an old bug that should be resolved if you are using the same versions of everything that I am.

      When you tab back into the game does it work from then on?

      You could try switching between Windowed and Fullscreen (not sure what the default is). When running, use OptionReturn to switch between the two. You can also set it in the graphics options (if you can without a mouse 😄), or on the command line by adding the arguments to your Wineskin Configuration Custom Commands.