Final Fantasy Hacktics

Modding => Help! => Topic started by: Rfh on September 18, 2011, 08:34:31 am

Title: Help with Heal + Revive
Post by: Rfh on September 18, 2011, 08:34:31 am
Hi! (I'm Spanish and I'm 14 years old, sorry for my English Level)

I want to create an ability to do the same as FFTA Sage raise skill or FFTA2 summoner Fenix skill (Heal + Revive) in the PSP VERSION, FFT TWotL.

I work with 0D Heal_(Y)% Hit_F(MA+X)% formula, but it needs cancel anything status. Status is applied first; if status is blocked by target, no heal.
I have tried many things, but all ideas have not worked well. (like I was using FFTPatcher in 'inflict statuses' I edited 20h add blank status, and in 'status effects' blank status cancels dead, but this idea heal units and add status blank, but it 00% inflict in Dead units.)

Now, I'm interesting  in change which routine the formula calls. In the PSX version the ASM hacking is:

<Patch name="Formula 0D can hit when status not applied">
   <Description>
      Formula 0D can hit when status not applied
   </Description>
   <Location file="BATTLE_BIN" offset="121F60">
     ad1f060c
   </Location>
 </Patch>


But... How can I do this in the PSP version?
Does anyone have any other ideas?


Other post in this forum related to it: http://ffhacktics.com/smf/index.php?topic=7491.0 and http://ffhacktics.com/smf/index.php?topic=5873.0

Please Help!  :cry: :cry: :cry:
Title: Re: Help with Heal + Revive
Post by: usckitty on September 19, 2011, 01:40:28 am
I had the same question and the experts here helped me out! Check Pride's ASM hack...

http://ffhacktics.com/smf/index.php?topic=7491.msg151411#msg151411
Title: Re: Help with Heal + Revive
Post by: Rfh on September 19, 2011, 07:13:41 am
Quote from: usckitty on September 19, 2011, 01:40:28 am
I had the same question and the experts here helped me out! Check Pride's ASM hack...

http://ffhacktics.com/smf/index.php?topic=7491.msg151411#msg151411


But Pride's ASM hack is only for PSX version. Is possible an ASM hack for PSP version?
Title: Re: Help with Heal + Revive
Post by: Pride on September 19, 2011, 07:20:02 am
There is almost no knowledge of psp asm hacking and no one is doing asm hacking for the psp (probably because there isn't a psp debugger to my knowledge) so there will likely not be a hack like that for a long while.
Title: Re: Help with Heal + Revive
Post by: formerdeathcorps on September 19, 2011, 04:05:20 pm
Pride, let's not forget I already documented how you convert PSX to PSP offsets for formulas.  It's here: http://ffhacktics.com/smf/index.php?topic=6826.0.  Thus, every single hack on FFH that currently affects any aspect of formulas should be translatable to PSP offsets.

Thus, to satisfy Rfh's request:

PSP BATTLE.BIN
Offset: 0x11FF2C
New Hex: A017060C
Title: Re: Help with Heal + Revive
Post by: Glain on September 19, 2011, 07:26:53 pm
fdc, it's worth a shot, but... they changed some things in the PSP version, so the source code is different, it's a different target processor, it's probably a different compiler, etc. The "same" routines aren't going to have the same ASM... I'd bet on it.
Title: Re: Help with Heal + Revive
Post by: formerdeathcorps on September 19, 2011, 07:42:00 pm
Quote from: Glain on September 19, 2011, 07:26:53 pm
fdc, it's worth a shot, but... they changed some things in the PSP version, so the source code is different, it's a different target processor, it's probably a different compiler, etc. The "same" routines aren't going to have the same ASM... I'd bet on it.


Although I haven't looked too deeply, from what I've seen so far, both games have identical size formula tables (just in different places in the respective files), and corresponding routines in both versions are structured in exactly the same order (they have the exact same # of jal commands, interspersed by exactly the same branch checks on r2, and all equivalent routines in both versions are in the same places on all shared formula routines).  The only difference I've found so far is the values of the addresses used by the branch/jump/load instructions and a couple of added efficiencies on some of the longer non-formula routines.  The different processor (PSP vs. PSX) runs a later version of MIPS, but all early versions of MIPS are still forwards compatible (so Square could conceivably C/P PSX binary code into their PSP files without an issue).  Thus, even though I haven't documented every line, I think it's safe to assume the formula routines are equivalent, except for small and mostly trivial exceptions.