Please Help With A Text Dump!

Discussion in 'NDS - ROM Hacking and Translations' started by PhantomGhost, Nov 12, 2016.

  1. PhantomGhost
    OP

    PhantomGhost Member

    Newcomer
    11
    0
    Nov 12, 2016
    Hello!

    I'm part of a team working on a translation project, but I'm having some trouble preparing the scripts! I'm really new to ROM Hacking and have tried numerous tutorials, but without any success :unsure:

    I've tried CrystalTile, WindHex etc, but I barely understand them, so I'm not even sure if I've found the correct dialogue! There was a file called script.ssc, but it doesn't appear to have all the content.

    The game in Question is the Kuroshitsuji/ Black Butler DS Game Phantom & Ghost (JPN) that was released in 2009.

    Without the help of someone with expertise, I doubt we will be able to create an english patch as we had hoped, but just having a script that we can understand and translate to allow players to read side-by-side with the gameplay would be a huge step up from what is currently available, so I would like to humbly request some help! It would be really appreciated! I am one step away from getting on my knees and grovelling at this moment :rofl2::cry:

    Thank you so much!!!!
     
  2. DarthNemesis

    DarthNemesis GBAtemp Maniac

    Member
    1,211
    41
    Feb 19, 2008
    United States
    script.slt is a table that lists all of the files within script.ssc. It's a pretty straightforward format that wouldn't take long to write an unpacker for. But the individual script files are in one of the harder formats to work with, where the text strings are embedded within the binary script, so replacing lines won't be as easy as updating a pointer.

    Do you have any examples of content that's missing from script.ssc?
     
  3. DarthNemesis

    DarthNemesis GBAtemp Maniac

    Member
    1,211
    41
    Feb 19, 2008
    United States
    Ok, there weren't that many opcodes to figure out. Here's all the text in script.ssc.

    Edit: Went ahead and finished the inserter. Barely any text is going to fit on a page without VWF support, though.

    [​IMG]
    Download ButlerTrans v1.0
     

    Attached Files:

    Last edited by DarthNemesis, Nov 15, 2016
  4. PhantomGhost
    OP

    PhantomGhost Member

    Newcomer
    11
    0
    Nov 12, 2016
    Hi! Wow, this is amazing!!!! Thank you so so so so so so so so so so much!!!!! Infact, that's not even enough "so's" :rofl2:

    I did a quick test and successfully managed to follow everything! Yay! Though you're right about the text being weird, so thanks for mentioning the VWF Tool, I'm trying to figure out how to use it right now :wacko:

    As you can probably tell I'm a huge n00b at this :rofl2: But thank you for creating a readme and program so simple and convenient to use! I'm not exaggerating when I say that there's no way this project could have gone on without your help. :shy:

    Of course I'd like to credit you, so do you have a particular website or should I just post a link to your profile on this forum?
     
    Last edited by PhantomGhost, Nov 13, 2016
  5. Auryn

    Auryn GBAtemp Advanced Fan

    Member
    536
    346
    Jul 21, 2011
    Swaziland
    I believe that if Dark didn't talk about NTFR and the game from is 2009, you will probably not get a VWF to work without programming skills so sorry to say you are not even half way there.

    Dammit, why do i have always be the bad guy that say thinks straight on the face??
    :whip:
     
  6. PhantomGhost
    OP

    PhantomGhost Member

    Newcomer
    11
    0
    Nov 12, 2016
    Hi!

    No it's okay, thanks for being honest with me! I have been having a lot of trouble with the VWF ^^' I don't really think all this ROM hacking stuff is for me... But we're still going to translate the text, and then I'm just hoping that someone will be able to do the finishing touches and pack it all together correctly. ^_^
     
  7. DarthNemesis

    DarthNemesis GBAtemp Maniac

    Member
    1,211
    41
    Feb 19, 2008
    United States
    No, the game does use NFTR files. What you'll have to do is edit font/font0.nftr to make the characters take up less space. The NFTRedit program in my signature can do that using Tools -> Character Map.

    Right now every character is drawn 16 pixels apart, but you can remove all the indentation by setting the offset to 0 and next offset equal to width:
    [​IMG]

    I'd also recommend editing the glyph graphics themselves to be thinner so you can reduce the actual width of each character.
     
  8. PhantomGhost
    OP

    PhantomGhost Member

    Newcomer
    11
    0
    Nov 12, 2016
    Thankfully graphics is something I can do so editing the font to be thinner should be no problem. :rofl2:

    The NFTRedit program you wrote is amazing. :bow:

    The only thing I've noticed is that if we edit the name tags between the 【】's in the text files to read in English, they don't appear in-game, it's just a blank space. Is there a simple fix for this, or will it have to done with a hex editor?
     
  9. DarthNemesis

    DarthNemesis GBAtemp Maniac

    Member
    1,211
    41
    Feb 19, 2008
    United States
    It seems like you can only use predefined names for those captions, and anything else won't show up. The glyphs don't match the NFTR fonts, either. My guess is that they're stored as graphics, so you'd need to find and edit those rather than translate them in the text.
     
  10. Auryn

    Auryn GBAtemp Advanced Fan

    Member
    536
    346
    Jul 21, 2011
    Swaziland
    I took a quick look at the game and it seems that there is a double problem.
    Your program Dark convert the "English" letter into ASCII and don't let them in SJIS format.
    And the second problem is what you said.


    PS:
    Searching in the ram, i found this:
    [​IMG]

    Seems Dark is right. It's the first time i see this kind of "link" between text and images.
     
    Last edited by Auryn, Nov 15, 2016
  11. DarthNemesis

    DarthNemesis GBAtemp Maniac

    Member
    1,211
    41
    Feb 19, 2008
    United States
    ASCII is part of Shift_JIS, and the above screenshots were created with it, so what exactly is the problem? And the inserter doesn't do any character conversion other than carriage return/line feed, you can use single-byte or double-byte characters freely.

    Edit:
    v0.9 - Added support for unpacking the graphics on initial Load and repacking any that were modified since the previous Save. Make sure to start over with a new dslazy/dsbuff folder from an unmodified NDS file. You can replace the font and any modified .sjs files after exporting with the new version.

    Edit:
    v1.0 - Added support for editing the text in arm9.bin. There's limited space, so you may get an error when importing if the new lines won't fit. The list of character names that correspond to those caption graphics is probably in there somewhere too.
     
    Last edited by DarthNemesis, Nov 15, 2016
  12. PhantomGhost
    OP

    PhantomGhost Member

    Newcomer
    11
    0
    Nov 12, 2016
    With v1.0 does it only import the arm9.bin? It's not loading any of the text or the graphics.. or maybe I'm just doing something wrong :blink: (I've only just seen your message so I didn't get a chance to download v.09)
     
  13. Auryn

    Auryn GBAtemp Advanced Fan

    Member
    536
    346
    Jul 21, 2011
    Swaziland
    even if double byte is inputed, your program convert it to single byte. Mostly its not a problem but it can be if a game has an incomplete sjis set.
    I posted the first part of the post before I tried to edit the script file directly by inputting double byte letters and see that nothing changed.
     
  14. DarthNemesis

    DarthNemesis GBAtemp Maniac

    Member
    1,211
    41
    Feb 19, 2008
    United States
    Whoops, had the other files commented out while I was working on arm9 and forgot to uncomment them afterwards. Fixed. You can set the log level to Info instead of Debug to speed up saving.

    I just tried using double-byte characters and it didn't convert them.
     
    Last edited by DarthNemesis, Nov 15, 2016
  15. PhantomGhost
    OP

    PhantomGhost Member

    Newcomer
    11
    0
    Nov 12, 2016
    Thanks again! This is wonderful!

    I finally managed to figure out how to open the images with Crystal Tile so I'm quite proud of myself :rofl2: It took me a while because a lot of programs want you to open them from the .nds but since the images are stored in those weird .obc files none of them could open it, so I used this guide to import it manually :D
    a.png
    This is just a bonus CG screen though, what I really need to find and edit are the instructions for the minigames. I found them in the bmp folder and managed to open it in crystal tile but it looks pretty weird. According to console tool, this is how it's supposed to look though?
    Untitled.png
    Tbh it wouldn't be hard to piece it back together with photoshop and translate the text (sticking to the palette so I don't have to figure out how to edit that too lol) but I'm worried that since it's scrambled in the viewer, if I put it back in the game straightened up, is it going to show correctly? Is it possible that there's more than one file I'll need to edit, or that I've just opened the wrong thing? (Still very much a n00b here :blush:)
    I tried to do a very crude test edit to see what would happen, but when I played the game in the emulator all I got was this
    oops.png
    so in other words, I have no clue...

    The other thing I want to ask is about ButlerTrans. When discussing it with other people I was told
    and not knowing enough about the subject, I have no idea if this is valid. Will I be able to use ButlerTrans to insert all of the translated text, or are they correct in saying that it's going to be necessary to have programming knowledge and edit the jumps?
     
    Last edited by PhantomGhost, Nov 16, 2016
  16. DarthNemesis

    DarthNemesis GBAtemp Maniac

    Member
    1,211
    41
    Feb 19, 2008
    United States
    - NCLR files contain palettes
    - NCGR files contain the graphics for individual tiles
    - NSCR files contain the instructions for how to arrange tiles to form the full picture

    So the tiles need to be in the same position relative to each other inside the NCGR in order for the NSCR to find them where it expects them to be. Ideally you'd find a program that's aware of both formats and updates the NSCR along with the NCGR so you don't have to manually move tiles around, but I haven't looked around for something like that. Maybe try Tinke?

    That would be a problem if you were manually replacing text in a hex editor, but inserters like ButlerTrans recalculate the pointers and file sizes for you.
     
    Last edited by DarthNemesis, Nov 16, 2016
  17. PhantomGhost
    OP

    PhantomGhost Member

    Newcomer
    11
    0
    Nov 12, 2016
    Oh, phew! Thanks for reassuring me :D

    Ahh, that makes a lot of sense! I was just opening the NCGR which would explain that spectacular fail :rofl2: Funnily enough, I'd tried Tinke before but couldn't understand it, so I gave it another shot and then it worked wonderfully (maybe I'd originally accidentally used an out-dated version.)

    It took me a while to sort all the bugs out, but I think I've finally got a grip on what to do! :toot:
    EDIT: I lied. I messed up again. :cry: But I started a new thread for it since it's about images not text dumps, plus I feel really bad for bugging you guys again ^^'''

    Anyway... Thank you both so so much for helping me out! You've been so kind giving up time to help me and there's no way this project could have even started without ButlerTrans. ^_^
     
    Last edited by PhantomGhost, Nov 21, 2016