WarioWare D.I.Y. Editor

Discussion in 'NDS - ROM Hacking and Translations' started by bobmcjr, Apr 26, 2013.

Apr 26, 2013

WarioWare D.I.Y. Editor by bobmcjr at 11:35 PM (16,254 Views / 7 Likes) 86 replies

  1. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    I have started to create a save tool and mio editor/viewer for WarioWare D.I.Y. in java. Currently, it can open wii and ds saves to extract mio files, edit game/record/comic/manga metadata, show the preview picture for games, play records, view comics/mangas and the next version will be able to unlock all games/records/comics/achievements for ds saves. I have written the back-end code for the music editor, but I really cannot come up with a good interface for it, plus my current interface would be extremely tedious to implement (tons of radio buttons). If anyone could write something in java that looks roughly like the D.I.Y. music editor I would appreciate it. Zip file has the runnable jar and the source. (Yes I know the source is probably horribly organized)
     

    Attached Files:

    • DIY.zip
      File size:
      322.8 KB
      Views:
      741
    Margen67, Taser9090, Dartz150 and 4 others like this.


  2. Flame

    Member Flame Me > You

    Joined:
    Jul 15, 2008
    Messages:
    3,411
    Country:
    great work, time to check it out.
     
  3. PokemonBlack100
    This message by PokemonBlack100 has been removed from public view by Densetsu, May 8, 2013.
    Apr 27, 2013
  4. CheatFreak47

    Member CheatFreak47 Complex Donut

    Joined:
    Oct 11, 2011
    Messages:
    1,190
    Location:
    Michigan, USA
    Country:
    United States
    quite impressive sir. I was wondering if a tool like this would come out for this game at some point.
     
  5. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    Next version also might have soundfont support. Attached is this song:
    using a fancy soundfont.
     

    Attached Files:

    Dartz150 likes this.
  6. Dann Woolf

    Member Dann Woolf Deadpan Snarker

    Joined:
    Oct 12, 2010
    Messages:
    362
    Location:
    Deventer
    Country:
    Netherlands
    Quick question: you're putting in the ability to unlock all songs/games/comics/medals in the next version, right? Can you make it so we can choose which songs/games/comics/medals to lock/unlock instead of just unlocking all at once? Like with radio buttons? (I think that's what they're called)
     
  7. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    Maybe. For that a dropdown list might be better. All unlockables EXCEPT the forum use a nice single byte = one unlockable system.
     
  8. absinth85

    Newcomer absinth85 Newbie

    Joined:
    Oct 12, 2013
    Messages:
    2
    Country:
    Netherlands
    I wanted to ask a question about hacking Warioware DIY. Is it possible to remove or silence the clicking/squeeky sounds you get whenever you touch a button in warioware DIY?
     
  9. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    I only know how to deal with the actual game/record/comics and save files.
     
  10. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    With the whole push to get all the Nintendo WiFi DLC stuff gathered, I thought I may work on this a bit more. Mainly, I would like to get WarioWare D.I.Y. Showcase injection working (I figure its the easiest way to work with .mio files for those without a flash cartridge and DeSmuME's NAND save support is still a bit iffy). However, I need help interpreting the Wii saves. It appears that the Wii saves use a similar index system to the DS version, but there are five files rather than one to work with. SYS_1 and SYS_0 appear to have index/checksum information of some sort, where SYS_1 is a backup of SYS_0 (these may also have been used as a cache for Wii24 connect distribution of content but I'm not sure). Next, there's the GDATA, RDATA, and MDATA files for games, records, and manga (comics) respectively. These each have a mess of bytes in the beginning I can hardly interpret. The first four bytes look like some sort of checksum followed by the header "MIOR", followed by a lot of bytes I have no idea about (without PizzaBoy's work on CrygorTool, this would be nowhere near where it is currently. I still don't understand the indexes that DIY uses. I hate Nintendo's love of checksums, but its certainly nicer than their new love and obsession with encryption). Also on a side note, I wish that Yasu who made miotool and mioedit would release the sources to those tools, as he seems to have figured out the sprite index system for games. Annoying Japanese devs and their proprietary stuff :P

    A GUI for the music editor would also be nice. Ultimately, it would be neat if the games could actually played using this, but Nintendo uses a lot of weird index/offset stuff to save space.
     
  11. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    Well, I got Showcase savegame injection working. Just extract your save with SaveGameManagerGX, point my utility at GDATA, MDATA, or RDATA (for games, comics/mangas, and records respectively), inject/extract/delete what you want, and install it back with SaveGameManagerGX. Note: Showcase will yell at you for "corrupted" files since I couldn't figure out checksums. Just select OK, it will only display it the first time the modified save is used. Nothing will be deleted, and your modifications should've stuck. Yes you have to have a softmodded Wii to use this.
     

    Attached Files:

    Dartz150 and daicon like this.
  12. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    Lot more usable now: https://db.tt/wK88jN1I

    If anyone wants their content archived in mio format, either send me the saves or load your DS/extracted Wii saves with that jar and extract them yourself and send them. I'm working on an unofficial update to this giant pack of stuff: http://vixynya.blog6.fc2.com/
     
    Dartz150 and Nightwish like this.
  13. HNKii

    Member HNKii GBAtemp Fan

    Joined:
    Jan 28, 2014
    Messages:
    424
    Location:
    Mario Kart Wii-DS Link Play Stadium
    Country:
    China
    Thanks so much for the software!:lol:
    BTW, since you're still working on it, can you help me do a Chinese translation of your software?
    Since I don't know how to translate PC software, can you PM me all the texts in your software, and I'll PM back with Chinese translation?
    (Or you can simply tell me how to.:) )
     
  14. HNKii

    Member HNKii GBAtemp Fan

    Joined:
    Jan 28, 2014
    Messages:
    424
    Location:
    Mario Kart Wii-DS Link Play Stadium
    Country:
    China
    Actually, you do not need a Wii soft modded to do so.:)You just need a Dolphin emulator on your computer.
    Steps:
    1.Copy the save data of WWDIY showcase from Wii to SD card
    2.Plug your SD card into your computer and use Dolphin's inject save data function.(Browse for sd:/private/wii/title/WA4E/data.bin)
    *WA4E could also be WA4P or WA4J depending on the game's region*
    *BE SURE TO MAKE A COPY OF YOUR CLEAN sd:/private/wii/title/WA4E/data.bin IN CASE SOMETHING GOES WRONG!!*
    3.Browse for Dolphin Emulator/Wii/title/00010001/57413445/data for GDATA, MDATA, and RDATA, then edit them.
    (The above works for US version, 57413445 could be 5741344a or 57413450 if game was JAP or PAL, not confirmed though)
    THANKS FOR HELP FROM leseratte, it has been know that the 8-digit numbers are actually
    4 Hex ASCII numbers
    Check them out here: http://www.asciitable.com
    4.Extract all of your save data with Dolphin.
    5.Check the directory of your Dolphin.exe, and you should see a folder named'private.'
    6.Browse for private/wii/title/WA4E/data.bin then copy it right over SD:/private/wii/title/WA4E/data.bin
    *WA4E could also be WA4P or WA4J depending on the game's region*
    7.Plug your SD card back into your Wii, delete the save data for WWDIY on your console(MAKE SURE YOU HAVE A BACKUP IN CASE SOMETHING SCREWS UP!)
    Copy the WWDIY save from the SD card to your Wii
    8. Enjoy!
    Plus: You can get a WAD of WWDIY showcase to show off you games on a PC!:P
    (The region of the WAD must match that of your save data!)
    Edit: Some data do get corrupted. The Hi scores of DIY games were gone, and I somehow can't inject games into the 1st slot on Wii save(Record&Comic not tested)
     
    bobmcjr likes this.
  15. HNKii

    Member HNKii GBAtemp Fan

    Joined:
    Jan 28, 2014
    Messages:
    424
    Location:
    Mario Kart Wii-DS Link Play Stadium
    Country:
    China
    BTW, if a wrong type of MIO file is injected(for example, a Record .mio is injected to the Comic library),the program shuts of immediately.
    It would be great if it pops out a warning:"Not the right type!" then goes back to the library instead of shutting:)
     
  16. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    Good idea. And I looked into the slot 1 issue, had some bad sanity checks. Fixed now. Also, I never considered the Dolphin method. That's a lot better for the paranoid people who don't want to mod their Wii's :P
     
  17. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    Added warning message if wrong type or invalid MIO file is selected.
     
    HNKii likes this.
  18. Fishaman P

    Member Fishaman P Speedrunner

    Joined:
    Jan 2, 2010
    Messages:
    3,176
    Location:
    Wisconsin
    Country:
    United States
    Thanks so much for making this! I've wanted to mess around with DIY's saves for so long.

    I've been poking around in the source for a few minutes, trying to see how the save is read/written. Specifically, the game's checksums interest me.
    However, the code is kinda confusing from a first glance. Could you help a little here? A flow chart or inheritance tree would work fine.
     
  19. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    Yeah I should probably post an update soon. As far as I can tell with what I have now everything appears to work so I'll post an update and updated source tomorrow. A basic android version is also available for use with DraStic.

    The source currently uploaded is an utter mess. The new one simplifies things a bit. (E.g. all save related stuff is in a package called saveutils)
     
    Fishaman P likes this.
  20. bobmcjr
    OP

    Member bobmcjr GBAtemp Advanced Fan

    Joined:
    Apr 26, 2013
    Messages:
    892
    Country:
    United States
    Source and update. Chinese and English versions included.
     

    Attached Files:

    Fishaman P and HNKii like this.
  21. Fishaman P

    Member Fishaman P Speedrunner

    Joined:
    Jan 2, 2010
    Messages:
    3,176
    Location:
    Wisconsin
    Country:
    United States
    All right, that helped a lot! I'm staring at a block of code which I'm 99% sure is the checksum. (There is one, right? :P)
    Now to stare some more until my brain starts comprehending it.
     

Share This Page