ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.5k stars 1.07k forks source link

Baldur's Gate 3 (1086940) #4243

Open cwebster2 opened 4 years ago

cwebster2 commented 4 years ago

Compatibility Report

System Information

I confirm:

Symptoms

Game does not start. fails to run steamapps/common/Baldurs Gate 3/Launcher/LariLauncher.exe

Reproduction

Install game, click Play.

steam-1086940.log

leslielg commented 4 years ago

symlink, just tried dx11 version also, no luck: ln -s ../bin/bg3_dx11.exe LariLauncher.exe

Traxmaxx commented 4 years ago

@leslielg @alosarjos Same for me

steam-1086940.log

alosarjos commented 4 years ago

Have you tried removing the compatdata for the game. Just in case after changing the proton version?

leslielg commented 4 years ago

Yes, before last attempt, I delete pfx folder for bg3 in compatdata for a fresh proton running with next branch

kudlatyamroth commented 4 years ago

It needs vcrun2015 or 17 or 19 on newer versions of wine

DX11 crashes after char creation on nvidia, AMDVLK, and RADV Vulkan works on Nvidia and on AMD with AMDVLK Vulkan crashes with RADV Saves work fine. You only need dotnet48 for the launcher, which takes way too long to install and sometimes fails. If you skip the launcher and launch the game directly, it works fine.

Here's a protonfix that works with my latest ge release on dx11, as noted for AMD you currently need AMDVLK:

1086940.py

""" Game fix for Baldur's Gate 3
"""
#pylint: disable=C0103

from protonfixes import util

def main():
    """ Run script extender if it exists.
    """
    # Fixes the startup process.
    util.protontricks('vcrun2019_ge')
    util.protontricks('d3dcompiler_47')
    util.replace_command('LariLauncher.exe', '../bin/bg3.exe')

Drop it in to Proton-5.9-GE-7-ST/protonfixes/gamefixes/

on nvidia cards if dotnet48 is installed we not need to change launcher :)

vandergail commented 4 years ago

@leslielg I had to install vcrun2019 with protontricks/winetricks to stop it from crashing after the Larian logo if that is any help.

alosarjos commented 4 years ago

For those who can't run it. Could you try disabling steam cloud save feature, and then removing the compatdata dir?

Traxmaxx commented 4 years ago

@alosarjos yes. It launches the DX11 version which crashes after character creation. I also follow the Mesa issue and since the update the game launches with AMDVLK but kind of freezes my system and displays pink screens with artefacts. So similar issue to yours I assume. I wait if they get back to you on the logging.

RisingThumb commented 4 years ago

Runs for me. Using Proton-5.9-GE-7-ST, with Glorious Eggroll's gamefix. On Arch, latest Nvidia Drivers with a GTX 960, and deleted any relevant compatdata as mentioned by @alosarjos. After those steps and then running the game it worked for me.

Played for about half an hour and works past the character creation menu.

nateqri commented 4 years ago

Also runs for me using the above fix from GE - running on Proton-5.9-GE-7-ST.

However, I do have a graphical bug with Light shadows being enabled and in cutscenes or conversations.

When enabled, any reflection is either black or white and extremely bright. disabled everything displays perfect, have played for about 8 hours so far. Not sure if that's a early access bug or specific to linux tho.

Stefan538871 commented 4 years ago

Everything works as expected following https://github.com/ValveSoftware/Proton/issues/4243#issuecomment-704590818 instructions.

Though it would be nice to be able to use RADV/ACO and default proton

sidrew commented 4 years ago

I'm running an nvidia quadro rtx 5000 mobile in my lappy... I found that I had to disable flipping and UBB for this card... and then the vulkan version runs just fine. Some interesting artifacts in cinematics... odd flare effects of some sort... and the one gruesome death at a certain battle left a crazy tearing effect from one corpse.

robgriff444 commented 4 years ago

I'm using GE's 5.09 , added 1086940.py as above (confirmed it's active by checking vcrun2019_ge was installed), applied AMDVLK in game launch and downloaded dotnet48 (although this is only for the launcher right?).

The game starts with a hand pointer, arrow sound and the intro screen (same as DOS2) for a second and then quits before the arrow sound is finished. I think I can prove AMDVLK is applied because if I remove if from the launcher code I get no intro at all.

I'm on openSUSE TW with AMD 570.

I removed the contents of the compatdata and disabled cloud save as suggested by @alosarjos and it works!

I created a character, skipped the following cinematic and got to the 1st room and saved.

alosarjos commented 4 years ago

Once it's working ok I would say you can enable the cloud settings if you want.

robgriff444 commented 4 years ago

@alosarjos I re-enabled cloud sync and it seems fine, I went a little further into the 2nd room and saved from there. Just out of interest, why did deleting pfx and disabling cloud fix it?

alosarjos commented 4 years ago

All this is what I think from my testing but I can't confirm at all. But to me it looks like if by some reason de compat data gets corrupted or badly generated by some reason so the game doesn't run, this data is uploaded to the cloud as part of the savedata. And then if you regenerate with cloud save active, the bad data gets downloaded instead of regenerating.

While this doesn't make sense to me, it's kinda the conclusion I've taken from my tests.

leslielg commented 4 years ago

I finally made it work, Using Proton-5.9-GE-7-ST, with Glorious Eggroll's gamefix. The issue blocked me most is the gamefix script I copy&paste didn't work. I have to type the .py file by hand then it is recognized and working. Thanks a lot for all helps.

elg34 commented 4 years ago

Can now also run it with Arch/Sway using GE proton with the above protonfix! Turns out I forgot that I was exporting SDL_VIDEODRIVER=wayland in my profile, removing that got me just past the logo before it crashed. That could then be fixed by also manually installing vcrsrun2019 like @vandergail said!

flindeberg commented 4 years ago

I have an issue right now where some interactions (in particular the barter screen and the equipment screen) brings my fps down to 5-10, normally I'm around 70 fps. I haven't logged extensively, but I see no additional drive activity, cpu usage or similar, and no change in gpu (i.e. constantly at 100% with full nvram).

Has anyone encountered something similar?

Running Proton-5.9-GE-7-ST with GE's gamefix, nvidia 455.28 drivers on 980 gtx, running X (obviously with nvidia).

EDIT: Also running xanmod-kernel, with default flags for i7-5820k.

ned7000 commented 4 years ago

I still can't get it to run at all. bg3.exe goes to black screen then crashes. bg3_dx11.exe goes to black screen changes cursor to gauntlet, makes a sound, then crashes. Installing in PlayOnLinux and running Proton-5.9-GE-7-ST with GE's gamefix, I was able to get bg3_dx11.exe to go to black screen and I could hear the intro music in the background after telling it to ignore errors. However, it stayed on a black screen. I've attached the error from PlayOnLinux.

I'm running Fedora 31, Steam BG3, Proton-5.9-GE-7-ST with GE's gamefix, nvidia 450.66 (455 isn't yet out on fedora). I've tried all the other suggestions so far with no different results. I saw someone suggest applying "AMDVLK in game launch." I don't know how to do that, or if it would help on nvidia.

Screenshot_2020-10-10

ArturWroblewski commented 4 years ago

Thank you for the solution @kudlatyamroth .

The game works pretty well (only cutscenes have minor problems) here's the gameplay https://youtu.be/41r0cdpsbKg

The game works on Nvidia 1650 4GB and Ryzen 1700. Driver version 450.66 and 1086940.py file only. (without additional modifications)

1086940.py

""" Game fix for Baldur's Gate 3 """

pylint: disable=C0103

from protonfixes import util

def main(): """ Run script extender if it exists. """

Fixes the startup process.

util.protontricks('vcrun2019_ge')
util.protontricks('d3dcompiler_47')
util.replace_command('LariLauncher.exe', '../bin/bg3.exe')

File 1086940.py Create in Proton-5.9-GE-7-ST/protonfixes/gamefixes/ see on Video.

The game works fine without installing "dotnet 48". This is only needed for Launcher. For me, the game did not work immediately after adding the file. I had to delete the Prefix directory with "protontricks --gui"

flindeberg commented 4 years ago

I have an issue right now where some interactions (in particular the barter screen and the equipment screen) brings my fps down to 5-10, normally I'm around 70 fps. I haven't logged extensively, but I see no additional drive activity, cpu usage or similar, and no change in gpu (i.e. constantly at 100% with full nvram).

Has anyone encountered something similar?

I debugged this a bit, and I am confused. My xorg-process (i.e. /usr/lib/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -nolisten tcp -background none -noreset -keeptty -verbose 3) runs amok with the GPU (although not memorywise), but only when certain menus are open in BG3 (for example the equipment menu, but not the inventory menu).

I tried windowed, fullscreen and borderless fullscreen and get the same behaviour with all of them.

Any suggestions where to look?

Traxmaxx commented 4 years ago

With the latest Proton-5.9-GE-8-ST the crash after character creation when starting DX11 is fixed. Thank you @GloriousEggroll :pray:

sidrew commented 4 years ago

With the latest Proton-5.9-GE-8-ST the crash after character creation when starting DX11 is fixed. Thank you @GloriousEggroll

Did it halt and lock up a few times before getting there? It eventually worked for me like you say... but, there were more than a few times where it locked and gave me a force quit/wait choice before eventually working.

Traxmaxx commented 4 years ago

Did it halt and lock up a few times before getting there? It eventually worked for me like you say... but, there were more than a few times where it locked and gave me a force quit/wait choice before eventually working.

No. I had a bug after one NPC conversation and the whole UI blacked out, but it didn't hang. A restart of the game fixed it.

jarrard commented 4 years ago

Manjaro / Nvidia 1080TI / GE-8-ST

I'm told the game will CTD with vulkan and NVIDIA. (notes on GE-8-ST releases page) This appears to be true after a short while playing, generally you can get to menu and play a bit but it will crash. Not sure if there is a solution, and yes using GE-8-ST which notes this problem.

I installed dotnet48 but it says I need to download .NET Core if I use the launcher. (maybe bad install)

bg3.exe = crashes to desktop after taking a few steps / or after quicksave / seems awfully random bg3_dx11.exe = black screen with just cursor

UPDATE: I deleted the prefix and tried again without touching anything but using GE-8-ST and bg3.exe appears to work longer now. Spoke too soon, I used the quick save and it CTD :-(, however I was able to rest at camp beforehand. The head scratching continues!

jarrard commented 4 years ago

It seems every time I save my game(save works), it crashes to desktop. Anyone had this issue? know what it might be?

Installing d3dcompiler_47 & vcrun2019 may have resolved the save game crashing. The game does crash with a window error when you attempt to alt-tab, however I think everyone gets this atm.

flindeberg commented 4 years ago

Spoke too soon, I used the quick save and it CTD :-(, however I was able to rest at camp beforehand.

Do you have any kind of error? Either in dialog-boxes or in logs?

jarrard commented 4 years ago

Spoke too soon, I used the quick save and it CTD :-(, however I was able to rest at camp beforehand.

Do you have any kind of error? Either in dialog-boxes or in logs?

Not atm. I'm still testing as I think installing d3dcompiler and vcrun2019 resolved it but you can never be 100% sure. I'll do some more testing/playing.

NeumimTo commented 4 years ago

Nvidia 1660/ ubuntu 20

Installed the proton patch posted above & dotnet48, but after launching via steam

Proton 5.13 image

Proton-5.9-GE-8-ST image

jarrard commented 4 years ago

I'm using proton TKG now which has a few extra patches in it.

Use bg3.exe for vulkan or bg3_dx11.exe for dx11. Avoid the launcher for now.

AnzoDK commented 4 years ago

Nvidia 1660/ ubuntu 20

Installed the proton patch posted above & dotnet48, but after launching via steam

Proton 5.13 image

Proton-5.9-GE-8-ST image

Try using protontricks to launch winecfg and change the windows version to Windows 10 - That might fix your issue :)

rantlivelintkale commented 4 years ago

Nvidia 1660/ ubuntu 20 Installed the proton patch posted above & dotnet48, but after launching via steam Proton 5.13 image Proton-5.9-GE-8-ST image

Try using protontricks to launch winecfg and change the windows version to Windows 10 - That might fix your issue :)

In case you're wondering that's: protontricks 1086940 winecfg

mattdm commented 4 years ago

I can confirm that once I've 1) installed the amdvlk driver (from the Copr) and 2) hardlinked bg3.exe over LarianLauncher.exe, the game starts up and runs perfectly on Fedora 33 beta with Radeon Vega 56 GPU.

torvitas commented 4 years ago

I can confirm that once I've 1) installed the amdvlk driver (from the Copr) and 2) hardlinked bg3.exe over LarianLauncher.exe, the game starts up and runs perfectly on Fedora 33 beta with Radeon Vega 56 GPU.

Can/Have you try/tried that on fedora 32 by any chance?

mattdm commented 4 years ago

Can/Have you try/tried that on fedora 32 by any chance?

No, sorry -- I'd already updated. I can confirm that the non-amdvlk driver doesn't work on F32 either, but that's probably not much help.

torvitas commented 4 years ago

Can/Have you try/tried that on fedora 32 by any chance?

No, sorry -- I'd already updated. I can confirm that the non-amdvlk driver doesn't work on F32 either, but that's probably not much help.

I can confirm it also works on fedora 32 using amdvlk and Proton-5.9-GE-8-ST.

Howto:

  1. Install amdvlk:

    sudo dnf copr enable tkov/amdvlk
    sudo dnf install amdvlk-vulkan-driver
  2. Install Proton-5.9-GE-8-ST https://github.com/GloriousEggroll/proton-ge-custom#manual

  3. Set launch option in steam

    VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/amd_icd.x86_64.json %command%
  4. Delete any existing compat data for baldurs gate (1086940) from your steamlibrary located somewhere like ~/.local/share/Steam/steamapps/compatdata/1086940

have fun

staalmannen commented 4 years ago

bg3.exe was working (amdvlk, I used proton 5.13, I have now also tested proton 5.11-GE with clean compatdata) but after the last update, it crashes : Runtime error | abnormal program termination

btw: launcher works but looks weird (dotnet48 installed)

jarrard commented 4 years ago

try a new prefix without dotnet, if you launch via bg3.exe it shouldn't be needed.

staalmannen commented 4 years ago

No that was the thing. I did run without dotnet and direct bg3.exe but tried everything to get it working again.

Edit: cleaned the prefix again, but the problem persists. Started with the latest hotfix.

jarrard commented 4 years ago

Sadly I don't have latest version (I was only test driving it, will buy later), so I can't test this issue. However problems can be different between AMD and NVIDIA. (I have 1080TI, but end of next month MAYBE a 6800XT)

staalmannen commented 4 years ago

OK this is weird. I have tried a lot of different Proton versions, including GE ST and MT without success. I downgraded amdvlk from Q4.3 to Q4.1 because there appeared to be a problem based on vulkaninfo. This did NOT help launching from within Steam with different Proton versions (with clean prefixes).

I could however run the game with wine-staging (5.20):

WINEPREFIX=~/.steam/steam/steamapps/compatdata/1086940/pfx wine .steam/steam/steamapps/common/Baldurs\ Gate\ 3/bin/bg3.exe

Edit: and now for some unexplainable reason I get the run time error crash again also with wine-staging. Super weird...

Niedzwiedzw commented 3 years ago

stopped working for me after today's patch...

RecordSteamInterfaceCreation (PID 489816): STEAMPARENTALSETTINGS_INTERFACE_VERSION001 / ParentalSettings
ERROR: ld.so: object '/home/niedzwiedz/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 489866 for game ID 1086940
[200:208:20210225,231230.522:ERROR crashpad_client_win.cc:521] CreateProcess: File not found. (2)
Game update: AppID 1086940 "", ProcID 489866, IP 0.0.0.0:0
RecordSteamInterfaceCreation (PID 489866): SteamUtils009 /
Setting breakpad minidump AppID = 1086940
RecordSteamInterfaceCreation (PID 489866): SteamUser021 / User
SteamInternal_SetMinidumpSteamID:  Caching Steam ID:  76561197981075295 [API loaded no]
RecordSteamInterfaceCreation (PID 489866): STEAMAPPS_INTERFACE_VERSION008 /
RecordSteamInterfaceCreation (PID 489866): SteamUtils009 /
RecordSteamInterfaceCreation (PID 489866): SteamUser020 /
RecordSteamInterfaceCreation (PID 489866): SteamFriends017 /
RecordSteamInterfaceCreation (PID 489866): STEAMUSERSTATS_INTERFACE_VERSION011 /
CAPIJobRequestUserStats - Server response failed 2
Fossilize INFO: Overriding serialization path: "/home/niedzwiedz/.local/share/Steam/steamapps/shadercache/1086940/fozpipelinesv5/steamapprun_pipeline_cache".
ChromaSDKPlugin failed to load!
[200:284:20210225,231234.226:ERROR crashpad_client_win.cc:132] crash server failed to launch, self-terminating
pid 489818 != 489817, skipping destruction (fork without exec?)
Game removed: AppID 1086940 "", ProcID 489866
Game 1086940 created interface STEAMAPPS_INTERFACE_VERSION008 /
Game 1086940 created interface STEAMUSERSTATS_INTERFACE_VERSION011 /
Game 1086940 created interface SteamFriends017 /
Game 1086940 created interface SteamUser020 /
Game 1086940 created interface SteamUser021 / User
Game 1086940 created interface SteamUtils009 /
Game 1086940 method call count for IClientFriends::GetPersonaName : 1
Game 1086940 method call count for IClientUtils::GetAppID : 8
Game 1086940 method call count for IClientUtils::RecordSteamInterfaceCreation : 7
Game 1086940 method call count for IClientUserStats::RequestCurrentStats : 1
Game 1086940 method call count for IClientUser::GetSteamID : 2
Game 1086940 method call count for IClientUser::BIsSubscribedApp : 1
Uploaded AppInterfaceStats to Steam
Exiting app 1086940
No cached sticky mapping in ActivateActionSet.ExecCommandLine: "'/home/niedzwiedz/.local/share/Steam/ubuntu12_32/steam' 'steam://install/1086940'"
ExecuteSteamURL: "steam://install/1086940"
SirBubbles commented 3 years ago

Replying to https://github.com/ValveSoftware/Proton/issues/4243#issuecomment-786264225

Hey, try disabling CChromaEditorLibrary64.dll in winecfg for that prefix. Worked for me. You'll notice that the terminal output mentions looking for the Chroma SDK plugin.

AnzoDK commented 3 years ago

Replying to https://github.com/ValveSoftware/Proton/issues/4243#issuecomment-786419129

Yea seems to work wonders (Thx for help on Twitter) I would love ask Laurian Studios to make a launch option to disable Chroma (and by that not try to load the DLL)

SirBubbles commented 3 years ago

@AnzoDK Glad it worked for you. Someone may have to bring it to the Proton dev's attention or something.

jarrard commented 3 years ago

What does the CChromaEditorLibrary64 plugin actually do anyway? As in what feature are you disabling by not having that?

https://github.com/razerofficial/CSDK_SampleApp

Is it just this for discord communication or something?

AnzoDK commented 3 years ago

What does the CChromaEditorLibrary64 plugin actually do anyway? As in what feature are you disabling by not having that?

https://github.com/razerofficial/CSDK_SampleApp

Is it just this for discord communication or something?

That could be the case, but I think it was for dynamic color respone on chroma keyboard/mouse/accessories

AnzoDK commented 3 years ago

What does the CChromaEditorLibrary64 plugin actually do anyway? As in what feature are you disabling by not having that?

https://github.com/razerofficial/CSDK_SampleApp

Is it just this for discord communication or something?

Based on this tweet - The plugin is definitely for Razer Chroma Integration https://twitter.com/baldursgate3/status/1365013978687152130

jarrard commented 3 years ago

Seems like bloat that isn't needed unless you have that hardware. Something they should just enable via launcher/settings rather then injecting the plugin into memory for everyone!