Comments (14)
Helo @Hate9 ,
Thanks for reporting this.
I might need your help to figure this out as I tried some things here and could not reproduce the error.
because I did a quick try with Proton Experimental and GE 7.2, with cmd, exe and giberish as commands on a different game.
If you don't mind trying a few things for me and sharing the results here:
What proton version are you using ?
Can you try to run just protonhax run 211420
?
Also, could you please try your command again without quotes, and using your terminal "path prediction" to form the path (the spaces will change to something like Dark\ Souls
?
Cheers,
from protonhax.
running with slashes instead of quotes gives the same error
and protonhax run 211420 just brings up the help menu
and I'm using 5.13-6 right now, but if I test with ge 7.2, it does appear to work
unfortunately, the game does not work with that version (I had to switch to testing a different game again to even test it)
from protonhax.
Thanks for the reply.
I cannot run more tests right now, but I will do it later today (I need to spin an endeavour linux to be sure).
On the meanwhile, could you try running the other game with 5.13 and check if it work ?
ProtonDB shows that DS:prepare to die might work with Proton 7.0-1 and 6.3-8.
If you like to debug it yourself:
Go to /usr/bin/protonhax
And add this on the second line of the file
set -x
exec >/tmp/protonhax.$$.log 2>&1
It will save protonhax debug log into /tmp/protonhax.*.log
And you can share it here.
What protonhax tries to do is to find the environment, the proton prefix, and pass the desired command.
Something like this
/usr/bin/envload /run/user/1000/protonhax/211430/env '/home/hate9/.local/share/Steam/steamapps/common/Proton 5.13/proton' run what-needs-to-run-here.exe
Once you get this command, you can try to run it straight away on your terminal. If more error occurs we can get more details from it.
from protonhax.
Hi @Hate9 ,
I could not replicate the problem yet, my suspicion is that the third argument for your proton installation is not being generated correctly on your case for some reason.
Could you please follow the steps I suggest before ?
I expect that you will find on your /tmp/protonhax.*.log
something like this:
A B C run D
/usr/bin/envload /run/user/1000/protonhax/211420/env '/home/mabel/.local/share/Steam/steamapps/common/Proton 5.13/proton' run what-needs-to-run-here.exe
C is the path to your Proton installation.
I need you to validate if C exists in your computer, if not, what would be the correct path.
While the game is running you can try run on the terminal:
/usr/bin/envload /run/user/1000/protonhax/211420/env correct_C run cmd
D can be either your exe or cmd.
By knowing the difference between the C protonhax is generating to the C in your machine, I might be able to fix it, if that is the problem.
from protonhax.
+ phd=/run/user/1000/protonhax
+ [[ 3 -lt 1 ]]
+ c=run
+ shift
+ [[ run == \i\n\i\t ]]
+ [[ run == \l\s ]]
+ [[ run == \r\u\n ]]
+ [[ 2 -lt 1 ]]
+ [[ ! -d /run/user/1000/protonhax ]]
+ [[ ! -d /run/user/1000/protonhax/211420 ]]
+ SteamAppId=211420
+ shift
+ [[ run == \r\u\n ]]
+ [[ 1 -lt 1 ]]
++ dirname /usr/bin/protonhax
++ cat /run/user/1000/protonhax/211420/exe
+ /usr/bin/envload /run/user/1000/protonhax/211420/env waitforexitandrun run '/mnt/Terrabyteous/Steam/steamapps/common/Dark Souls Prepare to Die Edition/DSCM.exe'
Failed to exec!
2 No such file or directory
from protonhax.
Ok, so we found the problem.
C is coming as waitforexitandrun
, instead of the proton location.
This is a problem on the /usr/bin/protonhax
line 29. printf "%s" "${@: -3:1}" > $phd/$SteamAppId/exe
Could you please add a new line above it(28) with the following
echo "$@"
Open your game, then find the logfile associated with init, over there you will find the echo line.
Every time you run something on proton, steam runs something like this:
`'/opt/SteamLibrary/steamapps/common/SteamLinuxRuntime_soldier'/_v2-entry-point --verb=waitforexitandrun -- '/home/person/.local/share/Steam/steamapps/common/Proton 5.13'/proton waitforexitandrun '/home/person/.local/share/Steam/steamapps/common/Game/Game.exe``
What the line 29 is doing, is looking for 3 arguments from the end. (It used to be the first, but we had to change with the advent of the soldier + 5.13)
It seems that on your case steam is calling something else at the end, and if we figure it out, I might be able to solve it, or at least to reproduce the problem.
from protonhax.
ohhhh ok, so I think I've figured out what's wrong
the issue is that I need to run the game with an additional startup flag (in this case, -phantom-break-on
, for a specific mod I'm using), and protonhax must be reading that as one of the 3 arguments. I assume this means that the script generally has trouble with additional launch arguments?
anyway, the full log (including mod launch stuff that inexplicably got logged too) is as follows:
+ phd=/run/user/1000/protonhax
+ [[ 12 -lt 1 ]]
+ c=init
+ shift
+ [[ init == \i\n\i\t ]]
+ mkdir -p /run/user/1000/protonhax/211420
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
+ echo /mnt/Terrabyteous/Steam/ubuntu12_32/reaper SteamLaunch AppId=211420 -- /mnt/Terrabyteous/Steam/steamapps/common/SteamLinuxRuntime_soldier/_v2-entry-point --verb=waitforexitandrun -- '/mnt/Terrabyteous/Steam/steamapps/common/Proton 6.3/proton' waitforexitandrun '/mnt/Terrabyteous/Steam/steamapps/common/Dark Souls Prepare to Die Edition/DATA/DARKSOULS.exe' -phantom-break-on
/mnt/Terrabyteous/Steam/ubuntu12_32/reaper SteamLaunch AppId=211420 -- /mnt/Terrabyteous/Steam/steamapps/common/SteamLinuxRuntime_soldier/_v2-entry-point --verb=waitforexitandrun -- /mnt/Terrabyteous/Steam/steamapps/common/Proton 6.3/proton waitforexitandrun /mnt/Terrabyteous/Steam/steamapps/common/Dark Souls Prepare to Die Edition/DATA/DARKSOULS.exe -phantom-break-on
+ printf %s waitforexitandrun
+ printf %s /mnt/Terrabyteous/Steam/steamapps/compatdata/211420/pfx
+ env -0
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
+ /mnt/Terrabyteous/Steam/ubuntu12_32/reaper SteamLaunch AppId=211420 -- /mnt/Terrabyteous/Steam/steamapps/common/SteamLinuxRuntime_soldier/_v2-entry-point --verb=waitforexitandrun -- '/mnt/Terrabyteous/Steam/steamapps/common/Proton 6.3/proton' waitforexitandrun '/mnt/Terrabyteous/Steam/steamapps/common/Dark Souls Prepare to Die Edition/DATA/DARKSOULS.exe' -phantom-break-on
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 7897 != 7894, skipping destruction (fork without exec?)
fsync: up and running.
wine: RLIMIT_NICE is <= 20, unable to use setpriority safely
Setting breakpad minidump AppID = 211420
Steam_SetMinidumpSteamID: Caching Steam ID: 76561198049122706 [API loaded no]
Fossilize INFO: Overriding serialization path: "/mnt/Terrabyteous/Steam/steamapps/shadercache/211420/fozpipelinesv6/steamapprun_pipeline_cache".
-------------DARK SOULS OVERHAUL TEST BUILD-------------
+-------------------------------+
| Dark Souls Overhaul |
| Quality of Life Preview Build |
+-------------------------------+
[Overhaul Mod] Loading startup preferences...
[Overhaul Mod] Setting game memory allocation size to 14286848 (0xda0000)...
[Overhaul Mod] Changing game version number from 0x2e to 0x5e...
[Overhaul Mod] Starting anti-cheat protections:
Enabling NpcGuard...
Enabling BossGuard...
Enabling TeleBackstabProtect...
[Overhaul Mod] Unrestricting effectIDs sent over network.
[Overhaul Mod] Initializing XInput hook...
[Overhaul Mod] Loading user preferences...
Ladder fix enabled (EXPERIMENTAL)
Display multiplayer node count = disabled
Display IGT = disabled
Weapon durability bars = disabled
Enabling multi-tributes (EXPERIMENTAL)
Found custom game config file definition:C:\users\steamuser\Documents\NBGI\darksouls\MODSOULS.sl2
[Overhaul Mod] Loading keybinds...
Registered NextSaveFile keybind: Right arrow (0x27)
Registered PrevSaveFile keybind: Left arrow (0x25)
[Overhaul Mod] Initializing pointers...
[Overhaul Mod] Increasing multiplayer phantom limit...
[Overhaul Mod] Disabling low FPS disconnect...
Setting breakpad minidump AppID = 211420
Steam_SetMinidumpSteamID: Caching Steam ID: 76561198049122706 [API loaded no]
pid 8055 != 8054, skipping destruction (fork without exec?)
+ ec=0
+ rm -r /run/user/1000/protonhax/211420
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
+ exit 0
my full launch arguments (which I definitely should've thought to mention before) are as follows:
PROTON_USE_WINED3D9=1 WINEDLLOVERRIDES="dinput8,d3d9,DS_Overhaul,d3d9_Mod,steam_api=n,b" protonhax init %COMMAND% -phantom-break-on
from protonhax.
I see. Thanks for sharing that. Everything you put after %COMMAND% would interfere with protonhax and I can reproduce it here.
I will work on a better way to get the active proton environment, in the meanwhile if you need to run DSCM2 you can do on terminal by running:
/usr/bin/envload /run/user/1000/protonhax/211420/env '/mnt/Terrabyteous/Steam/steamapps/common/Proton 5.13/proton' run what-needs-to-run-here.exe
I will update it here once I get it working properly and deploy it on the AUR.
from protonhax.
I'm glad to see we know what the issue is, and I look forward to seeing an update to fix it.
However, the command you sent didn't actually work for me for some reason:
/usr/bin/envload /run/user/1000/protonhax/211420/env '/mnt/Terrabyteous/Steam/steamapps/common/Proton 5.13/proton' '/mnt/Terrabyteous/Steam/steamapps/common/Dark Souls Prepare to Die Edition/DSCM.exe'
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/mnt/Terrabyteous/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Proton: Need a verb.
from protonhax.
Maybe I gave you the wrong proton path, are you running using the 5.13 ?
Also, I think I fixed it.
I need to figure out how to update the version on AUR when I push to master on github.
For now, could you please rebuild the protonhax from AUR ? It might be working.
from protonhax.
if you look on the aur page (https://aur.archlinux.org/packages/protonhax), you can see the last updated date.
I'll just replace the script on my machine with the new one
from protonhax.
If you rebuild it will get the newest from github. I need to fix my environment to update the aur package, but it will work the same.
from protonhax.
The AUR package was updated (I need to figure out if there is a way to get it done automatically).
Please let me know if it works.
from protonhax.
I will close this issue for now, please reopen if the problem persists.
from protonhax.
Related Issues (10)
- Protonhax loads program but not properly on 5.13 HOT 18
- Add install instructions HOT 1
- envload vs declare: removing dependency on C code/compiler HOT 5
- tcc: No such file or directory HOT 2
- XDG_RUNTIME_DIR instead of hardcoded /run/user/$UID HOT 4
- Launching other executables FIRST HOT 3
- protonhax is no longer in the AUR HOT 2
- Run as admin HOT 1
- Steam as flatpak HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from protonhax.