Author Topic: Improving the FF5a Custom Class Mod  (Read 173 times)

N00bHax

  • Mist Dragon
  • *
  • Posts: 1
    • View Profile
Improving the FF5a Custom Class Mod
« on: September 12, 2017, 01:32:33 PM »
Hello everyone. This is my first post (besides dischord). I found a wonderful FF5a mod but wanted to add to it in two ways. This mod frees up the freelancer to full power rather than having a useless fight when you have x-fight or jump or mug, ONE ability, and a mostly useless item command. Also every innate that you gain isn't "dead weight" before you're ready to go freelancer since it allows all innates to work on all classes.

I am looking to expand upon this mod. I was wondering if 1) if all passives could be made innate without their stat boost but then give their stat boost if selected to take up a precious action card slot. I think this is very doable since the following innates already function this way: Dual-Wield, Pharmacology, Artful Dodger, Cover, Counter, Shirahadori, Learning, Magic Shell, Caution (Vigilance), First Attack (First Strike), Find Passages, Find Pits, Light Step, Sprint, ABP Up, and Read Ahead. The only abilities that would need changed are: Equip Shields, Equip Armors, Equip Ribbons, Equip Swords, Equip Spears, Equip Katanas, Equip Axes, Equip Bows, Equip Whips, Equip Harps, Barehanded, Two-Handed, Berserk, Equip Rods, Undead, EXP Up, and Lure. And since HP +30% and MP +30% et al already don't give stats, they probably don't need to be changed at all.

I also wonder if 2) the passives can be granted as soon as they are gained, rather than grinding out extra abilities you don't want. Does anyone know what the innate-granting function looks like? I assume it procs upon mastery (job level 2 to 7 depending on the class) with a list of abilities to grant, so it could just be made to proc upon each lower level for a passive ability-granting class. Stacking issues could be overcome by first removing abilities from lower levels before adding them, although I'm not sure if that would "fit" well.

I'm also curious who considers his ability point cost rebalancing to be on point.
« Last Edit: September 13, 2017, 10:40:27 AM by N00bHax »

Squall

  • Iron Claw
  • *
  • Posts: 407
    • View Profile
Re: Improving the FF5a Custom Class Mod
« Reply #1 on: September 13, 2017, 04:00:15 AM »
Hey N00bHax, welcome to slick and our FF5 community! If you have any questions - don't hesitate to ask, we will try to answer as much as we can/know :)

Quote
I was wondering if 1) if all passives could be made innate
Short version - NO. The number of innates is fixed - 16, while passives ... well I haven't counted but they are much more. So simple tagging of all passives as innates is not possible. Also innates are hard coded, so you can't even change their order.

It seems to me you don't understand how innate work. I will suggest take my Viewer and check carefully Ability & Jobs tabs. Let me try to explain:
- innate are subset of Passive abilities
- there are exact 16 innates (2 bytes) and their bit meaning is hardcoded
- innate don't need to be equipped or learned in order to function
- which innate will be active depend of the Job

Quote
I also wonder if 2) the passives can be granted as soon as they are gained, rather than grinding out extra abilities you don't want.
All abilities (not only passives) are gained (learned) with ABP. I don't understand how you gain without grinding ...

Quote
Does anyone know what the innate-granting function looks like?
There is no such thing. Innates are hardcoded in Job table. There is no granting :)

Quote
I assume it procs upon mastery (job level 2 to 7 depending on the class) with a list of abilities to grant
Not really. When you master a job, its innate ability are added to innates of Mimic/Freelancer

Praetarius5018

  • Siren
  • *
  • Posts: 78
    • View Profile
Re: Improving the FF5a Custom Class Mod
« Reply #2 on: September 13, 2017, 11:11:03 AM »
I wonder if the advance version still has the same bug...
if you only have mutable abilities and get muted - the game just hangs. Because it can't find a valid slot to put the pointer to.

Quote
Does anyone know what the innate-granting function looks like?
There is no such thing. Innates are hardcoded in Job table. There is no granting :)
Actually there is - at least for the SNES version, I expect the GBA version to be similar.
When changing jobs or abilities the entire character is recalculated, including which innates you have active.
It just so happens there is a check if you are a mime or freelancer, only then does it even check for learned innates.
You could remove this check and get the innates on all jobs.

In the end, everything regarding innates is hardcoded, so if you want to change anything about it you have to get dirty with asm.

Also, I'd be careful with making every passive innate; not so much because getting +71.6% HP might be OP but because always-on cover (why did my mage just jump in front of the tank to take a physical hit?) or counter (fire sword vs fire absorbing enemy) or heaven forbid berserk can be very detrimental.


Quote
I also wonder if 2) the passives can be granted as soon as they are gained, rather than grinding out extra abilities you don't want.
All abilities (not only passives) are gained (learned) with ABP. I don't understand how you gain without grinding ...
maybe some kind of shop where you spend ABP instead of gold?

Squall

  • Iron Claw
  • *
  • Posts: 407
    • View Profile
Re: Improving the FF5a Custom Class Mod
« Reply #3 on: September 13, 2017, 12:10:59 PM »
Quote
I also wonder if 2) the passives can be granted as soon as they are gained, rather than grinding out extra abilities you don't want.
All abilities (not only passives) are gained (learned) with ABP. I don't understand how you gain without grinding ...
maybe some kind of shop where you spend ABP instead of gold?
That will be interesting although it will still involve some grinding :) Implication of that could be a mastering one job while playing other :D

LightPhoenix

  • FF5 Hacker
  • *
  • Posts: 129
    • View Profile
Re: Improving the FF5a Custom Class Mod
« Reply #4 on: November 26, 2017, 10:56:13 PM »
Quote
Short version - NO. The number of innates is fixed - 16, while passives ... well I haven't counted but they are much more. So simple tagging of all passives as innates is not possible. Also innates are hard coded, so you can't even change their order.

It seems to me you don't understand how innate work. I will suggest take my Viewer and check carefully Ability & Jobs tabs. Let me try to explain:
- innate are subset of Passive abilities
- there are exact 16 innates (2 bytes) and their bit meaning is hardcoded
- innate don't need to be equipped or learned in order to function
- which innate will be active depend of the Job


This isn't really a hard no, but it's definitely difficult enough to be a soft no.

Simply, when a character either has an innate skill from a class, or equipped via the learned ability, one bit of a word is set.  IIRC, this is actually done via masking; each ability and class has a word value that is all OR'd together.  For Freelancer and Mimic, it's a bit more complicated, and I don't recall it well enough without checking my notes (it's been a while).

There's nothing stopping someone from making more innates via expanding tables, finding free space, possibly changing references, and checking that instead... although this is where it becomes a "soft no" since this is quite the undertaking.  Similarly, there's nothing technically stopping someone from changing innates (or expanded innates) to being included in Freelancer/Mimic (or any class) as soon as they are learned - it's just not easy.

However, if you were looking to simply change a passive, that's considerably easier (but by no means trivial).  It just involves removing references where the passive bit was originally checked, and writing new code to check the bit for your new passive.

Squall

  • Iron Claw
  • *
  • Posts: 407
    • View Profile
Re: Improving the FF5a Custom Class Mod
« Reply #5 on: November 27, 2017, 05:06:36 AM »
Code: [Select]
This isn't really a hard no, but it's definitely difficult enough to be a soft no.Hehe very soft indeed :D