uberhalit / SekiroFpsUnlockAndMore

A small utility to remove frame rate limit, add custom resolutions (widescreen support), increase FOV, borderless window, display and log stats and various game modifications for Sekiro
MIT License
378 stars 31 forks source link

Any advice on getting this app to work in Linux? #42

Open candroid-man opened 2 years ago

candroid-man commented 2 years ago

I'm currently using Arch Linux, and using Proton to play Sekiro. I ran the .exe with Wine, and it works fine, but it is unable to see the game since it is sandboxed, and I am unable to manually select a path to the game. Any advice?

Screenshot: sekirounlocker

amadejkastelic commented 2 years ago

You need to launch it inside the same prefix as Sekiro.

Pednick commented 2 years ago

You need to launch it inside the same prefix as Sekiro.

I tried the same prefix, but I could be doing something wrong.

WINEPREFIX=~/.steam/steam/steamapps/compatdata/814380/pfx

cd ~/.steam/steam/steamapps/compatdata/814380/pfx

~/.steam/steam/steamapps/common/Proton\ '- Experimental'/files/bin/wine64 SekiroFpsUnlockAndMore_v1.2.5.2.exe

It starts up but still says waiting for game. My apologizes to amadejkastelic if I sounded blunt, it was not my intentions. I edited this post to sound some what nicer.

ASmyrnyi commented 2 years ago

same problem

amadejkastelic commented 2 years ago

I can share the script I'm using to launch it in the same prefix after work. SekiroFpsUnlockAndMore does not need updating, it should work fine with version 1.06 (at least it did for me).

ASmyrnyi commented 2 years ago

Sure, thanks. Also, it would be helpful to get some guide/steps on how to get it working properly if that's not hard for you

Pednick commented 2 years ago

I also realized it's not the version yesterday when I aquired a 1.05 version of the game, it still doesn't work and yes please I would also like to look at that script and also thank you in advance.

amadejkastelic commented 2 years ago

This is the script I'm using to launch SekiroFpsUnlockAndMore:

#!/bin/sh

# Application path
APP_PATH="$(dirname "${BASH_SOURCE[0]}")"
cd "$APP_PATH"

# Executable file
APP_EXEC="$APP_PATH/.exe"

# Steam / IDs
export SteamAppId="814380"
export SteamGameId=""

# Steam / Client path
export STEAM_COMPAT_CLIENT_INSTALL_PATH="$HOME/.steam/steam"

# Steam / Apps path
STEAM_APPS_PATH="/mnt/hdd1/SteamLibrary/steamapps"

# Steam / Compat data path
export STEAM_COMPAT_DATA_PATH="$STEAM_APPS_PATH/compatdata/$SteamAppId"

# Proton / Path
PROTON_PATH="/usr/share/steam/compatibilitytools.d/proton-ge-custom"

# Proton / Executable script
PROTON_EXEC="$PROTON_PATH/proton"

export LIBGL_ALWAYS_SOFTWARE=1
export FREETYPE_PROPERTIES="truetype:interpreter-version=35"

MANGOHUD=0 python "$PROTON_EXEC" run "SekiroFpsUnlockAndMore_v1.2.5.2.exe"

You need to correct all paths and have .net45 installed in the prefix. This post also helped me fix the app changing to a black window iirc: https://www.reddit.com/r/linux4noobs/comments/firqs9/getting_windows_wpf_applications_to_run_with_wine/ And this getting dotnet installed: https://www.reddit.com/r/linux_gaming/comments/p33vzo/space_engineers_net_issue_solved/

Pednick commented 2 years ago

Will definately try this, thank you.

ASmyrnyi commented 2 years ago

yup, thanks for the guide!

Pednick commented 2 years ago

Ok so I'm getting a couple of errors: ./Sekiroscript: 4: Bad substitution ./Sekiroscript: 32: python: not found

I have the app in my home directory, I'm not a script writer, which line should I change to show where my app is located?

amadejkastelic commented 2 years ago

You need python installed and in your path. Eh, you can actually remove next lines:

# Application path
APP_PATH="$(dirname "${BASH_SOURCE[0]}")"
cd "$APP_PATH"

# Executable file
APP_EXEC="$APP_PATH/.exe"

You can specify the path on the last line (replacing SekiroFpsUnlockAndMore_v1.2.5.2.exe with the absolute path, if needed).

Pednick commented 2 years ago

I have python installed and will remove those two lines you indicated and will specify the path. Will let you know.

Pednick commented 2 years ago

Still has the error: ./Sekiroscript: 25: python: not found

I know I have python installed through linux, do I need to install it through wine?

amadejkastelic commented 2 years ago

run which python

Pednick commented 2 years ago

python3.10

amadejkastelic commented 2 years ago

Not sure then, maybe try specifying the full python path...

Pednick commented 2 years ago

Ok will try.

Pednick commented 2 years ago

What I jusy noticed typing python in the command prompt it says: Command 'python' not found, did you mean: command 'python3' from deb python3 command 'python' from deb python-is-python3 But if I type python3 it starts python:

$ python3 Python 3.10.4 (main, Apr 2 2022, 09:04:19) [GCC 11.2.0] on linux Type "help", "copyright", "credits" or "license" for more information.

So do I need to change something in the script so that it uses python3 instead?

amadejkastelic commented 2 years ago

Yeah, just replace python with python3 (last line).

ASmyrnyi commented 2 years ago

could you please tell where should I run the script?

Pednick commented 2 years ago

The app started but says waiting for game, here's the output:

./Sekiroscript esync: up and running. wine: RLIMIT_NICE is <= 20, unable to use setpriority safely [S_API] SteamAPI_Init(): SteamAPI_IsSteamRunning() did not locate a running instance of Steam. [S_API FAIL] SteamAPI_Init() failed

Do I start steam first and start the game and then run the script?

Pednick commented 2 years ago

I should say I did change this:

Proton / Path

PROTON_PATH="/.steam/steam/steamapps/common/Proton - Experimental"

Does that matter?

Pednick commented 2 years ago

Should I get proton-ge-custom?

amadejkastelic commented 2 years ago

I should say I did change this:

Proton / Path

PROTON_PATH="/.steam/steam/steamapps/common/Proton - Experimental"

Does that matter?

It needs to point to the same proton you're using for Sekiro.

amadejkastelic commented 2 years ago

could you please tell where should I run the script?

Doesn't matter as long as you configure all the paths correctly.

Pednick commented 2 years ago

I should say I did change this:

Proton / Path

PROTON_PATH="/.steam/steam/steamapps/common/Proton - Experimental" Does that matter?

It needs to point to the same proton you're using for Sekiro.

Proton - Experimental is the one I'm using for Sekiro.

Pednick commented 2 years ago

Just wondering is the script suppose to start both the app and the game?

amadejkastelic commented 2 years ago

Just wondering is the script suppose to start both the app and the game?

Only the app. Launch the game 1st through steam, then run the script.

Pednick commented 2 years ago

Just wondering is the script suppose to start both the app and the game?

Only the app. Launch the game 1st through steam, then run the script.

Ok will try to figure this out, sorry for all the questions.

Pednick commented 2 years ago

Ok the app starts but at the bottom where it should be green, it says no valid game process found. I'm not going to bother you anymore, Ill try to figure this out.

amadejkastelic commented 2 years ago

Ok the app starts but at the bottom where it should be green, it says no valid game process found. I'm not going to bother you anymore, Ill try to figure this out.

Did you change the STEAM_APPS_PATH variable to reflect the location of your steam library containing Sekiro?

Pednick commented 2 years ago

Ok the app starts but at the bottom where it should be green, it says no valid game process found. I'm not going to bother you anymore, Ill try to figure this out.

Did you change the STEAM_APPS_PATH variable to reflect the location of your steam library containing Sekiro?

Ok the app starts but at the bottom where it should be green, it says no valid game process found. I'm not going to bother you anymore, Ill try to figure this out.

Did you change the STEAM_APPS_PATH variable to reflect the location of your steam library containing Sekiro?

yep:

Steam / Apps path

STEAM_APPS_PATH="/.steam/steam/steamapps"

amadejkastelic commented 2 years ago

Ok the app starts but at the bottom where it should be green, it says no valid game process found. I'm not going to bother you anymore, Ill try to figure this out.

Did you change the STEAM_APPS_PATH variable to reflect the location of your steam library containing Sekiro?

Ok the app starts but at the bottom where it should be green, it says no valid game process found. I'm not going to bother you anymore, Ill try to figure this out.

Did you change the STEAM_APPS_PATH variable to reflect the location of your steam library containing Sekiro?

yep:

Steam / Apps path

STEAM_APPS_PATH="/.steam/steam/steamapps"

Add these two lines before the last one and paste the output:

