• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
April 19, 2024, 06:13:42 am

News:

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


Rfh ASM hacks...

Started by Rfh, July 26, 2012, 04:19:45 pm

Rfh

July 26, 2012, 04:19:45 pm Last Edit: March 28, 2013, 03:31:33 pm by Rfh
I cannot say that I know much about ASM hacking, but thanks to the help of FFH, specially Choto, Pride and Glain specially in the thread of ''Is possible to do this?'' now I have done and I post here maybe usefull for anyone ASM hacks...

-Multiple Formula Edit
-Shop Availabity is based on your the Ramza level in the party and the level for unlock each item is the value put in ''Enemy level''
-Multi-hit Formulas always hit (1+#)


Visit my guide http://ffhacktics.com/smf/index.php?topic=8841.0  for see  these ASM hacks



Two Swords depend of the flag under hit allies instead of Weapon Range



<Patch name="Two Swords depend of the flag under hit allies instead of Weapon Range">
    <Description>If you check this flag and you have Two Swords as a support yhe ability hit twice.</Description>
    <Location file="BATTLE_BIN" offset="1165C0">
     04
    </Location>
  </Patch>

Good/Bad compat is +/- 12.5% and Best/Worst compat is +/- 25%

<Patch name=" Good/Bad compat is +/- 12.5% and Best/Worst compat is +/- 25%">
    <Description> Good/Bad compat is +/- 12.5% and Best/Worst compat is +/- 25%</Description>
    <Location file="BATTLE_BIN" offset="011DA9C">
      82
    </Location>
    <Location file="BATTLE_BIN" offset="011DAB8">
      42
    </Location>
    <Location file="BATTLE_BIN" offset="011DAD8">
      82
    </Location>
    <Location file="BATTLE_BIN" offset="011DAF0">
      42
    </Location>
  </Patch>



Good/Bad compat is +/- 6.25% and Best/Worst compat is +/- 12.5%



 
<Patch name=" Good/Bad compat is +/- 6.25% and Best/Worst compat is +/- 12.5%">
    <Description> Good/Bad compat is +/- 12.5% and Best/Worst compat is +/- 25%</Description>
    <Location file="BATTLE_BIN" offset="011DA9C">
      C2
    </Location>
    <Location file="BATTLE_BIN" offset="011DAB8">
      82
    </Location>
    <Location file="BATTLE_BIN" offset="011DAD8">
      C2
    </Location>
    <Location file="BATTLE_BIN" offset="011DAF0">
      82
    </Location>
  </Patch>


Two Swords depend of the flag under hit allies instead of Weapon Range



<Patch name="Two Swords depend of the flag under hit allies instead of Weapon Range">
    <Description>If you check this flag and you have Two Swords as a support yhe ability hit twice.</Description>
    <Location file="BATTLE_BIN" offset="1165C0">
     04
    </Location>
  </Patch>



XX status use Wall CT


- This is light modification of the hack that I more want and the more hard to do of all of my hacks


<Patch name="XX status use Wall CT">
<Description>Wall CT is always 0. The CT of the new status is adjustable in Wall CT in FFTPatcher

Status number:

00 Blank Status
01 Crystal
02 Dead
03 Undead
04 Charging
05 Jump
06 Defending
07 Performing
08 Petrify
09 Invite
0A Darkness
0B Confusion
0C Silence
0D Blood Suck
0E Dark / Evil Loocking
0F Treasure

</Description>
<Location file="BATTLE_BIN" offset="12693c">
BC770508
00000000
00000000
00000000


</Location>
<Location file="BATTLE_BIN" offset="f6ef0">
07000234
07004410
21100000
02008104
21108000
07008224
C3100200
53360608
00000000
XX000534
01000834
1980073C
982DE78C
0700A330
2128E800
BB01A290
07306900
5A360608
00000000


</Location>
</Patch>


Death countdown only for undeads



<Patch name="death countdown only for undeads">
<Description>death countdown only for undeads</Description>
<Location file="SCUS_942_21" offset="4E37C">
5800E290
00000000
10004230
07004010
FF000234
5800E290
00000000
10004230
02004010
</Location>
<Location file="SCUS_942_21" offset="4DC8C">
58000292
00000000
10004230
07004010
FF000234
58000292
00000000
10004230
02004010
</Location>
<Location file="BATTLE_BIN" offset="11C128">
58000292
00000000
10004230
5F004010
21100000
58000292
00000000
10004230
5A004010
</Location>
</Patch>


Undead revive with max hp


<Patch name="undead revive with max hp">
    <Description>Describe Your Patch Here</Description>
    <Location file="BATTLE_BIN" offset="11C190">
      00000000
      00000000
      00000000
      00000000
      00000000
      00000000
      00000000
      00000000
    </Location>
  </Patch>

Remove Faith and Innocent effect

Usefull for anyone that want create new status with icon and CT

<Patch name="Remove Faith and Innocent effect">
<Description>Remove Faith and Innocent effect</Description>
<Location file="BATTLE_BIN" offset="120150">
7C1C0608
00000000
[size=78%]</Location>[/size]
</Patch>


Chance to react become (Br+65)/2



You can edit the 0x41 (65 in decimal) by any number


<Patch name="Chance to react become (Br+65)/2">
<Description>Chance to react become (Br+65)/2</Description>
<Location file="BATTLE_BIN" offset="126398">
48780508
00000000
00000000
</Location>
<Location file="BATTLE_BIN" offset="F7120">
24008590
00000000
41000934
21282501
42280500
3378010C
64000434
E9340608
00000000
</Location>
</Patch>


Concentrate divides /2 target evasion

<Patch name="Concentrate divides /2 target evasion">
    <Location file="BATTLE_BIN" offset="F75B4">
      00008390
      00000000
      40180300
      000083A0
      C6140608
      00000000
    </Location>
    <Location file="BATTLE_BIN" offset="11E308">
      6D790508
      00000000
    </Location>
  </Patch>


If you check in FFTPatcher the flag under Hit Allies the damage of the ability is halved, and if you check Math Skill, it is doubled

<Patch name="If you check in FFTPatcher the flag under Hit Allies the damage of the ability is halved, and if you check Math Skill, it is doubled">
<Description>
     Requires Defense and Magic Defense % By Job Hack. Only works with XA*YA Formulas.
    </Description>
    <Location file="BATTLE_BIN" offset="f75cc">
      18006200
      12100000
      1980033C
      F4386390
      00000000
      20006330
      02006010
      00000000
      43100200
      1980033C
      F5386390
      00000000
      40006330
      02006010
      00000000
      40100200
      F1760508
      00000000
    </Location>
    <Location file="BATTLE_BIN" offset="f6bbc">
      73790508
      00000000
    </Location>
  </Patch>



Formulas ASM hacks

You can use this hack for the two next formulas:

Quote from: Xifanie on September 12, 2008, 10:50:17 pm
(#+1%) chance of Knockback

BATTLE.BIN
0x0011F9C8 :
##000534


Formula 37 become Dmg_((PA+Y)/2*PA) #% Knockback

<Patch name="Formula 37 become Dmg_((PA+Y)/2*PA) #% Knockback">
<Description>Use Xifane chance of Knockback for determine the formula Knockback</Description>
<Location file="BATTLE_BIN" offset="11f924">
5A19060C
00000000
571A0608
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
1980043C
902D848C
80000234
040080A4
250082A0
1980033C
FCF5638C
04008294
</Location>
<Location file="BATTLE_BIN" offset="122F8C">
25780508
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
</Location>
<Location file="BATTLE_BIN" offset="F7094">
4421060C
00000000
1C004014
00000000
4017060C
00000000
5318060C
00000000
B722060C
00000000
471A060C
00000000
B41B060C
00000000
FE1B060C
00000000
1980023C
902D428C
00000000
00004290
00000000
09004010
00000000
3F1C060C
00000000
3021060C
00000000
03004014
00000000
AD1F060C
00000000
1000BF8F
1800BD27
0800E003
00000000
</Location>
</Patch>


Formula 32 become Dmg_((WP+Y)*PA) #% Knockback

<Patch name="Formula 32 become Dmg_((WP+Y)*PA) #% Knockback">
<Description>Use Xifane chance of Knockback for determine the formula Knockback</Description>
<Location file="BATTLE_BIN" offset="11f924">
5A19060C
00000000
571A0608
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
1980043C
902D848C
80000234
040080A4
250082A0
1980033C
FCF5638C
04008294
</Location>
<Location file="BATTLE_BIN" offset="122D84">
24004014
00000000
9717060C
00000000
1518060C
00000000
B722060C
00000000
471A060C
00000000
F41B060C
00000000
1980023C
902D428C
00000000
00004290
00000000
13004010
00000000
3F1C060C
00000000
AD1F060C
00000000
86270608
00000000
</Location>
</Patch>


Formula 09 and 10 (Demi and Drain) don't work on immortal units

Probabily I will extend this hack to more formulas

<Patch name="Formula 09 and 10 (Demi and Drain) don't work on immortal units">
<Description>Formula 09 and 10 (Demi and Drain) don't work on immortal units</Description>
<Location file="BATTLE_BIN" offset="121E1C">
D9780508
</Location>
<Location file="BATTLE_BIN" offset="F7364">
1980023C
982D428C
00000000
05004290
00000000
04004230
05004010
00000000
C310060C
00000000
9A230608
00000000
8919060C
00000000
89230608
00000000
</Location>
<Location file="BATTLE_BIN" offset="122104">
E9780508
</Location>
<Location file="BATTLE_BIN" offset="F7364">
1980023C
982D428C
00000000
05004290
00000000
04004230
05004010
00000000
C310060C
00000000
45240608
00000000
8919060C
00000000
43240608
00000000
</Location>
</Patch>


All formulas that their accuaracy is Hit (MA+X)% become Hit (1+X)%

For anyone that hate that the % of hit raise with more level

<Patch name=" All formulas that their accuaracy is Hit (MA+X)% become Hit (1+X)%">
    <Description>Affect formulas 0B,0D,0E,12,29,2A,4D,4F,50,51 and 58</Description>
    <Location file="BATTLE_BIN" offset="11ED90">
      21100000
    </Location>
    <Location file="BATTLE_BIN" offset="11EDA0">
      CE3822A4
    </Location>
<Location file="BATTLE_BIN" offset="11ED84">
      942D428C
      1980033C
    </Location>
  </Patch>

Jump Formula gain physical evade and become  Dmg_(PA * WP) Hit_(Y+1)%; if using Spear Dmg_ (PA * 2 * WP) Hit_(Y+1)%; if not use weapon Dmg_ (PA * 2) Hit_(Y+1)%

For anyone that want remplace Lancer by Dragoon with a complete skillset
This formula is very similar that the FFTA2 Jump, but if you haven't Spear the damage is different

<Patch name="Jump Formula hack">
<Description>Jump Formula gain physical evade and become  Dmg_(PA * WP) Hit_(Y+1)%; if using Spear Dmg_ (PA * 2 * WP) Hit_(Y+1)%; if using not weapon Dmg_ (PA * 2) Hit_(Y+1)%</Description>
<Location file="BATTLE_BIN" offset="123C4c">
EA770508
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
</Location>
<Location file="BATTLE_BIN" offset="F6FA8">
4421060C
00000000
1A004014
00000000
0B78050C
00000000
C522060C
00000000
14004014
00000000
A517060C
00000000
A921060C
00000000
E917060C
00000000
F41B060C
00000000
1980023C
902D428C
00000000
00004290
00000000
05004010
00000000
3F1C060C
00000000
AD1F060C
00000000
1000BF8F
1800BD27
0800E003
00000000
</Location>
<Location file="BATTLE_BIN" offset="11EEDC">
40100300
BF170608
00000000
</Location>
<Location file="BATTLE_BIN" offset="11EF0C">
02000234
1980013C
D03822A4
DE170608
00000000
</Location>
<Location file="BATTLE_BIN" offset="F702c">
1980033C
FA386390
00000000
21100000
1980013C
D03823A4
1980013C
CE3822A4
0800E003
00000000
</Location>
</Patch>

Formula 42 (worker) become Dmg(WP+Y)*PA DmgCas((WP+Y)*PA)/3

This hack is based on Pride Worker Formula Hack

<Patch name="Formula 42 (worker) become Dmg(WP+Y)*PA DmgCas((WP+Y)*PA)/3">
<Description>The formula  now apply elemental, has physical evasion, and % to status</Description>
<Location file="BATTLE_BIN" offset="123184">
4421060C
00000000
1B000214
00000000
9717060C
00000000
FF17060C
00000000
7E21060C
00000000
3E19060C
00000000
7B76050C
00000000
B41B060C
00000000
FE1B060C
00000000
1980023C
902D428C
00000000
00004290
00000000
06000210
00000000
3F1C060C
00000000
3021060C
00000000
AD1F060C
00000000
00000000
00000000
</Location>
<Location file="BATTLE_BIN" offset="F69EC">
E8FFBD27
1000BFAF
5A19060C
00000000
1980023C
902D428C
00000000
04004494
00000000
03000534
1A008500
12200000
1980033C
8C2D638C
01000234
000062A0
040064A4
1980023C
902D428C
80000334
250043A0
1980023C
8C2D428C
00000000
250043A0
1000BF8F
1800BD27
0800E003
00000000
</Location>
</Patch>


Formula 46 become FFTA Limit Glove Formula (If you have less than 10 HP the damage is 999, if not is 1)

I put that the damage 1 if you haven't got less that 10 HP because you want become an Blue Mage attack (because otherwise I could not learn except with Mana Shield)

<Patch name="Formula 46 become FFTA Limit Glove Formula">
<Description>If you have less than 10 HP the damage is 999, if not is 1</Description>
<Location file="BATTLE_BIN" offset="123218">
F9780508
</Location>
<Location file="BATTLE_BIN" offset="F73E4">
1980023C
942D428C
00000000
1980033C
902D638C
00000000
28004494
00000000
0A00822C
03004014
00000000
E7030434
07790508
01000434
80000234
250062A0
040064A4
0800E003
00000000
</Location>
</Patch>


Formula 18 become Dmg_((PA+Y)/2*PA) Caster Gil Lose_((PA+Y)/2*PA)

Do you want create a Gil Toss ability? This is the formula! The Gil lose isn't showed when you act, but is completaly tested that you Gil lose is equal at the damage done. You can see that you lose gil when you returned to the world map at the end of battle

<Patch name="Formula 18 become Dmg_((PA+Y)/2*PA) Caster Gil Lose__((PA+Y)/2*PA)">
<Description>Dmg_((PA+Y)/2*PA) Caster Gil Lose_((PA+Y)/2*PA)</Description>
<Location file="BATTLE_BIN" offset="12229C">
21790508
</Location>
<Location file="BATTLE_BIN" offset="F7484">
E8FFBD27
1000BFAF
4421060C
00000000
09004014
00000000
4017060C
00000000
FF17060C
00000000
5318060C
00000000
5D790508
00000000
1000BF8F
1800BD27
0800E003
00000000
1980023C
902D438C
E8FFBD27
1400BFAF
1000B0AF
1980023C
982D428C
00000000
05004290
00000000
30004230
04007094
08004014
00000000
64ED040C
2C000434
21184000
2A107000
02004010
00000000
21806000
05000016
01000334
C310060C
00000000
58790508
00000000
1980043C
8C2D848C
00000000
000083A0
1980023C
8C2D428C
00000000
23801000
0C0090A4
250043A0
1400BF8F
1000B08F
1800BD27
0800E003
00000000
B722060C
00000000
3E19060C
00000000
5A19060C
00000000
B41B060C
00000000
FE1B060C
00000000
1980023C
902D428C
00000000
00004290
00000000
09004010
00000000
3F1C060C
00000000
3021060C
00000000
03004010
00000000
3379050C
00000000
2F790508
00000000


</Location>
</Patch>


What do you think...?
  • Modding version: PSX
  • Discord username: rfh

Dome

Nice hack! You should start an ASM thread of your own someday :-)

"Be wise today so you don't cry tomorrow"

Rfh

July 27, 2012, 04:11:41 pm #2 Last Edit: July 27, 2012, 04:28:34 pm by Rfh
Quote from: Dome on July 27, 2012, 04:43:50 am
Nice hack! You should start an ASM thread of your own someday :-)


