Proton icon indicating copy to clipboard operation
Proton copied to clipboard

Pickup Basketball VR (appid 1475200)

Open Patola opened this issue 4 years ago • 6 comments

Compatibility Report

  • Name of the game with compatibility issues: Pickup Basketball VR
  • Steam AppID of the game: 1475200

System Information

  • GPU: AMD Radeon RX 6800 XT
  • Driver/LLVM version: Mesa 21.1.4
  • Kernel version: 5.13.1-178-tkg-bmq
  • Link to full system information report as Gist: https://gist.github.com/Patola/a69ef95b1b481d585b42f7796cfb0204
  • Proton version: 6.3-5, Experimental

I confirm:

  • [X] that I haven't found an existing compatibility report for this game.
  • [X] that I have checked whether there are updates for my system available.

Symptoms

This game suffered a regression. Previously, it would work out of the box with Proton. By running it and reading steam-1475200.log, we saw that it needed api-ms-win-core-console-l1-2-0.dll. @EsdrasTarsis obtained the stubfile offering the functions for this DLL from a wine commit from Piotr Caban and recompiled in a build that I tested, but then another error appeared for library api-ms-win-core-kernel32-legacy-l1-1-5.dll. He also made a second build and the missing library this time would be api-ms-win-core-console-l3-2-0.dll. This one, however, is undocumented, so he had to go through some hoops and jumps to get the functions it provided, but he also made a third stub and a third build, which then worked.

This bug report thus will provide the solution to this problem. @EsdrasTarsis will upload his patch.

Reproduction

Try and start the game with regular Proton 6.3-5 or Proton Experimental. It won't start.

No steam log on this case because the issue already has a solution.

Patola avatar Jul 14 '21 21:07 Patola

Hello @Patola, can you clarify if you think the regression was introduced by a game update or a Proton update? If it's a Proton update, then what's the most recent known good version of Proton that works with this game?

kisak-valve avatar Jul 14 '21 22:07 kisak-valve

Hello @Patola, can you clarify if you think the regression was introduced by a game update or a Proton update? If it's a Proton update, then what's the most recent known good version of Proton that works with this game?

It was a game update that added dependency on these DLLs. As I had the game uninstalled for a few weeks, I don't know exactly the timeframe and which specific update did that.

Patola avatar Jul 14 '21 22:07 Patola

I am uploading the three patches: 0000 -- original Piotr Caban wine patch, taken straight from the link I provided (ms-win-core-console-l1-2-0) 0001 -- Esdras Tarsis' patch 1 for ms-win-core-console-l3-2-0 0002 -- Esdras Tarsis' patch 2 for ms-win-core-kernel32-legacy-l1-1-5

All the patches are explicitly named. For the sake of preserving signatures and credits, they are provided as is, and will need the parameter -F3 on the patch utility (fuzz 3) or even -F4 to be applied to the wine tree (in proton or otherwise).

After I finish compiling I will also provide my own proton build while this fix is not integrated.

pickup-basketball-3-patches.tar.gz

Patola avatar Jul 15 '21 08:07 Patola

Ok, my proton build is up, I took the care to test it in a clean prefix before uploading: https://github.com/Patola/wine/releases/tag/6.3-pickupbasketball.

@kisak-valve I am not sure how these patches could get to proton, can you guide me? I am not the author; one author is Piotr Caban from the wine mailing list; the other author is @EsdrasTarsis. That's why I did not create the PR myself.

Patola avatar Jul 15 '21 13:07 Patola

I think the ideal scenario would be to get the patches landed in upstream wine first, then you can make a pull request with the backported commits, a note to what it fixes, and the upstream commit IDs. That said, a Proton dev might read this issue report and handle the rest of the process on their own.

kisak-valve avatar Jul 15 '21 13:07 kisak-valve

Esdras Tarsis' patches have been submitted to upstream: Patch 1 (api-ms-win-core-console-l3-2-0) Patch 2 (api-ms-win-core-kernel32-legacy-l1-1-5)

Patola avatar Jul 16 '21 08:07 Patola