• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
March 28, 2024, 03:58:56 pm

News:

Please use .png instead of .bmp when uploading unfinished sprites to the forum!


FFTA EDITOR: All In One v0.7 is now out!!

Started by Darthatron, June 02, 2013, 12:36:11 pm

bcrobert

I don't -think- we ever found the flag that makes a mission repeatable. But I only took a cursory glance at the structure that probably contained that so...yeah. >_>

Darthatron may or may not have that information. He spent more time on that structure than I did, and could have used ASM to find things that I wouldn't have been able to.
My FFTA hacking tools: http://ffhacktics.com/smf/index.php?topic=9559.0

Believe it or not, I'm still working on this game.

dck

Hi, I recently started messing around with the editor and I'm wondering, is it normal that all skills return an error in their description field?

Also to wrap my head around some of the different things one can do with this I've been taking a look at an already modded game, and noticed that many skills have Unknown tags ticked. Are these things one can view from some other tool besides AIO?
  • Modding version: Other/Unknown
  • Discord username: adri#1824

Ninety

This is a fantastic tool -- I cannot begin to thank you enough for it. Can't imagine the work it must've taken. Is there any sort of guide or readme somewhere? There's a few details I want to see some more info on, but I'd rather not spam the forum with questions.

dck

Hi, I started trying to mod FFTA little ago myself and although I don't know of any guide per se, I found the AIO very easy to approach and it really covers a lot of things so if there's things you want changed it should keep your entertained for a while :P.
The nightmare modules are very useful as well, although they look a bit intense at first and a good part of what they do is covered by the AIO, they can still modify things more in-depth (like changing what a given effect does instead of just choosing from the preset pool).
Oh and there's lots of information that's already been dug up around the forum, I actually found a couple of specific things just searching.
  • Modding version: Other/Unknown
  • Discord username: adri#1824

Eternal

If you have any questions, please don't hesitate to ask! I'm here to help! :)
  • Modding version: PSX & WotL
"You, no less human than we? Ha! Now there's a beastly thought. You've been less than we from the moment your baseborn father fell upon your mother in whatever gutter saw you sired! You've been chattel since you came into the world drenched in common blood!"
  • Discord username: eternal248#1817

Ninety

Okay then! Please bear with me if this is terribly trivial, I just started using this tool. In order to get my bearings and make 9-year-old me proud, I was trying to make/modify a High Jump ability for the Dragoon, just a stronger Jump. Making a new ability with the proper flags and stats, no problem.

First hurdle: the name. Can I give it my own name? I only saw the drop-down menu, with preset names according to the text that's already in the game. For the moment, I saved it as "Dummy".

Second: making it accessible to the Dragoon. From what I see of the job menu, all abilities are in an ordered list, and you can only change the start and end points of the sub-list containing the class' abilities, no cherrypicking. And the custom ability gets added to the start of the list for that race, so in this case, I'd have to include all Warrior abilities (who's first in the Bangaa list) in order to "reach" the custom ability. Is there any way to circumvent this need?

Item numero tres: binding the ability to an item. I chose the Odin Spear, being properly endgame and all. (Buffed its stats too, since I was already on it.) However, trying to attach to it the Dragoon ability pool gives me an out of bounds exception. This is the sort of error that a readme of some sort would do me good -- I have a working knowledge of programming and so on, and having a better way to troubleshoot than just trial-and-error within the AIO would be nice, as well as reduce the amount of question I'll need to ask of y'all.

And finally, not directly related to the above, but I might as well ask -- is there no way to add or modify S- and R-Abilities, and no way to mod one race's abilities onto another?

Told you I had a lot of questions :D

dck

Well that sure is a lot!

You can rename it yes, as you'll soon find out modifying text is pretty annoying on its own, but luckily there's a tool for changing general names. You pretty much have to clear after every change so it's not very fast, and in my experience it won't save changes with the AIO targeting the same file, but it's definitely worth using.

-The thing is most changes have to be outright modifications of other things, so stuff like adding a skill slot needs to be taken from a neighboring class indeed. However you can replace any skill with any other skill (from any race) using the dropdown menus to the right, which is pretty handy. This could include support skills in classes you don't want them for, or even combo abilities.

-I don't think I've ever gotten an error out of AIO but regardless, it's probably due to the ability not being assigned to a class, if you replace a skill with your new jump and try it should work just fine.

PS: Question of my own, has anyone ever seen the AI actively avoid attacking targets under Expert Guard while berserk? Just ran into this testing some stuff, they will position themselves close but won't attack at all so long as the guard is up.
  • Modding version: Other/Unknown
  • Discord username: adri#1824

Ninety

January 28, 2016, 08:13:57 pm #47 Last Edit: January 28, 2016, 11:00:18 pm by Ninety
Thanks for the prompt answer! Alright, so:

* In the text changer tool, will it change every instance of the string? For instance, say I make a new A-Ability called Ruin and save it under the name Goblin. Does that mean every Goblin in the game is gonna be called Ruin?

* To which dropdown menus do you refer? As far as I can see, the only access to support abilities in the editor is in the class editor, which still wouldn't allow access to abilities of any kind outside the race. EDIT: Wait, hold on. Apparently, you can keep going further after the race's ability list ends in order to access another race's. Huh.

* Got it, thanks!

dck

-Sure it will, luckily though since new skills are added changing old ones I'm not seeing a problem running out of name slots. And there's always the gorillion dummies too I guess. One thing though, the text editor itself won't keep track of the names of skills you've changed. So should you turn Steal: EXP into something else and then needed to change it, you would have to change the same Steal: EXP again.

-Well for support abilities this one covers every support skill in the game, the same menu is the one that covers active abilities, combos and whatnot.

One word of caution since I did run into a serious problem on AIO. If you replace a skill's name with - in the job editor, the editor will interpret it as the end of that race's skill table and will not display anything further down until the next race's table begins. I'm pretty sure you can hex edit this away but I couldn't find the one I had changed myself and there is no way to fix this from the editor or modules themselves. First time I've actually used my backups but certainly glad I've been making them.
  • Modding version: Other/Unknown
  • Discord username: adri#1824

Ninety

February 01, 2016, 12:54:32 pm #49 Last Edit: February 01, 2016, 01:01:05 pm by Ninety
Alright, progress has been going well! Just a couple more questions and I'll be out of your hair for the time being.

-In "FFTA Notes v12.2", there's a section called "minor hacks" which lists several addresses to edit for various effects, including modifying the accuracy bonuses of Concentrate and Turbo MP. Is there anywhere else, be it in AIO, a Nightmare module, or just a hex address listing, that can allow editing of the properties of other Support abilities (such as the damage bonuses for Doublehand or Weapon Atk+)?

-The Formation editor works perfectly with the only exception of the starting party formation. Should I start a game from scratch in order to see this modified? (For reference, I modified this formation when the save file I was testing in was after the first mission, but before Herb Picking.)

-I noticed that to add an ability to an item, you have to assign to it the ability set. In the High Jump example I was using above, this means that the Odin Lance would have to get the same ability set that Wyrmtamer (the replaced ability) was in. This also meant that the Buster Sword, which normally teaches Wyrmtamer, now teaches High Jump. Is there any way to circumvent this?

-Is there any way to set an ability effect to target all allies (or allies exclusively)?

-And finally, is there any way to create a class from scratch (assuming I had the appropriate sprites, of course) without replacing any existing ones?

Thanks again!

dck

February 01, 2016, 06:42:53 pm #50 Last Edit: February 01, 2016, 07:34:56 pm by dck
-They'd need to be hex-edited, yeah. Which isn't as daunting as it first sounds, but I don't think the location of others was found, so for that one'd need to find the function for the ability in question first.

-I don't think changes to the initial player formation can be done after it's already been delivered, or at least I can't see why the game would look at that again. You can't access the menu until before Herb Picking so I could even see it been fixed from the moment the game starts.

-See, you can assign any "ability list" to any item and you can modify them however you like as well, so if say Buster Sword had 1A list and that 1A is also what your Odin Lance is referencing with its new skill, you can just make Buster Sword use 0 or any other ability list that happens to be empty/you've emptied yourself.

-Yes, using the nightmare module for effect editing you can make your own, and thus for example make an effect that has perfect accuracy and only targets allies. Whether it targets all or a zone you would later need to take care of in the AIO, setting the area of effect to full map or whatever you need it to. Note that "make" actually means "replace something you're not going to use". Luckily there's plenty of effects that are easy to dispose of.

-The short answer is no, the long one is also no, but you technically could use room made by pushing around the skills of some classes to fit in something new. I should add that although this is something I intend to use myself, from my experience adding classes to player races ends in flat out failure. Odd thing, since moving classes between player races works just dandy.

By the way, adding sprites to the game is pretty serious from what I gather, and would need replacing something. I know I've only done minor changes with tile molester and those took some time.

No problem answering stuff by the way, it's neat to see someone else jumping through the hoops trying to change the game around as there's not a lot of activity surrounding the game, so to speak :P.
  • Modding version: Other/Unknown
  • Discord username: adri#1824

bcrobert

Adding an all new class would be possible BUT you would have to hunt down every single relevant routine in the game and change pointers throughout. This would be a strenuous task even with high-end tools and detailed knowledge of the assembly.

To put it into perspective, adding an all new class would require us to know about as much about FFTA as pokemon hackers know about Pokemon Firered. We've been fortunate in that this game often favors table structures when possible, but adding all-new content is still a pretty lofty goal for such a small team.

If you move all of the monster classes down, with one recolor removed, then theoretically you could place a playable class where Goblin was before the restructuring. But even that's theoretical, and it's hardly as practical as just replacing Gadgeteer's sprite and calling it something else.

The most promising option, however, might be to take a closer look at the classes that are not race exclusive. Most people would agree that you don't need both a human and a viera archer. If you could split up the Archer icon applied to learnable abilities, then everything else about human archer and viera archer is already separate.

EDIT. Excellent answers btw, dck. Your syntax is easy to follow and very well-suited to informative writing.
My FFTA hacking tools: http://ffhacktics.com/smf/index.php?topic=9559.0

Believe it or not, I'm still working on this game.

dck

February 04, 2016, 02:15:37 pm #52 Last Edit: February 04, 2016, 05:46:46 pm by dck
This might be a question more related to the nightmare modules than AIO, but as it was getting cramped on space for new effects I just remembered that AIO displays the effects from D1 to FF as selectable.
I recall I tested those to see if they actually did something and they didn't seem to, so I'm wondering if there's any reason the nightmare modules list of effects ends at D0 (the last one that works) or one could expand the effective pool of effects to FF.
I'll be testing this soon enough anyhow, but I figured it might help to ask while I'm working on other things in case there's some problem with that's not immediately apparent.

@bcrobert: Thanks! It took me some time to realize how well the nightmare modules complement the AIO, so I thought I'd chime in to keep my mistakes from being repeated.

EDIT: As it turns out I am not so "constrained" in terms of effects that can be replaced as I thought. Going over the list revealed easily 60 that can be changed with little consequence on top of the ~40 I had already used :P.
  • Modding version: Other/Unknown
  • Discord username: adri#1824

Ninety

February 06, 2016, 03:54:41 pm #53 Last Edit: February 06, 2016, 07:37:37 pm by Ninety
Yeah, from what I saw there's a big range of effects that the AIO ignores due to being empty, but can still be modified with the Nightmare modules. EDIT: Derp, other way around. Nightmare ignores, AIO shows. Anyway, should be interesting. I also noticed that the Gadget Defense Up effect is unused in the game, so that's an easy modify.

Okay, so I'm not quite out of your hair yet. Bill me for the shampoo. I noticed that unlike FFTA2, there don't seem to be any ally-only targeting effects in FFTA. This isn't terribly relevant, but I wanted to have the option in store, so. In the ability effect module, there are two addresses for targeting (0x07 and 0x11) that are unused. If I wanted to use one of these to make an "allies only" targeting constraint, would that require getting into the assembly? It seems to be outside of the realm of just hex editing.

(Also, seconding what bcrobert said -- I really appreciate the help, you've been super informative and polite!)

bcrobert

I generally like to avoid effort, but I checked this out. The space that those extra effects would have taken in the table seems to be in use for something else. I'm not sure what it's being used for, but I don't recommend overwriting unknown data carelessly. If you really want to make space for extra ability effects, or anything else for that matter, then I recommend reading some tutorials about repointing.

Thanks to the flexibility of both Nightmare and AIO it's quite possible to change a few pointers, move the data manually in a hex editor, and then continue with far, far less limitations set against you. Provided there aren't any arbitrary limiters that I've forgotten about.

Tl;dr: I stopped at 209 entries on purpose to prevent corruption of mystery data.
My FFTA hacking tools: http://ffhacktics.com/smf/index.php?topic=9559.0

Believe it or not, I'm still working on this game.

dck

February 07, 2016, 08:15:37 am #55 Last Edit: February 07, 2016, 10:59:43 am by dck
Ah I never edited the post a second time since the site was down. I did expand the nightmare list and those entries indeed seemed to have values assigned to them. Within the context of effects, the values assigned to entries after 209 made no sense to me, so I assumed it to be something entirely different and left them alone since I don't like changing things whose purpose I have no idea of.
Regardless, as of now I'm focusing on usability when adding the changes I have in mind, so since there's such a great deal of potential space compared to what I first thought, increasing it further isn't a priority.
Despite all of this I'll probably look into repointing later down the road since it sounds like a good way to tackle the implementation of a few things.

@Ninety: Well it's your lucky day! Both of those unnamed targeting addresses you mentioned target allies only, with no discernible difference that I could notice. Pretty nice surprise in my case since I thought I'd have to make them myself.
  • Modding version: Other/Unknown
  • Discord username: adri#1824

Ninety

No kidding? Man, talk about serendipity. I should have all I need for the moment, now. Thanks a ton for all the help! I'm gonna go lab what changes exactly I want to make, should come up with something interesting.

trukxlig123

Quote from: Ninety on February 06, 2016, 03:54:41 pm
In the ability effect module, there are two addresses for targeting (0x07 and 0x11) that are unused. If I wanted to use one of these to make an "allies only" targeting constraint, would that require getting into the assembly? It seems to be outside of the realm of just hex editing.


0x11 targets allies only (tried and tested). while 0x07 targets either enemy or ally
  • Modding version: Other/Unknown

dck

February 08, 2016, 06:51:09 am #58 Last Edit: February 08, 2016, 09:41:34 pm by dck
That's strange, I have a working ability that's using 0x07 as targeting filter and it targets allies only.

EDIT: Got a weird one of my own I can't seem to crack. Anything that uses the limit glove hitrate function (100% when caster is under 10 hp, 0% otherwise) does respect the caster's HP part, but when the skill can actually land, the hit chances follow the usual 100-(EV/flank factor), instead of defaulting to 100%.
Now, I did find the ugliest workaround in the world for my particular example, but I still have no idea what is causing the function to misbehave.

EDIT2: Waaait a minute using the unadulterated Limit Glove in a vanilla game yields the exact same results. Good enough for me I guess, keeping the edits so that nobody has to deal with this silly thing ever again.
  • Modding version: Other/Unknown
  • Discord username: adri#1824

trukxlig123

March 27, 2016, 11:31:43 am #59 Last Edit: March 27, 2016, 12:16:23 pm by trukxlig123
Does anyone know how to change the portraits of items/weapons/accessories/etc., or is that even possible? I mean some portraits of the mission items are actually cool like "snake shield" as an equip-able shield or the books changed as a new kind of weapon, as "Tomes" perhaps.

Edit: The byte at 00521226 contains magic trophy's portrait which is "01" I tried changing the values up until "7F" , which is ancient coin's portrait, values from 01-7f work perfectly fine, but the values after 7F showed buggy portraits. Does this mean that the mission item's portrait are only limited to mission item portraits and portraits of items/weapons/accessories/etc are also limited to themselves?


  • Modding version: Other/Unknown