Hello. I've been working on translating Haikyuu Cross Team Match, and I've run into a bit of a problem with some of the .arc files that hold most of the game script and UI resources. For most of the .arc files, the usual tools (EFE, kuriimu, tinke, etc.) work just fine, but many of the larger archives that have the most important data don't work. They all start with this "ustarc" header, and the structure of archive seems really simple to understand, but none of the utilities I've tried just can't make it work.
I've attached a picture of a sample of one of the smaller archives that shows the structure pretty well, but the larger archives have the same format:
The red part is the first 8 bytes, clearly.
The blue part at 0xC tells the number of files in the archive (6).
The green part at 0x10 points to the list of filenames (starting at 0x78.
And the purple part lists location of the first file (at 0x180), it's length (923 bytes), and the location of it's filename (bl_cam.bch), each with it's own 4 byte pointer.
So, even though this archive seems to be laid out pretty simply, I can't extract the files without individually going to each pointer, copying the compressed file, putting them in a new hex file, then decrypting them, which would be a nightmare considering there are hundreds of game script files to go through. I'm hoping someone can point me toward a easier solution for decompressing. I've never been able to find any documentation or any other info on this "ustarc" header anywhere online, but I'm a bit of a beginner when it comes to this sort of thing so I might be missing something completely obvious.
Thanks in advance, and tell me if there's any other info I can give to sort this out.
I've attached a picture of a sample of one of the smaller archives that shows the structure pretty well, but the larger archives have the same format:
The red part is the first 8 bytes, clearly.
The blue part at 0xC tells the number of files in the archive (6).
The green part at 0x10 points to the list of filenames (starting at 0x78.
And the purple part lists location of the first file (at 0x180), it's length (923 bytes), and the location of it's filename (bl_cam.bch), each with it's own 4 byte pointer.
So, even though this archive seems to be laid out pretty simply, I can't extract the files without individually going to each pointer, copying the compressed file, putting them in a new hex file, then decrypting them, which would be a nightmare considering there are hundreds of game script files to go through. I'm hoping someone can point me toward a easier solution for decompressing. I've never been able to find any documentation or any other info on this "ustarc" header anywhere online, but I'm a bit of a beginner when it comes to this sort of thing so I might be missing something completely obvious.
Thanks in advance, and tell me if there's any other info I can give to sort this out.