Skip to content

libScePlayGo: since #5494, High on Life (PPSA15388) aborts at startup on chunk ID 1; a setting to answer unlisted ids, fix branch ready #6205

Closed

Description

@Tamalero

Since #5494, a dump with neither playgo-chunk.dat nor playgo-scenario.json throws on the first nonzero chunk id. High on Life is one of those dumps. On main it now aborts during startup, before its first logo:

terminate called after throwing an instance of 'std::runtime_error'
  what():  scePlayGo: sce_sys/playgo-chunk.dat and sce_sys/playgo-scenario.json are missing, so chunk ID 1 cannot be checked

Before #5494 it got SCE_PLAYGO_ERROR_BAD_CHUNK_ID and ran, with the "damaged save" symptom from #5487. With #5494's earlier opt-in, APS5_PLAYGO_ASSUME_UNLISTED_CHUNKS_INSTALLED=1, it loaded its saves and played. The merged version dropped that opt-in, so there's no way to run this dump on main now.

I understand the stop is deliberate, since an incomplete dump can't say which chunks exist. The two known titles need opposite answers, though:

So no single default fits both. That's why my branch keeps the stop and lets the user answer for their dump.

Title: High on Life (PPSA15388), dump without PlayGo files.
Where it stops: at startup, on main 8cd937e29. Linux, RTX 4090. 1 of 1 runs.

Fix

Branch: https://github.com/Tamalero/AnyPS5/tree/fix/playgo-unlisted-chunks-setting (one commit on 760ffa683).

GuestPlayGo runs three more layouts in their own processes: installed, absent, and an invalid value. The existing no-file checks now also require the setting's name in the message.

Details and tests

Tested and written by Claude (AI assistant) on a contributor's machine.

Activity

  1. xXPBSXx commented on Oct 15, 2026

    @xXPBSXx
    Contributor

    Another dump in this class: Kena: Bridge of Spirits (PPSA01746, UE4). Its sce_sys has no playgo-chunk.dat and no playgo-scenario.json (Games\PPSA01746\sce_sys: about, ext_info.dat, icon0/pic0/pic1/pic2, keystone, nptitle.dat, param.json, pfs-version.dat, snd0.at9, trophy2, uds), and on main it stops at startup on the throw this issue describes:

    what():  scePlayGo: sce_sys/playgo-chunk.dat and sce_sys/playgo-scenario.json are missing, so chunk ID 1 cannot be checked
    

    (PPSA01746_rX/run_054952.err line 103, followed by FATAL: abort() (SIGABRT) at line 104; main a077a88df5bc4ec26a3049aa721ac37ec8f02305 + #5778 e9c98900e7c6c466381a3d99ed8d558b6d9f053f.)

    With a local change that makes IsKnownChunk return false instead of throwing (so the chunk id is answered with SCE_PLAYGO_ERROR_BAD_CHUNK_ID, the behaviour before #5494; not part of any PR), the same tree ran the full 300 s requested without any exception: PPSA01746_rX/run_060509.err has 114 lines, no what(), no FATAL. I did not test the other answer (reporting the chunks as installed), so I do not know whether Kena also runs with it; and I did not check a picture. So Kena is, like Sifu, a title that is not stopped by BAD_CHUNK_ID, which is consistent with a setting that lets the user choose the answer per dump.

    Tested. Windows 10 (19045), MinGW-w64 GCC 15.2, Release, NVIDIA GeForce RTX 4080 SUPER. Merge tree 5cba9b0321cdfd3453d73c4eada70caa26c8c30b = main a077a88df5bc4ec26a3049aa721ac37ec8f02305 + #5778, plus the local one-line change above; ninja -j 8 libs exit 0 (script times 06:03:15 to 06:04:40); run_title.ps1, one game at a time; script times 06:05:08 to 06:16:33 (includes the wait for the run mutex), 300 s requested, one run. Title executable PPSA01746_rX/app.exe, a hardlink of PPSA01746_rH/app.exe; relinker commit and command not recorded in my notes. Without the PlayGo change (tree without the local edit): run_054952.err, script times 05:49:50 to 05:59:55, the throw above. Not tested: Linux, other GPUs, the "installed" answer, a picture.

    AI-assisted (Claude Code).

  2. johnmaia commented on Oct 15, 2026

    @johnmaia
    Contributor

    Another one: Disney Epic Mickey: Rebrushed (PPSA15657, UE4). Its sce_sys has no PlayGo file either (about, disc_info.dat, icon0/pic0/pic1/pic2, keystone, nptitle.dat, param.json, pfs-version.dat, trophy2, uds; no playgo-chunkdefs.xml at the root). On main 0029e62 (Windows 11, RTX 4080) it stops at startup, before the first frame:

    what():  scePlayGo: sce_sys/playgo-chunk.dat and sce_sys/playgo-scenario.json are missing, so chunk ID 1 cannot be checked
    

    Before #5494, with SCE_PLAYGO_ERROR_BAD_CHUNK_ID as the answer, this title booted, loaded its save and played its first level on Linux and Windows across many runs (for example main d8888df on 10-14). So for this title the pre-#5494 default was enough. I haven't logged which chunk ids it asks for.

    AI-assisted: yes (Claude Code)

  3. johnmaia commented on Oct 15, 2026

    @johnmaia
    Contributor

    Follow-up for PPSA15657: with #6236 and APS5_PLAYGO_UNLISTED_CHUNKS=absent, Epic Mickey: Rebrushed runs again on main 0029e62 (Windows, RTX 4080): title, save load and about 5 minutes in its first level. absent (SCE_PLAYGO_ERROR_BAD_CHUNK_ID, the pre-#5494 answer) is enough for this title. Details on #6236.

    AI-assisted: yes (Claude Code)

  4. billythemenace2 commented on Oct 15, 2026

    @billythemenace2

    Sackboy: A Big Adventure (PPSA01289, UE4, no PlayGo files) is another title for this list: it needs absent, and installed makes Unreal run out of memory at startup. Details and logs are on #6236.

    AI-assisted (Claude Code).

  5. MarcZX10 commented on Oct 17, 2026

    @MarcZX10
    Contributor

    The configurable behavior described here is already on current main through #6236. I verified that libScePlayGo/Export.cpp reads APS5_PLAYGO_UNLISTED_CHUNKS, and GuestPlayGo.cpp covers the installed, absent, and invalid-value cases. The open issue appears resolved by that merge; please close it if you consider the title reports addressed.

  6. oneandonlydean commented on Oct 18, 2026

    @oneandonlydean
    Collaborator

    Fixed by #6236 (e751dd2): APS5_PLAYGO_UNLISTED_CHUNKS lets the user answer unlisted chunks. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions