Jump to content
  • Sign Up

My Experience getting Linux GW2 at virtually-native performance


Noxin.9276

Recommended Posts

Hello fellow tinkerers,

I wanted to take a short break from antagonizing mechanists to bring some content that some guild wars 2 players may be curious about, but haven't tried or haven't managed to get to an acceptable point.

I recently went about swapping from a windows based system over to Linux with the intention of not sacrificing playing the games I love, one of which is Guildwars 2.

This is not really a guide, but details my experiences as best I can in order to allow technical players to follow if desired – I recommend that you have a spare ssd/hard drive/computer to do this with as many things can go wrong during a operating system install – losing everything on the pc’s disks. Largely I don't recommend it for most - for me it suits all my needs and I've wanted to jump ship from windows for a long time.

It comes with some hassle but Guild wars 2 can comfortably play via Linux with near identical performance to windows(at least in my case - see my specs below).  Linux has improved a ton is still as far as you can get from plug and play - at times, you are on your own to figure something out.

While it may be less "By Programmers, For Programmers" than it used to be, the person attempting this should be able to copy-paste commands into a command line if the need occurs, navigate to the “releases” area on github. But for the most part, what we will be doing is mostly clicking around and using things from the software "store" (think google play, but free). There may be a bit of learning required which tinkerers like me love.

First off: Arenanet DOES NOT SUPPORT non-windows systems - so if you run into something odd, don't bring it to them, they can't help - In the end, it's actually a NCSoft support and short of the most basic things (billing/password resets) that's already true. We can be our own resources – there are multiple sites now for linux gaming with the growing popularity of the steamdeck. Protondb, Lutris and various forums.

Secondly: This goes for most games, unusual graphics intercepts/conversions can theoretically trigger a game's anti-cheat mechanism. While this is the same tech that is being legitimately run via Valve's steamdeck (which I also have) and while no one has ever reported a substantiated infraction due to this, its a possibility. Given overlays like taco, arcdps, and reshade being prevalent its clear that GW2 doesn't really rely on client side graphics control for security like a competitive fps would and is less likely to bother in the future too. Still, what I am saying is do everything at your own risk, just like you would by running arcdps/taco – its not tacos fault you used it – just like it isn’t mine if you attempt this yourself.

TLDR: If you wipe your disks or get banned, its on you.


 

I am still using pretty ancient hardware that was getting old pre-pandemic - so you may get more bang for your buck with your modern machine:

Ryzen 7 2700 processor at stock clockspeeds

16gb of ram

Nvidia Geforce GTX 1080

512 gb ssd

In windows for comparison, I was getting capped 60 fps at 1440p in fields and most zones with few players, and 35-50 in your usual meta like pinata/TD - this is the performance I maintained through the switch. Everything is smooth and action doesn’t stutter.

I can't speak for AMD graphics cards, but anecdotally all reports say the performance is only better, since open source drivers exist. For my switch over, I chose to go with Linux Mint - its a personal preference thing, some store items are different if you go with other distributions. I chose mint due to it being very clean; very few bundled software to start with and a less corporate feel than ubuntu. It is also easy to navigate with access to both its own software packages as well as self contained "flatpaks".

I will not go over how to install mint, as there are far better video guides (search term: "linux mint rufus"), but I would recommend putting it on a second empty hard-drive you have - my process is to actually disconnect all my other drives before an install, to ensure nothing is lost on other drives and connect again after all is setup and its time to copy games over. I emptied one of my 512gb ssds, and disconnected all other storage from power, booted with my prepared key (F8 spam)

Once I had mint installed I was staring at a basic desktop environment, mouse, keyboard, sound all worked (testable via youtube), nearly identical to windows over the years. Getting gaming as fast as possible was the next order of business.

In my case, due to the Nvidia card I use, I had to swap to proprietary drivers (mint starts with an sad open source one called “nouveau”). Open the “start” menu and search for “Driver Manager” open it, and you should see nvidia drivers, I went with the recommended latest, just select it and wait.

For many games, this is all you really need to do.

You can then go on steam's website and download the linux client with the included firefox (just like windows), or find steam in the "Software Manager". In reality, from there you can download Gw2 on steam (then right click it, go to properties, compatibility, and set the dropdown to proton experimental), and then launch it - it will likely work out of the box at a basic level. Enough to get your daily login box at 15-30 fps (at least on my hardware) .

That is definitely NOT what I was after - I wanted to play it properly or why bother swapping.

On top of steam – I went for the following tools from the software manager or github.

 

Software Manager (Flatpak): Lutris

This is to let me customize things easier than trying to put command line attributes into steam, set proton version settings as well as other tweaks in a graphical UI – also lets me download and install my gog games easy. Its just a customize-able game launcher with access to other stores.

 

Software Manager (Flatpak): ProtonUp-QT

This tool downloads new custom versions of Proton (a compatibility layer) and other tools.

The items I got in this app were, select “Lutris Flatpak” from the dropdown at top, click add version.

Wine-GE: 8.10 - is what I used at time of writing.

 

Github: “Feral Game Mode”

Improves game performance overall, integrates into lutris – after install its just a toggle in lutris.

This one does require the use of a command line, but they have the 4 copy-paste-able commands under “Build and Install Gamemode”


 


 

[Optional] Software Manager (Flatpak): Mangohud

I had to use command “flatpak install mangohud” and select the latest to get it working with lutris, but this lets you see your fps/heat/cpu/gpu usage and a bunch of useful stats but the config file and its setup is involved (its github has a guide) – its definitely not needed – you can see your fps in GW2s options at any given time, just drag the options menu to the side of the screen while testing. You may need to grant Lutris rights to use it via another Flatpak called “Flatseal” and give it access to “xdg-config/MangoHud:ro” or you may not.


 


 

After these tools were installed – I restarted the pc so Lutris would become aware of the features and went to make a profile that ran Gw2 properly.

Clicking the + in the top left corner allows for “Add a locally installed game” which we will point at Gw2 installed from steam earlier (or you could copy your windows copy from an attached drive – just adjust paths)

Select the runner as “Wine” in first tab, set the name to whatever you like, likely “World of Mechanists” – it doesn’t matter. If you want pretty images for it after you are done, you can come back and configure the “identifier” in the first tab to “guild-wars-2” and save.

In the second tab, game options:

Browse for the executable (Hint: in browse right click anywhere and “Show hidden items” to see folders with a dot in front of them)

My steam website install put it in

/home/noxin/.steam/steam/steamapps/common/Guild Wars 2/Gw2-64.exe

In the wine prefix slot it put:

/home/noxin/Games/gw2

This is where the windows related files will go – its usually a small folder, and in general saved games will end up in this structure (not a worry for gw2).


 

Now for runner options:

select “Lutris-GE-Proton8-10” (or whatever version installed earlier)

Graphics section: all are on except dgvoodoo (which is for every old games)

Esync and Fsync are on

FSR and battle-eye/EAC are off.

Rest of page is default.

System Options Page:

Prefer system libraries (on)

Feral gamemode (on) – if you can’t change this, its not installed properly.

Fps counter (your preference) – if you can’t change this, its not installed properly or wrong version flatpak - if it is on but you see nothing, you need to do the config file (github)

Add the following environmental variables:

I honestly do not know what some of them do – but the performance was heavily impacted by some subset of them for me. NOTE: the GL ones have TWO underscores “_” before them

STAGING_SHARED_MEMORY                                 value: 1

__GL_YIELD                                                                      value: NOTHING (<-- the word)

__GL_SHADER_DISK_CACHE                                              value: 1

__GL_SHADER_DISK_CACHE_PATH                                 value: YOUR GW2 Folder path!

                                                                                                       mine was: /home/noxin/.steam/steam/steamapps/common/Guild Wars 2

__GL_SHADER_DISK_CACHE_SKIP_CLEANUP                       value: 1

__GL_SYNC_TO_VBLANK v                                            value: 0

__GL_THREADED_OPTIMIZATIONS                          value: 1

 

from this point, save and double click your new launcher in lutris. Right click and "see logs" if it refuses to run for some reason, googling error lines from there leads me to solutions for other games.

I hope that helps save some time for anyone else going down this journey like I did, feel free to ask me if anything isn’t clear!

 

  • Thanks 3
Link to comment
Share on other sites

  • 4 weeks later...

@Noxin.9276 thanks for the tips, info, and confirmations of things working.

     I tried to get Blish HUD to work but no-go. The Blish HUD developers have aware of the problem for a few years but to fix it would require a massive overhaul.

     So I tried DXVK HUD. DXVK HUID isn't as nice or helpful, just doesn't have the useful plugins that help gameplay, but it does provide some tech details that may or may not help when testing settings:   https://github.com/doitsujin/dxvk

Edited by Stryder.8641
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...