echo $PROTON_EXEC
echo $STEAM_COMPAT_DATA_PATH
Pednick commented 2 years ago
echo $PROTON_EXEC
echo $STEAM_COMPAT_DATA_PATH
echo $PROTON_EXEC
echo $STEAM_COMPAT_DATA_PATH
echo $PROTON_EXEC
echo $STEAM_COMPAT_DATA_PATH

Ok the app starts but at the bottom where it should be green, it says no valid game process found. I'm not going to bother you anymore, Ill try to figure this out.

Did you change the STEAM_APPS_PATH variable to reflect the location of your steam library containing Sekiro?

Ok the app starts but at the bottom where it should be green, it says no valid game process found. I'm not going to bother you anymore, Ill try to figure this out.

Did you change the STEAM_APPS_PATH variable to reflect the location of your steam library containing Sekiro?

yep:

Steam / Apps path

STEAM_APPS_PATH="/.steam/steam/steamapps"

Add these two lines before the last one and paste the output:

echo $PROTON_EXEC
echo $STEAM_COMPAT_DATA_PATH

Setting breakpad minidump AppID = 814380 Steam_SetMinidumpSteamID: Caching Steam ID: 76561199089436684 [API loaded no] Fossilize INFO: Overriding serialization path: "/.steam/debian-installation/steamapps/shadercache/814380/fozpipelinesv6/steamapprun_pipeline_cache". /.steam/steam/steamapps/common/Proton - Experimental/proton /.steam/steam/steamapps/compatdata/814380

amadejkastelic commented 2 years ago

Looks fine. So you're running the game and then the script?

Pednick commented 2 years ago

Yeah but app starts up but doesn't initialize, says waiting for game. Don't worry about it though, I'll do without. Thanks

extract commented 1 year ago

Check out https://github.com/Lahvuun/sekirofpsunlock, it works flawlessly for linux

kiwec commented 1 year ago

Game process not found, also using @amadejkastelic's script:

#!/bin/sh

export SteamAppId="814380"
export SteamGameId=""
export STEAM_COMPAT_CLIENT_INSTALL_PATH="$HOME/.steam/steam"
STEAM_APPS_PATH="$STEAM_COMPAT_CLIENT_INSTALL_PATH/steamapps"
export STEAM_COMPAT_DATA_PATH="$STEAM_APPS_PATH/compatdata/$SteamAppId"
PROTON_PATH="$STEAM_COMPAT_CLIENT_INSTALL_PATH/steamapps/common/Proton - Experimental"
PROTON_EXEC="$PROTON_PATH/proton"

export LIBGL_ALWAYS_SOFTWARE=1
export FREETYPE_PROPERTIES="truetype:interpreter-version=35"
export WINEPREFIX="$STEAM_COMPAT_DATA_PATH/pfx"

echo $PROTON_EXEC
echo $STEAM_COMPAT_DATA_PATH

MANGOHUD=0 python "$PROTON_EXEC" run "SekiroFpsUnlockAndMore_v1.2.5.2.exe"

I also added a line to export WINEPREFIX, didn't help.

Paths

/home/kiwec/.steam/steam/steamapps/common/Proton - Experimental/proton
/home/kiwec/.steam/steam/steamapps/compatdata/814380
jabuxas commented 9 months ago

any updates on 2024?

fixitty commented 6 months ago

any updates on 2024?

+1, this issue has no solution yet?

I'm using lutris + wine, GOG installation of sekiro. I put this patcher exe in the same wine prefix, and launch it by selecting the 'run EXE inside Wine prefix', the patcher runs but I can't launch the game at this point -- only one or the other. Now, what do?

L1ttleFlyyy commented 1 month ago

For anyone in 2024 came to this thread to find a solution on linux:

If you wanna resolution/FPS unlock feature

The most recommended way is to use the native linux version Lahvuun/sekirofpsunlock

If you wanna the misc features (I really like the no death penalty + auto loot)

Then What you really need is

STL is the best way to launch another exe within the same prefix/container, it sets up all the env vars for you so that you can forget about all the scripting hassle. I've personally tried all the hacks mentioned above and also tried things like protontricks/winetricks. Eventually STL is the only one that works perfectly. I was able to use the trainer with "fork custom command" option, on my ROG Ally running Bazzite OS.

It is worth mention though the author of STL is complaining about SteamOS being not friendly when it comes to custom exe launching, they are considering dropping the SteamOS support in the future which is unfortunate. But at least for now we have a solution for Sekiro on both SteamOS and other Linux desktops.