EDIT: The issue was caused by my SSD being formatted in exFAT, which doesn’t support symlinks. I backed up my SSD & reformatted it to btrfs, and then I could install .NET without hassle & the game runs!

Original Post:

I’m having an issue running this game on linux, every time I click play in Steam I get the following popup:

“you must install .NET desktop runtime to run this application”

Clicking “yes” takes me to download a Windows .exe which of course can’t run on linux. I manually installed the .NET runtime following linux instructions here: https://learn.microsoft.com/en-us/dotnet/core/install/linux-debian but the game still gives me this error.

Other things I’ve tried:

  • Reinstalling BG3
  • Completely deleting every file from steamapps/common for BG3 & reinstalling
  • Reinstalling Proton
  • Skipping the launcher
  • Tried with proton experimental, 9, 8, 7

My launch args are STEAM_COMPAT_DATA_PATH=/home/user/.local/share/Steam/steamapps/compatdata gamemoderun %command% --skip-launcher

On protondb everybody else seems to be running the game fine, but I don’t understand how to get past this error.

  • mox@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    0
    ·
    12 days ago

    I don’t know if --skip-launcher is a valid command line option. If it is, I expect it just tells the launcher to immediately launch the game without showing a launcher screen. Of course, if the launcher requires a version of .Net that isn’t set up correctly, then it can’t run at all, and therefore can’t even get as far as noticing the command line option. So I wouldn’t expect this to work.

    Instead, read through the bug report that I linked earlier. Look for the comments that explain how to make Steam run bg3_dx11.exe or bg3.exe instead of running the launcher at all. (I don’t remember the exact paths, so I can’t just write it here.)

    (Note: GitHub often hides some comments until you click the link to reveal hidden ones, so just using Control+F in your browser to find these comments might not work until you reveal them.)

    • Jozzo@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      12 days ago

      I think you’ve just pointed me in the direction of a solution…

      The comment you’re referring to seems to be this one:

      mv Launcher Launcherbak
      ln -s bin Launcher
      ln -s ./bin/bg3_dx11.exe ./bin/LariLauncher.exe
      cp ./Launcherbak/*.dll ./bin
      

      creating a symlink to trick steam into thinking it’s running the launcher when it actually runs the game. BUT … my SSD is formatted as exFAT, which doesn’t support symlinks, so I can’t do this.

      So I’m guessing proton is trying to create a symlink at pfx/dosdevices/c when it installs .NET, but fails, which is also probably why everyone else seems to have a breezy time with it. Not sure why my other games haven’t run into this though… maybe they haven’t needed to install anything there?

      I will report back after reformatting my entire SSD lol

      • mox@lemmy.sdf.org
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        12 days ago

        That symlink approach is one way to run the game executable directly, but it’s a little heavy handed, and likely to be reverted whenever the game gets updates or you verify the game files.

        Sometimes you can put something like /path/to/game/executable.exe %command% in the Steam launch options to accomplish the same thing without symlinks. I suggest reading more of those comments to see if anyone had success with this approach.

        It might still be a good idea to replace exFAT, though. Symlinks are often useful. :)

        • Jozzo@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          0
          ·
          12 days ago

          Reporting back!

          Reformatted with btrfs, steam now does this when I open the game (didn’t before):

          anddd it works! Can’t believe this whole headache was just exfat all along lol!

          Thank you for your help :D