Heroic-Games-Launcher / HeroicGamesLauncher

A games launcher for GOG, Amazon and Epic Games for Linux, Windows and macOS.
https://heroicgameslauncher.com
GNU General Public License v3.0
7.71k stars 413 forks source link

Heroic 2.14 - NVAPI gets disabled #3672

Open shelterx opened 3 months ago

shelterx commented 3 months ago

Describe the bug

I noticed that if you don't have Autoinstall DXVK-NVAPI selected, NVAPI gets disabled with PROTON_DISABLE_NVAPI=1. Even if I set it to be enabled with PROTON_DISABLE_NVAPI=0 as game ENV it gets overriden.

Add logs

Launching Assassin's Creed: Valhalla: WINEDEBUG=timestamp HEROIC_APP_NAME=965ccf8b2eba4f9381ef43183c08e205 HEROIC_APP_RUNNER=legendary HEROIC_APP_SOURCE=epic STEAM_COMPAT_INSTALL_PATH=/mnt/Stuff/Games/AssassinsCreedValhalla PROTON_DISABLE_NVAPI=1 LD_PRELOAD= DOTNET_BUNDLE_EXTRACT_BASE_DIR= DOTNET_ROOT= STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/shelter/.steam/steam STEAM_COMPAT_DATA_PATH="/home/shelter/Games/Heroic/Prefixes/default/Assassins Creed Valhalla" WINE_FULLSCREEN_FSR=0 PROTON_EAC_RUNTIME=/home/shelter/.config/heroic/tools/runtimes/eac_runtime PROTON_BATTLEYE_RUNTIME=/home/shelter/.config/heroic/tools/runtimes/battleye_runtime STEAM_COMPAT_APP_ID=0 SteamAppId=0 SteamGameId=heroic-AssassinsCreedValhalla PROTON_LOG_DIR=/home/shelter LEGENDARY_CONFIG_PATH=/home/shelter/.config/heroic/legendaryConfig/legendary /opt/Heroic/resources/app.asar.unpacked/build/bin/linux/legendary launch 965ccf8b2eba4f9381ef43183c08e205 --no-wine --wrapper "disable-enable-monitor.sh /usr/bin/mangohud --dlsym '/usr/share/steam/compatibilitytools.d/prot.........

Steps to reproduce

Start a game with Heroic 2.14 using a proton flavor wine.

Expected behavior

Having Autoinstall DXVK-NVAPI unticked shouldn't forcefully disable NVAPI.

Screenshots

No response

Heroic Version

Latest Stable

System Information

CachyOS - Heroic Games Launcher bin AUR

Additional information

No response

Kajot-dev commented 3 months ago

This is confirmed by #3592

There was a short discussion on Heroic's Discord that concluded that this setting probably should be renamed. Note that I am not a maintainer and cannot speak on their behalf

imLinguin commented 3 months ago

Exactly, at the moment setting toggles NVAPI per game and makes it predictable for the user as to what features will be enabled. In context of proton, the current name doesn't really apply, as we don't actually install the libs, we just tell proton whether this should be enabled.

I'd say the toggle behaves as it was designed, when you disable NVAPI, well it gets disabled

shelterx commented 3 months ago

Ok, it makes sense but I agree that the naming should be changed since proton already provides nvapi.

Kajot-dev commented 3 months ago

If anything this makes it unpredictable for the user, because suddenly NVAPI is disabled and option is misleading. If the option was Enable NVAPI, then I would expect it to disable NVAPI when not selected, but it isn't unfortunately.

Etaash-mathamsetty commented 3 months ago

I'm also thinking of having nvapi enabled by default to follow what proton is doing, but there are some games even on egs that don't work with it so it could regress the games on some machines.

Kajot-dev commented 3 months ago

Well, as far as I know Proton has internal nvapi blacklist, which can be only overriden by PROTON_FORCE_NVAPI

Etaash-mathamsetty commented 3 months ago

Well, as far as I know Proton has internal nvapi blacklist, which can be only overriden by PROTON_FORCE_NVAPI

The blacklist is powered by steam IDs which heroic cannot provide