Playing Guild Wars 2 on Linux - Performance optimizations and more. - Page 19 — Guild Wars 2 Forums
Home

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

11516171921

Comments

  • if you need the last fps, dont use a wm, just start an X session with GW2 as the only process.

  • Isnt it just better to run a VM for development and keep it clean on the Windows, and have GW2 there?

  • DStorm.1964DStorm.1964 Member
    edited July 22, 2020

    Good day everyone!
    @ZenAge.4863, At the moment, I have the game installed via Lutris, the latest stable wine is also installed, but when I try to run run_taco.sh, I face the following problem:

    What could be the problem, I could not find an unambiguous answer and solution on the wine forums, I would be grateful for any hint. In this case, all the necessary wine files are on the path / usr / bin / ...

  • Be warned that the latest stable Wine release doesn't have Esync or Fsync support, due to changes to ntoskrnl. They'll be reimplemented later.

  • @Hell Nirvana.9045 said:
    Be warned that the latest stable Wine release doesn't have Esync or Fsync support, due to changes to ntoskrnl. They'll be reimplemented later.

    I've been monitoring the situation on this, fortunately enough this game doesn't really benefit from bleeding edge Wine releases so it's ok to be a little behind with the version.

  • kanemi.4903kanemi.4903 Member ✭✭

    I'm playing with Lutris but my only issue for now is, if trying to change settings the game crash.
    But aside from that the game runs almost perfect ;)

    NA Server Fix Sunqua

  • ZenAge.4863ZenAge.4863 Member ✭✭

    @DStorm.1964 said:
    @ZenAge.4863, At the moment, I have the game installed via Lutris, the latest stable wine is also installed, but when I try to run run_taco.sh, I face the following problem:

    From the error, it cant find the wine binary. From your message, I assume you are not using the portable package and using Lutris's wine? If so then I guess that's where the Issue is, as I built that taco module for the portable package. Strange though that everything starts o.o

    Try the manual approach. Compton should already be installed, so Disable xfwm compositor -> run gw2, run taco, run compton, gw2 ontop. The instructions are in the video.

  • ysng.5890ysng.5890 Member
    edited July 29, 2020

    Is there any key differences between this post's script and Lutris's script?

  • kanemi.4903kanemi.4903 Member ✭✭

    @ysng.5890 said:
    Is there any key differences between this post's script and Lutris's script?

    Are they not the same script?

    NA Server Fix Sunqua

  • kanemi.4903kanemi.4903 Member ✭✭
    edited July 30, 2020

    Backup your /boot just in case
    sudo cp -r /boot ~/boot-backup

    Fsync on ArchLinux:
    git clone https://github.com/Frogging-Family/linux-tkg.git

    cd linux-tkg/linux58-rc-tkg

    makepkg -si

    You will be asked few things during the installation. If in doubt, just press enter, which will pick the default option. Just make sure to press y[enter] when asked about fsync. Kernel compilation time!

    After everything is done your new kernel is installed in /boot, however, grub is not updated, which means after reboot you will still boot into the old kernel.
    To fix that, run sudo:
    grub-mkconfig -o /boot/grub/grub.cfg

    If for some reason boot fails, go back to grub and select your old kernel.
    now reboot, after login confirm that you are running your custom kernel by typing uname -r for me it's 5.6.10-arch1-1-fsync notice fsync in the name.

    NA Server Fix Sunqua

  • ysng.5890ysng.5890 Member
    edited July 29, 2020

    @kanemi.4903 said:

    @ysng.5890 said:
    Is there any key differences between this post's script and Lutris's script?

    Are they not the same script?

    Oh ok, nvm just curious.

    I'm currently facing a problem where sometimes the game will freeze and I need to reboot the OS. It happened twice first on a medium size meta boss and second while I'm on roller beetle. Any clue of why this is happening? ulimit is already set to 1048576. Using arch, xfce4 with amd gpu.

  • kanemi.4903kanemi.4903 Member ✭✭

    @ysng.5890 said:

    @kanemi.4903 said:

    @ysng.5890 said:
    Is there any key differences between this post's script and Lutris's script?

    Are they not the same script?

    Oh ok, nvm just curious.

    I'm currently facing a problem where sometimes the game will freeze and I need to reboot the OS. It happened twice first on a medium size meta boss and second while I'm on roller beetle. Any clue of why this is happening? ulimit is already set to 1048576. Using arch, xfce4 with amd gpu.

    glxinfo | grep version
    pacman -Qs mesa
    pacman -Qs llvm

    NA Server Fix Sunqua

  • ysng.5890ysng.5890 Member
    edited July 30, 2020

    @kanemi.4903 said:

    @ysng.5890 said:

    @kanemi.4903 said:

    @ysng.5890 said:
    Is there any key differences between this post's script and Lutris's script?

    Are they not the same script?

    Oh ok, nvm just curious.

    I'm currently facing a problem where sometimes the game will freeze and I need to reboot the OS. It happened twice first on a medium size meta boss and second while I'm on roller beetle. Any clue of why this is happening? ulimit is already set to 1048576. Using arch, xfce4 with amd gpu.

    glxinfo | grep version
    pacman -Qs mesa
    pacman -Qs llvm

    https://pastebin.com/duvK3eEy

    Edit: Doing some searching and found that dynamic power management on amd hardware may cause freezes, will give it a try when I'm free. Any insights also welcomed!

  • kanemi.4903kanemi.4903 Member ✭✭
    edited July 30, 2020

    @ysng.5890 said:
    https://pastebin.com/duvK3eEy

    Edit: Doing some searching and found that dynamic power management on amd hardware may cause freezes, will give it a try when I'm free. Any insights also welcomed!

    Why you have installed?
    local/libva-mesa-driver 20.1.4-1
    VA-API implementation for gallium

    local/mesa-vdpau 20.1.4-1
    Mesa VDPAU drivers

    local/vulkan-mesa-layers 20.1.4-1
    Mesa's Vulkan layers

    NA Server Fix Sunqua

  • @kanemi.4903 said:

    @ysng.5890 said:
    https://pastebin.com/duvK3eEy

    Edit: Doing some searching and found that dynamic power management on amd hardware may cause freezes, will give it a try when I'm free. Any insights also welcomed!

    Why you have installed?
    local/libva-mesa-driver 20.1.4-1
    VA-API implementation for gallium

    local/mesa-vdpau 20.1.4-1
    Mesa VDPAU drivers

    local/vulkan-mesa-layers 20.1.4-1
    Mesa's Vulkan layers

    Hmm, I think past me just blindly followed the wiki and just install everything related to driver lol. I believe libva and vdpau is for amd video acceleration and tbh I don't remember why I have mesa layers...

  • ysng.5890ysng.5890 Member
    edited July 31, 2020

    Spot the error log with journalctl:
    Jul 31 22:28:22 kernel: [drm:amdgpu_dm_atomic_commit_tail [amdgpu]] *ERROR* Waiting for fences timed out!
    Jul 31 22:28:22 kernel: [drm:amdgpu_job_timedout [amdgpu]] *ERROR* ring gfx timeout, but soft recovered

    Edit: Doing some searching and found that amdgpu.noretry=0 may fix it, will be trying it out.

  • Did everyone who tried to start TACO succeed?

  • Madara.7435Madara.7435 Member ✭✭

    hey guys maybe you can help me
    Playing on linux with the custom wine provided here works very well for me so far.
    my problem is as follows: I want to buy gems through the gemstore. so i select 800 gems for 10€ and set the payment method paysafecard (which i used to do in the past when i was playing on windows). for the transaction you get redirected to a paysafecard website, where you enter your code. for that usually your standard browser starts up, which in my case is not happening. obviously because im not on real windows... is there any way to fix this/make this work?
    I'm relatively new to the linux world, so I have to ask instead of fixing it myself

  • ZenAge.4863ZenAge.4863 Member ✭✭

    @DStorm.1964 said:
    Did everyone who tried to start TACO succeed?

    Did you read/respond to my response?

    @Madara.7435 said:
    my problem is as follows: I want to buy gems through the gemstore. so i select 800 gems for 10€ and set the payment method paysafecard (which i used to do in the past when i was playing on windows). for the transaction you get redirected to a paysafecard website, where you enter your code. for that usually your standard browser starts up, which in my case is not happening. obviously because im not on real windows... is there any way to fix this/make this work?

    By default some form of browser is set to open webpages/URLs, and almost all distros come with a basic browser. Have you tried installing firefox/setting it as default? Do you still not get redirected? Either your PC does not have a default browsers set (which is strange/unlikely) OR somehow running game through wine isnt responding to calls to open a webbrowser (then a wine issue), or it is actually a GW2 issue where you are simply not been given the option for opening a web browser to enter the code.

  • Skotlex.7580Skotlex.7580 Member ✭✭✭✭

    @Madara.7435 said:
    hey guys maybe you can help me
    Playing on linux with the custom wine provided here works very well for me so far.
    my problem is as follows: I want to buy gems through the gemstore. so i select 800 gems for 10€ and set the payment method paysafecard (which i used to do in the past when i was playing on windows). for the transaction you get redirected to a paysafecard website, where you enter your code. for that usually your standard browser starts up, which in my case is not happening. obviously because im not on real windows... is there any way to fix this/make this work?
    I'm relatively new to the linux world, so I have to ask instead of fixing it myself

    It's probably trying to open a browser from within wine, meaning it tries to open a browser made for windows, running under wine. Chances are you don't have a browser installed within your wine install. Can't gems be bought directly from ANet's website? That way you can avoid having to install a browser in wine.

    It's what I think is happening.

  • ArmoredVehicle.2849ArmoredVehicle.2849 Member ✭✭✭
    edited August 1, 2020

    @Madara.7435 said:
    hey guys maybe you can help me
    Playing on linux with the custom wine provided here works very well for me so far.
    my problem is as follows: I want to buy gems through the gemstore. so i select 800 gems for 10€ and set the payment method paysafecard (which i used to do in the past when i was playing on windows). for the transaction you get redirected to a paysafecard website, where you enter your code. for that usually your standard browser starts up, which in my case is not happening. obviously because im not on real windows... is there any way to fix this/make this work?
    I'm relatively new to the linux world, so I have to ask instead of fixing it myself

    I tried to replicate the issue on my end but it opens firefox just fine.

    Can anyone please test this too? Replicating it is easy (no actual credit card required):
    Press O > "buy gems" > choose amount and paysafe card and click next > another next > confirm > proceed to paysafe.

  • if your standard browser is chrome or chromium - there is an issue with the sandbox. You have to turn it off or it will just silently crash on start when called out of GW2.

    This started a couple of weeks ago. Don't know the reason.

  • @ArmoredVehicle.2849 said:
    Can anyone please test this too?

    I just tried it, it worked just fine. (I use firefox, and it is my default browser).
    CC: @Madara.7435

  • ArmoredVehicle.2849ArmoredVehicle.2849 Member ✭✭✭
    edited August 2, 2020

    @VAHNeunzehnsechundsiebzig.3618 said:
    if your standard browser is chrome or chromium - there is an issue with the sandbox. You have to turn it off or it will just silently crash on start when called out of GW2.

    This started a couple of weeks ago. Don't know the reason.

    I think I might be able to work around this issue by integrating a windows version of firefox into the package and set Wine to run that instead of attempting to run whatever browser the OS has installed. It's not pretty but may be a blanket solution.

    EDIT:
    Actually there might be a simpler and cleaner way. If you open a terminal and type in "xdg-open https://guildwars2.com", does it open the website in your native browser?

  • Astyrah.4015Astyrah.4015 Member ✭✭✭✭

    @ArmoredVehicle.2849 said:

    @Madara.7435 said:
    hey guys maybe you can help me
    Playing on linux with the custom wine provided here works very well for me so far.
    my problem is as follows: I want to buy gems through the gemstore. so i select 800 gems for 10€ and set the payment method paysafecard (which i used to do in the past when i was playing on windows). for the transaction you get redirected to a paysafecard website, where you enter your code. for that usually your standard browser starts up, which in my case is not happening. obviously because im not on real windows... is there any way to fix this/make this work?
    I'm relatively new to the linux world, so I have to ask instead of fixing it myself

    I tried to replicate the issue on my end but it opens firefox just fine.

    Can anyone please test this too? Replicating it is easy (no actual credit card required):

    Actually there might be a simpler and cleaner way. If you open a terminal and type in "xdg-open https://guildwars2.com", does it open the website in your native browser?

    works fine on my setup too. Falkon (my default browser, opens up properly using the gemstore paysafe or paypal option or via xdg-open url) -> playing GW2 on Lutris' wine 5.7 runner on Ubuntu 20.04 - 5.7.0-12.1-liquorix-amd64 kernel

  • Ooops.8694Ooops.8694 Member ✭✭✭

    @kanemi.4903 said:
    Backup your /boot just in case
    sudo cp -r /boot ~/boot-backup

    Fsync on ArchLinux:
    git clone https://github.com/Frogging-Family/linux-tkg.git

    cd linux-tkg/linux58-rc-tkg

    makepkg -si

    You will be asked few things during the installation. If in doubt, just press enter, which will pick the default option. Just make sure to press y[enter] when asked about fsync. Kernel compilation time!

    After everything is done your new kernel is installed in /boot, however, grub is not updated, which means after reboot you will still boot into the old kernel.
    To fix that, run sudo:
    grub-mkconfig -o /boot/grub/grub.cfg

    If for some reason boot fails, go back to grub and select your old kernel.
    now reboot, after login confirm that you are running your custom kernel by typing uname -r for me it's 5.6.10-arch1-1-fsync notice fsync in the name.

    for arch you can alternatively just install and use the linux-zen kernel.

  • Madara.7435Madara.7435 Member ✭✭

    hey guys! thanks for the quick answers. i tried some stuff.
    first of all, I am running the custom wine package provided in this thread, with the exact install method, on ubuntu 20.04. I use firefox as default browser and, even though i have some crazy addons, it usually does its job or notifies me if something went wrong. The issue is, as mentioned above, when i press on "proceed to paysafe" firefox does not open at all. if its already open, it does not create a new tab or anything...

    using xdg-open in terminal works just fine.
    I made myself a shortcut so i dont have to run the play.sh from terminal all the time, but right now i tried it because usually the terminal logs the complains. when i start the game it tells me it cant find some library (libncurses.so.5) but that has been the case ever since i installed the game, and it works just fine so thats not the issue. BUT when i try to "proceed to paysafe" or any other link of the gemstore (for example the privacy policy terms of sale you name it) it gives me an error message
    "XPCOMGlueLoad error for file /usr/lib/firefox/libmozgtk.so:
    libpng16.so.16: failed to map segment from shared object
    Couldn't load XPCOM."
    which sounds like he knows firefox is my standard browser and wants to open it, but somehow cant.
    any thoughts?

    first thing that comes to my mind, that could cause the issue here, is the standard apparmor profile for firefox (which i am using). tomorrow i will try again with apparmor turned off.

    thanks again for the help

  • @Madara.7435 said:
    hey guys! thanks for the quick answers. i tried some stuff.
    first of all, I am running the custom wine package provided in this thread, with the exact install method, on ubuntu 20.04. I use firefox as default browser and, even though i have some crazy addons, it usually does its job or notifies me if something went wrong. The issue is, as mentioned above, when i press on "proceed to paysafe" firefox does not open at all. if its already open, it does not create a new tab or anything...

    using xdg-open in terminal works just fine.
    I made myself a shortcut so i dont have to run the play.sh from terminal all the time, but right now i tried it because usually the terminal logs the complains. when i start the game it tells me it cant find some library (libncurses.so.5) but that has been the case ever since i installed the game, and it works just fine so thats not the issue. BUT when i try to "proceed to paysafe" or any other link of the gemstore (for example the privacy policy terms of sale you name it) it gives me an error message
    "XPCOMGlueLoad error for file /usr/lib/firefox/libmozgtk.so:
    libpng16.so.16: failed to map segment from shared object
    Couldn't load XPCOM."
    which sounds like he knows firefox is my standard browser and wants to open it, but somehow cant.
    any thoughts?

    first thing that comes to my mind, that could cause the issue here, is the standard apparmor profile for firefox (which i am using). tomorrow i will try again with apparmor turned off.

    thanks again for the help

    You can also check if libpng16 is installed in your system (I haven't installed Ubuntu in years so no idea if this comes out of the box or not).

  • Ooops.8694Ooops.8694 Member ✭✭✭
    edited August 2, 2020

    @Madara.7435 said:
    hey guys! thanks for the quick answers. i tried some stuff.
    first of all, I am running the custom wine package provided in this thread, with the exact install method, on ubuntu 20.04. I use firefox as default browser and, even though i have some crazy addons, it usually does its job or notifies me if something went wrong. The issue is, as mentioned above, when i press on "proceed to paysafe" firefox does not open at all. if its already open, it does not create a new tab or anything...

    using xdg-open in terminal works just fine.
    I made myself a shortcut so i dont have to run the play.sh from terminal all the time, but right now i tried it because usually the terminal logs the complains. when i start the game it tells me it cant find some library (libncurses.so.5) but that has been the case ever since i installed the game, and it works just fine so thats not the issue. BUT when i try to "proceed to paysafe" or any other link of the gemstore (for example the privacy policy terms of sale you name it) it gives me an error message
    "XPCOMGlueLoad error for file /usr/lib/firefox/libmozgtk.so:
    libpng16.so.16: failed to map segment from shared object
    Couldn't load XPCOM."
    which sounds like he knows firefox is my standard browser and wants to open it, but somehow cant.
    any thoughts?

    first thing that comes to my mind, that could cause the issue here, is the standard apparmor profile for firefox (which i am using). tomorrow i will try again with apparmor turned off.

    thanks again for the help

    Is firefox only failing to work in the store or is it a general problem?
    Does /wiki: inside the chat open up your browser window successfully?

    PS: I haven't run ubuntu/debian for years but i would expect them to use ncurses6 nowadays, so it could be a simple problem of a missing symlink to version 6.

  • Madara.7435Madara.7435 Member ✭✭

    so guys, problem solved!
    to answer your questions: I do have libpng16 installed, and yes ubuntu20.04 has ncurses6 as default. /wiki did not work either.
    I installed a neat little package called aa-notify. it interacts with apparmor and gives you a notification whenever apparmor is blocking something. and indeed, it was apparmor preventing firefox to be opened by the game. Which means yes, apparmor does its job - works as intended. So I temporarily set the firefox profile to complain and voila it worked. after that just put it back to enforce and gg.
    one could also add one or two rules to the apparmor profile so you dont have to turn it on and off every time you wanna buy gems, but as far as my experience with apparmor goes even if you add the proper rules it still doesnt work as you want it to most of the time lol.

    Long story short: anyone who uses apparmor and has a profile for firefox active should watch out for this.

  • Ooops.8694Ooops.8694 Member ✭✭✭
    edited August 5, 2020

    @DStorm.1964 said:
    Did everyone who tried to start TACO succeed?

    Short version: Yes, but with about a day of testing things and working through problems.
    And as it might be useful information for others, here the long version:

    Specifications: arch linux, zen-kernel (comes with fsync support), wine-tkg-staging-fsync-vkd3d-git (support for fsync and esync (which is missing in the mainline since wine-staging 5.10)), xfce desktop

    First things first, arch linux replaced comptom with it's fork picom (which brings a compton bin for legacy reason, but that one didn't really work). But as far as i tested it the syntax for commands and rules inside the cfg file still seems indentical, so you can just interchange compton/picom, compton-trans/picom-trans, compton.cfg/picom.cfg and so on...

    So let's start TacO... I tried the old version still lying around on my disk, the newest official one (build 047.2802r) and gw2taco_linux_v0.1a.tar.xz, they all behaved exactly the same for me. Which means not working at all at first: Every time i ran TacO it started fighting with the game window for priority (accompanied by the very unpleasant sound of the game sound getting toggled on and off a couple of times per second). Unfortunately minimizing Guild Wars 2 (as proposed in the guide above) wasn't an option for me because it completely blocked everything. I had to open a second tty to kill TacO from there...
    What instead worked for me (wish i tried it out sooner^^) was running Guild Wars 2 in full screen mode. So to answer the question above: Yes, while TacO normally runs with GW2 in window or windowed full screen mode, it seems to work perfectly well with full screen under wine.

    So, now to the testing and tuning part...

    Instead of deactivating the compositor through some settings menu, you can restart the xfce window manager with or without compositor (xfce4 --compositor=on|off --replace), which is useful for automated start/stop scripts. As i personally go for a look without all the shadows and stuff anyway, i just made xfwm4 without compositor + picom (with shadows disabled in the cfg) my new default setup.

    Speaking of scripts/command line... Instead of changing options in the GUI to set all active windows to 70%, application opacity can be set per application in the picom/compton.cfg (opacity-rule = [ "90:class_g = 'gw2taco.exe'"];) and with picom/compton-trans on the fly (picom-trans -w {window id} {opacity} or picom-trans -n {window name} {opacity}). In my case it wouldn't always work calling the Guild Wars 2 window by name, so i used the rather hacky way of getting the id from xwininfo (picom-trans -w $(xwininfo -name "Guild Wars 2" | grep "Window id:" | head -n1 | awk -F: '{print $3}' | awk '{print $1}') 40).

    The settings above (permanent 90% taco opacity, 40% gw2 opacity set when starting taco) combined with tuning brightness/gamma via xrandr ("xrandr --output DVI-I-1 --brightness 1.6 --gamma 1.2:1.2:1.2" in my case) produce a very readable taco overlay with the game very close the natural coloring and can all be set/unset with simple bash scripts to start/stop TacO with just a click:

    (Unfortunatly the software i used is unable to capture the brightness/gamma correction, but you get the idea...)

  • ZenAge.4863ZenAge.4863 Member ✭✭
    edited August 5, 2020

    So I found some time to sit down and take a look at the script again. Made some major improvements, along with adding KDE & Cinnamon support. KDE was my favourite, it doesn't require installing anything, just setting a kwin rule to activate native opacity for the GW2 window. Cinnamon is the worst so far, it requires installing both compton & openbox and juggling killing/starting processes.

    Now that there is XFCE, KDE & Cinnamon support, it is more available for testing. Please can you guys try it out and let me know of any problems you run into. I have tested all 3 desktops with success, however some stuff can be quite temperamental, and usually a simple glitch that prevents the whole thing from working.

    Also for KDE I have set the rule to match both the window class (gw2.exe wine) and/or? the window title (Guild Wars 2), hopefully it registers correctly when testing.

    Main Post

    @draconicrose.6213 said:
    If you need a tester when you get to Cinnamon, hit me up.

    The time has come lol...

    @DStorm.1964 said:
    At the moment, I have the game installed via Lutris

    I have added an option to run taco with the native wine binaries. Try it out and let me know.

    @Ooops.8694 said:
    And as it might be useful information for others, here the long version:
    First things first, arch linux replaced comptom with it's fork picom

    So glad you went through all that, as I have not been on arch for a while so could not test it there. I have removed arch support in v0.2a so that I can review your work and implement it into the next version.

    Instead of deactivating the compositor through some settings menu, you can restart the xfce window manager with or without compositor (xfce4 --compositor=on|off --replace)

    The script uses a toggle, the video is the very "manual" example.

    xfconf-query -c xfwm4 -p /general/use_compositing -s false
    compton --active-opacity 0.7
    

    The settings above (permanent 90% taco opacity, 40% gw2 opacity set when starting taco) combined with tuning brightness/gamma via xrandr ("xrandr --output DVI-I-1 --brightness 1.6 --gamma 1.2:1.2:1.2" in my case) produce a very readable taco overlay with the game very close the natural coloring.

    I played a bit early on with xrandr, however moved on to other things as I just messed up all the colors lol.. I am horrible with gamma settings.
    The main issue atm is the dimming down which is actually caused by the (very) black (not transparent) background of TACO. If we could somehow tweak it to be white/gray instead of black maybe it can improve the visibility even more, but no idea how that would work. Would need to somehow send a signal in wine's dwmapi to change base color OR check TACO's code for where the api calls are made O_O, but I think his app is closed source.

    Unfortunately minimizing Guild Wars 2 (as proposed in the guide above) wasn't an option for me because it completely blocked everything.
    What instead worked for me (wish i tried it out sooner^^) was running Guild Wars 2 in full screen mode.

    Interesting and strange at the same time. I also got blocks but combinations of alt-tab/minimizing always solved it, and setting it to Fullscreen actually caused more of a block for me because then I could not get it minimized lol.

    Will add this workaround to the FAQ and implement the xrandr/opacity tweaks as defaults in the script settings ^^ Thanks for testing it out, useful info :)

  • @ZenAge.4863 said:

    I played a bit early on with xrandr, however moved on to other things as I just messed up all the colors lol.. I am horrible with gamma settings.
    The main issue atm is the dimming down which is actually caused by the (very) black (not transparent) background of TACO. If we could somehow tweak it to be white/gray instead of black maybe it can improve the visibility even more, but no idea how that would work. Would need to somehow send a signal in wine's dwmapi to change base color OR check TACO's code for where the api calls are made O_O, but I think his app is closed source.

    Sounds interesting, I just checked TACO's website, and indeed it is closed source. The developer showcased a portion of his source code for informational purposes (no permission to redistribute, re-use, or compile, and it excludes the code for the UI, but looking at it might give you insight anyway): https://www.dropbox.com/s/b9o1wq7gfdjsvvb/gw2pois_src_nobasecode.zip?dl=0

    I looked for contact information for the developer of TACO and the best I found is his reddit: https://www.reddit.com/user/BoyC/
    It might be worth it to reach out and have a chat with the developer, maybe something nice will happen. And this is a sub-reddit for GW2Taco: https://www.reddit.com/r/GW2TacO/

    There is a thread on the forums dedicated to TACO, it might be a good idea to also ask over there. https://en-forum.guildwars2.com/discussion/32259/tool-taco-tactical-overlay
    While the thread clearly indicates that it is meant for windows, your current issue of wanting a different background setting, shouldn't be a difficult one to pull off :) ,I would say totally worth reaching out for.

  • kanemi.4903kanemi.4903 Member ✭✭
    edited August 7, 2020

    @DStorm.1964 said:
    Did everyone who tried to start TACO succeed?

    Nope.
    I did the skyscale nightmare without TACO ¬¬

    @Ooops.8694 said:
    for arch you can alternatively just install and use the linux-zen kernel.

    Already Integrated with my kernel ;)

    NA Server Fix Sunqua

  • A little tip for anyone with glitches while playing on Ubuntu with an Nvidia card.
    I was going to make a quick video showing the glitch with SimpleScreenRecorder to report it because it was affecting my game play.
    Turns out I'm using the official drivers which SimpleScreenRecorder told me has issues with OpenGL flipping. Turning that off fixed my issue.
    https://imgur.com/a/sWQyUK9
    Regards

  • ZenAge.4863ZenAge.4863 Member ✭✭
    edited August 8, 2020

    @Barabeam.4638 said:
    Sounds interesting, I just checked TACO's website, and indeed it is closed source. The developer showcased a portion of his source code for informational purposes (no permission to redistribute, re-use, or compile, and it excludes the code for the UI, but looking at it might give you insight anyway): https://www.dropbox.com/s/b9o1wq7gfdjsvvb/gw2pois_src_nobasecode.zip?dl=0

    Thanks for link. I had a look and did not find much. In anycase it's probably using the API. Even if I did read the code, there wouldn't be a way I could change/implement it.

    It might be worth it to reach out and have a chat with the developer, maybe something nice will happen. And this is a sub-reddit for GW2Taco: https://www.reddit.com/r/GW2TacO/

    To be honest, I have been monitoring/found a few threads on reddit asking about running it on linux. However, I don't have a reddit account... might make one soon. I could contact the owner, and he might be willing to add a patch (if he sees the linux adaptation AND its not too much work like adding a line of API code to designate a background color)... but the white background might not work/make it worse...

    If I sit down and dig deep, I might be able to get TacO working properly with transparency. I found a reddit post with someone claiming he had it working... but when asked how, he didn't mention, just something about DXGI. TacO updated to using dxgi for the transparency sometime ago. Maybe its as simple as messing around with wine libraries/settings... however my setup/os has changed so wine/dxvk is giving me issues with running taco atm.

    Key elements that I have found are somehow related to transparency:
    dxgi
    dwmapi
    gdiplus
    d2d1

    I wanted to play around with those wine libs(native/builtin) and changing windows versions etc... but im preoccupied and can't find the time atm for this, plus I have to find out why taco isn't starting with the workaround on the new system.

    @kanemi.4903 said:
    Nope.
    I did the skyscale nightmare without TACO ¬¬

    Could you please elaborate what did not work for you/what error showed up? I would like to add a fix to the installer in the next version if possible.

    P.S Im in the same boat... almost done with skyscale and haven't used TacO xD

  • @ZenAge.4863 said:

    Thanks for link. I had a look and did not find much. In any case it's probably using the API. Even if I did read the code, there wouldn't be a way I could change/implement it.

    Aaaactually I found something that seems to be exciting! (sadly I run manjaro, and the installer currently doesn't support it, and I am not in the state to go through the manual procedures.
    That aside, enter the Taco app folder, you will find many files, look for UI_(X).css

    where (X) is large, larger, normal, or small. >> It seems different size settings have separate settings files allocated for them. >> This can actually make it faster to test different things :) Anyway, open any of them and you will see different parameters with their values and so on. One of them is:

    background

    {
    width:100%;
    height:100%;
    background:#000000;
    opacity:0.0f;
    child-layout: vertical;
    child-fill-y: true;
    child-fill-x: true;
    }
    while the opacity of the background is supposedly forced at 0, it seems to be not the case when we run it on linux (At least so far), but that aside, note background:#000000 <<< that my friend corresponds to the color black :) it will be very easy to use google or other specialized tool to figure out the code for whatever color you may want to try ;)

    for example >> #ffffff stands for white color.

    I think there is very good potential in this finding, let me know how it goes ;D

    P.S Im in the same boat... almost done with skyscale and haven't used TacO xD

    still fairly lucky xD I farmed LS4 maps the old/slow way,, now you can farm loads of eternal iceshards through metas and strike missions and convert to LS4 maps with no caps xD. I kinda don't want to remember the pain, but Aurora was even worse c.c

  • draconicrose.6213draconicrose.6213 Member ✭✭✭
    edited August 11, 2020

    @ZenAge.4863 said:

    @draconicrose.6213 said:
    If you need a tester when you get to Cinnamon, hit me up.

    The time has come lol...

    Tried it out. First I get:

    ./run_taco.sh: line 9: cd: too many arguments
    MANUAL START, MAKE SURE GW2 IS RUNNING. WAITING 30s BEFORE STARTING TACO

    TACO STARTED WITH PID 27396.
    error

    Then the console opens a new input and this shows up: https://dpaste.org/YXqG

    It doesn't show TaCo, but doesn't exit out either.

  • ZenAge.4863ZenAge.4863 Member ✭✭
    edited August 12, 2020

    @Barabeam.4638 said:
    Aaaactually I found something that seems to be exciting! (sadly I run manjaro, and the installer currently doesn't support it, and I am not in the state to go through the manual procedures.

    background

    {
    width:100%;
    height:100%;
    background:#000000;
    opacity:0.0f;
    child-layout: vertical;
    child-fill-y: true;
    child-fill-x: true;
    }

    Ooof that does seem exciting... will check it out soon! Nice find...

    @draconicrose.6213 said:
    ./run_taco.sh: line 9: cd: too many arguments
    MANUAL START, MAKE SURE GW2 IS RUNNING. WAITING 30s BEFORE STARTING TACO

    TACO STARTED WITH PID 27396.
    error>

    I remember that "uninformative" error code was actually suppose to be informative because I only put it in one place. It is trying to run part of the script that is specific for the DE that you are using, but cant match the DE variable so throws that error. It throws that error because at line 9 the cd command is failing so all the other vars are failing. The $DIR var is suppose to locate the dir of the taco app folder & not the dir where you are running it from. The function I used worked for me but there might be a better/simpler way. Will check/update.

    If you want a temporary work around open run_taco.sh and edit DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" to an absolute path of the gw2taco app something like DIR="/home/user/gw2/gw2taco"

  • draconicrose.6213draconicrose.6213 Member ✭✭✭
    edited August 14, 2020

    @ZenAge.4863 said:

    @draconicrose.6213 said:
    ./run_taco.sh: line 9: cd: too many arguments
    MANUAL START, MAKE SURE GW2 IS RUNNING. WAITING 30s BEFORE STARTING TACO

    TACO STARTED WITH PID 27396.
    error>

    If you want a temporary work around open run_taco.sh and edit DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" to an absolute path of the gw2taco app something like DIR="/home/user/gw2/gw2taco"

    I tried that, but I kept having the cd too many arguments message so I changed it to:

    DIR="/opt/Guild Wars 2/gw2taco/"
    GW="pwd | grep -o 'drive_c/GW2'"
    if [ -z $GW ]; then
    GW="gw2taco/app"
    fi
    cd "/opt/Guild Wars 2/gw2taco/"

    That solved the too many arguments message (cuz now CD is escaped due to the space in my gw2 folder name), but not the 'error' after "Taco started with pid".
    Edit:
    Reading over the code, it seems like the script is erroing when it enters the function to disable cinnamon. It never does disable Cinnamon, for some reason, though the command works when used from terminal.

    Also, my settings.conf file only has "autostart=false" in it. Is this supposed to happen? Or is it supposed to have more things? I ask because I notice the script greps things from this file.

  • ZenAge.4863ZenAge.4863 Member ✭✭
    edited August 15, 2020

    @draconicrose.6213 said:
    Also, my settings.conf file only has "autostart=false" in it. Is this supposed to happen? Or is it supposed to have more things? I ask because I notice the script greps things from this file.

    It is suppose to include some other stuff like your DE etc. Which should explain why it fails to disable cinnamon. This is again probably because the cd command failed during install so it did not export the other settings.

    run ./install_taco.sh -> reset -> reinstall, but first edit install_taco.sh and change DIR= like you did for ./run_taco.sh (edit: or download v0.3a)

    Yip, looks like cd was failing because of the unescaped space in your path. I will patch this in the next version. Thanks for testing, let us know if it works after the fixes. :)

    @Barabeam.4638 said:

    background

    I think there is very good potential in this finding, let me know how it goes ;D

    So after fixing my wine installation and getting taco working again, I tried out those UI.css styles. Unfortunately I did not get far. It seems like the styles are only for the taco app(interface), and not the taco app(window). This is not managed by those stylesheets (but I guess by dwmapi or linux window managers). It was still fun to mess around though, and thought that maybe I could use it somehow but in general... there is not much we will be able to improve. As long as we are using the opacity workaround and not actual transparency, we will never get the bright & clear GW2/Taco.

    The best we can do is find the ideal gamma/contrast/opacity levels and maybe tweak the UI style colors a bit.

    gw2tacowhite.png


    EDIT:

    I have updated the installer to v0.3a, fixing the $DIR= path issue & added Arch support for XFCE, KDE & CINNAMON. However, I cannot test it, as im not on arch atm. The settings are all the same except for replacing compton with picom as @Ooops.8694 has pointed out. Needs testing tho.

  • @ZenAge.4863 said:

    It was still fun to mess around though, and thought that maybe I could use it somehow but in general... there is not much we will be able to improve. As long as we are using the opacity workaround and not actual transparency, we will never get the bright & clear GW2/Taco.

    No problem, the scientific method is based on iterations ;D. I have an idea and I feel it has a fairly great potential. But I will not be able to test it right now as I am out of town. I would have to configure a lot of things from scratch if I were to use my laptop.

    Basically we can use vkBasalt: https://github.com/DadSchoorse/vkBasalt
    vkBasalt allows the use of reshade shaders and configuring them... configuring them can be hairy, but this is something I already went through and have a fairly good configuration file at home... (now wishing I uploaded it to my cloud).

    Method: Use vkBasalt to increase the color saturation, color vibrance, and other applicable settings on GW2 to counteract the effect caused by taco's opacity :) . Hoping for a perfect result, but I will still be happy with a big improvement.

    Drawback (tentative): When taco is closed while vkBasalt is still running, the colors will probably be a bit too extreme ;o ,, I am sure there should be a way to close vkBasalt while in-game, but I never really needed to do that. but it is something we can look into.

    If you would like we can discord sometime, it may help to think things out and I will help with testing. I am an artist and I like to tinker, so I can test out various settings and generally speaking it could be a learning experience for me as well.

  • @ZenAge.4863 said:

    @draconicrose.6213 said:
    Also, my settings.conf file only has "autostart=false" in it. Is this supposed to happen? Or is it supposed to have more things? I ask because I notice the script greps things from this file.

    It is suppose to include some other stuff like your DE etc. Which should explain why it fails to disable cinnamon. This is again probably because the cd command failed during install so it did not export the other settings.

    run ./install_taco.sh -> reset -> reinstall, but first edit install_taco.sh and change DIR= like you did for ./run_taco.sh (edit: or download v0.3a)

    Yip, looks like cd was failing because of the unescaped space in your path. I will patch this in the next version. Thanks for testing, let us know if it works after the fixes. :)

    I tried the new version. Still doesn't work, but at least openbox starts now, though since TaCo never shows up I can't exit gracefully. Here's the output: https://dpaste.org/qOCQ

    I'll try to go through it myself and see what I can fix when I have the time, just wanted to give you more data. By the way, I think it might be worth poiting out that I have two monitors. Don't know if that affects things much.

  • ZenAge.4863ZenAge.4863 Member ✭✭
    edited August 26, 2020

    @draconicrose.6213 said:
    I tried the new version. Still doesn't work, but at least openbox starts now, though since TaCo never shows up I can't exit gracefully.

    Most of the issues i've had with TacO not starting was:
    1) TacO starts before you are ingame, then it shuts down because it does not find a mumblelink (you have to be in a loaded map, then start TacO)
    2) When doing manual starts, the wine prefix is incorrect. it cant find its own resources and crashes (check taco logs)
    3) same as above, but finds it's resources, starts but cant see gw2 (mumblelink)
    4) because I was doing too many tests, there were some wine instances open (of taco or something else) and had to kill everything before taco would start
    5) some missing libs

    I apologise, this taco thing is a side project and I don't spend much time working on it. I just really wanted to use Taco when doing the skyscale and stumbled upon the workaround. The module was suppose to make it easier to use the workaround and support different Desktop Environments/conditions. However, its not very stable atm, still in the "alpha" stage.

    I appreciate the feedback and tests. If we can get it to a stable point then I'd be happy because I don't really want to make it too complex and dive too deep. Also don't want this forum to get flooded with "taco" talk lol... I didn't want to start an entirely new thread because it kind of fit well here, but I also don't want it to take over the main point of this thread which is the portable package and optimizations.

  • @ZenAge.4863 said:

    @draconicrose.6213 said:
    I tried the new version. Still doesn't work, but at least openbox starts now, though since TaCo never shows up I can't exit gracefully.

    Most of the issues i've had with TacO not starting was:
    1) TacO starts before you are ingame, then it shuts down because it does not find a mumblelink (you have to be in a loaded map, then start TacO)
    2) When doing manual starts, the wine prefix is incorrect. it cant find its own resources and crashes (check taco logs)
    3) same as above, but finds it's resources, starts but cant see gw2 (mumblelink)
    4) because I was doing too many tests, there were some wine instances open (of taco or something else) and had to kill everything before taco would start
    5) some missing libs

    I apologise, this taco thing is a side project and I don't spend much time working on it. I just really wanted to use Taco when doing the skyscale and stumbled upon the workaround. The module was suppose to make it easier to use the workaround and support different Desktop Environments/conditions. However, its not very stable atm, still in the "alpha" stage.

    I appreciate the feedback and tests. If we can get it to a stable point then I'd be happy because I don't really want to make it too complex and dive too deep. Also don't want this forum to get flooded with "taco" talk lol... I didn't want to start an entirely new thread because it kind of fit well here, but I also don't want it to take over the main point of this thread which is the portable package and optimizations.

    I think it would be helpful to have a trhead for this and even a github so people can post issues and submit pull requests.
    I've also gone through the steps above, eliminating them as possible problems but I absolutely cannot get TaCo to work. If it's missing libraries I have no idea what they are so I can't see if they're installed.
    I've added "trap func_end SIGINT SIGTERM" to the script, before the execution is called, so I can exit gracefully.

  • ArmoredVehicle.2849ArmoredVehicle.2849 Member ✭✭✭
    edited August 27, 2020

    @ZenAge.4863 said:
    I appreciate the feedback and tests. If we can get it to a stable point then I'd be happy because I don't really want to make it too complex and dive too deep. Also don't want this forum to get flooded with "taco" talk lol... I didn't want to start an entirely new thread because it kind of fit well here, but I also don't want it to take over the main point of this thread which is the portable package and optimizations.

    Yeah please stop spamming taco this taco that, it's making me hungry. =)

    I'm joking by the way, I think that keeping it in this thread is fine. It has more or less became to the go-to thread for Linux related issues/questions in general.

    I've been thinking what's next for the project, seeing as it's mostly completed. A few things that come to mind are:

    • Updating package to DXVK 1.7.2 (or whatever is next after 1.7.1, I didn't release an update with 1.7.1 as it has a regression).
    • Adding a desktop shortcut icon, nothing too essential but a nice cosmetic addition.
    • FUTEX2 support Details. This is for the future though as it still has to be supported by the kernel and a modern Wine version but looking forward to it ;)
  • @ArmoredVehicle.2849 said:
    Yeah please stop spamming taco this taco that, it's making me hungry. =)

    Haha... very funny :tongue:

    I'm joking by the way, I think that keeping it in this thread is fine. It has more or less became to the go-to thread for Linux related issues/questions in general.

    That was my initial thought. However, I will attempt to shift most of the troubleshooting onto GitLab and setup a base there.

    I've been thinking what's next for the project, seeing as it's mostly completed. A few things that come to mind are:

    Ha! The desktop icon would be handy xD... btw are you still considering implementing the ramdrive option, or have you decided not to include it?

    @draconicrose.6213 said:
    I think it would be helpful to have a trhead for this and even a github so people can post issues and submit pull requests.

    Yes, I was considering this a while back. I have created a GitLab project/repo and started on v0.4a to be Git based. I am bit new to Git and licensing so Im still setting things up and learning the processes.

    I've also gone through the steps above, eliminating them as possible problems but I absolutely cannot get TaCo to work. If it's missing libraries I have no idea what they are so I can't see if they're installed.

    Please open an issue on GitLab with a log of console, gw2taco.log and your settings.conf file and we can continue troubleshooting from there.

  • Anaeijon.5694Anaeijon.5694 Member
    edited September 3, 2020

    I just created a small Benchmark running for about 1 Minute in Lion's Arch with best appearance settings on 1080p.
    https://flightlessmango.com/games/9691/logs/821
    I might create longer benchmarks later, probably actively playing 1hr Dragonfall each.

    I compare the Build by @ArmoredVehicle.2849 against a custom setup in Lutris using GloriousEggroll Proton-5.9-GE-5-ST with FSYNC.
    All other settings in exports are the same. Both tests even use the same Wineprefix and shader cache.
    The results are nearly the same and differences are well withing margins of error.

    I feel like the results are quite bad considering my hardware. It's playable, but even on lower graphics settings the FPS don't get much higher.
    Currently I'm the only one who has uploaded benchmarks from MangoHUD. It would be great if other people could create benchmarks on flightlessmango.com too, for easier comparison.


    You can get MangoHUD here:
    https://github.com/flightlessmango/MangoHud
    If you are running Arch, it's available from AUR.

    To run MangoHUD with the ArmoredVehicle scripts I simply created the following file in the main folder, next to the play.sh:

    mango_play.sh
    #!/bin/bash
    mangohud ${0%/*}/bin/user_run [email protected];

    You will need to create a config file to be able to save the benchmarks and later upload them for comparision:

    ~/.config/MangoHud/MangoHud.conf
    output_folder = /absolute/path/to/desired/benchmark/folder
    permit_upload = 1

    In Game press L-Shift + F2 to start recording. Afterwards go to your output folder and upload it to https://flightlessmango.com/games/9691 .
    Thank's for pitching in!


    Another feedback I would like to leave is, that Deltaconnected never changed the URL of arcdps.
    I simply added a little script in the arcdps_easysetup_tool folder:

    arcdps_easysetup_tool/arcdps_download.sh
    #!/bin/env bash
    wget https://www.deltaconnected.com/arcdps/x64/d3d9.dll --output-document=./put_arcdps_files_here/d3d9.dll

    Whenever GW2 get's an update and arcdps needs to be updated too, I run this and than run arcdps_setup.sh.
    This is a tiny thing, but that way I never have to google for arcdps, search the d3d9.dll, download it and manually move it to the folder.

  • https://flightlessmango.com/games/9692/logs/817

    It looks like you're looking up Guildwars 2 on FlightlessMango instead of Guild Wars 2, which has a few benchmarks. I did a quick run around in Lion's Arch as well to test Esync vs Fsync on my machine and got better performance using Esync, oddly. Settings are all max, except the character model limit is set to low, and I run it at 3440x1440 resolution. The reason I set that to low is because the game is heavily CPU bound and does not utilize multi-threading much due to being a DX9 title. DXVK spreads that across all of my cores, but it can only do so much as the Windows version essentially uses one core; I really wish they'd update to DX12 or Vulkan. I mean look at the performance improvement D912pxy brings to the table. Changing the other settings doesn't impact my performance much as they mostly hit the GPU, which is barely being used, so I leave everything else on max. If I'm not in a CPU bound scenario, I'll easily see 140+ FPS.

    I installed the game through the Lutris install script and I've tried using GloriousEggroll's Custom Proton, but it won't launch from Lutris for some reason when I select that as the runner. Not sure what I'm doing wrong.

    Operating System: Manjaro Linux
    KDE Plasma Version: 5.19.4
    KDE Frameworks Version: 5.73.0
    Qt Version: 5.15.0
    Kernel Version: 5.8.3-2-MANJARO (Fsync compatible)
    Processor: Intel® Core™ i7-9800X CPU @ 4.7GHz
    Memory: 32 GB
    Graphics Processor: Nvidia GeForce RTX 2080

  • ArmoredVehicle.2849ArmoredVehicle.2849 Member ✭✭✭
    edited September 6, 2020

    @ZenAge.4863 said:

    @ArmoredVehicle.2849 said:
    I've been thinking what's next for the project, seeing as it's mostly completed. A few things that come to mind are:

    Ha! The desktop icon would be handy xD... btw are you still considering implementing the ramdrive option, or have you decided not to include it?

    I went up and down quite a bit with the ram drive but in the end I decided against it. The main reason is that it consists of having to copy thousands of files back and forth with each run and without forgetting that it requires sudo password, another thing to be considered is that these shaders have to be recompiled after a driver update (both Nvidia and AMD/Intel with Mesa) which complicates things a bit further.

    @Redmond.5019 said:
    https://flightlessmango.com/games/9692/logs/817

    Esync vs Fsync on my machine and got better performance using Esync, oddly.

    From my tests I've had the same results , for this game Esync is the better choice, however I found Fsync to help in others. Some games are even unstable with Esync whereas with Fsync work just fine while still retaining better performance.