Ok thanks, I select in the main thread some of my hacks that maybe would be usefull for anyone.
  • Modding version: PSX
  • Discord username: rfh

Dome

Suggestion: Put them under spoiler

"Be wise today so you don't cry tomorrow"

Rfh

Quote from: Dome on July 27, 2012, 06:00:02 pm
Suggestion: Put them under spoiler

Done! and new formula uptaded: Formula 18 become Dmg_((PA+Y)/2*PA) Caster Gil Lose_((PA+Y)/2*PA) (Perfect if you want create Gil Toss ability)

Indeed I'll be disconnected from the forum until 14 of August because I'll be in a camp in Switzerland :)

I will accept requests for formulas (I like create unusual formulas) when I finish the summer  (I have not much time now, I have to recover geography, and I spend most of my free time being with my friends)
  • Modding version: PSX
  • Discord username: rfh

Eternal

  • 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

Timbo

Hell yeah for Gil Toss! How about Mug? Essentially, adding Steal Gil to a regular attack?
  • Modding version: PSX
  • Discord username: Timbo

Xifanie

Quote from: Rfh on August 01, 2012, 09:20:43 am
Done! and new formula uptaded: Formula 18 become Dmg_((PA+Y)/2*PA) Caster Gil Lose_((PA+Y)/2*PA) (Perfect if you want create Gil Toss ability)


Will the player lose his/her War Funds if the enemy uses that skill?
  • Modding version: PSX
Love what you're seeing? https://supportus.ffhacktics.com/ 💜 it's really appreciated

Anything is possible as long as it is within the hardware's limits. (ie. disc space, RAM, Video RAM, processor, etc.)
<R999> My target market is not FFT mod players
<Raijinili> remember that? it was awful

Rfh

Quote from: Jack of All Trades on August 01, 2012, 04:15:03 pm
Hell yeah for Gil Toss! How about Mug? Essentially, adding Steal Gil to a regular attack?

It will not be hard to do, I'll do this when I  returned from Switzerland
Quote from: Xifanie on August 01, 2012, 04:34:48 pm
Will the player lose his/her War Funds if the enemy uses that skill?

I think that I only write that is the caster who lose gil, but I will watch just in case

- I go to Switzerland within two hours, so that I cannot respond to messages until 14
of August
  • Modding version: PSX
  • Discord username: rfh

Rfh

Quote from: Jack of All Trades on August 01, 2012, 04:15:03 pm
Hell yeah for Gil Toss! How about Mug? Essentially, adding Steal Gil to a regular attack?

What formula do you want for Steal Gil effect?
  • Modding version: PSX
  • Discord username: rfh

Timbo

How about this?

