Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrading GE-Proton Breaks Proton Fixes #82

Open
CreeperofDoom opened this issue Jun 17, 2024 · 12 comments
Open

Upgrading GE-Proton Breaks Proton Fixes #82

CreeperofDoom opened this issue Jun 17, 2024 · 12 comments

Comments

@CreeperofDoom
Copy link
Contributor

CreeperofDoom commented Jun 17, 2024

Describe the bug
Upgrading GE-Proton Breaks Proton Fixes, The Example title here is Riddle Joker on Steam which has a ProtonFix available resolving WMP Video Playback

To Reproduce
Run the Selected title on a previous GE Proton version (9-6) Make sure The WMP Fix Works and try playing a WMP Video File. if it does install a newer version of GE-Proton (9-7) Run the affected game and try to Play a WMP Video file, it will not work as if the Fix isn’t installed.

Expected behavior
The WMP Playback, If i upgrade GE-Proton Versions and set the title to use that new one the Fix does not work.

Logs
None Available…

Operating System:

  • Distro and Version: Steam OS 3.6
  • Proton Version: Proton 9

Game: Has ProtonFixes that i kinda supplied:

  • Game Name: Riddle Joker
  • Game ID: 1277930

Additional Information
Game is installed on the Steam Deck SSD, Compatdata is on SSD. This can be resolved by clearing the Compatdata, but will arise again when upgrading GE-Proton versions and making the affected title run using it. The Exact same files are in place when upgrading, if i move the Compatdata to another directory (EX: Downloads) and let it generate a new one with fixes it has the exact amount of files. If i move the old one from Downloads into the new one in Compatdata and replace all i can open it and it will work like it should, thats useless but it proves nothing changes in that folder.

@CreeperofDoom
Copy link
Contributor Author

The same exact problem will happen with other titles using this same Fix i kinda provided and Engine that uses WMP Video Playback

@R1kaB3rN
Copy link
Member

R1kaB3rN commented Jun 18, 2024

Do you mind taking the time to reference a log of the wine traceback after upgrading the wine prefix? If it's too much of a hassle, you don't have to do this on your Steam Deck as I don't expect the OS to be related because this sounds like a breakage after upgrading the wine prefix which should be expected. For this case using the wmp11 verb, I would expect for you to see Permission Denied errors for some DLLs that survived the wine prefix upgrade which may be the cause.

Also, currently, neither GE-Proton or protonfixes doesn't have any logic in place to reapply fixes after upgrades and just hopes that things will just work afterwards. This I think should change, especially when changing across different Proton flavors (e.g., UMU-Proton -> GE-Proton), but it wouldn't help after applying the wmp11 verb since the files are read only.

@CreeperofDoom
Copy link
Contributor Author

deck_log.txt
assert_20240630230029_34.txt
Not sure if i did it right. Convert the assert file from txt into a .dmp file? (had to do that in order to send it) i modified the selected python file with the guide on how to get this dump. 1277930.py

@GloriousEggroll
Copy link
Member

this is working on GE-Proton9-9. unable to reproduce issue here.

@CreeperofDoom
Copy link
Contributor Author

this is working on GE-Proton9-9. unable to reproduce issue here.

Well it still happens for me. Last week i installed GE-Proton 9-9. Upgraded the affected title from GE-Proton 9-7 to 9-9 and upon opening it and trying to play a Video File which playback is fixed by 1277930.py. It doesn’t play, just like how it doesn’t play is the fix isn’t applied. No file is changed in the Affected game’s CompatData folder so i don’t know the cause, All the Windows Media Player files remain in there after the upgrade.

@CreeperofDoom
Copy link
Contributor Author


EB958730-27C7-4B82-B556-F831E7EB4080

Upgrading from GE-Proton 9-9 to 9-10 causes this instead of it just skipping Video Playback, The title i tested was Riddle Joker which has a Protonfix to fix Video Playback

@GloriousEggroll
Copy link
Member

That's not related to proton-ge or protonfixes. Valve upstream added new winegstreamer code:

https://github.com/ValveSoftware/wine/commits/bleeding-edge

Closing this issue as there is no longer an issue with protonfixes.

@GloriousEggroll
Copy link
Member

I can check this part:

Well it still happens for me. Last week i installed GE-Proton 9-9. Upgraded the affected title from GE-Proton 9-7 to 9-9 and upon opening it and trying to play a Video File which playback is fixed by 1277930.py. It doesn’t play, just like how it doesn’t play is the fix isn’t applied.

I'll report back with logs from 9-9. The winegstreamer changes affect 9-10, but protonfixes should work in 9-9

@GloriousEggroll
Copy link
Member

GloriousEggroll commented Jul 8, 2024

yeah can confirm it's working here with 9-9:

ProtonFixes[901717] INFO: Running protonfixes
ProtonFixes[901717] INFO: Running checks
ProtonFixes[901717] INFO: All checks successful
ProtonFixes[901717] INFO: Using global defaults for "Riddle Joker" (1277930)
ProtonFixes[901717] INFO: Using global protonfix for "Riddle Joker" (1277930)
ProtonFixes[901717] INFO: Checking if winetricks quartz is installed
ProtonFixes[901717] INFO: Installing winetricks quartz
ProtonFixes[901717] INFO: Using winetricks verb quartz

ProtonFixes[901717] INFO: Checking if winetricks quartz is installed
ProtonFixes[901717] INFO: Winetricks complete
ProtonFixes[901717] INFO: Checking if winetricks wmp11 is installed
ProtonFixes[901717] INFO: Installing winetricks wmp11
ProtonFixes[901717] INFO: Using winetricks verb wmp11

ProtonFixes[901717] INFO: Checking if winetricks wmp11 is installed
ProtonFixes[901717] INFO: Winetricks complete
ProtonFixes[901717] INFO: Checking if winetricks qasf is installed
ProtonFixes[901717] INFO: Installing winetricks qasf
ProtonFixes[901717] INFO: Using winetricks verb qasf

ProtonFixes[901717] INFO: Checking if winetricks qasf is installed
ProtonFixes[901717] INFO: Winetricks complete

winetricks.log in the prefix checks out also:

quartz
wsh57
gdiplus
wmp11
qasf

game also opens and runs fine here.

is there a specific video I should check?

@CreeperofDoom
Copy link
Contributor Author

yeah can confirm it's working here with 9-9:

ProtonFixes[901717] INFO: Running protonfixes ProtonFixes[901717] INFO: Running checks ProtonFixes[901717] INFO: All checks successful ProtonFixes[901717] INFO: Using global defaults for "Riddle Joker" (1277930) ProtonFixes[901717] INFO: Using global protonfix for "Riddle Joker" (1277930) ProtonFixes[901717] INFO: Checking if winetricks quartz is installed ProtonFixes[901717] INFO: Installing winetricks quartz ProtonFixes[901717] INFO: Using winetricks verb quartz

ProtonFixes[901717] INFO: Checking if winetricks quartz is installed ProtonFixes[901717] INFO: Winetricks complete ProtonFixes[901717] INFO: Checking if winetricks wmp11 is installed ProtonFixes[901717] INFO: Installing winetricks wmp11 ProtonFixes[901717] INFO: Using winetricks verb wmp11

ProtonFixes[901717] INFO: Checking if winetricks wmp11 is installed ProtonFixes[901717] INFO: Winetricks complete ProtonFixes[901717] INFO: Checking if winetricks qasf is installed ProtonFixes[901717] INFO: Installing winetricks qasf ProtonFixes[901717] INFO: Using winetricks verb qasf

ProtonFixes[901717] INFO: Checking if winetricks qasf is installed ProtonFixes[901717] INFO: Winetricks complete

winetricks.log in the prefix checks out also:

quartz wsh57 gdiplus wmp11 qasf

game also opens and runs fine here.

is there a specific video I should check?

The issue after upgrading applies to every available Video File. After upgrading its either the Error Box i showed above or the Video file not playing at all (It not playing also happens without the fix) i will try this again for GE Proton 9-11 and see if it happens again...

@GloriousEggroll
Copy link
Member

yeah can confirm it's working here with 9-9:
ProtonFixes[901717] INFO: Running protonfixes ProtonFixes[901717] INFO: Running checks ProtonFixes[901717] INFO: All checks successful ProtonFixes[901717] INFO: Using global defaults for "Riddle Joker" (1277930) ProtonFixes[901717] INFO: Using global protonfix for "Riddle Joker" (1277930) ProtonFixes[901717] INFO: Checking if winetricks quartz is installed ProtonFixes[901717] INFO: Installing winetricks quartz ProtonFixes[901717] INFO: Using winetricks verb quartz
ProtonFixes[901717] INFO: Checking if winetricks quartz is installed ProtonFixes[901717] INFO: Winetricks complete ProtonFixes[901717] INFO: Checking if winetricks wmp11 is installed ProtonFixes[901717] INFO: Installing winetricks wmp11 ProtonFixes[901717] INFO: Using winetricks verb wmp11
ProtonFixes[901717] INFO: Checking if winetricks wmp11 is installed ProtonFixes[901717] INFO: Winetricks complete ProtonFixes[901717] INFO: Checking if winetricks qasf is installed ProtonFixes[901717] INFO: Installing winetricks qasf ProtonFixes[901717] INFO: Using winetricks verb qasf
ProtonFixes[901717] INFO: Checking if winetricks qasf is installed ProtonFixes[901717] INFO: Winetricks complete
winetricks.log in the prefix checks out also:
quartz wsh57 gdiplus wmp11 qasf
game also opens and runs fine here.
is there a specific video I should check?

The issue after upgrading applies to every available Video File. After upgrading its either the Error Box i showed above or the Video file not playing at all (It not playing also happens without the fix) i will try this again for GE Proton 9-11 and see if it happens again...

Have you tried making a clean prefix?

Also protonfixes will not apply if they have already been applied once to the prefix and are already logged in the prefix's winetricks.log. I would try creating a clean prefix.

@layercak3
Copy link

I can reproduce that upgrading a prefix breaks wmp11's mfplat. In KiriKiri titles the script error in the picture is shown.
Notable lines during prefix upgrade:

wine: Call from 00006FFFFFC1CE87 to unimplemented function mfplat.dll.MFTRegister, aborting
wine: Call from 7BC4B308 to unimplemented function mfplat.dll.MFTRegister, aborting

During video playback attempt:

wine: Call from 7BC4B308 to unimplemented function mfplat.dll.MFCreateVideoSampleAllocatorEx, aborting

The prefix upgrade runs into catching ValueError (https://github.com/GloriousEggroll/proton-ge-custom/blob/b0962b24ca002e43c7cf647219ed183ddadd5f60/proton#L739), however I actually run into this code path on untweaked prefixes anyway.

I just reconfigure from a fresh prefix instead of doing prefix upgrades.

BTW, a few but not all of the Yuzusoft gamefixes added a few months ago are no longer necessary since GE-Proton9-11 which fixed some winegstreamer 'Cannot decode caps audio/x-wma' errors. Personally, I'm not using the protonfixes module and prefer to handle game fixes myself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants