øAslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=1883.msg20373e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index2d75.htmlslickproductions.org/forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=1883.270e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index2d75.html.zxƒg^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈÐñ`OKtext/htmlISO-8859-1gzip8:Öñ`ÿÿÿÿÿÿÿÿTue, 10 Mar 2020 05:19:22 GMT0ó°° ®0®P®€§²ð®‚g^ÿÿÿÿÿÿÿÿO4ñ` Grimoire LD's Notes, Patches, and Hacks (Dark Knight/Paladin Swap In Battle!)

Author Topic: Grimoire LD's Notes, Patches, and Hacks (Dark Knight/Paladin Swap In Battle!)  (Read 78667 times)

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
I made a small change to Kick, giving it like some of my other command and spells (Twin, Steal, Curing, Damaging)  an Equipment defined specific function.

First off, I got rid of that idiotic jump at the start which takes it... to its current location and used that free space to add in a "Load Armor" function. Because Dark Wave isn't using Kick any longer as a base, I used that part which looks at Dark Wave and instead made it look at Armor. If Yang is wearing no Armor (reference to FFI where a Monk is strongest when not wearing Armor of any kind) the Kick does roughly double damage. Making it as powerful as classic Dark Wave without the 1/8th HP Loss.

Situationally useful as are many of my hacks it seems.

$03/E71D   AD B1 26   LDA $26B1  [$7E:26B1]   A:0002   X:0080   Y:0000   P:envMxdizc - Load User's Armor into A.
$03/E720   F0 08   BEQ $08    [$E72A]   A:0000   X:0080   Y:0000   P:envMxdiZc - If none, branch past the /2 Power.
« Last Edit: January 23, 2014, 01:36:36 AM by Grimoire LD »

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Gird has been reworked to not be useless, but at the same time, not be overpowered, going off of the FFI Theme where a Monk's Defense was equal to their level, Gird does just this. Gird will change Yang's defense to his current level. In addition if you have a new helmet called the Master's Wrap equipped, it will add Yang's current Agility to the Level defense, making it even more effective. This only happens if you use Gird though and is more or less meant to be used in combination with builds that use Strengthened Kick.

Code: [Select]
$03/E696 A6 A6 LDX $A6    [$00:00A6] A:0003 X:001E Y:0000 P:envMxdizc - Load Slot of User into X..
$03/E698 AD 82 26 LDA $2682  [$7E:2682] A:0003 X:0080 Y:0000 P:envMxdizc - Load Caster's Level into A
$03/E69B 9D 2A 20 STA $202A,x[$7E:20AA] A:000A X:0080 Y:0000 P:envMxdizc - Store A in Character's Defense.
$03/E69E AD B0 26 LDA $26B0  [$7E:26B0] A:000A X:0080 Y:0000 P:envMxdizc - Load Equipped Helmet.
$03/E6A1 C9 80 CMP #$80 A:0000 X:0080 Y:0000 P:envMxdiZc - Is it Glass Mask/Master's Wrap?
$03/E6A3 D0 0E BNE $0E    [$E6B3] A:0000 X:0080 Y:0000 P:envMxdiZC - If not, branch to End.
-------------------------------------------------------------------------------------------------------------------------------------
$03/E6A5 AD 82 26 LDA $2682  [$7E:2682] A:0000 X:0080 Y:0000 P:envMxdiZC - Load Caster's Level into A.
$03/E6A8 6D 95 26 ADC $2695  [$7E:2695] A:000A X:0080 Y:0000 P:envMxdizC - Add Caster's Agility onto A.
$03/E6AB 9D 2A 20 STA $202A,x[$7E:20AA] A:0013 X:0080 Y:0000 P:envMxdizc - Store A in Character's Defense.
$03/E6AE A9 05 LDA #$05 A:0013 X:0080 Y:0000 P:envMxdizc - Load the Protect Graphic into A.
$03/E6B0 8D C4 33 STA $33C4  [$7E:33C4] A:0005 X:0080 Y:0000 P:envMxdizc - Store A in Audiovisual Cue.
$03/E6B3 60 RTS A:0005 X:0080 Y:0000 P:envMxdizc - Return.

Now this leaves only Focus to modify, hmm...

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Changes made to make Focus more effective.

1. In the Fight Routine - Changed it so Focus does not lose potency when attacking the backrow. (03C564)
2. In the Fight Routine - Changed it so Focus no longer divides defenses by 2. (Instead this has been put on Berserk) (03C740)

That completes Yang

And that leaves only Boast... Boast is a fine enough skill that I might leave it alone, but I don't want it to do the same thing, hmm...

I think I'll give it to Tellah, change it to a x2 store, and make it cycle through the Elements. "Ele(Sword)" symbol should do... or maybe just have it call a random number between 1-20 and apply it to the sword. That way it won't be "all right, let's use this 4 times for Holy Elemental..." and is a bit more freeform...

And that's what I decided on.

So... looks like I didn't Really keep Boast in any fashion after all.

Boast to Elemental Weapon
Code: [Select]
EAC3 A2 01 00 LDX #$0001 A:0003 X:0022 Y:0000 P:envMxdizc - Load 0001 into X.
$03/EAC6 A9 40 LDA #$40 A:0003 X:0001 Y:0000 P:envMxdizc - Load 40 into A (01-40 is the amount that can be reached)
$03/EAC8 20 79 83 JSR $8379  [$03:8379] A:0040 X:0001 Y:0000 P:envMxdizc - Jump to RNG Routine.
$03/EACB A6 A6 LDX $A6    [$00:00A6] A:001D X:0000 Y:0000 P:eNvMxdizc - Load Slot into X.
$03/EACD 9D 19 20 STA $2019,x[$7E:2099] A:001D X:0080 Y:0000 P:envMxdizc - Store New Weapon Element into A.
$03/EAD0 A9 81 LDA #$81 A:001D X:0080 Y:0000 P:envMxdizc - Load Magnet graphic into A.
$03/EAD2 8D C5 33 STA $33C5  [$7E:33C5] A:0081 X:0080 Y:0000 P:eNvMxdizc - Store A Audiovisual Cue.
$03/EAD5 A9 12 LDA #$12 A:0081 X:0080 Y:0000 P:eNvMxdizc - Load Message 12 (Forces swirl around weapon) into A.
$03/EAD7 8D CA 34 STA $34CA  [$7E:34CA] A:0012 X:0080 Y:0000 P:envMxdizc - Store A in Message
$03/EADA 4C A6 85 JMP $85A6  [$03:85A6] A:0012 X:0080 Y:0000 P:envMxdizc - Jump to Message Display Routine

And there we go! That is the final basic routine that had yet to be modified (not that you can call some of the things I've done "modifying" allowing Focus to deal full damage to the back row and not take increased damage isn't really modification) There's still a bit of free space, especially in regards to the Crash command which could have a new home eventually)


With the preliminary work all but complete, I think I can legitimately get to work on my project, now that I am confident it won't be seen as too similar to the base game.

 :edit: 85A6 not 81A6! And I was wondering why Elemental Sword was crashing the game... how absolutely stupid of me.
« Last Edit: February 21, 2014, 10:35:55 AM by Grimoire LD »

LordGarmonde

  • Baigan
  • *
  • Posts: 271
  • Gender: Male
  • "Power only breeds war..."
    • View Profile
...
With the preliminary work all but complete, I think I can legitimately get to work on my project, now that I am confident it won't be seen as too similar to the base game.

I'm confident too - and in a good way, not the  :wtf: way  :tongue:

I can't wait to see it all come together. Good luck!  :yabin:
"Now I know; and knowing makes it even more confusing..."

chillyfeez

  • FF4 Hacker
  • *
  • Posts: 1,285
  • Gender: Male
  • Go ahead, ask me about Angel Feathers!
    • View Profile
Hey, Grimoire.
Quck question - the spell visuals for Kain's SkyRv command... which spell do they come from?
It doesn't look like Lit 1, 2 or 3.
Is it Indra or Blitz?
I ask because I'm hoping beyond hope it's the Lit-Bolt item.
I figure the AV for the three elemental spell items must follow the same format that spells do, but I've never seen the data documented.
 :hmm:

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Oh no, it's Lit-Bolt.  Hmm... did I never fully explain this yet?

 Default Graphics (not overtaken by the Summon Orbs) of summons are used in different ways when called by items. Chocobo (FireBomb), Shiva (IceBomb), Ramuh (LitBolt) Indra(Crystal), Bomb Core(Bomb). This is why their default graphics have things listed, while other summons don't. So if you want to use FireBomb, IceBomb, Lit-Bolt Graphics you would look at the graphics that are there on the Default Summon.

chillyfeez

  • FF4 Hacker
  • *
  • Posts: 1,285
  • Gender: Male
  • Go ahead, ask me about Angel Feathers!
    • View Profile
 :omg:
Thanks!

I must have just missed wherever that's explained (whether by you or someone else) because FF4kster seems to know about it, too...

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
For a long time I thought it was a specific "It's looking at This graphic pointer, which means that because this is an Item it's actually looking at That graphic pointer... somewhere". I was wrong and I think I found this out... a couple weeks ago, I don't know if I actually posted it.

chillyfeez

  • FF4 Hacker
  • *
  • Posts: 1,285
  • Gender: Male
  • Go ahead, ask me about Angel Feathers!
    • View Profile
Well anyway, this is great to know. My grown-up Palom is going to be able to learn Fire/Ice/Lit-4, and now I have access to appropriate graphics!

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
The -ja level spells did originate with FFI of all things with Diaja. (HRM4) it wouldn't be unfitting to have them in FFIV, or any FF for that matter. A good choice!

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Well, here's a check I never knew existed! It's quite baffling that it does as in the normal game it goes nearly completely unused to my knowledge...

Code: [Select]
$03/F14E B9 1C 29 LDA $291C,y[$7E:291C] A:0000 X:0109 Y:0000 P:envMxdiZc - Load Spell to Learn into A.
$03/F151 85 B9 STA $B9    [$00:00B9] A:0020 X:0109 Y:0000 P:envMxdizc - Store it in B9.
$03/F153 C9 FF CMP #$FF A:0020 X:0109 Y:0000 P:envMxdizc - Is it FF? (No spell?)
$03/F155 F0 2E BEQ $2E    [$F185] A:0020 X:0109 Y:0000 P:envMxdizc - If so branch to End.
$03/F157 C9 19 CMP #$19 A:0020 X:0109 Y:0000 P:envMxdizc - Is it White Magic?
$03/F159 B0 06 BCS $06    [$F161] A:0020 X:0109 Y:0000 P:envMxdizC - If greater than White Magic branch to Black Magic Check
-----------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------------
$03/F161 C9 31 CMP #$31 A:0020 X:0109 Y:0000 P:envMxdizC - Is it Black Magic?
$03/F163 B0 07 BCS $07    [$F16C] A:0020 X:0109 Y:0000 P:eNvMxdizc - If not, branch elsewhere.

I think I understand its purpose. It's so the proper magic is put into its proper spell book. But the game uses this only for Three Spells from Child Rydia's White Spellbook. No other character Learns spells that can use Black and White Magic. So if you want your spell books to mix and match the schools of magic you want to actually do something a little different...

Instead of going through any of these needless checks you want to change 03F157 to...

$03/F157   9D 60 15   STA $1560,x[$7E:1579]   A:000C   X:0019   Y:0000   P:envMxdizc
$03/F15A   F0 1F   BEQ $1F    [$F17B]   A:000C   X:0019   Y:0000   P:envMxdizc

That way it adds the spell to the spellset properly. Without any worry of what the spell number is...

I just tested this with two spellbooks and it really is a Useless check, only included to prevent Black and White magic to be learned in the "wrong set" as located on the Job's spellset links. It is a Bizarre thing, to say the least. But at least I finally fixed it for myself. (A Dark Knight Cecil with Break skills labeled White Magic is not my idea of sense.)


chillyfeez

  • FF4 Hacker
  • *
  • Posts: 1,285
  • Gender: Male
  • Go ahead, ask me about Angel Feathers!
    • View Profile
Out of curiousity, how did you even stumble upon that?

MAN... Did'ja ever stop and think about how much is going on in the LoROM 30000s in this game? And if I'm not mistaken there is no 30000-37FFF.
 :hmm:

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Oh yeah. There's a lot.

Well I was testing out a Combo Patch (basically a patch of everything I've made as patches so far and a few other little extras) and I noticed that though I gained Level 13, the game said "Cecil Learned (Sword)Armor!" That it wasn't appearing on his menu. So I did the logical thing and breakpointed on his spellbook. That's when I found that and the reasoning Why the spell wasn't being written (the Break skills replace White Magic while the Job Link is to his Black Magic section) I tried to play nice with it, but nothing worked so instead I just wrote the save to Data there and made a branch to the rest of the routine. Worked out fine. I still have no idea what is going on there.

Eh? Earlier 03 Bank? Hmm... let me think about that...

You're right. There doesn't appear to be any ASM routines or anything there. Just What is the lower part of that bank used for?

Dragonsbrethren

  • Forum Overlord
  • *
  • Posts: 1,820
    • View Profile
    • Dragonsbrethren Industries
That's just how LoROM works. There's nothing mapped to xx0000-xx7FFFF. That's the major difference between LoROM and HiROM, from a non-hardware standpoint.

 :edit:

This is the simplest reference I've found: http://romhack.wikia.com/wiki/SNES_ROM_layout (yes, on Wikia  :sad:)

Grimoire LD

  • FF4 Hacker
  • *
  • Posts: 1,684
    • View Profile
Thanks Dragonsbrethren. A peculiar way these machines work... in any case I have exciting news!

Here is the ComboPatch I just mentioned in the previous post! It is a culmination of all of my work that was in separate patches now combined into one large patch for a highly different experience than the normal game (some things were changed from the original patch as these things were altered in others e.g. the Change rod now uses the (updated) Cry Command instead of Recall because Recall became Dragon Speech, etc)

Various Bug Fixes! Including Infinite Arrow Fix, Monster Evasion/Magical Evasion, Fixed worthless spellbook check which does nothing except prevent different school of magic spells from being added to assign spellbook slot. (As far as I could make out)

Dark Knight/Paladin Cecil has Battle Skills
Kain can learn Spells from Wounded Dragons
Rydia has lost White Magic but has learned Geomancy
There is a chance on hit that certain Weapons will use specific Commands on Hit (e.g. Thief's Knife can use Steal)
There is a chance on hit that if the Weapon has magic that it will be used in addition to a normal attack. In this it is important to note it uses the character's Wisdom/Will rather than the Weapon's innate version.
Tellah can use Swords as to make his ability to use Battle Skills make sense.

Cry will reduce all Magic Evasion by the amount of Porom's Will.
Yang now has Fury which will cast Berserk on him when he uses it.
Cid now has Item Lord, which will look for the first usable item the player has and can make it hit a single target (for those powerful Attack Magic spells) or can be used to to split an item, in case of an Ether or Cure Potion for instance.
Songs now used are dependent on the Harp equipped, in addition Paladin Cecil can equip Harps and has Bardsong, and every Song you Sing will raise the attack of most of the party!

Rosa will, instead of Aim, have ArrowBarrage. Depending on her strength she may use 3 or even 4 normal attacks!
Finally, Edge can use Katanas that are in the inventory to unleash their power with a chance that they will break upon use with the Katana Soul command.

This is a combination of all of my patches thus far and a little extra. If you're looking for one complete package than here it is!

Will these changes make the game easier? Almost without a doubt, but that is because these are parts of what's for my real project and now that I have the preliminary work done you may look forward to seeing the progress on that soon enough which will make the new abilities invaluable to one's survival.

And this isn't all! You can think of these as a "taste" or a demo rather of what you can expect in the main project.

« Last Edit: February 04, 2014, 05:01:23 PM by Grimoire LD »