To preface, THCRAP actually does manage to patch and launch the Touhou executables when I use wine-vanilla or wine-staging 9.0. However, in Sway (Wayland), both of these builds launch the games in tiny 640x480 windows, which when viewed in fullscreen, are stretched irregularly; not preserving their 4:3 aspect ratio. This led me to find out about "wine-ge-custom", a build for non-Steam games that comes with an fshack patch that fixes this. Unfortunately, when I try to use the "lutris-GE-Proton8-26-x86_64" binary in the official repo to:
- start up a Touhou game directly (THCRAP still used to patch it, updates are simply disabled) or
- start up THCRAP and its updater window, and then click on the "Run the game" button,
I am met with this error log. The part of interest is everything from "Unhandled exception 0x80000004..." onwards. For the first case in the above list I get this printed first:
Code: Select all
wine: Unhandled exception 0x80000004 in thread 138 at address 0045D748 (thread 0138), starting debugger...Code: Select all
wine: Unhandled page fault on write access to F807E6A0 at address 0045D746 (thread 02b4), starting debugger...Code: Select all
Unhandled exception: page fault on read access to 0x46ffa068 in wow64 32-bit code (0x0045d746).Here's also the logs for THCRAP when run with wine-vanilla and wine-ge separately. You can see that while wine-vanilla finishes successfully with a "Removing plugins" message, wine-ge stops short at the last "Initializing" section, before it can resolve the files marked with "(Data)", "(Text)", "(PNG)", etc.
Out of curiosity, I decided to run some (dumb) tests. If I go on a Linux Mint live environment, install native Lutris (for its dependencies), mount my local drive, and then run the wine-ge binary from the directory I extracted/unzipped back in Gentoo, it all works. Even if I log out there and then enter a Cinnamon Wayland session, it works. In fact, it's here where I found out that while wine-vanilla and wine-staging automatically fullscreen the games with the correct aspect ratio in X11, they continue to launch them in windowed mode in Wayland. That could hint to some workaround with Xwayland... Anyway, I got the same results with an EndeavourOS live environment (dependencies from partly installed wine-ge-custom package). All in all, that specific wine-ge directory seems to be uncorrupted/untampered.
Back in Gentoo, the binary can run any other game, even the Touhou ones directly (no THCRAP involved). I can only assume that there's some very specific USE flag, package, or kernel option that may be missing or hindering wine-ge-run THCRAP's ability to patch the games. Does anyone have any clues on what it might be? Maybe something is bound to change if I compile wine-ge?
kernel .config
emerge --info
I've also looked into Gamescope as an alternate means to preserve window aspect ratio. It just gave me this vague error:
Code: Select all
gamescope: children shut down!
gamescope: ../gamescope-3.14.18/src/backend.cpp:60: virtual gamescope::CBaseBackendFb::~CBaseBackendFb(): Assertion `!HasLiveReferences()' failed.