mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-22 00:22:57 -05:00
A dump is fully installed, so scePlayGoGetSupportedOptionalChunk and scePlayGoGetOptionalChunk report every optional chunk (language pack) like scePlayGoGetLanguageMask reports every language. They returned an empty bitmask, so PPSA01748 hid every text language its playgo-scenario.json lists as a chunk language, English included. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2.1 KiB
2.1 KiB
libScePlayGo technical debt
Unknown function info
- libScePlayGo - the chunk set comes from
playgo-chunkdefs.xml(every listed chunk plus chunks 0 through the default chunk), otherwise fromsce_sys/playgo-chunk.dat, whoseplgxheader is read as holding the chunk count as a 16-bit value at offset 0x0A and ids 0 to count - 1 are taken as valid. The field was identified on four dumps, where exactly that many 0x20-byte entries follow from offset 0x100 (RIDE 4 PPSA01599: 35, Persona 5 Royal PPSA05110: 25, LEGO Horizon Adventures PPSA14632 and Kena PPSA01802: 1); the rest of the format is not decoded and ids are assumed to be contiguous. Every listed chunk is reported as installed (LOCAL_FAST). Without either file, a package withsce_sys/playgo-scenario.json(PPSA01748, whose dump lists no chunks) accepts every chunk id as installed whilescePlayGoGetChunkIdlists only chunk 0. A package with noplaygo-*file insce_sys(PPSA03001, PPSA03490 and PPSA01285 here) accepts chunk 0; querying any other id throws with a message naming the missingplaygo-chunk.datandplaygo-scenario.json, since the incomplete dump cannot establish whether that id exists. Asce_systhat holds otherplaygo-*files (playgo-ficm.dat,playgo-hash-table.dat) withoutplaygo-chunk.datorplaygo-scenario.json, or aplaygo-chunk.datwithout aplgxheader and a nonzero count, throws naming the file, because no such dump is known. These answers are unverified on a console, as is the console's answer for an id outside a package's chunk table. - libScePlayGo -
scePlayGoGetSupportedOptionalChunkandscePlayGoGetOptionalChunkreport every bit set for anytype, i.e. every optional chunk (language pack) supported and installed, likescePlayGoGetLanguageMask. The bit layout and the values oftypeare not known; PPSA01748 calls both with type 0 and hides every text language listed inplaygo-scenario.jsonchunkSupportedLanguageswhen the bitmask is 0. The console's answer for a package that ships no optional chunks is unverified.