• nocturne@sopuli.xyzOP
    link
    fedilink
    English
    arrow-up
    3
    ·
    23 days ago

    This is the only game I have installed. It was set up for my wife to play the sims 4.

    • dan1101@lemmy.world
      link
      fedilink
      English
      arrow-up
      7
      ·
      23 days ago

      I would try a couple other games to see how they perform. Plenty of free 3D games to try. You might have some basic misconfiguration.

      • nocturne@slrpnk.net
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 days ago

        I managed to get the fitgirl repack installed through another suggestion, and it ran great… except it was unable to save. I thought maybe because it created the directory on install ands I needed to quit and restart. I could not get the game to launch again. The drive has been wiped with a fresh mint install (different issue, I chose to encrypt the home directory and it was causing issues).

        So the laptop will play games!

    • tal@lemmy.today
      link
      fedilink
      English
      arrow-up
      3
      ·
      23 days ago

      All right. Wanted to sanity-check that 3D acceleration was working at all.

      I haven’t played the game, so I don’t know how it might perform off the top of my head.

      goes to look at game specs

      According to the data sheet, you have an Intel HD 5500, an integrated GPU.

      The game’s system requirement has an Intel GMA X4500 as the minimum, which is an older integrated GPU, though the recommended GPUs are dedicated. It’s hard to know what “minimum” translates to; some games have wildly impractical “minimum” requirements, though I’d hope not that far.

      https://old.reddit.com/r/thesims/comments/5edr3x/the_sims_4_performance_on_intel_hd_620_graphics/

      I myself am using an Intel HD 3000, i5 laptop, and the game more or less runs a tad short of 60 fps on High settings in 720p mode

      That’s an older integrated GPU, about half the score, though I’d guess that you’re running at a higher resolution.

      Okay. I guess I’d probably confirm that the game is using the 3D accelerator, as if that’s not the case, then that’s probably going to be the problem. If it is being used, maybe see what happens with reducing graphics settings. I guess that the simplest way to do that and go through the whole Proton stack is probably to use some HUD that shows the GPU being used.

      Let me install the game myself.

      installs

      Oh, you have to create an EA account to use the game. The hell with that.

      Okay, I won’t do a step-by-step, but in broad terms:

      I’d do whatever it is that got it launching, if you had to do something.

      Then try mangohud and/or DXVK_HUD.

      In the Steam Properties for the game, under General->Launch Options, you’re going to want:

      DXVK_HUD=1 %command%
      

      in the field. If you’re adding any other environment variables besides DXVK_HUD to get it to start successfully — I see some people discussing using them in the ProtonDB page — include those too.

      When it launches, if DXVK works with it, you’ll see text in the upper left corner of the game window. The first line will be the video card being used, if it’s hardware-accelerated. For my system, on a game where DXVK_HUD shows up, I see “Radeon RX 7900 (RADV NAVI31)”.

      That works with some WINE/Proton 3D games, depending upon which 3D subsystem they use.

      For mangohud, for Steam Properties, it’ll be:

      MANGOHUD_CONFIG=full mangohud %command%
      

      That injects itself at various Linux 3D layers. If that works, then in the game window, you’ll see lines reading “RAM”, then “VRAM”, then either “VULKAN” or “OPENGL”, then some version, then the name of your video card. For me, that’s “Radeon RX 7900 XTX”. If I disable hardware acceleration (e.g. if I run LIBGL_ALWAYS_SOFTWARE=1 MANGOHUD_CONFIG=full mangohud glxgears in a terminal, which will run a small 3D test program, glxgears, without hardware acceleration, I’ll see “llvmpipe” there instead).

      Hopefully, one of DXVK_HUD mangohud will work for you, get that text up.

      If it does have something that looks like the name of your integrated GPU, probably "Intel something-or-other*, then it’s using your 3D hardware, but it’s still running slow. In that case, I’d probably:

      • Try flipping all the graphical settings and/or resolution down, see if it runs reasonably, and start flipping them up one at a time to see what’s particularly problematic.

      • Try a different Proton version. It’s also possible to download Proton-GE, (Proton Glorious Eggroll) which is a third-party build of Proton that includes some fixes that Valve doesn’t include in their Steam builds of Proton. This wouldn’t be my first shot for “a game runs slowly”, more “a game doesn’t work correctly”, but it’s a lever that one can at least try pulling. Normally, if this were a solution, I’d expect it to be in ProtonDB.

      • nocturne@slrpnk.net
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        2 days ago

        Firstly, THANK YOU for the lengthy support write up. I have been trying to make time to try some of your suggestions.

        Firstly, I have been trying to run it with PROTON_USE_WINE3D=1 %command% --skip launcher thinking that was one command but having read your comment I realize there are two items in that. So I tried --skip launcher having read a lot of the issues with the game on Linux is the EA launcher. It almost started then I got a crash.

        I also tried launching with mangohud and your command for that added to the skip launcher, that totally crashed Steam. I have been unable to download DXVK_HUD, I tried sudo apt install DXVK_HUD and searched software manager.

        After mangohud crashed stream I had to restart the computer to get steam to open again.

        I went back to PROTON_USE_WINE3D=1 %command% --skip launcher which has worked before, but that is what gave low frame rate, it launched but low frame rate. It also said it was unable to save.

        I am trying different versions of proton ge, none of them are working, mostly giving the error screenshot I added above. And despite the skip launcher it still launches the EA launcher, which sometimes forces me to log in, other times it loads the game, and still others it opens the launcher fully and wants me to launch the game from there.

        Everyone seems to agree, the problem is the EA launcher, and while I have the fitgirl repack, that removes the launcher, I cannot get it to install.

        • tal@lemmy.today
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          2 days ago

          Firstly, I have been trying to run it with PROTON_USE_WINE3D=1 %command% --skip launcher thinking that was one command

          The text that goes into the Steam Launch Options field? Well, that I can explain. So, Steam probably is passing what you specify in that field off to /bin/sh, the basic shell on Unix systems.

          Basically, in bash (or sh, ash, zsh, probably all or nearly all Unixy shells), you can set an environment variable like so:

          $ FOO=bar
          

          That will set the FOO environment variable to the string “bar”. It will only be set for the bash process, won’t be set in commands run from that shell.

          If you want to set the environment variable for commands that you run, then you do this:

          $ export FOO=bar
          $ baz
          

          That will run the baz command and subsequent commands with FOO set to “bar”.

          There’s a shorthand form, where one can, in one line, set FOO to “bar” and export for a single command, and invoke the command baz:

          $ FOO=bar baz
          

          Okay, so far so good.

          Steam’s Launch Options was originally just intended to be used to add extra options to a command. So if you set Launch Options for a game to --fullscreen --debug, then it would run whatever command Steam runs, and add the extra options. Internally, Steam is executing something like:

           all-sorts-of-stuff-that-ends-something-like '/mnt/steam/tal/debian-installation/steamapps/common/Proton - Experimental'/proton waitforexitandrun  '/mnt/steam/tal/debian-installation/steamapps/common/Steel Division 2/SteelDivision2.exe --fullscreen --debug'
          

          You can see where it tacks on --fullscreen --debug.

          But…Steam never provided a way to set environment variables, just adding extra options after the command. So they added a feature where if the Steam Launch Options for a game contains “%command%”, instead of running the regular command and then passing whatever is in that field as options on the end of the command, it runs whatever you have instead. So you can do FOO=bar %command% --fullscreen --debug and it’ll run something like:

          FOO=bar all-sorts-of-stuff-that-ends-something-like '/mnt/steam/tal/debian-installation/steamapps/common/Proton - Experimental'/proton waitforexitandrun  '/mnt/steam/tal/debian-installation/steamapps/common/Steel Division 2/SteelDivision2.exe --fullscreen --debug'
          

          So that’s what’s going on with the %command% and the other text you’re putting in the field. If you tell it to use PROTON_USE_WINE3D=1 %command% --skip launcher, it’s going to be setting the PROTON_USE_WINE3D environment variable to 1, then running the command that it’d normally run for the game, and tacking on --skip launcher to the end of that command.

          PROTON_USE_WINE3D=1…So I tried --skip launcher having read a lot of the issues with the game on Linux is the EA launcher. It almost started then I got a crash.

          Windows has a 3D API called Direct3D. That doesn’t natively exist on Linux, but lots of Windows games make use of it.

          So part of making those games work is translating Direct3D calls into something that Linux does.

          WINE is a software package for Windows compatibility on Linux. Proton is Valve’s version of WINE. WINE has two different ways to translate Direct3D calls into something that Linux can handle.

          One way is to translate Direct3D calls into OpenGL calls. This is an older route, and generally doesn’t perform as well.

          The second is to translate Direct3D calls into Vulkan calls. The subsystem in WINE that does this translation is called DXVK.

          Setting PROTON_USE_WINE3D=1 will force Proton to use the older system.

          DXVK_HUD is built into DXVK, and DXVK is built into Proton already – you won’t need to download anything to use it. However, if you’re setting PROTON_USE_WINE3D=1, then I don’t expect that setting DXVK_HUD will have any effect, since you’re instructing Proton to use the older route rather than the DXVK one, where that HUD is built in, at the translation-from-Direct3D-to-Vulkan layer.

          It looks like mangohud should still work in that case, as it looks like it supports both Vulkan applications and OpenGL applications:

          https://github.com/flightlessmango/MangoHud

          A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more.

          I also tried launching with mangohud and your command for that added to the skip launcher, that totally crashed Steam.

          Hmm. That kind of surprises me, as if it’s just going in the Steam Launch Options field, it shouldn’t be directly affecting Steam, just what Steam is running. I could maybe see that if you were running Steam itself under MangoHUD, or the game crashing, but crashing Steam seems odd.

          thinks

          Okay. I think that diagnosing any 3D rendering issues is going to be easier if you can get one of those two HUDs working. Probably mangohud, if you’re potentially going to be using the PROTON_USE_WINE3D=1 setting, since it should work with that.

          You said that you don’t have any other games on this system. There’s a small “test” program that uses OpenGL called glxgears that shows some spinning gears. There’s also a Vulkan version called vkgears. It’s probably in the mesa-utils package on your distro, so if you don’t have it:

          $ sudo apt install mesa-utils
          

          should fetch it.

          Also, small digression — for future reference, since you were trying to figure out how to install something above, if you want to know what package a given command is in on a Debian-family Linux distribution, there’s a program called apt-file which will let you search all of the repositories for a given file and tell you what package it’s in.

          $ sudo apt install apt-file
          $ sudo apt-file update
          $ apt-file search vkgears
          

          That’ll install apt-file, update its database of what files are in what in packages, and then search for files containing “vkgears” in their name, listing packages that you can download with apt that contain these. Don’t need to do that for this, but it might be helpful if you’re trying to find where programs are in the future.

          Anyway, getting back to The Sims, once that’s installed, if it isn’t already, can you run glxgears under mangohud?

          $ MANGOHUD_CONFIG=full mangohud vkgears 
          $ MANGOHUD_CONFIG=full mangohud glxgears
          

          In both cases, you should see a window with spinning gears. MangoHUD should put some text in that window showing a bunch of performance information about your system, including how loaded your CPU cores and GPU is, the framerate, and so forth.

          There should be some text like “OpenGL 165FPS” (or “Vulkan 165FPS” for vkgears), and beneath that, something like the name of your GPU. If it instead says something like “llvmpipe” there, then it’s using the software renderer, not the GPU. Would just like to rule that out first, so that it’s sure that you’re using hardware acceleration. Also would make sure that mangohud can run on your system without problems.

          • nocturne@slrpnk.net
            link
            fedilink
            English
            arrow-up
            1
            ·
            3 hours ago

            I have it running and saving finally. I installed through lutris. From another thread I was going support:

            I installed to /home/user_name/Games/the-sims-4/drive_c/users/windows_user/Games/The Sims 4/Game/Bin/TS4_x64.exe and it is saving, it is launching. I will let you know how it is doing once my wife has played a bit. Thank you very much for helping me with this.

            I am going to dig into what you wrote because it looks like there is a lot of amazingly useful things in it. I really appreciate your help with this. And my wife is currently making a sim.

              • nocturne@slrpnk.net
                link
                fedilink
                English
                arrow-up
                1
                ·
                2 hours ago

                Text from my wife just now:

                The Sims keeps locking up. I appreciate that you went above and beyond, but it’s done. Stick a fork in it.