Sharing your experience

Discussion in 'NDS - ROM Hacking and Translations' started by TSPhoenix, Dec 23, 2007.

Dec 23, 2007

Sharing your experience by TSPhoenix at 10:15 AM (1,405 Views / 0 Likes) 3 replies

  1. TSPhoenix
    OP

    Member TSPhoenix GBAtemp Regular

    Joined:
    Aug 7, 2007
    Messages:
    158
    Country:
    Australia
    I was just wondering if those people involved in making translations, save editors or any other sort of game related hacks would be willing to share a bit of insight on how they did what they did.

    The only worthwhile game hack I've ever done is hex editing Chrono Trigger to make a hex>text table file and other modifications to that game, as in manually without tools only referencing hacking docs. I used some stuff like Hexpose, but nothing specifically for CT.

    I find thats one big problem with hacking these days. There are just less and less documents out there. Sure there are still loads of hacks but guides (like the Cracker's trainer guide) and other documentation on the subject is scant. Either that or I'm just looking in all the wrong places.

    A bit of demonstration as to how you guys find specific types of data in DS games WITHOUT specialist tools would be really neat as being reliant on these tools means that more worthwhile projects are going to be out of our reach for the most part.

    If there is some magic cache of ROM hacking goodness I'm not aware of please fill me in, but otherwise some new content would be great. I'm specifically interested in making a save editor.
     
  2. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,737
    Country:
    United Kingdom
    Both Deufeufeu and myself have half finished documentation on DS rom hacking (I am not sure about Defeufeu but mine is set to be finished after the Jump Ultimate Stars project gets to a more manageable stage (basic bugfix, recompile stage).
    Mine:
    http://www.4shared.com/file/3636881/1f5f088d/rom101.html

    Deufeufeu's I am not sure where it is offhand but he posted the thread around here. His is geared towards a specific game whereas mine is general purpose.

    Still I find there are three main methods:
    realize that most people use C and work forwards and backwards from there (see stuff like kiwi.DS does:
    http://kiwi.ds.googlepages.com/sdat.html ) Some stuff uses XML and similar as well (tony hawks titles).

    Or work from a binary/hex point upwards (finding pointers and liberal reading of GBATek docs ( http://nocash.emubase.de/gbatek.htm ) in some cases for stuff like 3d: it is all mapped to memory sections: certain size files a nice giveaway). I often dump the header of a file along with the locations of obvious breaks and see what the pointers turn out to be.

    3rd is conventional rom hacking:
    trace (be it ASM or memory scanning (like for cheats)) stuff using an emulator
    corrupt stuff and see what happens
    Thought exercises (here is a game level, how would I do it) are also useful I find (when first starting on jump ultimate stars I missed the fact the pointers were relative and drew up an equation to describe it, upon messing with some other stuff it hit me).

    As for save editors I find most of the time they are done in the tried and true method of 400 slightly altered saves (save, move a space and save again, compare 2 saves) and if a hash is not readily decipherable then some ASM is usually the answer (cheats are often made to this end).
     
  3. TSPhoenix
    OP

    Member TSPhoenix GBAtemp Regular

    Joined:
    Aug 7, 2007
    Messages:
    158
    Country:
    Australia
    Thanks very much, that stuff is awesome. Although I only managed to pull off really simple stuff so far having a finger point me in the right direction was quite handy.

    On that note what is a good (preferably free) hex editor these days? I'm still using an old DOS tool which isn't very screen efficient.
     
  4. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,737
    Country:
    United Kingdom
    I use a whole array of editors depending on what I am doing

    Hex Workshop: not free but has byte flip capabilities so is nice for basic stuff. http://www.hexworkshop.com/ Now seems to be updated again (previous updates were 2004)

    HxD: My second choice http://mh-nexus.de/hxd/ I suggest you have this.

    Winhex, part of the X-Ways forensics package, perhaps a bit complex but it works: http://www.x-ways.net/winhex/index-m.html

    Crystaltile2: all in one hacking tool with a focus on the DS. Has table capabilites. I am in a bit of a rush but it is around this very section.

    XVI32: Free, perhaps not that great for rom hacking but it works: http://www.chmaas.handshake.de/delphi/free...xvi32/xvi32.htm

    Tiny Hexer, simple and works well: http://www.mirkes.de/en/freeware/tinyhex.php

    notepad++ also has a hex editor inbuilt which is occasionally useful. http://notepad-plus.sourceforge.net/
    Take a look at some of the hex editors from http://www.romhacking.net/ too, some of them take a bit of tweaking to get working for DS roms (larger file sizes, not necessarily any headers, increased use of 16 bit encodings....) but they are tailor made for rom hacking.
     

Share This Page