So recently, for reasons unknown to me, the old trick of
WINEDLLOVERRIDES="steam_api64=n,b" %command%
has not been working, at least with SteamOS 3.5 on the Steam Deck.
So here is the fix if you’ve been having the problem of “SteamAPI_Init() failed” in your logs, particularly when using something like the Goldberg emulator that relies on implementing a replacement for steam_api64.dll. This should work for other cracks like TENOKE’s which use the same method.
1.Navigate to the folder of the Proton version that you want to use for the game (it defaults here on the Steam Deck):
/home/deck/.local/share/Steam/steamapps/common/(THE PROTON VERSION THAT YOU USE)/user_settings.sample.py
2.Rename that file to:
user_settings.py
3.Within that file, erase everything and add one single line:
user_settings = {"WINEDLLOVERRIDES": "steam_api64=n,b"}
4.Save the file and check to see if your games are working through Steam.
I don’t know why this works over WINEDLLOVERRIDES in the launch options - it really shouldn’t. But I’ve found that it does.
Let me know your experience.