• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
January 16, 2022, 08:54:01 pm

News:

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


Animation pointers

Started by bcrobert, June 09, 2016, 01:24:37 am

bcrobert

Not sure how much I can do with this personally, but there's a structure at 0x39651C that's extremely relevant to animation hacking. This was found by Darthatron a while back but I haven't been able to learn enough about it to really matter.

The structure has an entry for each A-ability, with varying lengths, and is heavily laden with pointers, though some sections also look like possible flags at a glance. These pointers probably point to almost everything we want to be able to edit for the sake of animation hacking.

Here's a very simple example of something in this structure: Change the bytes at 0x396520 to 247B3908. This forces Cure to use Fire's palette for the particle effect, resulting in a red version of Cure.

Note that this structure will only really be relevant to high-level hackers. The only reason I even found the palette pointer is through play-testing. Testing other values in the structure mostly resulted in unpredictable effects that I couldn't really make sense of. We would have incredible freedom in our ability animations if anyone were somehow able to make heads or tails of this...thing.
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

Aha, I was hoping someone would have found this. I looked for it myself for some time since it would help so much in animation editing, but came out empty handed. What a shame it never occurred to me checking the forums more in-depth if it had been found back then.
If the structure also contains binary flags, they might be related to when an attack animation is played after the cast animation (even if there is none) and before the actual skill goes off, which was another big thing to work around when working on the subject. It also likely contains whether the skill displays text, HP/MP damage or both upon impact, another greatly restricting factor.

Unfortunately at this point all of my animation work is long over, but in the future when doing the endgame bosses and unique units' skills this will definitely be valuable.
  • Modding version: Other/Unknown
  • Discord username: adri#1824

bcrobert

Well this IS the main jumping off point for almost all of the animation data we want...unfortunately it's a maze of pointers and values with unknown purposes.

This one isn't like the structures that I could decipher just by comparison. Figuring this jumble of numbers out would probably involve a significant amount of guesswork and play-testing, with or without wizard powers.

Which sucks because...it's right here. Most of the relevant data that hasn't been cracked is RIGHT HERE. >_<
My FFTA hacking tools: http://ffhacktics.com/smf/index.php?topic=9559.0

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

Darthatron

I imagine there is some correlation between these index values and some code (or maybe even an unknonw byte??) in a-abilty data?
  • Modding version: Other/Unknown
  • Discord username: Darthatron

bcrobert

Probably? I first tried thinking of it the way moves are programmed in pokemon (set background a, execute animation d, summon particles c, etc) but the animation data contained here seems to have more nuances than just summoning generic pieces of animation.

When I replaced some segments of Cure with segments from Fire, I noticed a behavior indicating that these structures might even share some responsibility for GENERATING the animations, rather than just calling them. The particle effects I produced purely by accident didn't readily look like anything in the game.

So my assumption, as an example, is that it calls a baseline effect (particle, background, etc) and then some of the other values might actually correspond to elements of the effect (size, shape, etc). But this is very, very loose conjecture. It would be super hard to actually break down this data if it operates similarly to my theory. :(
My FFTA hacking tools: http://ffhacktics.com/smf/index.php?topic=9559.0

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