Cutepatatas Posted May 11 Posted May 11 28 minutes ago, amorrow28 said: uhh, you did all this in a couple of days?? I’m going to retire! Honestly, you did most of the work. I still don’t know how to use Blender. I’m basically doing copy‑paste with a bit of AI guidance. I take zero credit here. You’re still the master at this, so please keep making your awesome mods! 5
Dragonjin Posted May 12 Posted May 12 23 hours ago, Cutepatatas said: FINALLY DONE!!!! YS_IX_Switch_Mods.zip (Default costumes only - See previews below) Spent the whole weekend on it and had to rush because I’m running out of time. I’m about to get super busy with work and life, so I won’t be able to keep going for now Download switch mod file via mega https://mega.nz/file/fE9w0LjR#YFCClzer9wjE_Cr1RBevEKaWLUcZ1097_CekTS1mNhE (2.5gb) *This is a new link - Uploaded wrong file earlier* Made a toolkit for anyone interested continuing the project - YS9_PC_TO_SWITCH_TOOLKIT_ENDUSER_v0_1.zip Ys IX PC-to-Switch mod porting toolkit workflow: 1. Dump the Switch game data.vfs. The main Switch assets are inside data.vfs, including character .it3 files. 2. Prepare a VFS path list. Use the provided path TSV, such as ys9_paths_from_toolkit.tsv, so the tools know which internal VFS path matches each file. 3. Extract Switch files from data.vfs. Use the extractor tool to pull character files like: chr/pc/c0010.it3 chr/pc/c0040.it3 chr/pc/c0050.it3 and any costume/variant .it3 files. 4. Analyze the Switch and PC .it3 files. Use the IT3 scanner to compare record types and structure. PC commonly uses records like RTY2 / INFZ / VP11 / MAT6. Switch commonly uses RTY3 / INFY / VPAU / MATU. Because of this, raw PC .it3 injection usually is not enough. 5. Export the PC mod .it3 to glTF. Use the Ys8/Ys9-compatible glTF exporter to inspect the PC mesh primitives, materials, and body parts. 6. Convert or rebuild the PC mod for Switch. The working method is not simply dropping the PC file into the Switch version. The successful method is: - preserve the Switch container, skeleton, material/resource layout - convert the PC mesh into Switch-friendly VPAU row layout - map the PC skin/body mesh to the correct Switch material/texture - reverse triangle winding when the mesh renders inside-out/flipped - keep or restore small Switch helper/costume pieces when needed for wrists, neck seams, etc. 7. Put converted .it3 files into the replacements folder. Example: workspace/replacements/chr/pc/c0010.it3 workspace/replacements/chr/pc/c0040.it3 workspace/replacements/chr/pc/c0050.it3 8. Reimport/inject the converted .it3 files back into data.vfs. Use the VFS injector/repacker tool to create a new modded data.vfs. 9. Stage the rebuilt data.vfs for Atmosphere LayeredFS. Example Switch path: sd:/atmosphere/contents/0100E390124D8000/romfs/data.vfs 10. Test in-game. Check the character model from the front, side, back, close-up, and during movement. Common issues to watch for: - invisible body parts - inside-out/flipped body - wrong skin color - broken hair/materials - gloves or wrists disappearing at angles - costume variants not changing because the wrong .it3 slot was patched Inclusions: YS9_PC_TO_SWITCH_TOOLKIT_ENDUSER_v0_1/ ├─ README.md ├─ install_requirements.bat ├─ requirements.txt ├─ drag_drop/ │ ├─ 01_EXTRACT_DEFAULT_SWITCH_TARGETS.bat │ ├─ 02_ANALYZE_IT3_DROP_FILE_HERE.bat │ ├─ 03_EXPORT_PC_IT3_TO_GLTF_DROP_FILE_HERE.bat │ ├─ 04_MAKE_CONVERSION_WORKSPACE.bat │ ├─ 05_BUILD_VFS_FROM_REPLACEMENTS_FOLDER.bat │ ├─ 06_STAGE_TO_ATMOSPHERE_FOLDER.bat │ └─ 07_MAP_GLTF_DROP_FILE_HERE.bat ├─ tools/ │ ├─ ys9_vfs_extract.py │ ├─ ys9_vfs_inject_raw_multi.py │ ├─ ys9_it3_scan.py │ ├─ ys9_gltf_primitive_map.py │ ├─ ys9_make_conversion_workspace.py │ ├─ ys9_export_pc_it3_to_gltf.py │ └─ custom_builders/ ├─ config/ │ ├─ default_targets.txt │ └─ settings.example.json ├─ docs/ │ ├─ QUICK_START.md │ ├─ WORKFLOW.md │ ├─ KNOWN_LIMITS.md │ ├─ SLOT_METHODS.md │ └─ TECHNICAL_BASIS.md └─ workspace/ ├─ replacements/ ├─ converted/ └─ reports/ The toolkit basically helps with the full Ys IX Switch modding pipeline: Dump data.vfs, extract the Switch .it3 character files, analyze the PC and Switch .it3 structures, export PC models to glTF for inspection, rebuild/convert the PC mesh into a Switch-compatible layout, then inject the converted .it3 files back into data.vfs for Atmosphere LayeredFS. The important part is that PC and Switch .it3 files are not the same internally. PC files often use different render records from Switch, so direct injection usually causes crashes, invisible models, or broken graphics. The working method is to preserve the Switch structure and only transplant/convert the parts that need to change, like the PC mesh/body, while keeping Switch-compatible skeleton/material/resource layout. Please note that the converter does not work for costumes yet.. Once it3 is extracted from data.vfs you can try manual conversion edits for switch then use the reimport tool. All credits goes to @amorrow28 these mods are legit works of art. (I just ported it to switch guy) Thank you for the amazing work. I want to make a mod for my national language version , so where or how can I get the TSV file?
KosMos94 Posted May 12 Posted May 12 On 5/11/2026 at 1:54 PM, Cutepatatas said: FINALLY DONE!!!! YS_IX_Switch_Mods.zip (Default costumes only - See previews below) Spent the whole weekend on it and had to rush because I’m running out of time. I’m about to get super busy with work and life, so I won’t be able to keep going for now Download switch mod file via mega https://mega.nz/file/fE9w0LjR#YFCClzer9wjE_Cr1RBevEKaWLUcZ1097_CekTS1mNhE (2.5gb) *This is a new link - Uploaded wrong file earlier* Made a toolkit for anyone interested continuing the project - YS9_PC_TO_SWITCH_TOOLKIT_ENDUSER_v0_1.zip Ys IX PC-to-Switch mod porting toolkit workflow: 1. Dump the Switch game data.vfs. The main Switch assets are inside data.vfs, including character .it3 files. 2. Prepare a VFS path list. Use the provided path TSV, such as ys9_paths_from_toolkit.tsv, so the tools know which internal VFS path matches each file. 3. Extract Switch files from data.vfs. Use the extractor tool to pull character files like: chr/pc/c0010.it3 chr/pc/c0040.it3 chr/pc/c0050.it3 and any costume/variant .it3 files. 4. Analyze the Switch and PC .it3 files. Use the IT3 scanner to compare record types and structure. PC commonly uses records like RTY2 / INFZ / VP11 / MAT6. Switch commonly uses RTY3 / INFY / VPAU / MATU. Because of this, raw PC .it3 injection usually is not enough. 5. Export the PC mod .it3 to glTF. Use the Ys8/Ys9-compatible glTF exporter to inspect the PC mesh primitives, materials, and body parts. 6. Convert or rebuild the PC mod for Switch. The working method is not simply dropping the PC file into the Switch version. The successful method is: - preserve the Switch container, skeleton, material/resource layout - convert the PC mesh into Switch-friendly VPAU row layout - map the PC skin/body mesh to the correct Switch material/texture - reverse triangle winding when the mesh renders inside-out/flipped - keep or restore small Switch helper/costume pieces when needed for wrists, neck seams, etc. 7. Put converted .it3 files into the replacements folder. Example: workspace/replacements/chr/pc/c0010.it3 workspace/replacements/chr/pc/c0040.it3 workspace/replacements/chr/pc/c0050.it3 8. Reimport/inject the converted .it3 files back into data.vfs. Use the VFS injector/repacker tool to create a new modded data.vfs. 9. Stage the rebuilt data.vfs for Atmosphere LayeredFS. Example Switch path: sd:/atmosphere/contents/0100E390124D8000/romfs/data.vfs 10. Test in-game. Check the character model from the front, side, back, close-up, and during movement. Common issues to watch for: - invisible body parts - inside-out/flipped body - wrong skin color - broken hair/materials - gloves or wrists disappearing at angles - costume variants not changing because the wrong .it3 slot was patched Inclusions: YS9_PC_TO_SWITCH_TOOLKIT_ENDUSER_v0_1/ ├─ README.md ├─ install_requirements.bat ├─ requirements.txt ├─ drag_drop/ │ ├─ 01_EXTRACT_DEFAULT_SWITCH_TARGETS.bat │ ├─ 02_ANALYZE_IT3_DROP_FILE_HERE.bat │ ├─ 03_EXPORT_PC_IT3_TO_GLTF_DROP_FILE_HERE.bat │ ├─ 04_MAKE_CONVERSION_WORKSPACE.bat │ ├─ 05_BUILD_VFS_FROM_REPLACEMENTS_FOLDER.bat │ ├─ 06_STAGE_TO_ATMOSPHERE_FOLDER.bat │ └─ 07_MAP_GLTF_DROP_FILE_HERE.bat ├─ tools/ │ ├─ ys9_vfs_extract.py │ ├─ ys9_vfs_inject_raw_multi.py │ ├─ ys9_it3_scan.py │ ├─ ys9_gltf_primitive_map.py │ ├─ ys9_make_conversion_workspace.py │ ├─ ys9_export_pc_it3_to_gltf.py │ └─ custom_builders/ ├─ config/ │ ├─ default_targets.txt │ └─ settings.example.json ├─ docs/ │ ├─ QUICK_START.md │ ├─ WORKFLOW.md │ ├─ KNOWN_LIMITS.md │ ├─ SLOT_METHODS.md │ └─ TECHNICAL_BASIS.md └─ workspace/ ├─ replacements/ ├─ converted/ └─ reports/ The toolkit basically helps with the full Ys IX Switch modding pipeline: Dump data.vfs, extract the Switch .it3 character files, analyze the PC and Switch .it3 structures, export PC models to glTF for inspection, rebuild/convert the PC mesh into a Switch-compatible layout, then inject the converted .it3 files back into data.vfs for Atmosphere LayeredFS. The important part is that PC and Switch .it3 files are not the same internally. PC files often use different render records from Switch, so direct injection usually causes crashes, invisible models, or broken graphics. The working method is to preserve the Switch structure and only transplant/convert the parts that need to change, like the PC mesh/body, while keeping Switch-compatible skeleton/material/resource layout. Please note that the converter does not work for costumes yet.. Once it3 is extracted from data.vfs you can try manual conversion edits for switch then use the reimport tool. All credits goes to @amorrow28 these mods are legit works of art. (I just ported it to switch guy) The toolkit does not contain the file ys9_paths_from_toolkit.tsv. Could you please provide it?
Cutepatatas Posted May 12 Posted May 12 12 hours ago, Dragonjin said: Thank you for the amazing work. I want to make a mod for my national language version , so where or how can I get the TSV file? 1 hour ago, KosMos94 said: The toolkit does not contain the file ys9_paths_from_toolkit.tsv. Could you please provide it? My bad, Here you go. The TSV is not only model paths. It is the VFS path/index table for data.vfs. It maps internal files like chr/pc/c0010.it3 to their offsets/sizes inside the Switch data.vfs, so the extractor/injector knows where to read or replace files. Important: the TSV does not contain the actual game files or mod files. You still need your own dumped Switch data.vfs, the PC mod files, and the external Ys8/Ys9 IT3 glTF exporter if you want to inspect/convert models. The toolkit + TSV should be enough for extracting/analyzing/injecting files, but it is not a universal one-click PC-to-Switch converter. The actual conversion still depends on the specific character/costume slot. ys9_paths_from_toolkit.zip
KosMos94 Posted May 13 Posted May 13 8 hours ago, Cutepatatas said: My bad, Here you go. The TSV is not only model paths. It is the VFS path/index table for data.vfs. It maps internal files like chr/pc/c0010.it3 to their offsets/sizes inside the Switch data.vfs, so the extractor/injector knows where to read or replace files. Important: the TSV does not contain the actual game files or mod files. You still need your own dumped Switch data.vfs, the PC mod files, and the external Ys8/Ys9 IT3 glTF exporter if you want to inspect/convert models. The toolkit + TSV should be enough for extracting/analyzing/injecting files, but it is not a universal one-click PC-to-Switch converter. The actual conversion still depends on the specific character/costume slot. ys9_paths_from_toolkit.zip 903.48 kB · 1 download I don't know why I keep failing to extract the file. I don't know what's wrong. Could it be that it doesn't support the Chinese version?
Cutepatatas Posted May 13 Posted May 13 6 minutes ago, KosMos94 said: I don't know why I keep failing to extract the file. I don't know what's wrong. Could it be that it doesn't support the Chinese version? Most likely.. I used NISA version for my dumps so paths are most likely for NISA. I think I read somewhere that there is an extra folder for the chinese version so that will likely affect the paths. We most will likely need to dump the chinese version
Dragonjin Posted May 13 Posted May 13 11 hours ago, Cutepatatas said: My bad, Here you go. The TSV is not only model paths. It is the VFS path/index table for data.vfs. It maps internal files like chr/pc/c0010.it3 to their offsets/sizes inside the Switch data.vfs, so the extractor/injector knows where to read or replace files. Important: the TSV does not contain the actual game files or mod files. You still need your own dumped Switch data.vfs, the PC mod files, and the external Ys8/Ys9 IT3 glTF exporter if you want to inspect/convert models. The toolkit + TSV should be enough for extracting/analyzing/injecting files, but it is not a universal one-click PC-to-Switch converter. The actual conversion still depends on the specific character/costume slot. ys9_paths_from_toolkit.zip 903.48 kB · 1 download Thank you for the file.
Dragonjin Posted May 13 Posted May 13 2 hours ago, Cutepatatas said: Most likely.. I used NISA version for my dumps so paths are most likely for NISA. I think I read somewhere that there is an extra folder for the chinese version so that will likely affect the paths. We most will likely need to dump the chinese version I guess the path is the same.I extracted your moded VSF file to get the modified character files and inject them to chinese version data.vfs.It worked.There are some problems during extract phase and could be fixed by corrrecting the python file by AI. So I think the path is the same. By the way, the content in your modified data.vfs only including c0010,c0040 and c0050,is it correct?
Cutepatatas Posted May 17 Posted May 17 On 5/13/2026 at 2:32 PM, Dragonjin said: I guess the path is the same.I extracted your moded VSF file to get the modified character files and inject them to chinese version data.vfs.It worked.There are some problems during extract phase and could be fixed by corrrecting the python file by AI. So I think the path is the same. By the way, the content in your modified data.vfs only including c0010,c0040 and c0050,is it correct? Nice! Yes, Correct. Sorry got busy.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now