Jump to content
  • Sign Up

Playing Guild Wars 2 on Linux - Performance optimizations and more.


Recommended Posts

2 hours ago, Nortes.5692 said:

Linuxmint 21.2 victoria

I'm also running on Linux Mint 21.2 with lutris, the only wine version I could play GW2 with is GE-Proton8-8, with all other version after( 8-9 to 8-15 latest in lutris) will freeze on initializing. I tried with kernel 6.2 and 5.15, 5.19 the result is the same, so it's not about kernel.

I tried to remove GW2 and reinstall again, the launcher also freeze on initializing even with old wine version lutris-7.2-2. Whenever lutris provides a new GE-Proton version update, I will try it, but none works after 8-8, so I'm staying on 8-8.

Maybe you could try to run with different wine version to see if it works?

Link to comment
Share on other sites

11 hours ago, kyaroto.5927 said:

I'm also running on Linux Mint 21.2 with lutris, the only wine version I could play GW2 with is GE-Proton8-8, with all other version after( 8-9 to 8-15 latest in lutris) will freeze on initializing. I tried with kernel 6.2 and 5.15, 5.19 the result is the same, so it's not about kernel.

I tried to remove GW2 and reinstall again, the launcher also freeze on initializing even with old wine version lutris-7.2-2. Whenever lutris provides a new GE-Proton version update, I will try it, but none works after 8-8, so I'm staying on 8-8.

Maybe you could try to run with different wine version to see if it works?

The fact is, that with the current configuration of Lutris, the game runs quite well (not ideal - about ~55-60fps in core Tyria, and between ~25-40 fps in HoT, PoF and other maps, but this is most likely due to old hardware, a have AMD FX-8320 Eight-Core @ 8x 3.5GHz and NVIDIA GeForce GT 740, so... yeah 🙂

Wine - Lutris-GE-Proton8-14
DXVK - 1.10.3


I also tried other configurations of wine and dxvk, but either there were no noticeable improvements,  or (what happened more often) an error appeared when starting the client

Link to comment
Share on other sites

I use lutris ge-proton-8.12. Game runs great.

But I do not use a distro that loves to patch things to death (like ubuntu and its derivatives) or is stuck in the bronze age (debian and its direct derivatives).

Oh and I use xanmod kernel. Because of this:

Futex waitv and legacy WAIT_MULTIPLE implementation for Wine / Proton Fsync support.

WineSync driver for fast kernel-backed Wine [as module: winesync].

Edited by VAHNeunzehnsechundsiebzig.
Link to comment
Share on other sites

2 hours ago, ArmoredVehicle.2849 said:

 

Sorry to have to ask again, which edition of  Linux Mint 21.2 - Cinnamon, XFCE or MATE?

I'll have a test rig up in a few days. 🙂

 

Cinnamon

Btw, I used your package  earlier, it was noticeably faster than Lutris, but that was before the well-known "coherent" error.

Link to comment
Share on other sites

On 10/30/2023 at 10:32 PM, VAHNeunzehnsechundsiebzig. said:

I use lutris ge-proton-8.12. Game runs great.

But I do not use a distro that loves to patch things to death (like ubuntu and its derivatives) or is stuck in the bronze age (debian and its direct derivatives).

Oh and I use xanmod kernel. Because of this:

Futex waitv and legacy WAIT_MULTIPLE implementation for Wine / Proton Fsync support.

WineSync driver for fast kernel-backed Wine [as module: winesync].

 Does Winesync perform better than Esync or Fsync?  I'm asking as it would be nice to include it as part of my regular kernel builds 🙂

Link to comment
Share on other sites

(I'll just post my issue from Reddit)

The main issue is that upon entering the game (Selecting the character to play as) and after running around for maybe 5-10 minutes my whole system just freezes and I have to force-restart my laptop

My system specs (just in case):

Distro: Garuda Linux

Desktop environment: KDE Plasma
CPU: Intel(R) Core(TM) i3-7020U (4) @ 2.30 GHz
GPU: Intel HD Graphics 620
GPU: NVIDIA GeForce MX110
Memory (RAM): 8 GB

What I did so far:

Installed GW2 on Steam;

Installed and applied Proton GE 8-22;

Used the DXVK_ASYNC=1 flag in launch options;

Verified integrity of game files;

Changed the file limit as shown in this thread;

Game behavior:

When I run the game through Steam it opens up the launcher as always, then I press Play, wait for the game to load, select my character, load to the world and then after running around for a couple of minutes my whole game just suddenly freezes and the only solution is to force-restart my laptop.

When the game is frozen I basically can't do anything, my whole distro just stops working whatsoever.

After looking up the possible solutions online people told that it's better to use Lutris installation of GW2 without using Steam at all, but for that I'll need to create a new ArenaNet account ( which I don't wanna do because I'll lose all progress, duh).

Is there any way of fixing this while still using my Steam account?

Link to comment
Share on other sites

Hi @ArmoredVehicle.2849, great to see your package back!

I also had a freeze an initializing, that I managed to get through when I enabled the Virtual Desktop options through Wine Settings. However, I kept getting errors that didn't kill the game directly, and I managed to login and play a bit, the performance is very good, but the errors keep on popping so I closed the game right after. 

 

I use:

Arch Linux, Kernel: 6.5.9-zen2-1-zen,CPU=Ryzen 5 2600, GPU: Radeon RX 580, 32GB DDR4 Ram. Please let me know if you want any assistance in testing changes or things like that. Best of luck!

 

Link to comment
Share on other sites

On 11/3/2023 at 5:07 PM, darksparkz.5492 said:

(I'll just post my issue from Reddit)

The main issue is that upon entering the game (Selecting the character to play as) and after running around for maybe 5-10 minutes my whole system just freezes and I have to force-restart my laptop

My system specs (just in case):

Distro: Garuda Linux

Desktop environment: KDE Plasma
CPU: Intel(R) Core(TM) i3-7020U (4) @ 2.30 GHz
GPU: Intel HD Graphics 620
GPU: NVIDIA GeForce MX110
Memory (RAM): 8 GB

What I did so far:

Installed GW2 on Steam;

Installed and applied Proton GE 8-22;

Used the DXVK_ASYNC=1 flag in launch options;

Verified integrity of game files;

Changed the file limit as shown in this thread;

Game behavior:

When I run the game through Steam it opens up the launcher as always, then I press Play, wait for the game to load, select my character, load to the world and then after running around for a couple of minutes my whole game just suddenly freezes and the only solution is to force-restart my laptop.

When the game is frozen I basically can't do anything, my whole distro just stops working whatsoever.

After looking up the possible solutions online people told that it's better to use Lutris installation of GW2 without using Steam at all, but for that I'll need to create a new ArenaNet account ( which I don't wanna do because I'll lose all progress, duh).

Is there any way of fixing this while still using my Steam account?

Well, there are two separate issues that I can think of off the top of my head.

The more probable: I don't know how much ram the mx110 has access to, but you need a lot more vram on Linux than on Windows. Try reducing the texture resolution to low & see if the crash still happens. Use 'Green With Envy' (or Mangohud) to monitor vram usage. With textures on High even reaching 5GB is possible!

--

Well, when I had an nvidia card I tried not using any of its outputs to not waste the scarce VRAM on the OS, Steam Client, browser taps etc etc. My system always crashed that way a couple of minutes in. It's not unthinkable that something similar is going on with your dual-gpu setup. (whether it's intentional on Nvidia's part, or just a bug)

Link to comment
Share on other sites

On 11/4/2023 at 7:39 PM, Barabeam.4638 said:

Hi @ArmoredVehicle.2849, great to see your package back!

I also had a freeze an initializing, that I managed to get through when I enabled the Virtual Desktop options through Wine Settings. However, I kept getting errors that didn't kill the game directly, and I managed to login and play a bit, the performance is very good, but the errors keep on popping so I closed the game right after. 

 

I use:

Arch Linux, Kernel: 6.5.9-zen2-1-zen,CPU=Ryzen 5 2600, GPU: Radeon RX 580, 32GB DDR4 Ram. Please let me know if you want any assistance in testing changes or things like that. Best of luck!

 

 

Thanks for the checking it out, will add the virtual desktop workaround on main page for the time being.

Would you be able to take a screenshot of the errors you're getting?

Link to comment
Share on other sites

@ArmoredVehicle.2849

Sure thing, Crash Screenshots/Text/Dump, this is a google drive folder that I loaded with the following:

  1. 3 Screenshots. 
    1. The crash I receive as soon as I load the game.
    2. When I click on the upper edge of the crash window and move it away, GW2 launcher appears, and another Crash window spawns.
    3. When I move the other crash windows, more crash windows spawn (probably endless).
  2. The text provided in the crash as a google doc.
  3. The crash dump file found in the root of GW2 folder.

I hope those help :),, please let me know if you need anything else. 🙌 

Link to comment
Share on other sites

On 11/4/2023 at 7:39 PM, Barabeam.4638 said:

Hi @ArmoredVehicle.2849, great to see your package back!

I also had a freeze an initializing, that I managed to get through when I enabled the Virtual Desktop options through Wine Settings. However, I kept getting errors that didn't kill the game directly, and I managed to login and play a bit, the performance is very good, but the errors keep on popping so I closed the game right after. 

 

I use:

Arch Linux, Kernel: 6.5.9-zen2-1-zen,CPU=Ryzen 5 2600, GPU: Radeon RX 580, 32GB DDR4 Ram. Please let me know if you want any assistance in testing changes or things like that. Best of luck!

 

 

I also have errors sometimes, for example arcdps always gives me a rundll32.exe error.

Dealing with these is not very difficult, as long as they are not crashing your game when left alone. For example you can make a new virtual desktop & call it 'Jail' & then just set up rules to send all the error messages to eat all the kittens there.

Depending on the Window Manager you use there are various options to do this. Such as use 'xprop' to detect the precise Window attributes for the error message (case sensitive stuff) and then set up rules as needed. I don't know how to do this on Gnome, but in KDE you go to the Window Rules menu & you don't even have to use xprop, because KDE has a built in detector for window stuff. If you use a typical WM -such as i3, hypr, sway etc- based custom system, then the rules will go into the WM's config file.

Link to comment
Share on other sites

10 hours ago, Sina.9208 said:

 

I also have errors sometimes, for example arcdps always gives me a rundll32.exe error.

Dealing with these is not very difficult, as long as they are not crashing your game when left alone. For example you can make a new virtual desktop & call it 'Jail' & then just set up rules to send all the error messages to eat all the kittens there.

Depending on the Window Manager you use there are various options to do this. Such as use 'xprop' to detect the precise Window attributes for the error message (case sensitive stuff) and then set up rules as needed. I don't know how to do this on Gnome, but in KDE you go to the Window Rules menu & you don't even have to use xprop, because KDE has a built in detector for window stuff. If you use a typical WM -such as i3, hypr, sway etc- based custom system, then the rules will go into the WM's config file.

Thank you!! 

I use KDE, and I just tried using Window Rules and indeed it allows me to have a much smoother gaming experience.

Although the error dialogues are sent to another virtual desktop, when my mouse goes over the central part of the screen (Where the errors usually spawn), I can't control the game over there, and if I click the mouse it unfocused the game. 

These errors are present on both wayland and X11. 

I uploaded more pictures showing how the mouse cursor changes shape as I pass in the central part of the screen.

Also, it seems I can't open the trading post or the vault.

Edited by Barabeam.4638
did more testing
Link to comment
Share on other sites

5 hours ago, Barabeam.4638 said:

 I think I have gotten the hang of window rules and now all the errors go alone to the jail virtual desktop not affecting my experience. More testing will take place.. Thanks 🙂 

Seems like you have it all figured out.

I think for gaming X11 should be the default. Wayland works okay with GW2, but I have not yet figured out how to bypass compositing & doing DE meta at 20-30 fps is much better without.

Since you are using KDE on the X11 session you can run 'qdbus org.kde.KWin /Compositor suspend' to turn off compositing temporarily & test GW2 that way. (latency > screen tearing, well for me anyway)

Link to comment
Share on other sites

9 minutes ago, Sina.9208 said:

Seems like you have it all figured out.

I think for gaming X11 should be the default. Wayland works okay with GW2, but I have not yet figured out how to bypass compositing & doing DE meta at 20-30 fps is much better without.

Since you are using KDE on the X11 session you can run 'qdbus org.kde.KWin /Compositor suspend' to turn off compositing temporarily & test GW2 that way. (latency > screen tearing, well for me anyway)

Although I got rid of the errors and they were in the other virtual desktop, I still faced some issues in the screen position where the dialogue would usually appear. I added more info in my previous comment as I edited it, and I uploaded some more photos to demonstrate. so I guess I will still need to do more fiddling than I initially assumed.

 

In previous versions I used to turn off compositing before playing gw2 and some other games, I even had it scripted in gamemode.ini, but since a while when I turn off compositing while gaming I would have a blackscreen stutter. The monitor keeps on going dark then back then dark and so on. Until I figured out if I keep the compositor it would be ok. I think different setups have different perks to some degree. Or I have borked something unintentionally along the way xD.

 

Thanks for your input and supportive stance.

Link to comment
Share on other sites

On 11/2/2023 at 3:40 PM, ArmoredVehicle.2849 said:

 Does Winesync perform better than Esync or Fsync?  I'm asking as it would be nice to include it as part of my regular kernel builds 🙂

It seems to be slightly better. But any difference is only noticable in fringe cases. I have vsync on all the time and the difference is something like 'drop to 42' instead of 'drop to 35'. Which are both better than the old 'drop to 25' with none at all 😉

Link to comment
Share on other sites

on KDE: my kde turns off composition when I start gw2 - or genshin. Or any other fullscreen app. Never had to enable anything for that (or I enabled it 10 years ago and the setting was carried forward. Who knows).

Also, if you are on a recent kernel: amd_pstate=passive
on the kernel command line is really, really nice.

Edited by VAHNeunzehnsechundsiebzig.
Link to comment
Share on other sites

On 11/12/2023 at 6:13 PM, VAHNeunzehnsechundsiebzig. said:

Also, if you are on a recent kernel: amd_pstate=passive
on the kernel command line is really, really nice.

Excited me for a second! I just checked and it seems my 2600 is not supported >> "Currently, amd-pstate supports basic frequency control function according to kernel governors on some of the Zen2 and Zen3 processors". Thanks for sharing though. 

Link to comment
Share on other sites

9 hours ago, Barabeam.4638 said:

Excited me for a second! I just checked and it seems my 2600 is not supported >> "Currently, amd-pstate supports basic frequency control function according to kernel governors on some of the Zen2 and Zen3 processors". Thanks for sharing though. 

Just set your governor to schedutil, schedutil will give the game plenty of cpu time without making your processor stay at its max clock rate like performance does.

I prefer to use tmpfiles.d to do it:

/etc/tmpfiles.d/cpufreq.conf

w /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor - - - - schedutil

  • Like 1
Link to comment
Share on other sites

On 11/12/2023 at 4:13 PM, VAHNeunzehnsechundsiebzig. said:

on KDE: my kde turns off composition when I start gw2 - or genshin. Or any other fullscreen app. Never had to enable anything for that (or I enabled it 10 years ago and the setting was carried forward. Who knows).

I literally don't know how to do that, or heard of that being possible. On KDE I have a desktop icon to turn off compositing & I'm starting GW2 with a shell script that turns off compositing.

Link to comment
Share on other sites

6 hours ago, Sina.9208 said:

I literally don't know how to do that, or heard of that being possible. On KDE I have a desktop icon to turn off compositing & I'm starting GW2 with a shell script that turns off compositing.

right click on plasma desktop. Second menu from the top 'display settings' or something like that. Anzeige Einrichten in German.

Second item again 'Compositor', enable 'Erlaube Anwendungen, Compositing zu blockieren'. I suppose it should be something like 'Allow applications to block compositor' in english. 

Enjoy. 

 

Link to comment
Share on other sites

On 11/15/2023 at 5:48 PM, VAHNeunzehnsechundsiebzig. said:

right click on plasma desktop. Second menu from the top 'display settings' or something like that. Anzeige Einrichten in German.

Second item again 'Compositor', enable 'Erlaube Anwendungen, Compositing zu blockieren'. I suppose it should be something like 'Allow applications to block compositor' in english. 

Enjoy. 

 

I know of that option, does nothing for me. (wayland or x)

Edited by Sina.9208
Link to comment
Share on other sites

  • 3 weeks later...

I've upgraded from Nvidia's 1080 Ti to AMD's 7800 XT, and running the system pretty much exclusively on Wayland at the moment.

One quirk I have at the moment is that if I switch away from the virtual desktop GW2 is running on, it starts to render slower. Not just lowering the frame rate, but literally slows the game down. When I switch back to the game, it fast-forwards to catch up to what state the game is supposed to be at...

Apparently an upstream bug that's hopefully fixed in Plasma 6 🤞

 

Edit: I managed to find out how to fix my forced 12-hour clock, by setting HOST_LC_ALL=<your locale here> in my launch parameters for the game on Steam. Proton prefixes default the locale to en_US.utf8

 

Edit2: It seems the slowed down rendering when in another virtual desktop seems to be fixed now. It's in fact caused by the in-game vsync 😐

Edited by Hell Nirvana.9045
Link to comment
Share on other sites

  • 4 weeks later...

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...