2.8 KiB
2.8 KiB
| 1 | # Game profile of ROMANCE OF THE THREE KINGDOMS 8 REMAKE (Switch, update v851968 = 1.1.3, with its four DLC). Plays on the Mac and on the iPhone | |||||
|---|---|---|---|---|---|---|
| 2 | # Format: see dm/games/README.md | |||||
| 3 | # Koei Tecmo's KTGL engine on NVN, SDK 17.5.3 (Ace Attorney Investigations Collection's SDK). Modules main + subsdk0 (NintendoSDK_movie: the WebM logo and story movies) + sdk. | |||||
| 4 | # RomFS: a newer RDB than Hyrule Warriors: Age of Calamity's: 0002/root.rdb and system.rdb (indexes, with .rdx beside them) over 296 .fdata files named by KTID (a PDRK header, then | |||||
| 5 | # IDRK entries) and 0002/data/*.file, 12.6 GB; each entry is LZ4 or zlib in 16 KB chunks (shader_split.py idrk_data). Scenarios, messages and movies sit in loose folders beside it. | |||||
| 6 | # The update is a multi-program patch: beside the game's patch it carries a whole second program (title ID 0100C2A01A730001, 34 MB, its own control data), which main starts with | |||||
| 7 | # nn::oe::ExecuteProgram(1) (main+0xa31910); the host runs only program 0 (nx_extract picks program index 0's NCAs) | |||||
| 8 | # ---- Identity ---- | |||||
| 9 | title_id | 0100C2A01A730000 | ||||
| 10 | program_id | 0100C2A01A730000 | ||||
| 11 | # ---- App ---- | |||||
| 12 | # 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) | |||||
| 13 | name | ROMANCE OF THE THREE KINGDOMS 8 REMAKE | ||||
| 14 | ipa | RomanceOfTheThreeKingdoms8Remake.ipa | ||||
| 15 | app_category | public.app-category.strategy-games | ||||
| 16 | # Menus and maps by D-pad or left stick; the dialogue boxes' auto and log buttons are the right stick and R3 (the 3D layout's). The game reads no touch screen (main imports no | |||||
| 17 | # GetTouchScreenState), only a USB mouse, which the host does not provide | |||||
| 18 | pad_layout | full | ||||
| 19 | # ---- Versions ---- | |||||
| 20 | build | v851968 | 1.1.3 | main=3c737e2d67d57d03ced6019f17f6e47d | subsdk0=2f9e7f4ec017bb00e214af7c2fd70f4b | sdk=311deab1f062b504f3d646a49ddcd4e8 |
| 21 | package | v851968 | ||||
| 22 | shader_versions | v851968 | ||||
| 23 | # ---- Files ---- | |||||
| 24 | # load order as on Horizon: main, subsdk*, sdk (subsdk0 = NintendoSDK_movie) | |||||
| 25 | modules | main subsdk0 sdk | ||||
| 26 | romfs_marker | 0002/root.rdb | ||||
| 27 | zip_store | .fdata:.file:.rdb:.webm:.metallib | ||||
| 28 | # ---- Memory ---- | |||||
| 29 | # The NPDM declares no system resource (META +0x14 = 0): nninitStartup sets a heap of the pool − used memory (3.13 GB here). The 4 GB block of the other games without virtual | |||||
| 30 | # address memory (256 MB in front + 256 MB alias region + 256 MB stack region + 3.25 GB heap region) | |||||
| 31 | mem_reserve | 0x100000000 | ||||
| 32 | mem_alias | 0x10000000 | ||||
| 33 | mem_stack | 0x10000000 | ||||
| 34 | app_pool | 0xCD500000 | ||||
| 35 | sys_resource | 0x0 | ||||
| 36 | # The rewritten modules take more than the default 64 MB of used memory (Age of Calamity: 66.6 MB → 72 MB), which SetHeapSize checks the request against | |||||
| 37 | mem_used | 0x5000000 | ||||
| 38 | # ---- Shader split (shader_split.py; KTGL G2S and _DOK containers in the RDB entries, GLSLC outputs in main) ---- | |||||
| 39 | shader_groups | /0002/=rdb | ||||
| 40 | shader_note | ROMANCE OF THE THREE KINGDOMS 8 REMAKE shaders |