(PA * WP) StealGil_(CasLVL * SP)

How about Barrage as well?

(PA * WP)/2 Hit X + 1 times.

Edit: Nevermind about Barrage. I forgot that you can only animate an equipped weapon once.
  • Modding version: PSX
  • Discord username: Timbo

Rfh

Quote from: Jack of All Trades on August 16, 2012, 12:47:06 pm
How about this?

(PA * WP) StealGil_(CasLVL * SP)

I have done this but only the steal gil is showed...

<Patch name="Formula 19 become (PA * (WP+Y)) StealGil_(CasLVL * SP)">
<Description>Formula 19 become (PA * (WP+Y)) StealGil_(CasLVL * SP)</Description>
<Location file="BATTLE_BIN" offset="1222A4">
21790508
00000000
</Location>
<Location file="BATTLE_BIN" offset="F7484">
E8FFBD27
1000BFAF
4421060C
00000000
16004014
00000000
9717060C
00000000
E917060C
00000000
A921060C
00000000
F41B060C
00000000
1980023C
902D428C
00000000
00004290
00000000
07004010
00000000
3F1C060C
00000000
AD1F060C
00000000
D119060C
00000000
1000BF8F
1800BD27
0800E003
00000000
</Location>
</Patch>


How about Barrage as well?

(PA * WP)/2 Hit X + 1 times.

