[Translation] Ace Attorney Trilogy

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by onepiecefreak, Oct 10, 2016.

  1. onepiecefreak
    OP

    onepiecefreak The Special One

    Member
    388
    130
    Aug 12, 2015
    Germany
    Ace Attorney Trilogy
    (English to spanish translation)

    [​IMG]

    Demo
    This is the first patch of the game. It includes only the first case of the first game.

    It's a xdelta patch included with the patcher:
    https://drive.google.com/open?id=0B_1lyUjGUKi2Y3Q5NjhHS0pVS2s

    Have Fun!

    Join our Discord
    [​IMG]

    Information

    Release: 09 Dec 2014
    Genre: Adventure
    Publisher: Capcom

    Goal of the project
    Our goal is it to translate the whole game from english to spanish. We want to translate all pictures, dialogues and sound effects.

    Team

    Leader: @mister_gamer
    Programmer/Hacker: @onepiecefreak
    Translation in general: CTPache, Teolicht, DaniFey, Angelo, Kamikaze11

    Progress:

    Hacking: 100%
    Graphics: 40%
    Text: 10%
    Sound: 100%

    Screenshots/Proof of concept:
    Warning: Spoilers inside!

    Files and information
    Warning: Spoilers inside!

    Tools
    All tools we use can be found here:
    https://mega.nz/#F!ZtJmXYzD!1XgA_iO4B6Tm2kef1kSUxQ
    • BchPngConv2.py: Can convert nearly every BCH file found in the pack.dat to an editable PNG and inject it back to it's original BCH file. It can convert all 4 used picture compressions.
    • etc1tool.exe: The main tool written in C++. It's used by the python scripts to compress raw pixels to BCH-data and to decompress BCH-data to raw pixels. It can de/compress ETC1 and ETC1A.
    • packTool.py: Can extract the pack.dat to all it's contents. After that it can repack all files to a new working pack.dat and pack.inc
    • dsdecmp.exe: A tool to de/compress the lz11-compression of the pack.dat files.
    • bffnt.py: A tool originally written by @ObsidianB and edited by @onepiecefreak . This tool is used to extract .cfnt files into a .json and a .png file and repack them back to a .cfnt.
    • dlgTool2.py: A tool that extracts a .dlg file into separate txt files to edit them. It can convert these files back to a new .dlg file.
    • dlgComp.exe: Used in dlgTool.py to compress the converted txt files with lz10.
    • bcsar.py: Used to extract and repack the .bcsar. It will create a bunch of binary files and .bcwav files. You can use the audacity version included in our tools folder to open bcwav files and to export other audio formats to bcwav.
    • codePatcher.py: Patches the uncompressed code.bin for better glyph widths in the universal font.

    Requisites
    Warning: Spoilers inside!

    Help needed

    All dialogues, pictures and voices are no longer a problem. If there are any questions, don't hesitate to ask in this thread or with PM.
     
    Last edited by onepiecefreak, Mar 6, 2017
    TheVinAnator, Arubaro, Asia81 and 8 others like this.


  2. mister_gamer

    mister_gamer Advanced Member

    Newcomer
    60
    19
    Dec 5, 2015
    We need help with the project!! Go go go!!
     
  3. matheus abreu

    matheus abreu Member

    Newcomer
    23
    5
    Sep 8, 2016
    Brazil
    Using pwse 0.2 I had extracted the .bin dialogues.

    But I have no idea how to repack it.
     
    Last edited by matheus abreu, Nov 20, 2016
  4. Gurumeditation

    Gurumeditation Newbie

    Newcomer
    8
    0
    May 18, 2016
    Gambia, The
    Where did you find the BIN-Files at the 3DS-Game?
     
  5. onepiecefreak
    OP

    onepiecefreak The Special One

    Member
    388
    130
    Aug 12, 2015
    Germany
    @Gurumeditation The game's main content is packed into 2 files, the pack.dat and pack.inc. In the pack.dat there are all these "BIN-Files". They are only named .bin because the purpose weren't clear. If you use the packTool.py mentioned in the thread you can extract the pack.dat and get all files from it.

    @matheus abreu Does this program extract the dialogues as plain text, so that you can read and edit them? Or just as a .bin file? The repack part comes if we could edit the text successfully. Then I can write a tool for that.
     
  6. mister_gamer

    mister_gamer Advanced Member

    Newcomer
    60
    19
    Dec 5, 2015
    You mean the DS dialogues or the 3DS trilogy ones? @matheus abreu
     
  7. onepiecefreak
    OP

    onepiecefreak The Special One

    Member
    388
    130
    Aug 12, 2015
    Germany
    Ok, I just tried the PWSE. I don't know if what we have here is the text to edit. But I try to inject the text. Thx for that hint.
     
    matheus abreu likes this.
  8. matheus abreu

    matheus abreu Member

    Newcomer
    23
    5
    Sep 8, 2016
    Brazil
    3DS trilogy.

    You can split bin files in more scripts and then convert they in .txt.
     
  9. onepiecefreak
    OP

    onepiecefreak The Special One

    Member
    388
    130
    Aug 12, 2015
    Germany
    Yh, I had already figured that out. I could use the tool. I will write a usable tool for our project. Thx for your hint to PWSE. That helped.
     
    matheus abreu likes this.
  10. Gurumeditation

    Gurumeditation Newbie

    Newcomer
    8
    0
    May 18, 2016
    Gambia, The
    Nice to know.
    The question I ask myself: Are the files identical with the dialog-files to the NDS Files? If yes,
    it would be very simple to make the translation for the dialoges. But its only a dream. From the perspective of the developers i would have implemented this way to save money in the development.
     
    Last edited by Gurumeditation, Nov 21, 2016
  11. onepiecefreak
    OP

    onepiecefreak The Special One

    Member
    388
    130
    Aug 12, 2015
    Germany
    As I can see it is indeed just the 3 games packed in this. The dialogue files are, as far as I can tell for now, very similar or maybe really the same. They seem the to use the same commands and mostly the same text. As well as the same encoding for the letters.
     
  12. Gurumeditation

    Gurumeditation Newbie

    Newcomer
    8
    0
    May 18, 2016
    Gambia, The
    Ouh thats soundy very good. :)
    So only it needs some scripty/tools to reconvert the files after editing.
     
  13. onepiecefreak
    OP

    onepiecefreak The Special One

    Member
    388
    130
    Aug 12, 2015
    Germany
    I'm working on it now. We'll see how long it will take.
     
  14. zongalito

    zongalito GBAtemp Regular

    Member
    131
    45
    Dec 9, 2013
    Cote d'Ivoire
    Rancagua, Chile
    Finally i'm glad that this is happening
    mucha suerte!
     
  15. onepiecefreak
    OP

    onepiecefreak The Special One

    Member
    388
    130
    Aug 12, 2015
    Germany
    Just updated our Thread. We can now completely focus on the translation.
     
  16. onepiecefreak
    OP

    onepiecefreak The Special One

    Member
    388
    130
    Aug 12, 2015
    Germany
    We now solved our last graphics problem. With that we're now able to edit everything needed in order to translate the game.
     
  17. matheus abreu

    matheus abreu Member

    Newcomer
    23
    5
    Sep 8, 2016
    Brazil
    How did you edit the court record/back/present buttons?
     
  18. mister_gamer

    mister_gamer Advanced Member

    Newcomer
    60
    19
    Dec 5, 2015
    Yes. Update in the tools soonTM.
     
    matheus abreu likes this.
  19. Asia81

    Asia81 In my Ecchi World <3

    Member
    4,955
    2,446
    Nov 15, 2014
    France
    Albi
    I'm interested in trying from English to French, thanks for translation hacking infos and tools.
    Let's see
     
  20. Asia81

    Asia81 In my Ecchi World <3

    Member
    4,955
    2,446
    Nov 15, 2014
    France
    Albi
    Ok so I have 1 ->
    Code:
    C:\Users\Asia81\Desktop\Test1\ExtractedRomFS>packTool.py -e pack.dat pack.inc
    Extracting and decompressing files... 48/12942Traceback (most recent call last):
      File "C:\Users\Asia81\Desktop\Test1\ExtractedRomFS\packTool.py", line 152, in <module>
        pref = readu32(bin)
      File "C:\Users\Asia81\Desktop\Test1\ExtractedRomFS\packTool.py", line 24, in readu32
        return struct.unpack("<I",inF.read(4))[0]
    struct.error: unpack requires a string argument of length 4
    What is this error?