January 26Jan 26 Localization Hello, could someone help me to unpack/repack this kind of archive, been struggle for months now but can't find any tool for it. This come from Ys IX Monstrum Nox game. https://drive.google.com/file/d/1OV8hxadmTlA0vMaXBNboBZMKH16_IKj5/view?usp=drive_link Edited January 26Jan 26 by petermike867
January 26Jan 26 Author Localization 11 minutes ago, MrIkso said: On pc version game doesn't has this archive, all files unpacked thanks you for the reply, but i want to edit ps4 version. 😞
January 27Jan 27 Supporter I'd suggest to search for 'vfs' in the Zenhax archives, 153 results. Maybe there's some useful hint among them?
February 2Feb 2 Author Localization On 1/27/2026 at 10:53 PM, shak-otay said: I'd suggest to search for 'vfs' in the Zenhax archives, 153 results. Maybe there's some useful hint among them? Unfortunately, what I read on the Zenhax archive wasn’t of any help; they also couldn’t figure out the compression used by the VFS3 file.
February 2Feb 2 Supporter 1 hour ago, petermike867 said: they also couldn’t figure out the compression used by the VFS3 file. too bad. Then a comtype scan could come in handy. But it could get somewhat boring because you'll need to check 100 and more resulting extracted files manually in a hex editor for a hit,
February 3Feb 3 Localization I initially analyzed the file and found instances of F1N Headers (46 6C 4E), of which there are 196 in the file. I managed to find several matching addresses in the index. The analysis is in its early stages, so that's all I can share for now.
February 3Feb 3 Author Localization 10 hours ago, zbirow said: I initially analyzed the file and found instances of F1N Headers (46 6C 4E), of which there are 196 in the file. I managed to find several matching addresses in the index. The analysis is in its early stages, so that's all I can share for now. tysm for your time analysing this!
4 hours ago4 hr Localization looked into it and seems to be using the same format as Ni No Kuni 2 & Killer7 but with a different compression than zstd or zlib (the str offset is 0 and the decompression dictionary offset is now the str offset, also the compression id is kinda just random)Edit: I think I mixed up some fields, probably zstd without decompression dicts but with encryption Edited 3 hours ago3 hr by NeoGT404
2 hours ago2 hr Localization Here's a hexpat:struct Str { u32 l; char v[l]; }; struct de { u32 crc; s32 id; s32 pid; s32 nid; u32 dc; s32 u1; u32 fc; }; bitfield fle { bool zstd : 1; // otherwise zlib bool compressed : 1; padding : 3; unk1 : 1; padding : 10; s16 zstd_dict_id; }; struct fe { u64 off; u64 zs; u64 us; u32 crc; u32 fid; fle fl; u32 did; char start[4] @ (parent.do + off); char end[4] @ (parent.do + off + zs - 4); }; struct ce { u32 s; u32 cs[s / 4]; }; bitfield fl { padding : 4; bool chunks : 1; bool zstd_dicts : 1; padding : 26; }; struct a { char magic[4]; fl fl; u32 v; u32 dc; $ += dc * 0x1C; u32 fc; u64 fso = $; u64 do = fso + fc*0x28 + 0x18; u64 chnkdo @ (do - 0x18); u64 decdo @ (do - 0x10); u64 stro @ (do - 8); u64 so = stro; if (so == 0) so = decdo; $ = so; u32 fsc; Str fstrs[fsc]; u32 dsc; Str dstrs[dsc]; $ = chnkdo; u32 chnkz; u64 ep = $ + chnkz; ce ce[while($ < ep)]; de de[dc] @ 0x10; fe fe[fc] @ fso; }; a a @ 0;
1 hour ago1 hr Author Localization 1 hour ago, NeoGT404 said:I'm thinking it's encrypted so I'll need the game executableHi, tysm for your time working on this, here is the game executablemain.zip
Create an account or sign in to comment