Does this not working any more? Ive tried installing these protontricks but what seemed like a bit of time it then again asked me over and over what i wanted to install so when i went back they were all chk already but nothing ran the game after installing these. Did steam update and break this?
I wanted to share a potentially useful finding regarding the DLC recognition issue in STORY OF SEASONS: Pioneers of Olive Town (AppID 1392960).
On my Steam Deck using GE-Proton10-21, the base game launched successfully, but my purchased and installed DLCs were not recognized in the game's DLC menu.
After investigating the game's IL2CPP code and testing different approaches, we developed a version-specific, reversible four-byte workaround for GameAssembly.dll.
With the workaround installed:
Restoring the original DLL caused the DLC recognition issue to return. Reapplying the workaround restored DLC functionality.
Steam's file-integrity verification also restored the original DLL, after which the workaround could be reapplied successfully.
The workaround changes four known machine-code bytes to bypass a DLC file-hash verification result.
It does not modify Steam DLC ownership checks.
During the investigation, the Proton log also contained repeated warnings:
steamclient:alloc_callback_wtou len 36 is too small for callback 1023
Analysis suggested a possible connection between Steamworks GetFileDetails, FileDetailsResult_t (callback 1023), and the game's DLC file verification.
This is only a hypothesis. We have not conclusively demonstrated that callback marshaling is the root cause.
Original GameAssembly.dll SHA-256 for the tested build:
e5ae3bee96823ef8d770e9c9f2fd946042fc6193f5c797b6d17239e7a0cf3f34
We have published the experimental workaround, including a graphical Steam Deck installer, version verification, backups, and restoration functionality:
https://github.com/KarinaNoName/PoOT-DLC-Fix
The installer rejects unknown game versions. No copyrighted game binaries or DLC files are distributed.
Please note: The workaround has only been validated on one Steam Deck with one specific game build. It bypasses the verification result rather than repairing the underlying issue, and could mask genuine DLC file corruption.
A proper Proton-side fix would be preferable.
Would it be possible to investigate the handling of Steamworks callback 1023 and GetFileDetails under Proton?
I hope these findings are useful for further investigation!
Manually patching the 4 bytes as said above does get the dlc working fine, very interested in how you figured out and patched this!
Thanks for testing! Glad to hear it works for you too!
We started by confirming that Steam had installed the purchased DLC files correctly, even though the game wasn't recognizing them.
We then investigated the game's IL2CPP metadata and native code, tracing the DLC verification process through SteamDlcManager, VerifyDlcInfo, and VerifyFileHash.
That led us to suspect the file-hash verification was preventing the DLCs from loading. We tried bypassing the verification result with a small patch in GameAssembly.dll:
At offset 0x90C321, we replaced 0F B6 56 40 (movzx edx, byte ptr [rsi+0x40]) with 31 D2 FE C2 (xor edx, edx; inc dl), forcing the value to 1.
And that worked! The DLCs appeared and their content became accessible. We then restored the original DLL to confirm the DLCs disappeared again, and reapplied the patch to verify the result was reproducible.
We also noticed Proton logging a callback 1023 size warning, potentially related to Steamworks GetFileDetails. We're still investigating whether that's the underlying cause, though.
Two things, out of the mentioned components above, only d3dcompiler_47 should be enough for the game to work. As for the options being grayed out in the dlc screen, that should be solved in proton bleeding edge https://github.com/ValveSoftware/Proton/wiki/Proton-Versions#proton-bleeding-edge but it'd be good if players could confirm that dlc items actually appear while in game with this proton version.
7. Two things, out of the mentioned components above, only d3dcompiler_47 should be enough for the game to work. As for the options being grayed out in the dlc screen, that should be solved in proton bleeding edge https://github.com/ValveSoftware/Proton/wiki/Proton-Versions#proton-bleeding-edge but it'd be good if players could confirm that dlc items actually appear while in game with this proton version.
Indeed, commit https://github.com/ValveSoftware/Proton/commit/a0c7261f244ebb961259ecc8e25b7d89f039eb19 has solved it.
Does it no longer need 43? At the time I made the fix it refused to boot on my laptop without 43, wonder if things have changed.
Compatibility Report
System Information
I confirm:
steam-1392960.log.gz
Symptoms
In order to start game, protontricks install of the following is required:
Once the game is running, everything appears to work well except that DLC is not loaded. The main menu has a DLC menu that shows no DLC present, despite it being selected in Steam. Other users on protondb and the steam forums (including SteamDeck players) report the same issues.