Golden Sun Texture Hacking

Discussion in 'NDS - ROM Hacking and Translations' started by VILE, Jan 16, 2011.

Jan 16, 2011

Golden Sun Texture Hacking by VILE at 4:22 AM (2,280 Views / 0 Likes) 9 replies

  1. VILE
    OP

    Newcomer VILE Member

    Joined:
    Nov 23, 2009
    Messages:
    33
    Country:
    Australia
    I haven't seen any texture hacking for DS games yet, so i figured i should start work on it.

    [​IMG]
    [​IMG]

    I'm working on injecting them as we speak [​IMG]

    PS: If this has been done can someone tell me please, because AFAIK there aren't any DS texture hacks, but I'm not really that involved with the DS hacking scene.
     
  2. VILE
    OP

    Newcomer VILE Member

    Joined:
    Nov 23, 2009
    Messages:
    33
    Country:
    Australia
    UPDATE:

    [​IMG]

    Getting close guys.

    As soon as this gets correctly exported I'm going to inject it into GSDD and probably release a guide.
     
  3. VILE
    OP

    Newcomer VILE Member

    Joined:
    Nov 23, 2009
    Messages:
    33
    Country:
    Australia
    [​IMG]

    That is an extracted texture, drawn on and converted back, all i have to do now is inject it in the game. I guess i better go get no$GBA working with GSDD.
     
  4. VILE
    OP

    Newcomer VILE Member

    Joined:
    Nov 23, 2009
    Messages:
    33
    Country:
    Australia
    I cant get dsbuff to pack a rom that doesn't black screen (even without any sort of edits to the rom) and it seems that no one really cares about this so I'm probably not going to proceed with this little project.
     
  5. Cjuub

    Member Cjuub GBAtemp Regular

    Joined:
    May 25, 2006
    Messages:
    195
    Country:
    Sweden
    You certainly don't have a lot of patience... It's only been a few hours since you created the thread.

    Anyway, I recently gained interest in ROM hacking and have been following a few tutorials and read some good tips (much of it from FAST6191, really appreciate his will to spread the knowledge) and I been successful with some basic changes in dialogue. But yesterday I ran into the same problem as you VILE, I wasn't able to unpack/pack a ROM without it losing size and stopped working. I found out that using dslazy and dsbuff it didn't extract all the files from the ROM, only some, and that's what's causing the problem.

    Using CrystalTile2's option to view the file system I was able to see all the files in the ROM, but I don't know if it's possible to use it to unpack/pack the ROM.

    The ROM I used was Nine Hours, Nine Persons, Nine Doors. Using an older ROM like Advance Wars DS it was working as i should.

    Anyone know what's causing this? I believe VILE has the same problem, since Golden Sun DS is kind of new and might have the same problem unpacking as Nine Hours, Nine Persons, Nine Doors.


    Oh, and VILE, I'm interested in how you managed to find those graphics in the ROM, as I have been trying that myself with a few DS ROMs but with no success (using tile viewer in CrystalTile2). I've only been successful with NES games so far.
     
  6. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,731
    Country:
    United Kingdom
    Crystaltile2 will unpack and inject things into a rom, changing file sizes for things is a bit trickier on occasion- it is all in the right click options when you bring up the DS file system stuff. Bonus is that it will also allow you to handle a lot of compression on the same menu.

    Anyhow all this is a known problem with ndstool (the program dslazy and dsbuff use to pull apart DS roms), you can manually edit rom internals if you want but if you want a more automated tool then nitro explorer might sort your issues with the repacking
    http://treeki.shacknet.nu/

    If you have not changed the file sizes (doubtful when it comes to 3d work as compression is the word of the day) or have made them smaller and can them up (more likely but far from a certainty) you can use the likes of NDSTS http://www.no-intro.org/tools.htm to inject files back into the rom. This does work around roms that do not like to be rebuilt very well.

    Texture hacking- some file system level stuff has been done before (main texture swapping for games like Soma Bringer and mario kart) but straight up editing has yet to attract much of a crowd. Equally a few people have been having a go at model ripping (this is mainly for the likes of pokemon and kingdom hearts) but technical skills are not that available in those arenas so they mainly use model viewers. You should also remember that more than a few DS 3d models use material colours and lighting to achieve an effect rather than use textures- the DS 3d is weak compared to the likes of the consoles and PC where optimisation is not necessarily the order of the day.

    Filesystem level stuff is easy enough but for the more exotic http://www.romhacking.net/forum/index.php/topic,8407.html is worth a read for part of it all and http://llref.emutalk.net/v2/docs.php (same author as the thread) has a bunch. Rather nicely it also incorporates a bit on animation methods (one of the animation methods involves swapping out textures for others- damage, blinking, clothing changes and beyond).
    A far older spec with a fair few limitations with regards to what actually happens (reverse engineering a file format is usually only as good as what you have in front of you- you can pull apart surrounding code and refer it back to the hardware but it is quite tricky) http://kiwi.ds.googlepages.com/nsbmd.html
    kiwiDS also made a few tools.

    re 2d graphics: there are a few formats the NitroSDK (nintendo's SDK for the DS) provides but not all games use them and compression is also quite common these days. Not sure what advice I can offer here- much like anything in rom hacking it can be plain as day or you can spend 3 weeks battling with a compression format only to have to turn around and battle with an animation/image construction format or indeed parts of the game can be plain as day where others can be hideously complex. Similarly just about everything uses the SDAT sound format but significantly less games use the NitroSDK graphics formats.
     
  7. VILE
    OP

    Newcomer VILE Member

    Joined:
    Nov 23, 2009
    Messages:
    33
    Country:
    Australia
    Well i had a try with those tools and it all compiled fine, but i couldn't see much in the emulator (characters where invisible). I'm going to put it on my DS later and see if i have better luck there.
     
  8. VILE
    OP

    Newcomer VILE Member

    Joined:
    Nov 23, 2009
    Messages:
    33
    Country:
    Australia
    I tried it on my DS and Mathews texture was all screwed up and it froze after pressing Y to get to the map screen. I think its because the the NARC injector i was using didn't modify file size, the texture file was 2 bytes bigger than the original and the NARC injector just deleted those last 2 bytes. If someone can get a good NARC injector tell me plz [​IMG]

    EDIT: Thinking about it, it might be the dodgy compression, i don't think it was compressed properly.
     
  9. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,731
    Country:
    United Kingdom
    4 main NARC tools at this point life.
    narctool, the original NARC editor
    There is a fork for pokemon as well but it might not be as good right now.
    http://gbatemp.net/index.php?showtopic=70202

    Narc explorer
    http://treeki.shacknet.nu/

    Crystaltile2
    http://filetrip.net/f23649-CrystalTile2-2010-09-06.html

    kiwiDS's editor
    http://filetrip.net/f5658-NDS-Editor-0-1.html

    Funny you should mention compression- GS introduced a new type and although I am not sure if it spread to the files have a read of http://gbatemp.net/t274472-codec-lzss-ds-released (not necessarily only the first post).

    Better yet just go it by hand and modify it there.
     
  10. VILE
    OP

    Newcomer VILE Member

    Joined:
    Nov 23, 2009
    Messages:
    33
    Country:
    Australia
    Thanks for the tools, I'm going to try them out soon.

    Also, i knew about the compression before these tools where released, but codex LZSS doesn't seem to decompress or compress 0x40 properly, i could only decompress files with DCDecmp.

    EDIT: Yeh its definitely the compression (but I'm sure the NARC thing would have been another problem), since i don't know the compression algorithm and don't know where to start to decipher it, i think im going to have to stop temporarily. I might try texture hacking a different game (maybe NSMB?).
     

Share This Page