I can do this, but I need remplace formula 5E [Triple Thunder, Triple Flame,
Dark Whisper]


Edit: Nevermind about Barrage. I forgot that you can only animate an equipped weapon once.
  • Modding version: PSX
  • Discord username: rfh

LastingDawn

Eh? In Mercenaries, Lavian has a move called "Blade Flurry" which strikes anywhere from 2-5 times, and she uses her weapon in each of them so I can't see why Barrage would be so difficult, animation wise.
"Moment's anger can revert to joy,
sadness can be turned to delight.
A nation destroyed cannot be restored,
the dead brought back to life."

Art of War

Beta & Gretchen Forever!!!!

Timbo

Really? That's wonderful news. Well, then I'm withdrawing my withdrawl.
  • Modding version: PSX
  • Discord username: Timbo

Vanya

LD, what formula did you use for that because I've always gotten the animation glitch where the character attacks with their right hand on first hit and left hand on every other hit.
  • Modding version: Other/Unknown
¯\(°_0)/¯

RavenOfRazgriz

You get that because that's what it does.  He may have not been paying attention or had them with Two Swords, maybe.  :U

Alternatively, he had a self-procing skill where this wouldn't matter since each 'hit' is an entirely new skill cast.

Timbo

That second one would totally work but it would take up two precious skill slots to do it.
  • Modding version: PSX
  • Discord username: Timbo

Timbo

Quote from: Rfh on August 16, 2012, 03:15:52 pm

You snuck this past me. I somehow managed to overlook this post the other day. Thank you so much Rfh. I'm very excited to use Mug. As far as Barrage goes, I'm totally fine with it replacing formula 5E. Just don't waste your time on it if you can't make the weapon animate each time. I'm very happy as is.
  • Modding version: PSX
  • Discord username: Timbo

LastingDawn

Quote from: RavenOfRazgriz on August 18, 2012, 02:16:47 am
You get that because that's what it does.  He may have not been paying attention or had them with Two Swords, maybe.  :U

Alternatively, he had a self-procing skill where this wouldn't matter since each 'hit' is an entirely new skill cast.


Bahaha! Can't even remember my own abilities functions anymore. That's rich... Blade Flurry uses Performing. Not sure why I thought otherwise. You are correct then.
"Moment's anger can revert to joy,
sadness can be turned to delight.
A nation destroyed cannot be restored,
the dead brought back to life."

Art of War

Beta & Gretchen Forever!!!!

Timbo

Hey Rfh will you create this formula?

PA(WP +Y)/X  100% cast spell as Status

With this we can create any number of attack + effect spells?
  • Modding version: PSX
  • Discord username: Timbo