Serious problem with CrystalTile2.

Discussion in 'NDS - ROM Hacking and Translations' started by ChimeraReiax, Mar 30, 2011.

Mar 30, 2011
  1. ChimeraReiax
    OP

    Newcomer ChimeraReiax Newbie

    Joined:
    Mar 30, 2011
    Messages:
    5
    Country:
    United States
    Hello, I'm new here obviously (as you can see by my post count; yes it's zero), and to start off I'd like to express a problem that has been plaguing me for an extended amount of time. CrystalTile2 is apparently suppose to be a great program that can extract files from ROMS and, most importantly, .SDATs of DS games. Notice: I'm not trying to promote piracy in any way nor do I condone it. I'm trying to hack Pokémon Black, a game I legally own and enjoy.

    Now I know there are alternatives to extracting DS roms themselves, some of them superior to CT2 in that function, but there's one thing that CT2 seems to have over other programs: it extracts .SDAT files with proper names. If I try extracting a .sdat with kiwi.ds editor, the names get screwed up, so when I try to compile a .sdat, the sounds are jambled to no return. Reshiram's cry becomes Groudon's, most of the music is lost, and sound effects are swapped for some odd reason.

    Now for the problem. CrystalTile2 can only export files from a .sdat one at a time. Wait, it can export more than one at a time, you say? This, at least for me and a few of my friends, would be false. When you select two or more files to export, it DOES ask you to select a file folder to extract to, but when you do this, the program ultimately breaks down with an error message that will be forever embedded in my mind in pure rage:

    "The system cannot find the path specified."

    Okay, so it can extract single files, but when it asks what folder to extract multiple files to, the program decides to not work at all. Considering that there's over 300 or so files to extract, this is a serious problem for my wrists and for time (I get RSI if I click too much; then again, I'm sure that's not healthy to begin with). Now I know CrystalTile2 isn't the only program to extract files from .SDATs, but the problem is that it seems to be the only program I can find that does the job right. Every other program I know extracts the files in an incorrect naming order (CT2 adds numbers to the front which actually compiles correctly in kiwi.ds). So, if some kind, blessed soul would like to lend me a hand in some way, telling me how to get Crystal Tile 2 to work or whatever, I will be greatly pleased. Thank you.

    -ChimeraReiax.

    EDIT: PS, if it helps, my version is 2010.09.06
     
  2. rastsan

    Member rastsan 8 baller, Death Wizard

    Joined:
    May 28, 2008
    Messages:
    963
    Location:
    toronto
    Country:
    Canada
    Ask the creator of CT2 on their forum. Nicely.

    I am doing the same thing for Duel love as I might have to redo the majority of the speech - that says exactly whats on the screen. I have to fix up a .strm converter for this to work.
    Questions:
    Can CT2 not export the sdat entirely (and correctly)? Is it only identifying the correct stuff in the sdat that needs to be done? or fixing the allocation table thats getting you(after KIWI.ds)?

    Kiwi.ds has a problem with re-arranging the filenames - what you have to do after this is rewrite the allocation table. Its loading up the wrong stuff cause its pointing to the wrong stuff all you need to do is fix that.
     
  3. ChimeraReiax
    OP

    Newcomer ChimeraReiax Newbie

    Joined:
    Mar 30, 2011
    Messages:
    5
    Country:
    United States
    The allocation table is huge, and I mean HUGE. Fixing that will be near impossible without a program to do so. Plus, if I could re-point all the files in the allocation table easily, I wouldn't even use CrystalTile2. All I need CT2 to do is export the entire SDAT with the correct names so I can compile a .sdat with Kiwi.ds, but I only need to do this because re-point all the files in the SDAT manually will either take a longer time than needed, or just be impossible. If there's a program that can fix the allocation table or re-point files in the table, please tell me where to find it o_o
     
  4. rastsan

    Member rastsan 8 baller, Death Wizard

    Joined:
    May 28, 2008
    Messages:
    963
    Location:
    toronto
    Country:
    Canada
    Don't know about that. But I do know there were other topics that mentioned fixing the allocation table.
    Hopefully you'll get some help from someone else on this.

    (As I would quite literally have to rewrite the table I need to do anyways). Just getting a translation of the files and people to be the new cast for this that is more trouble - for me.
     
  5. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,712
    Country:
    United Kingdom
    Wow I am shocked somebody managed to get the compile option of kiwi.DS' rebuild tool to work.

    I assume http://www.4shared.com/file/Ut_RM4Pi/ndssndext_v04.html does not do it for you (maybe arrange by date and spin a file list into a renaming batch file)

    Equally newer versions of vgmtrans/toolbox can generate SMAP files (you seem to know your way around SDAT but these are SDK generated file lists that are usually deleted before the rom is packed- a few escaped and pretty much gave us SDAT on a platter) which you might be able to abuse for making a batch file.
    http://sourceforge.net/projects/vgmtoolbox/files/vgmtoolbox/ (misc tools-> extraction tools-> Nintendo DS-> SDAT extractor).

    As for crystaltile2 most consider the SDAT section to be a token addition (try playing something back) and I am not sure who the author is these days so I would not hold my breath.
     
  6. Knyaz Vladimir

    Member Knyaz Vladimir 3DS Hacker

    Joined:
    Apr 18, 2009
    Messages:
    555
    Location:
    Unconfirmed
    Country:
    Canada
    I have a SDAT Extractor on my Filetrip account, which rips SDAT's MIDI and WAVE files properly. Unfortunately, it converts the files, so it can't recompile them, but it's better than nothing. Works with every ROM that has a SDAT.

    ndssndext does that same thing, but it doesn't work perfectly with SDATs for some reason.
     
  7. ChimeraReiax
    OP

    Newcomer ChimeraReiax Newbie

    Joined:
    Mar 30, 2011
    Messages:
    5
    Country:
    United States
    The first one only extracts sseq and swar files, not sbnk, so soundbanks aren't able to be compiled. The second one... How do I use that to compile an SDAT...?!
     
  8. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,712
    Country:
    United Kingdom
    You do not- it does however generate an SMAP file which is like the header but 10x better and far more useful for moving forward with hacking work. In your case I would use the info it contains to make a batch renaming file to try and get naming in a more acceptable format for nds editor. Also use the -x for ndssndext as that makes it simply extract with no de/re/trans coding.

    Here is one I made using that tool from Jigsaw World - Daigekitou less a chunk of the STRM section as it was too big for a post.

    SMAP file

    Equally you never actually mentioned what your hack was aiming for- if you are only tweaking a few files it is often easier to expand a file than rebuild it (especially as we do not have great rebuilding tools- your hack might well be the first to use ndseditor to do a full SDAT rebuild), a rough outline to such a thing <a href="http://gbatemp.net/t284379-pokemon-bw-music-hacking" target="_blank">http://gbatemp.net/t284379-pokemon-bw-music-hacking</a> (general idea is make sure all sections match their new size.
     
  9. ChimeraReiax
    OP

    Newcomer ChimeraReiax Newbie

    Joined:
    Mar 30, 2011
    Messages:
    5
    Country:
    United States
    Huh. I looked into the .SMAP and it seems to have all the info that you showed me, only with BW's music (lol, there's a lot of empty slots in the numbering order... I mean a LOT).

    What I want to do is to get a file larger than the original .sseq into the ROM. That's why I wanted to know if there was a better way to compile .sdats, because doing so would write up a new pointer table instead of forcing me to modify the existing pointers (again: there are tens of thousands of them). However, if this .smap can do just that, I'd love to know exactly what to do with this ting in order to make the import work. Even if the .smap can't do that, I'd still like to know what to do with this thing...
     
  10. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,712
    Country:
    United Kingdom
    Empty slots huh- this usually happens when files are nested within other files or on occasion if they have no real names (I do not think they are mandatory). I tend not to mess with pokemon games but they do have something of a history when it comes to doing things very oddly compared to the previous norm.

    SMAP files by themselves do nothing at all but if you were building things they give you that little bit of data that can be used to help things along the way.
    If it was just adding a bigger file (I assume you got all the bank issues sorted and have the SSEQ already made) then what people usually do for testing and sometimes production stuff is extract the SDAT file from the DS rom as you would normally-

    add the new file to the end of the SDAT

    Both of the following are in the initial header of the SDAT file.
    change the length at the start of the SDAT
    change the length of the file section

    go to the file section, change the length here.

    go back to the pointers to all the individual files and as you would for your basic audio tweak hack change it to point to the file that is now at the end of the newly remade SDAT file.

    I do not think you will have had to change anything else here but I might have missed something.

    Not fun but still far less effort than repointing (maybe 5 entires) compared to an entire SDAT file which you have mentioned is quite large.
     
  11. ChimeraReiax
    OP

    Newcomer ChimeraReiax Newbie

    Joined:
    Mar 30, 2011
    Messages:
    5
    Country:
    United States
    Adding the file to the end of the .SDAT... Out of all things in the entire world that's probably the last thing I would have though of, but should have been the first.

    Sir, I thank you very kindly for sheading wisdom onto me that I seem to have missed entirely. Thank you [​IMG]

    I'll see if this works and will get back to you on the status.
     

Share This Page