Users browsing this thread: 1 Guest(s)
FF6Tools - ROM Editor for OS X

#71
Posts: 3,647
Threads: 266
Thanks Received: 691
Thanks Given: 283
Joined: Oct 2011
Reputation: 60
Status
Faith
Well this is awesome progress! Event editor would be a nice addition indeed!

Edit: What would be kinda cool as feature, is a music editor and MML importer.. Right now we are using this format that is supported by some japanese RS3 utility to convert to FF6 like data. What would be cool is using the addMusic format as base like other ROM hacking communities do and expand the syntax to support all possible FF6 music commands. Music data editor would also be cool, but working with MML file is easier and midi files can be converted to MML files. There are midi conversion apps that support the addmusic format.

But yeah music editing might not be a priority but it would bring music editing into the 21th century. I was planning to do this but with my workload it could be released in like 2021 or 2025 lol
  Find
Quote  

#72
Posts: 105
Threads: 2
Thanks Received: 101
Thanks Given: 9
Joined: Apr 2015
Reputation: 16
Status
None
I made a tool that makes NES music using Capcom's sound engine from the Mega Man games a few years ago. It might be a good starting point for an MML-based parser for FF6 music. The song data format is very similar. The text format I came up with is loosely based on MML. Here's a link to a browser version if anyone is interested: BLAST

