SM64DS Text Editor

Discussion in 'NDS - ROM Hacking and Translations' started by Fiachra, Dec 4, 2012.

Dec 4, 2012

SM64DS Text Editor by Fiachra at 9:06 PM (2,950 Views / 0 Likes) 21 replies

  1. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    Hi,

    I have added the ability to edit text in Kuribo's SM64DS Editor (previously you could just read all the text data).

    Kuribo (Mega-Mario) did had most of the work done already, I just added the ability to make changes.

    SM64DSTextEditor_16122012.png SM64DSTextEditor02.png

    Latest version rev. 29 07/01/2013
    Collision generating is now perfect, collision viewer/terrain type editor, minimap editing and other new features. See http://code.google.com/p/sm64dse/ and kuribo64.cjb.net for the latest information.

    It's best you use the European rom for text editing as it has a much larger range of characters available:

    ae17ki.png

    Editing Japaneses text is not currently available.

    See http://code.google.com/p/sm64dse/ for latest version.
     

    Attached Files:



  2. Dirbaio

    Member Dirbaio GBAtemp Regular

    Joined:
    Sep 26, 2010
    Messages:
    158
    Location:
    Spain
    Country:
    Spain
    Cool. `You should probably contact Mega-Mario directly instead...
    BTW "Kuribo" is the name of the Kuribo64 forum, not Mega-Mario's.
     
  3. StapleButter

    Member StapleButter 'New Member' registered since 2009. Fuck yea.

    Joined:
    Dec 5, 2009
    Messages:
    763
    Country:
    France
    Kuribo here! :P

    Seriously, I'm glad that after so long, someone finally showed enough interest in SM64DSe to dare touch the code.

    Anyway, how much programming do you know? It'd be interesting if you were planning on coding more stuff.

    Plans are being made with a few other people (Skelux and blank) to try and fix the model importer's collision, which has always been the number one issue. If we can succeed, this will be a rebirth for SM64DS hacking.


    Thank you for your work, anyway.
     
  4. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    Hi,

    I'm currently studying C# and Java in Computer Science. I have decent knowledge of the basics including object-oriented programming. However, I've never done rom hacking or 3d programming before.

    I was going to try and add other languages to translate and the characters for them. I was also going to try importing custom objects and look at the fact only some levels allow you to import custom levels (eg. Bob-omb battlefield does but whomp's fortress doesn't).

    I'd be interested in working on the project though I don't think I could help much with collision detection but I'm willing to try.

    Fiachra.
     
  5. StapleButter

    Member StapleButter 'New Member' registered since 2009. Fuck yea.

    Joined:
    Dec 5, 2009
    Messages:
    763
    Country:
    France
    Java too? That's nice. If we give SM64DSe a rebirth, we'll most likely port it to Java, for better portability. The OpenTK interface just won't work right under Linux.

    Also, try to not bother about translations until the end of the development cycle. If you add translations before the end, they become a pain in the ass to manage. Random people who come and make a translation into a weirdass language and then disappear forever make it even worse.

    Levels like Whomp's Fortress don't allow custom models because of the texture animation data. The original models have data in the level headers associated to them, to animate certain textures, like water. The texture animation data refers to materials by their names. If you import a new model, the texture animation data will refer to nonexistant materials, which will crash the game. One solution would be knowing the names of animated materials, and making sure the new model has materials with those names.
     
  6. jonthedit

    Member jonthedit GBAtemp Advanced Maniac

    Joined:
    May 30, 2011
    Messages:
    1,691
    Country:
    Bermuda
    Sweeeeet!!!! +REP!!!
    I've been waiting for this since 2009! ^>^
    -REP
    It turns out the scripter didn't bother to make a "All Users" Feature...
    Code:
    System.Exception: NitroROM: cannot find file 'data/message/msg_data_eng.bin'
      at SM64DSe.NitroROM.GetFileFromName(String name) in C:\Users\Fiachra Murray\Documents\Visual Studio 2010\Projects\SM64DSe\NitroROM.cs:line 294
      at SM64DSe.TextEditorForm.TextEditorForm_Load(Object sender, EventArgs e) in C:\Users\Fiachra Murray\Documents\Visual Studio 2010\Projects\SM64DSe\TextEditorForm.cs:line 44
      at System.Windows.Forms.Form.OnLoad(EventArgs e)
      at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
      at System.Windows.Forms.Control.CreateControl()
     
  7. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    Hi,
    Sorry, I meant that at the minute it only edits msg_data_eng.bin - I was going to try to add the msg_data_frn, gmn, itl, spn, nes(US) files as well and the ability to save text that includes characters like áéíóú etc. I didn't mean translating the program.

    Would it be possible to remove the animation data? Or to copy all the data from Bob-omb battlefields header into the others and then be able to import custom levels?

    Hi, it currently only works with the European Rom, though I will be trying to fix that - it should just be setting the program to open "msg_data_nes.bin" instead of "msg_data_eng.bin" if it's the US Rom.
     
  8. StapleButter

    Member StapleButter 'New Member' registered since 2009. Fuck yea.

    Joined:
    Dec 5, 2009
    Messages:
    763
    Country:
    France
    If you're going to add international support to your text editor, you might find this thread useful.

    As for the animation data, having the editor remove it is a possibility. Here's my doc about the level format generated by SM64DSe:
    Warning: Spoilers inside!
     
  9. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    Thanks for these, that must've taken ages to work out!
    That thread's very helpful, will save me trying to work out the positions!

    It looks like it should be possible to go through all level data entries in each overlay and set the texture animation address to NULL. I'll try and see if I can do that in next few days.
     
  10. StapleButter

    Member StapleButter 'New Member' registered since 2009. Fuck yea.

    Joined:
    Dec 5, 2009
    Messages:
    763
    Country:
    France
    Setting the address to NULL would do it.

    Also, for the object formats and all, I fear the doc is incomplete. The best documentation is still to look into SM64DSe's code :P
     
  11. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    Got it working. All the texture animation address pointers have been set to null (the user is given a choice when patching) which means custom models work in all the levels. :)

    Download from first post.

    SM64DSeCastleGroundsCustom01.png SM64DSeCastleGroundsCustom02.png
     
  12. StapleButter

    Member StapleButter 'New Member' registered since 2009. Fuck yea.

    Joined:
    Dec 5, 2009
    Messages:
    763
    Country:
    France
    Nice.

    I'm tempted to give you write access to the SM64DSe repo. Would you be interested?
     
  13. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    Yeah, definitely. Thanks.
     
  14. Max2010

    Newcomer Max2010 Member

    Joined:
    Mar 26, 2010
    Messages:
    11
    Country:
    United States
    after pathing this game using Text Editor the game won't start on nds.
    The game runs only on the emulator? Fonts not working, limited number of characters.
    What can I do to make the game work on a console? If you do not run on the nds it will be a...
    crap?:huh:
     
  15. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    It's working fine for me:

    IMG_20121217_093415.jpg

    The problem seems to be you're trying to use characters not supported by the US rom. For text editing it's recommended you use the European rom as it has WAY more characters available:

    ae17ki.png

    I should have mentioned that though, I'll update the first post.
     
  16. Vinnymac

    Member Vinnymac GBAtemp Regular

    Joined:
    May 15, 2005
    Messages:
    246
    Location:
    NY
    Country:
    United States
    As a fellow CS Major, it is nice to see this making so much progress. You guys are going to put me in tears with your open discussion and sharing of information. I wish more collaborations went so smoothly. Good work Fiachra :]
     
  17. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    Thanks for your support:)

    There's more discussion of it at the official forum (http://kuribo64.cjb.net/)
    SM64DS stuff is under Misc. Rom Hacking and some recent updates in Announcements.

    As well as the text editor there's now the option to import custom object models (but not animated ones) and exporting the level models (no textures yet):
    [​IMG]
     
  18. Max2010

    Newcomer Max2010 Member

    Joined:
    Mar 26, 2010
    Messages:
    11
    Country:
    United States
    yeap.. but these game don't work for me. I tried to run on the nds and there is no effect.
    Fonts not working. Here is an example:

    [​IMG][/IMG][​IMG]
     
  19. Fiachra
    OP

    Newcomer Fiachra Advanced Member

    Joined:
    Nov 27, 2012
    Messages:
    59
    Country:
    Ireland
    What version of the rom are you using? It's still fine for me using the EUR rom:

    SM64DS_NormalSign.png

    same on the DS console.

    Are you using the version in the first post (13122012)? In some of the earlier ones some text could become corrupted when I was resizing the string entries to fit longer/shorter text but it's working fine in the newest version (first post, or newer updates from the Google Code repo).
     
  20. Max2010

    Newcomer Max2010 Member

    Joined:
    Mar 26, 2010
    Messages:
    11
    Country:
    United States
    I mean fonts (A B X Y L R) for each trigger.
    I'm using version 0022 - Super Mario 64 DS (E) (M5) / 0022 - Super Mario 64 DS (E)(Wet 'N' Wild) and Super Mario 64 DS. (PAL)
    Is there any way to run this game on nds? After modifying the text these game not working on nds. Whay?

    Edit. the answer is: Patched ROMs work on R4 flashcarts.
    Only R4 flashcarts? I just have M3DSREAL :wtf:..

    Hovewer - great job;]
     

Share This Page