I've spent a large chunk of August trying to rip the script of a JRPG called Tales of Hearts for the Nintendo DS. Me and some friends are planning a translation patch project for it, and it's my job in the group to figure out the programming side of things.
Problem is, 99% of the text seems to be behind compressed files. And I'm having a hell of a time finding any sort of guide on the internet about ripping from + editing text in those.
(Background: I'm a newbie who's only just learning rom hacking, and am also only starting to learn programming so I can't write any of my own tools just yet. So atm I've only looked into pre-made utilities like CrystalTile2 for hex editing/searching roms, etc, Cartographer for script ripping and formatting, WindHex for general hex editing, stuff like that. I acknowledge that patching text into this video game is most likely a task that will require extra programming on my end, and I'm more than willing to learn more about the craft in order to accomplish what I need to. But I'm scoping "easier" methods out first to see what I can do right now, at least)
In any case, I've found two files that I believe hold (most of*) the text: m.dat and fcsr.dat. The former holding the main scenario text, and the latter holding text from something called "skits". I need to rip these text scripts from both of them, and also later figure out how to reinsert them into the game. However:
Is anyone able to help me out/point me in the right direction? Thanks in advance!
*(The menu text (items, status screen text, in-game synopsis, etc), is mercifully located in uncompressed files, so they're not an issue right now)
Problem is, 99% of the text seems to be behind compressed files. And I'm having a hell of a time finding any sort of guide on the internet about ripping from + editing text in those.
(Background: I'm a newbie who's only just learning rom hacking, and am also only starting to learn programming so I can't write any of my own tools just yet. So atm I've only looked into pre-made utilities like CrystalTile2 for hex editing/searching roms, etc, Cartographer for script ripping and formatting, WindHex for general hex editing, stuff like that. I acknowledge that patching text into this video game is most likely a task that will require extra programming on my end, and I'm more than willing to learn more about the craft in order to accomplish what I need to. But I'm scoping "easier" methods out first to see what I can do right now, at least)
In any case, I've found two files that I believe hold (most of*) the text: m.dat and fcsr.dat. The former holding the main scenario text, and the latter holding text from something called "skits". I need to rip these text scripts from both of them, and also later figure out how to reinsert them into the game. However:
- Unless it's there and I just haven't figured it out, Cartographer isn't able to rip from compressed scripts
- Even if I export the .dat files from the rom and run them through a decompression program, I can't find anything on the net about ripping from sole files. Just from roms. Which I can't do if I don't have something that can decompress -and- rip at the same time
- I'm not even sure if I know how to decompress the files properly. I attempted to run them through a program called BatchLZ77 that's ostensibly made for DS files, but when I peeked inside the decompressed files with a hex editor they seemed even -more- messed up than they were before
- I could be wrong about all of this, but among the compressed, garbled chaos of those two files I did find text that matched up perfectly with stuff I know to be from the story cutscenes and skits respectively, so fairly sure/hoping that I'm right
Is anyone able to help me out/point me in the right direction? Thanks in advance!
*(The menu text (items, status screen text, in-game synopsis, etc), is mercifully located in uncompressed files, so they're not an issue right now)