What I have in mind for FF6Tools would be to extract song data from a ROM and display it as text in the browser window. I was thinking of using the MML format on the wiki as a starting point. Thanks madsiur for letting me know about that! Then you could edit the text or copy and paste custom songs in the same format. Then FF6Tools will parse the text, convert it into song data, and insert it into the ROM. Is that something that folks would be interested in? It sounds like the Japanese RS3 tool basically does this already (though I've never used it).

Something else that I've always wanted to do is to make a graphical music editor like Sibelius or Finale (but for video game music). I know a few musicians/composers who would like to make video game music but are intimidated by things like MML. It would be a lot more work, but it's on my bucket list.

A couple more updates, I added support for all of the SFC/SNES versions of FF4 to the map editor. I also added an event editor (currently only working for the SNES version of FF3). It still has some issues but I think it's a pretty good proof of concept. It has to read the entire event script when you load a ROM, so hopefully it's not too slow on older computers. You can edit some commands, but you can't currently add, move, or delete commands. I have all that working in the OS X version though, I just need to copy it over.
  Find
Quote  
[-] The following 4 users say Thank You to Everything for this post:
  • madsiur (03-24-2018), seibaby (03-25-2018), SSJ Rick (03-27-2018), Tenkarider (03-24-2018)

#73
Posts: 3,647
Threads: 266
Thanks Received: 691
Thanks Given: 283
Joined: Oct 2011
Reputation: 60
Status
Faith
(03-24-2018, 07:08 PM)Everything Wrote: What I have in mind for FF6Tools would be to extract song data from a ROM and display it as text in the browser window. I was thinking of using the MML format on the wiki as a starting point. Thanks madsiur for letting me know about that! Then you could edit the text or copy and paste custom songs in the same format. Then FF6Tools will parse the text, convert it into song data, and insert it into the ROM. Is that something that folks would be interested in? It sounds like the Japanese RS3 tool basically does this already (though I've never used it).

Yeah the RS3 tool convert MML files into RS3 music data that is very close to if not exact to FF6 music data. If your web music editor could import MML files and maybe later export a ROM FF6 song data as MML that would be awesome. How you display it in your editor (MML format or text or both) matter less if you're able to import export in MML format.

I've included as attachment some FF6 mml songs from jackimus I was going to put on the wiki as reference anyway.. I also included a SMW app that edit MML file and one that does a SPC file to MML conversion. That second feature is less critical IMO and more a luxury but it's to let you know something like this exist. Finally I've included some smw FF6 mml if you want to check their mml editor and their difference in format. More smw songs are available here.

I don't do mml composition but know the SMW app format is very like what the RS3 editor can parse because both utilities can use tinyMM files (MIDI to MML file) but with time the smw scene had their format evolve and some new commands added allowing more things, hence tinyMM is more a legacy app for them now and they use a more recent midi converter. However this is something @Gi Nattak or @Jackimus could help with, telling the limits of RS3 / FF6 format and which FF6 command is not included or possible with the RS3 tool.

.zip  mmls.zip (35.93 KB, 1 downloads)

.zip  smw-mml-tools.zip (1,016.45 KB, 1 downloads)

.zip  smw-ff6-mmls.zip (506.56 KB, 2 downloads)


(03-24-2018, 07:08 PM)Everything Wrote: Something else that I've always wanted to do is to make a graphical music editor like Sibelius or Finale (but for video game music). I know a few musicians/composers who would like to make video game music but are intimidated by things like MML. It would be a lot more work, but it's on my bucket list.

That would be something jackimus could use! Awesome idea too!
  Find
Quote  

#74
Posts: 105
Threads: 2
Thanks Received: 101
Thanks Given: 9
Joined: Apr 2015
Reputation: 16
Status
None
I've made some major progress on FF6Tools and moved it to GitHub. Check it out here:

FF6Tools / GitHub Repository

I recommend using Chrome if you have it. Firefox also works but it will be a bit slower. I've also tested it with Safari. I haven't tried IE but I bet it would have issues.

I've added a lot of features to the event editor. You can now insert/delete commands and move commands around in the script. Many of the features work only on the SNES/US ROM at the moment, but I'll eventually add support for other versions. It should accept a headered ROM, but it will strip the header if you save your file. Speaking of which, right now it can only open a fresh ROM. I'll eventually make it so that you can open a modified ROM.

There is unfortunately no data relocation support yet, so if you add too many event commands, the last part will get cut off. I'll fix that soon. I'm sure there are other bugs too. Please try it out and let me know if you have questions or feedback!

Also, I had been meaning to share this on the Slick Productions forum since I added FF4 and FF5 support and I know there are a lot of folks over there who might be interested. But the web page seems to be down. Anyway, feel free to share the links above if anyone else might be interested.
  Find
Quote  
[-] The following 4 users say Thank You to Everything for this post:
  • Gi Nattak (06-12-2018), madsiur (06-13-2018), NPCnextdoor (06-16-2018), Warrax (10-21-2018)

#75
Posts: 167
Threads: 3
Thanks Received: 14
Thanks Given: 99
Joined: May 2013
Reputation: 0
Status
None
This is the best map editor so far even tho the browser version is missing a lot of features. My only problem is not being able to read modified ROMs, specially since it use a web browser which I tend to close by accident once in a while (and lose all progress as a result).

I was able to make an IPS file with map changes and apply the patch to a FF3usME edited ROM, it works but the WoR map gets corrupted so I'd make sure FF6Tools works with ROMs modified by FF3usME too.

Also the editor seems to move a lot of data...over 200k even when I haven't done much, why is that? This also results in patches that fix map bugs (even maps that I haven't touched with FF6Tool) to not work anymore.



  Find
Quote  

#76
Posts: 105
Threads: 2
Thanks Received: 101
Thanks Given: 9
Joined: Apr 2015
Reputation: 16
Status
None
(11-07-2018, 01:44 PM)Warrax Wrote: This is the best map editor so far even tho the browser version is missing a lot of features. My only problem is not being able to read modified ROMs, specially since it use a web browser which I tend to close by accident once in a while (and lose all progress as a result).

I was able to make an IPS file with map changes and apply the patch to a FF3usME edited ROM, it works but the WoR map gets corrupted so I'd make sure FF6Tools works with ROMs modified by FF3usME too.

Also the editor seems to move a lot of data...over 200k even when I haven't done much, why is that? This also results in patches that fix map bugs (even maps that I haven't touched with FF6Tool) to not work anymore.

Thanks for the feedback. I just made it so that if you open a non-vanilla ROM, FF6Tools will give you a list of built-in definition files to choose from. This should allow you to load ROMs which have been modified by FF3usME or other editors. Also, if you previously saved using FF6Tools, you should have gotten a zip file with two files inside. One is the modified ROM, and the other is a json file that you can use to re-open the modified ROM in FF6Tools.

I'm thinking about adding a warning message in case you accidentally close the window or hit the back button. Just gotta figure out how to do that.

I'm not sure about the issue with the WoR map. I'll test that out myself and see if I can recreate the problem. Now that I think about it, I don't think I've tested WoR or Serpent Trench at all!

I expect that the reason why you are seeing large patch sizes is that FF6Tools re-calculates pointer tables to optimize data storage. So for example, if you edit a map and the data length changes by a few bytes after re-compression, all of the data for the following maps will shift over by a few bytes. The IPS and UPS formats have no way of handling this, so they treat it as though the entire thing is a new block of data. If you need a smaller patch file size, you could try a different format like xdelta or bsdiff which are a bit more optimized for this type of thing. I have tentative plans to incorporate a multi-format patch generator and patcher directly into FF6Tools, but this is probably a long way off.

Patches that fix map bugs only work if the map data is in its original location in the ROM, so they would need to be applied before editing any maps with FF6Tools. Or you would need to make the fixes manually using FF6Tools.



On a side note, I added support for the Japanese and European versions of FF6 Advance, including multi-language text boxes for strings. Apparently strings are stored separately for the small and large fonts that the game uses. This is also true for the Japanese version of FF6 Advance, which has separate strings for "with Kanji" and "without Kanji". So you need to edit all duplicates of these strings in order for your changes to show up everywhere in the game.

I also added support for the original Final Fantasy for the NES. Here are some screenshots:

Map Editor: Screenshot 1  Screenshot 2
Battle Editor: Screenshot 3  Screenshot 4
  Find
Quote  
[-] The following 2 users say Thank You to Everything for this post:
  • madsiur (11-23-2018), Warrax (11-22-2018)

#77
Posts: 167
Threads: 3
Thanks Received: 14
Thanks Given: 99
Joined: May 2013
Reputation: 0
Status
None
That's awesome! Happy to know that I'll able to resume my project, thanks a lot for your work.


(11-22-2018, 04:28 PM)Everything Wrote: I'm not sure about the issue with the WoR map. I'll test that out myself and see if I can recreate the problem. Now that I think about it, I don't think I've tested WoR or Serpent Trench at all!

The problem can be recreated within FF6Tools since it can load modified ROMs now. If you select the WoR map, you'll see right away that there's no tiles, entrances are still there tho. I used a ROM that was expanded to 32mbit using the expanding feature in FF3usME.



  Find
Quote  

#78
Posts: 5
Threads: 2
Thanks Received: 0
Thanks Given: 0
Joined: Dec 2018
Reputation: 0
Status
None
So, I'm not sure if this is the right place to post this, but I just downloaded the latest version, and I can't seem to open up any roms with it. I have a v1.0 FFIII snes US rom. Not entirely sure what I'm doing wrong. It's an .smc extension, if that's any help.
  Find
Quote  

#79
Posts: 105
Threads: 2
Thanks Received: 101
Thanks Given: 9
Joined: Apr 2015
Reputation: 16
Status
None
You're using the OS X version, I assume? I've kinda stopped supporting that in favor of the browser version. But you should be able to open an smc file. Try changing the extension to .sfc instead. That might do the trick. I'll fix that extension issue if I ever release a new version for OS X.
  Find
Quote  

#80
Posts: 167
Threads: 3
Thanks Received: 14
Thanks Given: 99
Joined: May 2013
Reputation: 0
Status
None
That would be great if you could add some QoL like showing maps number in both Hex and Dec, a toggle to see map grid, a toggle to show tile solidity on maps and displaying the X and Y of the tile where the mouse cursor is and of the selected tile/trigger.



  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite