Users browsing this thread: 1 Guest(s)
Gau can Leap/Return Anywhere

#1
Posts: 617
Threads: 49
Thanks Received: 0
Thanks Given: 5
Joined: Feb 2017
Reputation: 25
Status
None
For my hack, I've been planning to use HatZen08's "Learnable Rage" patch, which allows Gau to learn Rages simply by fighting monsters. While it's much better than the base game, it's still just a little bit unbalanced, making it too easy for Gau to learn Rages.

However, I read on The Cutting Room Floor that there is a flag for monster formations that causes Leap to miss. This, to me, presents an ideal solution. If I could create a hack where Gau could leap/return anywhere, but have Leap either miss or be disabled on boss fights, Gau could be balanced without having to go back to the Veldt all the time.

I've successfully gotten Leap to be always available by NOPing the lines with asterixes (quick and dirty, but just a mockup)
Code:
(Leap menu entry)
C2/543E: AD E4 11     LDA $11E4
C2/5441: 89 02        BIT #$02       (is Leap available?)
*C2/5443: 80 ED        BRA $5432      (if it's not, menu entry will be nulled after branch)
Code:
(Blanks out Leap from the Menu screen when not on the Veldt)
C3/614F:    B91600      LDA $0016,Y
C3/6152:    C911        CMP #$11       (is it leap?)  
C3/6154:    D00A        BNE $6160    
C3/6156:    ADE411      LDA $11E4    
C3/6159:    8904        BIT #$04       (are we on the Veldt?)    
C3/615B:    D003        BNE $6160      (branch if so)    
*C3/615D:    A9FF        LDA #$FF       (no command)    
*C3/615F:    60          RTS

What I can't find is the line of code that checks to see if you're on the Veldt to determine if Gau should show up at the end.

Other considerations:
1. There will need to be a battle event flag that prevents Gau from showing up. In the WoR, some cutscene will have to permanently clear that flag (probably beating the Cave on the Veldt)
2. It would be great to change C2/543E-C2/5443 to check for the "Can't Leap" formation flag, and blank out the command when it is present.

This hack may be beyond me and my horrendous ASM skills, but I want to look into it anyway.

EDIT: I suppose an alternative to having Gau return anywhere would be to just have him leave the battle, but not the party. I'd make Leap not end the battle. That way, I wouldn't have to worry about battle event flags. He'd just only show up on the Veldt when it's time to recruit him. I'll look into the disassemblies to see if I can figure out how to do that.


Projects:
FFVI: Divergent Paths (Completed) - a complete storyline and gameplay hack of FF6 that adds Leo as a playable character
  Find
Quote  

#2
Posts: 51
Threads: 5
Thanks Received: 2
Thanks Given: 0
Joined: Apr 2018
Reputation: 8
Status
Shell
I think this is what you're looking for:
Code:
C0/C1CF:    BF0054CF    LDA $CF5400,X  (load overworld 4-packs)
C0/C1D3:    8524        STA $24
C0/C1D5:    C9FF        CMP #$FF       (is it a Veldt pack?)
C0/C1D7:    D006        BNE $C1DF      (branch if not)
C0/C1D9:    A90F        LDA #$0F
C0/C1DB:    8FE41100    STA $0011E4    (set "no winning stand" and other flags)
  Find
Quote  
[-] The following 1 user says Thank You to Subtraction for this post:
  • PowerPanda (06-30-2018)

#3
Posts: 617
Threads: 49
Thanks Received: 0
Thanks Given: 5
Joined: Feb 2017
Reputation: 25
Status
None
I've actually been looking at this for an hour now, and have decided that the battle event flags would be too complex. If you weren't careful, Gau could join up with Biggs/Wedge in the opening sequence. I'm going for the route where you have to have Gau leap, then finish the battle without him. At the end of the battle, he's still in your party, but he's learned the rages.

So far, I have Gau Leaping, being hidden from the battle, not being removed from the party, and learning the appropriate rages. However, even though he's hidden, his command bar is filling up and he's attacking on his turn. I think I need to consider "Leap" an escaped status, and load the code from C2/396C. Here's the code I'm working with. Can anyone give me a pointer on the hex to add in to jump to C2/396C?

Code:
UNTOUCHED CODE FOR LEAP COMMAND
C2/3B71: AD 49 2F     LDA $2F49
C2/3B74: 89 08        BIT #$08       (extra enemy formation data: is "Can't Leap" set?)
C2/3B76: D0 18        BNE $3B90      (if so, miss with text)
C2/3B78: AD 76 3A     LDA $3A76      (Number of present and living characters in party)
C2/3B7B: C9 02        CMP #$02
C2/3B7D: 90 11        BCC $3B90      (if less than 2, then miss w/ text)
C2/3B7F: A3 05        LDA $05,S
C2/3B81: AA           TAX
C2/3B82: BD E9 3D     LDA $3DE9,X
C2/3B85: 09 20        ORA #$20
C2/3B87: 9D E9 3D     STA $3DE9,X    (Mark Hide status to be set in attacker)

ORIGINAL CODE
C2/3B8A: A9 04        LDA #$04
C2/3B8C: 8D 6E 3A     STA $3A6E      ("End of combat" method #4, Gau leaping)
C2/3B8F: 60           RTS 

MY CODE
C2/3B8A: 20 07 4A     JSR $4A07      (Add rages learned in battle)
C2/3B8D: ?? ??        ??????         (Jump/Branch to C2/396C) (Mark Gau as "escaped")
C2/3B8F: 60           RTS


Projects:
FFVI: Divergent Paths (Completed) - a complete storyline and gameplay hack of FF6 that adds Leo as a playable character
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite