I have tried multiple different versions of proton, ge proton, I have tried the EA launcher, and a few black magic incantations. It either runs at 4fps or will not load at all. I have tried everything i can find on protondb that is not an ancient report.
I am running Linux Mint Cinnamon on a Lenovo ThinkPad X1 Carbon with an Intel i5. https://support.lenovo.com/us/en/solutions/pd100509-overview-for-thinkpad-x1-carbon-type-20bs-20bt
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.
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
(orsh
,ash
,zsh
, probably all or nearly all Unixy shells), you can set an environment variable like so: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:
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 commandbaz
: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: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: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.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
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 calledvkgears
. It’s probably in themesa-utils
package on your distro, so if you don’t have it: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.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 withapt
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?
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 thatmangohud
can run on your system without problems.I have it running and saving finally. I installed through lutris. From another thread I was going support:
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.
Glad to hear it’s working!
Text from my wife just now: