Users browsing this thread: 1 Guest(s)
Giving Gau's Magic to Umaro
You'll need to remove some checks for Gogo AND above IDs such as this one (search "gogo" or "Umaro" in bank $C2). The following is done after battle:
You'll need to modify the following code; if actor ID == $0D, do $0B * 54 instead of $0D * 54. I'm not sure if the actor ID in X is reused later so you might have to save it and restore the real actor ID after this function.
There will be other things to modify, as an example for magic list loading during battle likely. This is also in bank $C2. You'll need to use the same concept as swapping $0D for $0B for the time you need.
Edit: Similar code at C2/56CC.
Code:
C2/5E59: B9 D8 3E LDA $3ED8,Y (Which character it is)
C2/5E5C: C9 0C CMP #$0C
C2/5E5E: B0 13 BCS $5E73 (Branch if Gogo or Umaro)
C2/5E60: 20 83 62 JSR $6283 (Stores address for spells known by character in $F4)
You'll need to modify the following code; if actor ID == $0D, do $0B * 54 instead of $0D * 54. I'm not sure if the actor ID in X is reused later so you might have to save it and restore the real actor ID after this function.
Code:
Stores address for spells known by character in $F4
C2/6283: 08 PHP
C2/6284: EB XBA
C2/6285: A9 36 LDA #$36 ; # of spells per character
C2/6287: 20 81 47 JSR $4781 ; Character ID (in X) * 54
C2/628A: C2 21 REP #$21
C2/628C: 69 6E 1A ADC #$1A6E ; multiplication result + Base offset (Terra's fire spell address)
C2/628F: 85 F4 STA $F4 ; store to use later
C2/6291: 28 PLP
C2/6292: 60 RTS
There will be other things to modify, as an example for magic list loading during battle likely. This is also in bank $C2. You'll need to use the same concept as swapping $0D for $0B for the time you need.
Edit: Similar code at C2/56CC.
« Next Oldest | Next Newest »
|
||||
Users browsing this thread: 1 Guest(s)