A | B | C | |
---|---|---|---|
1 | Hello! This is sort of a replacement/upgrade of my old ROMFS documentation, which was hosted on my website for a bit. It was sorta jank, so I moved it here. If I get something wrong (which I do), comments are enabled, so feel free to make changes. Glad to see other people want to explore and mod this game! (Note: This sheet is not finished, and is primarily focused on ripping/modding- If you'd like to see more in-depth details on game mechanics and info, see one of abarax's spreadsheets linked below.) | ||
2 | SPOILER WARNING: Please play the full game before continuing! Thanks | ||
3 | Resources/Thanks | ||
4 | This spreadsheet, Astral Extractor, Platinum Extractor, and AC2B/B2AC were created by Cabalex, using contributions from abarax, @Luca_BotW, @RTA_kure, and everyone else in the r/AstralChain and Astral Chain Speedrunning Discord servers. Astral Chain and its files are property of Platinum Games and Nintendo. | ||
5 | Platinum Extractor | A web-based extractor tool for editing files from various Platinum Games games, written in Svelte. Still a work in progress, so expect bugs and missing features for now. | |
6 | Astral Extractor | A site I made back in 2021 to extract, view, and repack Astral Chain game files. It's a bit buggy now, but it still contains many crucial tools for messing around with the game romfs. | |
7 | AC Quest Editor | A rewrite of the quest editor from Astral Extractor that's much more stable and supports more features. You don't even have to have the files dumped to view the game's quests, so check it out if you're interested! | |
8 | Astral Chain Enemy Appearances | Abarax's [insanely helpful] spreadsheet on where and how each enemy appears in the game. | |
9 | Astral Chain v1 Datamine stuff | Abarax's other really helpful spreadsheet, documenting most of the CSV files in core/. | |
10 | Astral Chain Damage Ratios | Another sheet from Abarax, documenting damage done from the player, legion, etc. | |
11 | Astral Chain track order | A detailed spreadsheet by Kobob_KC documenting internal track names in the game. | |
12 | ASTRAL CHAIN: A guide to superclimb | A guide by muratyu_201 on how to perform the infamous Superclimb glitch effectively. | |
13 | Bayonetta Tools | Some tools by Kerilk that had already reverse engineered a lot of the game's files (THANK YOU!!) | |
14 | Modding NieR:Automata - A Complete Introduction | Useful NieR Automata guide which mostly also applies to AstralChain2Blender / Blender2AstralChain. Check out niermodding.com too! | |
15 | Astral Chain Rom Hacking Bible | Masagrator's initial thread about files in Astral Chain. Also has a 60 FPS mod lower in the thread, but it might be outdated. | |
16 | Astral Chain Save Editing | HylianLZ's thread about how some of the save data works. | |
17 | Astral Chain package | Another thread by demonslayerx8 documenting some files. | |
18 | Getting Started Modding | ||
19 | You'll need a homebrewed switch or a way to get the files, and you'll probably want an emulator too (for faster testing and 60 fps mod goodness). I only reccomend Yuzu for modding, as Ryujinx's method of LayeredFS mods makes Astral Chain significantly slower to mod. This is because Ryujinx only seems to detect .PKZ files as input for LayeredFS mods, whereas the Switch and Yuzu detect standalone .DAT/.DTT in the folders that matter (e.g. em/, pl/, quest/, etc). | ||
20 | For model modding, see AstralChain2Blender/Blender2AstralChain. For everything else, use the Astral Extractor. Then, you can create a LayeredFS mod, which basically a recreation of the folder structure of the game's RomFS, e.g. A mod replacing the Sword Legion would have the folder structure of <mod name>/romfs/em/, where em would contain em00a0.dat and em00a0.dtt. | ||
21 | Profit! | ||
22 | If something broke along the way or the game refused to load something: For models, try asking on the NieR Modding Discord server, as they can help with most of the issues you'll face (aside from textures). For the Astral Extractor, open an issue on its GitHub page. | ||
23 | Terminology | ||
24 | QUEST | Case or area data. Can hold enemy data, NPC data, run game tasks and logic, display subtitles, etc. | |
25 | EVENT | Cutscene. Can be skippable or nonskippable; split into "cuts" that are each a set amount of frames long. Major events are in the event/ folder, where non-major events are held in each area's phX/ folder. | |
26 | SubSeq | Subtitle sequence (used in events / quests) | |
27 | SUBSPACE | Astral Plane. | |
28 | ev0XXX/ev5XXX | Events starting with a 0 are for the male main character. Events starting with a 5 are for the female main character. | |
29 | "xxx0" | In Text/ only: Refers to a string of text not played during an event. | |
30 | q0XXX | A quest for hidden or interactable things within an area, like golden slimes, shop vendors, and axe walls. | |
31 | q1XXX | A quest that is responsible for a certain state of an area and the triggers that go alongside it, e.g. Zone 33 in File 01, File 02, File 07, File 08... | |
32 | q2XXX | A quest that represents a red case. | |
33 | q3XXX | A quest that represents a blue case. | |
34 | q6XXX | A quest that represents a red case in the Astral Plane. | |
35 | qcXXX | A quest that is responsible for certain internal logic, and training areas. | |
36 | pXXX numbers | You'll see these numbers all over the game; they're the IDs for the environments. Environment IDs reach as far as event names, config files, etc., and much of the game is based around them. | |
37 | p000 / st0 | Debug environments no longer in the game :( | |
38 | p100 / st1 | Zone 36 (Central City, Rayleigh Plaza, etc) | Decimal 256 |
39 | p200 / st2 | Zone 33 Harmony Square, internally "st_city" | Decimal 512 |
40 | p240 | Harmony Square Station / "Ark Transport" | Decimal 576 |
41 | p280 | The area loaded exclusively for Lappy's Balloon Bash. | Decimal 640 |
42 | p300 / st3 | Zone 09 Sector V, internally "st_roof" | Decimal 768 |
43 | p400 / st4 | Zone 32 Ark Mall | Decimal 1024 |
44 | p500 / st5 | Ark Sewers / "Water Bureau" | Decimal 1280 |
45 | p600 / st6 | Restricted District ARI | Decimal 1536 |
46 | p700 / st7 | An area no longer in the game, and only contains "carpark_0", "carpark_5", and "carpark_10". | Decimal 1792 |
47 | p800 / st8 | Zone 09 Hal's Hideout, internally "st_alley" | Decimal 2048 |
48 | p840 | Zone 30 Maison Forest | Decimal 2112 |
49 | p900 / st9 | Zone 10 Police HQ, internally "st_policestation" | Decimal 2302 |
50 | p910 | Highway | Decimal 2320 |
51 | p920 | Zone 10 Police HQ (Daytime) | Decimal 2336 |
52 | pa00 / sta | Unused Astral Plane model? | Decimal 2560 |
53 | pb01 / stb | Astral Plane. The second term (ssXX) is the part of the Astral Plane the game uses. | Decimal 2816 |
54 | pf00 / stf | Skyboxes. | Decimal 3840 |
55 | RomFS | ||
56 | root.pkz | Root PKZ that holds shader data. | |
57 | ba/ | Dynamic/interactable props | |
58 | bg/ | Background props | |
59 | bh/ | Background props | |
60 | bv/ | Controller base vibration data (cutscene vibrations are controlled separately) | |
61 | core/ | Core configuration files and data about the game. | |
62 | effect/ | Effects, whether model, texture, or shader-based | |
63 | em/ | Chimeras, aberrations, bosses, legions, etc. | |
64 | es/ | Cutscene models and facial animations | |
65 | et/ | Projectiles and model parts separate from their parent | |
66 | event/ | Cutscenes. | |
67 | font/ | Font used by the game (all sheets are the same font?) | |
68 | it/ | Unused primitives for items (items aren't 3d anymore). | |
69 | miscTex/ | Miscellaneous textures | |
70 | movie/ | High resolution [1600x900] videos, such as cutscenes and the title screen | |
71 | mv/ | Lower resolution [320x180] videos, such as in-game video and tutorials | |
72 | ph1/ | Phase event data | |
73 | ph2/ | ||
74 | ph3/ | ||
75 | ph4/ | ||
76 | ph5/ | ||
77 | ph6/ | ||
78 | ph7/ | ||
79 | ph8/ | ||
80 | ph9/ | ||
81 | pha/ | ||
82 | phb/ | ||
83 | phf/ | ||
84 | pl/ | Player models and accessories | |
85 | quest/ | Case data (see timeline) | |
86 | sound/ | The game's main sound bank, with BGM and voice data | |
87 | st1/ | Game environments. | |
88 | st2/ | ||
89 | st3/ | ||
90 | st4/ | ||
91 | st5/ | ||
92 | st6/ | ||
93 | st7/ | ||
94 | st8/ | ||
95 | st9/ | ||
96 | sta/ | ||
97 | stb/ | ||
98 | stf/ | ||
99 | Text/ | Game text data in PTD (.bin) format. | |
100 | ui/ | UI elements and data. |