How to translate roms?

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by BudWinston, Jan 30, 2015.

  1. BudWinston
    OP

    BudWinston Member

    Newcomer
    39
    5
    Jan 21, 2015
    United States
    Oregon, Illinois
    Is there a certain program I need?
     
  2. LuigiBro
    This message by LuigiBro has been removed from public view by Veho, Jan 30, 2015, Reason: Useless post.
    Jan 30, 2015
  3. FAST6191

    FAST6191 Techromancer

    pip Reporter
    23,166
    8,906
    Nov 21, 2005
    There is no one program or technique. Translating ROMs tends to require gaining some reasonable programming and reverse engineering skills, very doable but still programming/reverse engineering skills.

    Beyond that the 3ds is not that well hacked, does not have well developed low level tools, does not have much in the way of debugging and does not have an emulator worth much cop. To that end you would be very much on the bleeding edge of things and that is not a good place to be if you do not know hacking in the first place, if only because you will largely have to develop your own tools and some of the lower level tools in the first place and that takes some fair knowing about what you are doing.

    The GBA and DS have plenty of as yet untranslated games and all the downsides above do not exist for them (it is well hacked and documented, there are tools available, debugging is possible and there are very nice emulators available that can also assist in hacking). More on that
    http://gbatemp.net/threads/gbatemp-rom-hacking-documentation-project-new-2014-edition-out.73394/
    You might want to read up on GBA and DS hacking as the hardware is very similar and so are several of the formats and ways of doing things.

    To answer your question though you need the ability to decrypt 3ds games (if you have a 4.5 3ds then fantastic, newer hacks are more troublesome but still doable at some level). The decryption programs will spit out a file that is known in these circles as a XORpad, it is the same size as the ROM it decrypts and is basically a copy of the ROM so people do not share them very much (and dumping teams do not include them either despite it being a good thing to do). Some decrypted games are out there and you might get somoene to share but hey.
    You can also use the XORpad to encrypt the ROM again, others, including myself, would say to use so called 0 key encryption. Once that is done you will need a 3ds capable of running such things (so a gateway capable one or possible a CFW one once that gets a bit more developed, not a sky3ds or one of its clones at this stage).

    3ds ROMs split down into two forms once you have that XORpad, they are known as the exefs and romfs

    exefs houses the game binary which is to say the thing that sits in memory and runs on the CPU. (exefs = executable file system)
    the romfs houses the game data (pictures, music, level data, text, video, 3d models, 3d textures.....)

    Many games will mix and match between the two and you might find text in the contents of the exefs, back on the DS you would have found some executable code muddled in with things (definitely on the GBA) but the DS kind of separates things as a security measure of sorts.
    Game data is whatever the programmers cooked up and that can be some very strange stuff indeed. "computing, learn it" is about as narrow as I can make it really if you want to be able to wander in and tackle any game. http://www.romhacking.net/start and the docs I linked a minute ago will cover the stuff more commonly seen.

    The exefs is not that well hacked in public yet and still nowhere near what we have for the GBA and DS. The disassembler is the main tool of the trade here. The 3ds has two processors though the ARM11 is likely the dominant one for things you will be doing (you might have seen terms like arm9 homebrew). I do not know what people are using for this.

    About the only real positive I can say it has over the DS at this point if you are new to hacking is that the 3d subsystems and files are fairly well reverse engineered.
    https://gbatemp.net/threads/extracting-models-and-textures-from-3ds-games.370788/ is a bit old but still a good jumping off point.
     
    Kafke and Melon__Bread like this.
  4. Kafke

    Kafke GBAtemp Fan

    Member
    415
    144
    Jan 2, 2009
    United States
    I'm just gonna say, if you have to ask, you probably aren't anywhere close to being able to do it. If you want to contribute, go find an existing translation project and translate some stuff for them.
     
  5. GHANMI

    GHANMI GBAtemp Advanced Fan

    Member
    966
    491
    Jun 10, 2012
    If someone isn't fluent in whatever language he's translating from, it's for the best he doesn't do any translation. Machine translation websites harm translation projects, they don't help. If you get some grammar books and a JP/EN dictionary (also online kanji dictionaries), chances are that even if you have no prior knowledge of Japanese, a sentence you translate will be better than whatever Google vomits out. At its current state it can't even process kana (basic letters) properly.

    Learning the technical aspects (and assembly) will be infinitely more useful for now. Or doing hack replacing dialogue in some English game with fan-fiction stuff.
     
  6. Kafke

    Kafke GBAtemp Fan

    Member
    415
    144
    Jan 2, 2009
    United States

    Again, refer to my first sentence. If you have to ask, you aren't even close to doing it. That goes for translation as well. I didn't say to do machine translation. But apparently this guy wants to do translation and asks for a program to do it. So unless he was planning on using a pre-made program and doing google translate, he obviously already knew the language (otherwise how is he going to translate a game?). If your goal is to translate the game, either join an existing project, or do a video+subs type of thing.

    Most people asking for programs don't know the first thing about game-hacking in the first place.