Pokémon Soul Silver / Heart Gold Mod, Multi Language Translation Info

Discussion in 'NDS - ROM Hacking and Translations' started by Totodile, Sep 21, 2009.

  1. Totodile
    OP

    Member Totodile GBAtemp Regular

    Joined:
    Sep 21, 2009
    Messages:
    117
    Country:
    United States
    Hi folks, the topic title seems descriptive enough, so I'll just get posting already. My post formatting will probably look odd but oh well.

    AP Patches:
    Rudolph
    - Seems to use RakuRaku's patch involving changing values to 36 or 37. I confirm that his other patch that I have modifies overlay 1 and 122.
    Chinese
    - I didn't bother to look at anything specific. Probably doesn't work.

    AP "Disable" AR Code:
    020DD9E4 E1A00000
    - Found by Chase-san. If you currently use two codes, it's been mentioned to be buggy.

    English Translations: (in no order)
    Magnius | http://gbatemp.net/index.php?showtopic=179686
    - I don't think he has released anything yet. Seems to aim to translate anything in Japanese as you progress through the game.
    - My own pet peeve, but he seems to keep menu options fully capitalized. See "copy paste" at the end of my post.

    Other | Unknown
    - Supposedly there's one that credits KazoWAR and Raq's projects.

    Rykin and Raqib12 | http://gbatemp.net/index.php?showtopic=177387
    - Dead project. Interesting Katakana Pokémon name patch option, and tries to edit off fully capitalized text. Has Romruto's intro image.
    - Fairly obnoxious credit on intro, and describes own topic with "Shape the future!".
    As of 4.5:
    Soul Silver ID for Cheat engine: IPGJ 40FDD389
    Modified files, excluding Rudolph
    header.bin
    a\ 0\ 0\8
    a\ 0\ 2\7
    a\ 0\ 3\9
    a\ 0\ 4\6
    a\ 0\ 6\8
    a\ 1\ 5\2
    thenewpoketext, 114 changes
    CODE003
    005
    006
    010
    013
    014
    015
    023
    024
    033
    038
    043
    149
    189
    194
    195
    209
    218
    219
    222
    264
    272
    293
    295
    296
    309
    311
    416
    428
    435
    436
    438
    634
    635
    636
    637
    638
    639
    640
    641
    642
    643
    644
    645
    646
    647
    648
    649
    650
    651
    652
    653
    655
    656
    657
    658
    659
    660
    661
    662
    663
    664
    665
    666
    667
    668
    669
    670
    671
    672
    673
    674
    675
    676
    677
    678
    679
    680
    681
    682
    683
    684
    685
    686
    687
    688
    689
    690
    691
    692
    693
    694
    695
    696
    697
    698
    699
    700
    701
    702
    703
    704
    705
    706
    707
    710
    711
    712
    717
    719
    720
    738
    739
    790
    KazoWAR | http://gbatemp.net/index.php?showtopic=178847
    - Used only Rudolph and thenewpoketext until the 5.0 update I think.
    - Keeps the fully capitalized options, which are likely just copy pasted over from Platinum.
    As of 5.0:
    Soul Silver ID for Cheat Engine: IPGJ 7387AC7F
    Modified files
    a\ 0\ 0\8
    a\ 0\ 2\7
    a\ 1\ 5\2
    thenewpokedex, 99 changes
    CODE003
    005
    006
    010
    013
    014
    017
    020
    022
    023
    024
    030
    031
    032
    033
    035
    038
    041
    043
    049
    054
    177
    181
    184
    185
    188
    189
    192
    194
    195
    197
    205
    208
    216
    218
    219
    220
    222
    231
    232
    238
    239
    240
    242
    246
    261
    264
    265
    267
    272
    274
    276
    292
    293
    294
    295
    309
    366
    368
    370
    373
    385
    414
    415
    416
    418
    419
    425
    426
    428
    434
    435
    436
    530
    534
    535
    537
    542
    550
    617
    629
    707
    711
    712
    717
    719
    720
    738
    739
    763
    764
    765
    766
    767
    788
    791
    792
    803
    813
    Tools
    ndstool by DarkFader
    - Needed for thenewpoketext, and literally is a tool you'd likely use in some way for NDS in general.
    DSLazy(?)/DSBuff(WB3000)
    - GUI for ndstool, supposedly DSBuff does things more properly compared to DSLazy.
    - Can be used for arm7/9 changes so that games can save on various (older)flash devices that often need fixes.
    thenewpoketext by loadingNOW
    - Generates xml files from the "msg.narc" file on Pokémon games. The xml files are consisted of a lot of the text used in the game.
    - They can be modified and patched back to the narc file.

    thenewpoketext Usage
    Extract the archive to a "work" folder. Copy the ROM there, and rename it to something short and simple for easier usage later.
    ndstool needs to be copied here too. Open a command prompt and change its directory to the "work" folder's(if needed to be manually).
    This is used for looking at errors, otherwise thenewpoketext's prompt may close. In the prompt, run thenewpoketext.
    Enter your .nds filename here, then ndstool will extract its contents to a tmp folder. Copy "7" from tmp\root\a\ 0\ 2\ to tmp\root\msgdata\
    Rename 7 to msg.narc and go back to the prompt window. Simply enter help if you want to look at the options.
    There are 815 files in this narc, with the first as file id 0. The file you modify needs to have "false" changed to "true" at the top for patches.
    I suggest modifying a single file and using the getall generated file for finding things you want to modify.
    Once patched, copy and rename msg.narc as 7 to the 0\2\ folder. You may delete msg.narc to save space when you use mkrom.
    The file generated by mkrom will be the modded NDS. Jumble of text done intentionally.

    Game File Info (That have been changed in mods.)
    header.bin
    - Don't know what was changed.
    a\ 0\ 0\8
    - Battle screen graphics, don't know what has been changed.
    a\ 0\ 2\7
    - "msg.narc" used for thenewpoketext
    a\ 0\ 3\9
    - Message graphics, changes could be Yes/No/etc
    a\ 0\ 4\6
    - Intro screen graphics
    a\ 0\ 6\8
    - Don't know
    a\ 1\ 5\2
    - Dunno

    Files that can be copy pasted as a "translation" (thenewpoketext)
    This is just a sample. The image below shows duplicate files when comparing the Japanese versions of Soul Silver and Platinum.
    Just copy the xml file from your localized game and use it as a patch. Just compare the filesize and the contents.
    For example, the image says 003 for sj(Soul Silver), and 000 for pj(Platinum JPN). Platinum (U)'s 000 has a similar size.
    You can now use Platinum (U)'s 000 as sj's 003 instead. I've listed the largest files I found first.
    Platinum (JPN) and (U)'s file id's will not match in contents, so use the (JPN) id as a sort of guide since the (U)'s id will be close.
    [​IMG]
    So far I can only use thenewpoketext. I haven't identified things like \x0001 yet though. Linefeeds are a fair pain too.
    If you need help translating Japanese text to English or finding specific data you want to translate, just ask.
    Info regarding image and narc mods, GBC script, and anything else useful that isn't listed here, will be much appreciated.

    Cheers.
     


  2. adrian2040

    Member adrian2040 GBAtemp Fan

    Joined:
    Jun 8, 2008
    Messages:
    401
    Location:
    Lima
    Country:
    Peru
    You forgot that Google Translation Patch that is supposed to be released today. It is a full patch made by PaperMagician and is being posted here by YayMii. It is also based on Kazo's patch.
     
  3. Totodile
    OP

    Member Totodile GBAtemp Regular

    Joined:
    Sep 21, 2009
    Messages:
    117
    Country:
    United States
    Well I guess this thread has a fair amount of info already. Some people post on a whim, where they'd likely not bother modding.
    This thread doesn't need to be bumped because of that. "Translators" seem pretty lax as well, and it's reflected in their mods.
    I honestly think patience and localization best suits all. As of Oct 1 I don't intend to revive this, unless something of merit calls for it.

    ---

    Kinda interesting to see people posting about 7/msg.narc or even creating new topics regarding it shortly after I posted this.
    Anyway, here's more info which I may edit into the first post later. Be sure to check Kazo/Raq's file id's for simple changes.
    If you aim to edit Yes/No options, it's been said that some are images, not text. There are multiple listings of them as well.
    When I looked for them, there were maybe 40+ files that can be changed, and this was after I used Raq's 3.5 patch.
    Some of the large files I listed are for Pokédex, which you may not want to change based on the measuring system your country uses.
    For example, Japan uses kg and m, yet USA uses ft and lbs. The Pokédex already contains localized text for all regions as well.

    Other duplicates (Be sure to change file id's to match when you're copy pasting "translations")
    Removed, see update below.

    Other Languages
    German
    - http://gbatemp.net/index.php?showtopic=179251
    - http://gbatemp.net/index.php?showtopic=179036
    Spanish
    - http://gbatemp.net/index.php?showtopic=180704
    - http://gbatemp.net/index.php?showtopic=180672
    French
    - None
    Italian
    - None
    Google Script Generated "English"
    - http://gbatemp.net/index.php?showtopic=180737
     
  4. Rykin

    Member Rykin GBAtemp Fan

    Joined:
    Feb 15, 2004
    Messages:
    394
    Location:
    Baltimore, MD
    Country:
    United States
    In Pokemon games, there are two types of fonts. One is full sized, the other is half. The \x001 is nothing more than a full sized space, rather than the half that matches the English alphabet.

    Things such as \x103 represent whatever variable the game is talking about. View files 003.xml for the battle script and you'll see what I mean.

    a\ 0\ 3\9
    - Message graphics, changes could be Yes/No/etc
    a\ 0\ 4\6
    - Intro screen graphics
    a\ 0\ 6\8
    - Don't know
    a\ 1\ 5\2
    - Dunno

    You're close. a\3\9 has the graphics for the Pokemon summery that show "SLP/FNT/ect" in English.
    a\1\5\2 Has the Yes/No graphic.
     
  5. Nugg2396

    Member Nugg2396 GBAtemp Regular

    Joined:
    Jun 9, 2009
    Messages:
    239
    Country:
    Malaysia
    Great job Totodile! This'll really help most people!
     
  6. azure0wind

    Member azure0wind 7 years flew so fast.

    Joined:
    May 24, 2009
    Messages:
    941
    Country:
    Indonesia
    yeah , great post!
    thanks for solving my problem using "thenewpoketext" [​IMG]
     
  7. Dr.Razor

    Member Dr.Razor GBAtemp Regular

    Joined:
    Oct 25, 2008
    Messages:
    109
    Country:
    Switzerland
    I want to create a french patch, i already start translating the scenario with the old gbc one.
    But where are localized all the xml that i can just copy and past using the french platinum files?
     
  8. dartdude6

    Member dartdude6 GBAtemp Regular

    Joined:
    Dec 9, 2007
    Messages:
    169
    Country:
    United States
  9. AfterYou

    Newcomer AfterYou Member

    Joined:
    Sep 13, 2009
    Messages:
    12
    Country:
    United States
    Hey Rykin, how did you find the Yes/No graphic in a\1\5\2? I've opened it with Crystaltile2 and tried just about all the settings, but I got no luck displaying anything...

    EDIT: Never mind, the file "2" just turned out to be a carc file, not a narc file like I thought. Decompressing it fixed my problem.
    EDIT2: No, it didn't fix my problem. For some reason the decompressed file makes crystaltile2 crash after a few seconds, so I can't edit it...
    EDIT3: OK, finally got it to work by updating crystaltile2 to a newer version that can decompress data from carc files. Hope you don't mind that I tried to make my Yes/No button look like the one from your patch... I really liked your design [​IMG]
     
  10. Totodile
    OP

    Member Totodile GBAtemp Regular

    Joined:
    Sep 21, 2009
    Messages:
    117
    Country:
    United States
     
  11. AfterYou

    Newcomer AfterYou Member

    Joined:
    Sep 13, 2009
    Messages:
    12
    Country:
    United States
    Hey Totodile, I hate to tell you this, but based on the numbers of your Platinum files in your comparisons, I think you are using the wrong version of the Platinum script (Platinum has 2 scripts on it: one left over from D/P, and one for Platinum).

    Before you run any "get" commands on thenewpoketext for Platinum, you have to rename msg.narc into something else (like dp_msg.narc) and rename pl_msg.narc into msg.narc. Then thenewpoketext should get the full Platinum script, which is actually almost 1.5 times longer than the D/P version of the script.

    Not to impose any extra work on you or anything, but you MIGHT want to update your file comparison chart...
     
  12. Totodile
    OP

    Member Totodile GBAtemp Regular

    Joined:
    Sep 21, 2009
    Messages:
    117
    Country:
    United States
    Haha oops. Thanks for mentioning it. (I suppose with this narc 10%+ now jumps into 30%+)
    [​IMG]
     
  13. Rigle

    Member Rigle GBAtemp Regular

    Joined:
    Apr 15, 2008
    Messages:
    141
    Location:
    Spain
    Country:
    Spain
    Thanks for your post [​IMG]
    And...How can you decompress the tiles (Or images)?
     
  14. AninhaJK

    Newcomer AninhaJK Member

    Joined:
    Sep 12, 2009
    Messages:
    40
    Country:
    Brazil
    Is there a way to patch your ss/hg game with kazos'+ magnius patch?
     
  15. YayMii

    Member YayMii hi

    Joined:
    Jun 24, 2009
    Messages:
    4,882
    Location:
    that place
    Country:
    Canada
    This is very helpful. Thanks!
     
  16. Nerdii

    Banned Nerdii Banned

    Joined:
    May 2, 2009
    Messages:
    290
    Location:
    The Place? Perth... Warn: BIG.
    Country:
    Australia
    You posted the ID's for SS. How about for HG?
     
  17. Totodile
    OP

    Member Totodile GBAtemp Regular

    Joined:
    Sep 21, 2009
    Messages:
    117
    Country:
    United States
    Other IDs
    Soul Silver (IPGJ)
    - The ID for Raq's 4.5 was for the Katakana patch.
    - 5C16C332 (Raq 4.5L)
    Heart Gold (IPKJ)
    - A587D7CD (Kazo 5.0)
    - 8BE17E0E (Raq 4.5K)
    - EBB58C2C (Raq 4.5L)

    Magnius
    As of 1.0
    Soul Silver IPGJ 8E150FF0
    Heart Gold IPKJ A93E71BF
    Files
    header.bin
    data\a\ 0\ 0\8
    data\a\ 0\ 2\7
    data\a\ 0\ 6\8
    data\a\ 1\ 5\2
    data\data\namein.narc
    data\data\slot.narc
    data\dwc\utility.bin
    thenewpoketext, 67 changes
    CODE003.xml
    006.xml
    010.xml
    013.xml
    024.xml
    038.xml
    043.xml
    052.xml
    053.xml
    054.xml
    085.xml
    149.xml
    181.xml
    188.xml
    189.xml
    194.xml
    195.xml
    209.xml
    216.xml
    219.xml
    232.xml
    264.xml
    266.xml
    272.xml
    293.xml
    295.xml
    366.xml
    368.xml
    370.xml
    371.xml
    372.xml
    373.xml
    374.xml
    375.xml
    376.xml
    416.xml
    422.xml
    428.xml
    436.xml
    534.xml
    535.xml
    536.xml
    537.xml
    539.xml
    542.xml
    545.xml
    546.xml
    547.xml
    548.xml
    549.xml
    550.xml
    655.xml
    657.xml
    666.xml
    671.xml
    675.xml
    702.xml
    703.xml
    707.xml
    711.xml
    712.xml
    717.xml
    718.xml
    719.xml
    720.xml
    738.xml
    739.xml
    You'll have to run thenewpoketext on them both. From there patch in the xml files you like and maybe copy other modded files.
    Place changes in the specific tmp folder, then just use mkrom command. You'll have to find the new ID on your own for cheats.
     
  18. Totodile
    OP

    Member Totodile GBAtemp Regular

    Joined:
    Sep 21, 2009
    Messages:
    117
    Country:
    United States
    Files in a\ (need to re-check these, if vague, probably graphics)

    0\
    0\ 4 - Pokémon battle graphics
    0\ 6 - Trainer battle graphics
    0\ 8 - Battle screens

    1\ 4 - Touchscreen menu
    1\ 5 - Bag
    1\ 8 - Items
    1\ 9 - Box graphics

    2\ 0 - Pokémon graphics
    2\ 1 - Summary screen graphics
    2\ 7 - "msg.narc"

    3\ 8 - Message graphics
    3\ 9 - Status effects for Summary

    4\ 6 - Intro screen
    4\ 9 - Trainer card

    6\ 4 - Menu icons

    7\ 7 - Bag (battle)
    7\ 9 - Mail

    8\ 1 - World object graphics
    8\ 2 - Starter Pokémon

    ---

    1\
    1\ 0 - Used for Oak's Intro?
    1\ 4 - Pokémon Forms

    2\ 6 - Certificate
    2\ 7 - Casino Slots

    3\ 0 - TV for Red Gyarados

    4\ 2 - 4\ 7
    - Pokégear

    4\ 9 - Intro Lugia

    5\ 0 - Environment
    5\ 2 - Menu (Yes\No)

    ---

    2\
    6\ 2 - Other intro graphics?

    A fair amount of files I didn't list here probably don't need to be changed. They seem universal across all localizations and other versions.
    Other files probably need no changes for translations. I suggest waiting for tools if you want to make a "hacked" version of the game.
     
  19. buggers

    Newcomer buggers Member

    Joined:
    Sep 13, 2009
    Messages:
    35
    Country:
    United States
     
  20. AfterYou

    Newcomer AfterYou Member

    Joined:
    Sep 13, 2009
    Messages:
    12
    Country:
    United States
    You'll need one of the more recent versions of Crystaltile2, which support LZ77 decompression. These versions are not translated to English, though, so be wary.

    Steps:

    1. Rename whichever file you are working in so it has ".narc" at the end.
    2. Open the narc file with Crystaltile2
    3. Under the files list for all the files in the NARC file, seect all the ones you want to decompress and select the Export option. Save the files somwhere convenient.
    4. Open each compressed file ONE AT A TIME in Crystaltile2. Select the LZ77 search option in your first file. Hit Search in the pop-up window. Then hit Decompress All in the window's menu. Select a folder to save the file to.
    5. Rename the decompressed file to something that is similar to the compressed file so you won't mix up the files.
    6. Repeat steps 4 and 5 until you have decompressed ALL the files you wish to work with.

    Now you should be able to view the decompressed images and edit them. Unfortunately, I still haven't figured out how to re-insert the edited images back into the game.

    (Basically, the problem I have is that when I re-compress my edited files using crystaltile2, the compressed files have a larger file size than the ones originally on the ROM. And Crystaltile2 will only let you replace files in a NARC with files of same or smaller size, meaning some compressed files can't be edited if they don't get re-compressed enough).
     

Share This Page