-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
More extensive Tales of 'TSS' script support. #24
Comments
Adding onto this issue, I've tried tinkering with the existing code to suit Hearts' format, and to integrate it into the CLI. The furthest I got was successfully reading all the entries. I'll leave what I've figured out here, in case it helps. Disclaimer that I'm not as familiar with C# or Tales' encryption as the repo owner, so I may be wrong on some points. Before looks something like this (file used is Heart's LOCT00.SCP, decompressed):
By splitting the instruction list into not just 0xFFFFFFFF, but also 0x3FCCCCCD, as well as deleting the code for the English pointers, nets me this:
Which corresponds to every entry in the .TSS file for Hearts DS. Problem is, it's just these entries; the tool is unable to retrieve the text. An example of some debug output I printed (via LoadFile in TSSFile.cs):
From what I can glean, the relevant text is retrieved via pos + JPNPointer:
Position being at 0x0 means 'pos + JPNPointer' stays at where the JPNPointer is pointing. So we get the entry name (such as isld07_3), and not the corresponding text it should be pointing at. Pos also never gets altered past the initial declaration of It feels like instead of "pos", there should be an additional value for the offset between the entry's header/name/whatever, and the text it's pointing to, but there just...isn't. Maybe it's some black magic that works for Vesperia, but not for Hearts. No clue. I've poked around the codebase, especially the skits data section, but I can't seem to figure out what should be done regarding the .TSS files still. Any help would be appreciated. |
TSS files are (or appear to be, anyway) compiled bytecode in some custom scripting language. The stuff in this codebase works exactly for Vesperia and how the compiler ended up generating code for textboxes, and that's about it -- I never bothered digging more into it since it was enough for what we were doing with the translation. So I'm afraid you're on your own if you want to do anything else. |
Hi there, I'm helping a friend look into patching Tales of Hearts DS, which will require the use of .TSS files. I was wondering if it's possible to add a configuration to make that feasible. Specifically looking to dismantle files for the scenarios and skits.
Alternatively, if it's possible to already make functional .tss's with an existing configuration, I'd like to know which one and how best to run that on the command line.
Thanks!
The text was updated successfully, but these errors were encountered: