Users browsing this thread: 1 Guest(s)
FF6Tools - Browser-Based ROM Editor

Posts: 139
Threads: 6
Thanks Received: 1
Thanks Given: 4
Joined: May 2013
Reputation: 0
Status
None
Wow! This tool is looking much better as you've been working on it. Last time I tried messing around with it I found some difficulty using it for FF4 on the Super Famicom. My hope is to be able to port my Namingway Translation to it instead of using the US version.


Experience is the benchmark to maturity.

Final Fantasy VI - Ted Woolsey Uncensored Edition:
http://www.romhacking.net/hacks/1386

Final Fantasy IV - Namingway Edition:
http://www.romhacking.net/hacks/2337
  Find
Quote  
[-] The following 1 user says Thank You to Rodimus Primal for this post:
  • Everything (01-20-2021)

Posts: 1
Threads: 0
Thanks Received: 0
Thanks Given: 0
Joined: Feb 2021
Reputation: 0
Status
None
This tool seems amazing. Sorry for the noob question, is there a resource somewhere that describes the different script actions that are available and how to use them?  I can figure out a lot of it from context, but docs would make it easier. Just as one example, looking at map 19. Narshe: South Exterior (Intro) I see the action "Set Object Position" a lot in these object scripts, but I don't see a position argument so I'm not sure how the position is controlled.
  Find
Quote  
[-] The following 1 user says Thank You to Kaxon for this post:
  • Everything (02-06-2021)

Posts: 3,969
Threads: 279
Thanks Received: 236
Thanks Given: 57
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(02-06-2021, 12:22 AM)Kaxon Wrote: This tool seems amazing. Sorry for the noob question, is there a resource somewhere that describes the different script actions that are available and how to use them?

Hello, you can check the Hacking FAQ under "Events". Lockirby's event command list describe each event command in detail as an example:

https://www.ff6hacking.com/wiki/doku.php?id=hacking_faq
  Find
Quote  
[-] The following 2 users say Thank You to madsiur for this post:
  • Everything (02-06-2021), Kaxon (02-06-2021)

Posts: 179
Threads: 3
Thanks Received: 24
Thanks Given: 4
Joined: Apr 2015
Reputation: 18
Status
None
Some of the event commands don't have editable parameters yet. Sorry, the event editor is still a WIP. For now, you can use a hex editor to modify the parameters manually (after saving with FF6Tools).

Improving the event editor is next on my list of things to do. Hopefully I will get to it soon.
  Find
Quote  
[-] The following 2 users say Thank You to Everything for this post:
  • Kaxon (02-06-2021), madsiur (02-06-2021)

Posts: 3,969
Threads: 279
Thanks Received: 236
Thanks Given: 57
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(02-06-2021, 02:41 PM)Everything Wrote: Improving the event editor is next on my list of things to do. Hopefully I will get to it soon.

Two things that were mentioned on Discord regarding this;

1) Have a sanity check to make sure to not overwrite what comes after the Events (dialogue pointers?) when you add bytes to the $CA-$CC banks.

2) Being able to disassemble/edit what is called with a B2 command outside the regular event banks (which happens often in romhacks).


These two things combined with what you plan for it would make it the best tool to do event hacking.
  Find
Quote  

Posts: 179
Threads: 3
Thanks Received: 24
Thanks Given: 4
Joined: Apr 2015
Reputation: 18
Status
None
Thanks for the heads up madsiur. I'm trying to decide the best way to implement this in FF6Tools. Currently, if you expand the event script so that it overflows into the dialogue pointers, it will give a warning when you save. I can understand why it might be helpful to check for overflow continuously while editing, but I'd like to leave it the way it is for now.

For expanding events outside of the regular event banks, what if we relocate the dialogue and dialogue pointers instead? That would leave the entirety of banks CA through CD available for events. This would be nice because the expanded event space in bank CD would be accessible from NPC event pointers (so you wouldn't need to rely on command B2). It would also be a lot easier to implement in FF6Tools because fragmented data is difficult to deal with (FF4 Advance does this a lot Hit ). Expanding the ROM and relocating the dialogue to the expanded area is relatively easy (although you wouldn't be able to edit dialogue with e.g. FF3usME afterwards). I'd love to get some feedback on this idea from folks who are interested in using FF6Tools for event editing.

As I start to improve the event editor, it would be helpful to find some folks to help me test it. If anyone is interested in testing (regardless of past experience with event editing), please let me know here or DM me on Discord. Some things I'd like to improve:
  • Allow import/export of binary/text event script data
  • Add missing parameters for all event commands (thanks to Kaxon for pointing one out)
  • Improve command descriptions in the script editor
  • Add cut/copy/paste of event commands
  • Allow selection of multiple commands
  • Double click an NPC or event trigger to open the corresponding event
Edit: crossed off things that are done now
  Find
Quote  
[-] The following 2 users say Thank You to Everything for this post:
  • madsiur (02-08-2021), Rodimus Primal (02-11-2021)

Posts: 3,969
Threads: 279
Thanks Received: 236
Thanks Given: 57
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(02-08-2021, 01:20 PM)Everything Wrote: For expanding events outside of the regular event banks, what if we relocate the dialogue and dialogue pointers instead? That would leave the entirety of banks CA through CD available for events. This would be nice because the expanded event space in bank CD would be accessible from NPC event pointers (so you wouldn't need to rely on command B2). It would also be a lot easier to implement in FF6Tools because fragmented data is difficult to deal with (FF4 Advance does this a lot Hit ). Expanding the ROM and relocating the dialogue to the expanded area is relatively easy (although you wouldn't be able to edit dialogue with e.g. FF3usME afterwards). I'd love to get some feedback on this idea from folks who are interested in using FF6Tools for event editing.

I think that's a good idea, especially if the $CD bank is directly available for NPC events and event triggers. The only downside of this is breaking compatibility with FF3usME, but it's not an issue if you plan to support what FF3usME allows regarding dialogues such as the optimize dialogues function and more importantly some expansion for them. Then FF3usME would no longer be a serious option to edit them.
  Find
Quote  

Posts: 86
Threads: 6
Thanks Received: 14
Thanks Given: 2
Joined: Jul 2020
Reputation: 8
Status
None
(02-09-2021, 10:01 AM)madsiur Wrote:
(02-08-2021, 01:20 PM)Everything Wrote: For expanding events outside of the regular event banks, what if we relocate the dialogue and dialogue pointers instead? That would leave the entirety of banks CA through CD available for events. This would be nice because the expanded event space in bank CD would be accessible from NPC event pointers (so you wouldn't need to rely on command B2). It would also be a lot easier to implement in FF6Tools because fragmented data is difficult to deal with (FF4 Advance does this a lot Hit ). Expanding the ROM and relocating the dialogue to the expanded area is relatively easy (although you wouldn't be able to edit dialogue with e.g. FF3usME afterwards). I'd love to get some feedback on this idea from folks who are interested in using FF6Tools for event editing.

I think that's a good idea, especially if the $CD bank is directly available for NPC events and event triggers. The only downside of this is breaking compatibility with FF3usME, but it's not an issue if you plan to support what FF3usME allows regarding dialogues such as the optimize dialogues function and more importantly some expansion for them. Then FF3usME would no longer be a serious option to edit them.

I have my own very basic dialogue-editing tool that I had to create to compensate for FF3usME not being compatible with relocated dialogue banks.  My tool assumes the FF3usME town dialogue expansion patch has been applied and then just reads the section of the code where the dialogue bank address is fed into the ASM code to figure out where the dialogue banks are instead of checking a hard-coded address, so it allows you to relocate the dialogue banks wherever you want and it'll find them.  I can share the source code for reference if that would be a useful capability.
  Find
Quote  

Posts: 3,969
Threads: 279
Thanks Received: 236
Thanks Given: 57
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(02-09-2021, 01:48 PM)Fast Moon Wrote: I have my own very basic dialogue-editing tool that I had to create to compensate for FF3usME not being compatible with relocated dialogue banks.  My tool assumes the FF3usME town dialogue expansion patch has been applied and then just reads the section of the code where the dialogue bank address is fed into the ASM code to figure out where the dialogue banks are instead of checking a hard-coded address, so it allows you to relocate the dialogue banks wherever you want and it'll find them.  I can share the source code for reference if that would be a useful capability.

It could be something useful to host on the wiki. You can sent it to me by dm if you want.
  Find
Quote  

Posts: 139
Threads: 6
Thanks Received: 1
Thanks Given: 4
Joined: May 2013
Reputation: 0
Status
None
(02-08-2021, 01:20 PM)Everything Wrote: Thanks for the heads up madsiur. I'm trying to decide the best way to implement this in FF6Tools. Currently, if you expand the event script so that it overflows into the dialogue pointers, it will give a warning when you save. I can understand why it might be helpful to check for overflow continuously while editing, but I'd like to leave it the way it is for now.

For expanding events outside of the regular event banks, what if we relocate the dialogue and dialogue pointers instead? That would leave the entirety of banks CA through CD available for events. This would be nice because the expanded event space in bank CD would be accessible from NPC event pointers (so you wouldn't need to rely on command B2). It would also be a lot easier to implement in FF6Tools because fragmented data is difficult to deal with (FF4 Advance does this a lot Hit ). Expanding the ROM and relocating the dialogue to the expanded area is relatively easy (although you wouldn't be able to edit dialogue with e.g. FF3usME afterwards). I'd love to get some feedback on this idea from folks who are interested in using FF6Tools for event editing.

As I start to improve the event editor, it would be helpful to find some folks to help me test it. If anyone is interested in testing (regardless of past experience with event editing), please let me know here or DM me on Discord. Some things I'd like to improve:
  • Allow import/export of binary/text event script data
  • Add missing parameters for all event commands (thanks to Kaxon for pointing one out)
  • Improve command descriptions in the script editor
  • Add cut/copy/paste of event commands
  • Allow selection of multiple commands
  • Double click an NPC or event trigger to open the corresponding event

That would incredible if it all could be done with not only FF6, but the other games FF6Tools is compatible with. Especially the other two SNES games.


Experience is the benchmark to maturity.

Final Fantasy VI - Ted Woolsey Uncensored Edition:
http://www.romhacking.net/hacks/1386

Final Fantasy IV - Namingway Edition:
http://www.romhacking.net/hacks/2337
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite