2.5 KiB
2.5 KiB
| 1 | # Game profile of Patrick's Parabox (Switch, update 1.0.1 = v65536). Plays on the Mac and on the iPhone | |||||
|---|---|---|---|---|---|---|
| 2 | # Format: see dm/games/README.md | |||||
| 3 | # Unity 2020.3.30f1 (IL2CPP), SDK 13.3.7: the shaders are Unity's built-in Shader objects in Data/Resources (unity default resources, unity_builtin_extra), which carry no type trees and no bundle | |||||
| 4 | # lends one; unityfs.py has Unity 2020.3's Shader layout (KNOWN_TREES, the tree of Fire Emblem Engage's bundles). The game's only font, Jost, falls back to the shared fonts for Japanese, Korean | |||||
| 5 | # and Chinese, which Unity hands to FreeType as TTFs (hle_sdk16.c font_skip) | |||||
| 6 | # Controller only (stick or D-pad to move, A to confirm): it stays docked (1920x1080) with the default 2D pad layout | |||||
| 7 | # ---- Identity ---- | |||||
| 8 | title_id | 0100E44016C22000 | ||||
| 9 | program_id | 0100E44016C22000 | ||||
| 10 | # ---- App ---- | |||||
| 11 | # Game name: only a label for profile listings and the Mac window title; the iOS app name is the game name in the base NSP, and the bundle ID comes from the base game title ID (build_ipa.sh / NSP script) | |||||
| 12 | name | Patrick's Parabox | ||||
| 13 | ipa | PatricksParabox.ipa | ||||
| 14 | app_category | public.app-category.puzzle-games | ||||
| 15 | # ---- Versions ---- | |||||
| 16 | build | v65536 | 1.0.1 | main=86171cbde77fb44989fbc97905ffc8f4 | subsdk0=525feff80957be306b46b74636256582 | sdk=9c73fb73f529fedc9ffefa28246711cc |
| 17 | package | v65536 | ||||
| 18 | shader_versions | v65536 | ||||
| 19 | # ---- Files ---- | |||||
| 20 | # load order as on Horizon: main, subsdk*, sdk (subsdk0 = NintendoSDK_movie) | |||||
| 21 | modules | main subsdk0 sdk | ||||
| 22 | romfs_marker | Data/globalgamemanagers | ||||
| 23 | zip_store | .assets:.bank:.dat:.json:.ress:.metallib | ||||
| 24 | # ---- Memory ---- | |||||
| 25 | # The NPDM declares 16 MB of system resource, so IsVirtualAddressMemoryEnabled is true: nninitStartup (main+0x1cd010) hands application pool − used memory to StandardAllocator as virtual address memory | |||||
| 26 | # and never calls SetMemoryHeapSize. The node area cut for this sdk build (dm/tools/sdk_patches.py) shrinks the AddressRegionManager's node area to 62 MB, as for Ace Attorney Investigations Collection and | |||||
| 27 | # Brain Memory Training Academy, whose layout this is: a 1 GB pool and the 5 GB block (256 MB in front + 4.375 GB alias region + 256 MB stack region + 128 MB heap region) | |||||
| 28 | sys_resource | 0x1000000 | ||||
| 29 | mem_reserve | 0x140000000 | ||||
| 30 | mem_alias | 0x118000000 | ||||
| 31 | mem_stack | 0x10000000 | ||||
| 32 | app_pool | 0x40000000 | ||||
| 33 | # ---- Shader split (shader_split.py; Unity Shader objects, read by unityfs.py) ---- | |||||
| 34 | # engine built-ins (Resources/: unity default resources, unity_builtin_extra) go to engine, the player's serialized files to data | |||||
| 35 | shader_groups | /Resources/=engine /Data/=data | ||||
| 36 | shader_note | Patrick's Parabox shaders |