Jump to content
  • Sign Up

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


Recommended Posts

@"draconicrose.6213" said:I have an issue where the game often crashes when loading into home instances or guild halls. I finally caught it with the debug script running, here's the result: https://dpaste.de/pXBT

Hi, I checked your log. Nothing too suspicious in there, except one line that keeps repeating: "Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution."

Install the package called 'winbind' for your distro and see how it plays then. Also which distro and GPU are you using?

Link to comment
Share on other sites

@"ArmoredVehicle.2849" said:Install the package called 'winbind' for your distro and see how it plays then. Also which distro and GPU are you using?

I do have winbind installed so I'm not sure why it can't find, other than maybe the package for my distro is out of date. I'm on Linux Mint 19.2 and have a NVIDIA GTX 1660.Edit: Less important, and I figure at some point it will be solved, but this has also been happening occasionally: https://paste.pics/6LTLW

Link to comment
Share on other sites

just wanted to report on mesa with ACO:

i started using the mesa-aco-git from the AUR, and i've found my GW2 experience to be significantly smoother. shader rendering interruptions are almost nonexistent now, and when they do happen it's a very minor disruption.

i don't usually install stuff that's still in testing and devel, but it was worth it for this.

Link to comment
Share on other sites

Hey I have decided to reinstall Guild Wars 2 again in manjaro and wanted to know what possible recommendations i could get to make the game run as smother as possibleMy specs are: AMD ryzen 5 1500xRadeon RX 580 seriesand 16 ramSo far i have on lutris : esync-staging-pba-3.18.x86_64as runner options:THREADED_OPTIMIZATIONS = 1enable DXVKenable Esyncas system options:DXVK_HUD = 0DXVK_LOG_LEVEL = noneSTAGING_SHARED_MEMORY = 1GL_SHADER_DISK_CACHE_PATH = /home/user/Games/guild-wars-2

I wanted to get some feedback about my current supposedly optimizations and what options are the most efficient

Link to comment
Share on other sites

Hopefully someone can help me here. I've downloaded the files, extracted them and ran ./setup.sh. Moved in my install files. After clicking "Play" i'm prompted that i'm missing DirectX 9.

I've been running GW2 fine via Steam / Proton but was wanting to toss in some addons (hooks, dps, and mount).

At first I figured manual wine install work work so I tried that while also getting gallium-nine configured but that seemed to fail (couldn't get the settings group to show up). So, I uninstalled wine-nine and removed my wine prefix (.wine and ~/Games/guild-wars-2 folders [saving the game files]) I also uninstalled wine-staging and switched to wine from AUR

I've run ./wine_settings.sh and verified the dxd9 library is there; however i'm not sure why it's not being detected and i'm not sure how to begin troubleshooting.

System Specs:

  • OS: Manjaro
  • CPU: AMD Ryzen 7 3700x
  • GPU: AMD 590
Link to comment
Share on other sites

@draconicrose.6213 said:

@"ArmoredVehicle.2849" said:Install the package called 'winbind' for your distro and see how it plays then. Also which distro and GPU are you using?

I do have winbind installed so I'm not sure why it can't find, other than maybe the package for my distro is out of date. I'm on Linux Mint 19.2 and have a NVIDIA GTX 1660.Edit: Less important, and I figure at some point it will be solved, but this has also been happening occasionally:

it really does not matter at all. Only if you use wine with application in a corporate environment you have to worry about winbind.

Link to comment
Share on other sites

@masterbaker.3264 said:Hey I have decided to reinstall Guild Wars 2 again in manjaro and wanted to know what possible recommendations i could get to make the game run as smother as possibleMy specs are: AMD ryzen 5 1500xRadeon RX 580 seriesand 16 ramSo far i have on lutris : esync-staging-pba-3.18.x86_64as runner options:THREADED_OPTIMIZATIONS = 1enable DXVKenable Esyncas system options:DXVK_HUD = 0DXVK_LOG_LEVEL = noneSTAGING_SHARED_MEMORY = 1GL_SHADER_DISK_CACHE_PATH = /home/user/Games/guild-wars-2

I wanted to get some feedback about my current supposedly optimizations and what options are the most efficient

just download Armord package and follow the instructions. And do not export path. And do not use lutris. Also make sure that your cpu is using performance governor and grapic card is set to 'high'

Link to comment
Share on other sites

+@"Elevate.7503" said:Hopefully someone can help me here. I've downloaded the files, extracted them and ran ./setup.sh. Moved in my install files. After clicking "Play" i'm prompted that i'm missing DirectX 9.

A one possible cause for that message is when you're trying to run the Nvidia package on Intel/AMD gpu. There is registry configuration which causes it to appear.Make sure you download the Intel/AMD package.

@"masterbaker.3264" said:So far i have on lutris : esync-staging-pba-3.18.x86_64as runner options:THREADED_OPTIMIZATIONS = 1enable DXVKenable Esyncas system options:DXVK_HUD = 0DXVK_LOG_LEVEL = noneSTAGING_SHARED_MEMORY = 1GL_SHADER_DISK_CACHE_PATH = /home/user/Games/guild-wars-2

I wanted to get some feedback about my current supposedly optimizations and what options are the most efficient

Hi, so you have a bit of a mix here. The "__Threaded_Optimizations" line is for Nvidia GPUs. Secondly GW2 is a DX9 game and as such it requires D9VK, even though it's based on DXVK, the "enable DXVK" might not help there unless the switch is valid for both. The "_GL_SHADER_DISK_CACHE_PATH" is also for Nvidia, for mesa you'll need to use "MESA_GLSL_CACHE_DIR=" instead. The Wine build is based on 3.18, not exactly a big deal for this game but it's a bit outdated today. I'd suggest giving my package a shot, it's completely portable.

Link to comment
Share on other sites

@ArmoredVehicle.2849 said:A one possible cause for that message is when you're trying to run the Nvidia package on Intel/AMD gpu. There is registry configuration which causes it to appear.Make sure you download the Intel/AMD package.

Thanks for the response. I've confirmed that I've downloaded the Intel/AMD package (wine_gw2_1.8.2_intel_amd.tar.xz)

EDIT: Creating a new wine prefix, installing d3dx9 via winetricks lets me run the game; however, this isn't using the portable version with all the goodies you've baked in. So i'm not sure if it has to do with something in the winecfg and the libraries (dlls)? just kind of guessing there but I can play around with it if you think it could help.

Link to comment
Share on other sites

@"VAHNeunzehnsechundsiebzig.3618" said:dont create a wine prefixjust untar the package, cd into Gw2 and run setup.sh. Congratz, you are done.

I've done that, then proceeded to run ./play.sh and am presented with missing DirectX 9 after clicking "Play"

** Apologies - can't seem to get the image to embed correctly

Unable to initialize 3D Output. Please verify that you have installed DirectX 9 and an updated video driver. Click on the URL Below to open a web page with more information"

running mhwd -liI show that i'm using video-linux, version 2018.05.04

The Wine Prefix was just to test / return to a state that I could run the game in, my bad for the confusion.

Link to comment
Share on other sites

@ArmoredVehicle.2849 said:

@ArmoredVehicle.2849 said:Which GPU and distro are you running?

AMD RX 590

SjWkLzC.png

Hmm, that's odd. Do you play any other Vulkan games?

The only other game i've installed is Portal 2, via Steam. I'm not sure if that's Vulkan or not.

I think I have it running fine with Gallium at the moment; however, there's a weird bug when launching it where it stays black but I can deal with that as I have a workaround. (I imagine it's due to being on Manjaro + wine-staging)

If there is any way to gather logs i'd be more than happy to do so, I just don't know how. I tried the ./debug.sh; however, it didn't quite catch this error since it's generated by the application not detecting it.

Link to comment
Share on other sites

@Elevate.7503 said:

@ArmoredVehicle.2849 said:Which GPU and distro are you running?

AMD RX 590

SjWkLzC.png

Hmm, that's odd. Do you play any other Vulkan games?

The only other game i've installed is Portal 2, via Steam. I'm not sure if that's Vulkan or not.

I think I have it running fine with Gallium at the moment; however, there's a weird bug when launching it where it stays black but I can deal with that as I have a workaround. (I imagine it's due to being on Manjaro + wine-staging)

If there is any way to gather logs i'd be more than happy to do so, I just don't know how. I tried the ./debug.sh; however, it didn't quite catch this error since it's generated by the application not detecting it.

Portal 2 is an OpenGL game, I have a hunch that most likely you don't have the vulkan library installed. I'm not familiar with arch-based distros but according to the arch wiki, the package name should be something along "vulkan-icd-loader". :)

Link to comment
Share on other sites

@"ArmoredVehicle.2849" said:Portal 2 is an OpenGL game, I have a hunch that most likely you don't have the vulkan library installed. I'm not familiar with arch-based distros but according to the arch wiki, the package name should be something along "vulkan-icd-loader". :)

Checked that package, and it shows I have that installed already as well as vulkan-radeon.

From this page: https://wiki.archlinux.org/index.php/Vulkan I found how to check which Vulkan Implementations are installed.

ls /usr/share/vulkan/icd.dintel_icd.i686.json intel_icd.x86_64.json radeon_icd.i686.json radeon_icd.x86_64.json

Link to comment
Share on other sites

those are just config files. Are the libs actually installed? And is X actually configured correctly?

how about posting some actually useful output like /var/log/Xorg.0.log and glxinfo output?

because what you posted is just 'this is my kernel, this is my distribution, this is the resolution and this is my wm'. Which is all fine, but says nothing about your actual driver situation.

Link to comment
Share on other sites

@"VAHNeunzehnsechundsiebzig.3618" said:those are just config files. Are the libs actually installed? And is X actually configured correctly?

how about posting some actually useful output like /var/log/Xorg.0.log and glxinfo output?

because what you posted is just 'this is my kernel, this is my distribution, this is the resolution and this is my wm'. Which is all fine, but says nothing about your actual driver situation.

First, I just want to say how appreciative I am of everyone's help. Really means a lot to have some support in trying to help me out.

Hopefully these answers below provide some more information to help.

Installed Vulkan Packages

sudo pacman -Q | grep vulkanlib32-vulkan-icd-loader 1.1.121-1lib32-vulkan-intel 19.1.5-1lib32-vulkan-radeon 19.1.5-1vulkan-icd-loader 1.1.121-1vulkan-intel 19.1.5-1vulkan-radeon 19.1.5-1

Is X configured correctly?

  • I'm not sure as my WM (Sway) is Wayland and uses xwayland. However, I have tried changing my WM to Plasma and received the same error, so I don't think it's Xorg related

I ran through the ./setup.sh again

  • This time when I moved in my game data I retained the original d3d9.dll. I'm seeing different results now. Which may be due to running Sway.
  • As I mentioned i'm running Wayland, with that...is anyone familiar with where I could go to modify the resolution settings xrandr would pick up? (I've tried emulating a virtual desktop with specific resolution settings but that didn't help out)

debug.sh results

Link to comment
Share on other sites

Due to the "xrandr" issue @"ArmoredVehicle.2849" pointed out I decided to switch to I3 for my tests. After doing so all issues are resolved.

Resolution Steps

  • running ./setup.sh again and not copying in d3d9.dll file
  • switch to i3 (or any other X based DM)

At this point, what are some other things I could try to increase FPS. I imagine it boils down to graphics but perhaps there are some "general" guidelines that have been discovered, running Windowed Fullscreen or setting Shadows to Medium. It seems a bit slower than the gallium-nine version i've been running with.

Also, how can I run add-ons (mount and arcdps...maybe hooks as well)?

  • Is it any different than an override for wine?
Link to comment
Share on other sites

@"Elevate.7503" said:Due to the "xrandr" issue @"ArmoredVehicle.2849" pointed out I decided to switch to I3 for my tests. After doing so all issues are resolved.

Resolution Steps

  • running ./setup.sh again and not copying in d3d9.dll file
  • switch to i3 (or any other X based DM)

At this point, what are some other things I could try to increase FPS. I imagine it boils down to graphics but perhaps there are some "general" guidelines that have been discovered, running Windowed Fullscreen or setting Shadows to Medium. It seems a bit slower than the gallium-nine version i've been running with.

Also, how can I run add-ons (mount and arcdps...maybe hooks as well)?

  • Is it any different than an override for wine?

Glad you got it running! It seems your issues was Wayland related.

You mentioned "not copying d3d9.dll", which one are you referring to? The game already comes with the D9VK based one.

Regarding Addons: Mount one, I presume you're referring to the Wheel selection for easy access, I haven't tested that, no idea how it works either. As for arcdps I created a small script to take care of that and it's found in the "arcdps_easysetup_tool". Download arcdps from the official site and put the arcdps files in the "put_arcdps_files_here" folder and then run the "arcdps_setup.sh" file.

Note: Currently there's a caveat with installing arcdps though, once installed there's no easy uninstall feature (which reminds me I should do that for the next release). For now you can however uninstall it manually using the same method as described on the official website.

Regarding performance: I've tried my best to include all the environment variables which might help performance however there are things (which help) beyond my control such as other programs on your system that might take their share of CPU usage and affect the game.

For example, to avoid performance loss you could take advantage of the 16 threads. You can limit the game to the first 8 threads, while other programs such as your browser, discord, audio player and other programs to the other 8 (this is done using the 'taskset' program.)

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