Making Gogo "normal"
07-21-2014, 06:03 AM
I want to make it so Gogo no longer has the customizable commands, how do I do this? I'm using WindHex.
If you ever feel useless, just remember that Umaro has an MP stat.
07-21-2014, 12:01 PM
Okaaaay. Looking at bank C3, I think you can actually make that switch just by changing one byte so that you bypass a lot of code.
That BEQ $2254 takes you to the code that handles Gogo's custom status menu, where it checks for Gogo and then exits (via RTS) if the character is not Gogo. Which meaaaaans that you /should/ be able to just RTS instead. I think.
This is untested! But give this a try. Change:
to
which points that BEQ to C2/2253 instead of /2254, aka the closest RTS.
Code:
C3/2244: A509 LDA $09 (from C3/2222)
C3/2246: 8980 BIT #$80 (did you press B?)
C3/2248: F00A BEQ $2254 (branch if not, BPL...)
C3/224A: 20A90E JSR $0EA9
C3/224D: A904 LDA #$04
C3/224F: 8527 STA $27 (init the main menu, queue up to execute at C3/1A8A)
C3/2251: 6426 STZ $26 (fade out)
C3/2253: 60 RTS
That BEQ $2254 takes you to the code that handles Gogo's custom status menu, where it checks for Gogo and then exits (via RTS) if the character is not Gogo. Which meaaaaans that you /should/ be able to just RTS instead. I think.
This is untested! But give this a try. Change:
Code:
C3/2248: F00A
to
Code:
C3/2248: F009
which points that BEQ to C2/2253 instead of /2254, aka the closest RTS.
07-21-2014, 01:54 PM
It sort of works, but it still has the cursor on the status menu, it doesn't do anything and won't move.
If you ever feel useless, just remember that Umaro has an MP stat.
07-21-2014, 02:05 PM
Okay, this section of code looks relevant:
You want to avoid this bit of code, too. Try changing:
to
and see what happens.
Code:
DP $26 is #$0B - initiate the status screen
C3/1C46: 202F35 JSR $352F (from C3/01F1, turns off DMA and HDMA transfers, turns the screen off)
C3/1C49: 200B62 JSR $620B (do a DMA transfer)
C3/1C4C: 20055D JSR $5D05 (put status screen in VRAM?)
C3/1C4F: 205D1C JSR $1C5D
C3/1C52: A901 LDA #$01
C3/1C54: 8526 STA $26 (transition process)
C3/1C56: A90C LDA #$0C
C3/1C58: 8527 STA $27 (queue up to execute at C3/21F5)
C3/1C5A: 4C4135 JMP $3541
C3/1C5D: 7B TDC
C3/1C5E: A528 LDA $28
C3/1C60: 0A ASL A
C3/1C61: AA TAX
C3/1C62: B46D LDY $6D,X
C3/1C64: B90000 LDA $0000,Y (load character ID)
C3/1C67: C90C CMP #$0C (Is this Gogo?)
C3/1C69: D00D BNE $1C78 (branch if not)
C3/1C6B: 20FF36 JSR $36FF (get hotspot data)
C3/1C6E: 200837 JSR $3708 (set finger positioning)
C3/1C71: A906 LDA #$06
C3/1C73: 0446 TSB $46
C3/1C75: 4CB007 JMP $07B0 (finger OAM initiating)
C3/1C78: A906 LDA #$06
C3/1C7A: 1446 TRB $46
C3/1C7C: 60 RTS
You want to avoid this bit of code, too. Try changing:
Code:
C3/1C4F: 205D1C JSR $1C5D
to
Code:
C3/1C4F: 20781C JSR $1C78
and see what happens.
07-21-2014, 02:25 PM
It worked for the most part but I'm okay with that, whenever I switched to "Gogo" from another character in the status menu it still shows that cursor, but other than that, it works just fine.
If you ever feel useless, just remember that Umaro has an MP stat.
07-21-2014, 04:01 PM
(This post was last modified: 07-21-2014, 04:03 PM by GrayShadows.)
Aha! Found it. There are two more JSR to $1C5D -- you just need to change the same thing at C3/2218 and C3/223E. That'll fix it right up.
ETA: Also, if you're looking at giving Gogo a magic list, that's doable, too, but you need to rearrange some RAM. I've got a patch finished that requires a special case for Gogo, rearranging RAM addresses that aren't altered too much (treasure chest bytes -- if you're working with other patches, this is the most compatible), but I'm also working on one that moves more-frequently-patched RAM addresses -- Morph timer, learned Blitzes, learned SwdTech, etc -- that'll be less compatible if you use any patches that affect those abilities. The advantage to the second patch is that it places Gogo's learned magic in the patch immediately following everyone else's, so you can use the regular game code (with a couple of minor CMP alterations).
ETA: Also, if you're looking at giving Gogo a magic list, that's doable, too, but you need to rearrange some RAM. I've got a patch finished that requires a special case for Gogo, rearranging RAM addresses that aren't altered too much (treasure chest bytes -- if you're working with other patches, this is the most compatible), but I'm also working on one that moves more-frequently-patched RAM addresses -- Morph timer, learned Blitzes, learned SwdTech, etc -- that'll be less compatible if you use any patches that affect those abilities. The advantage to the second patch is that it places Gogo's learned magic in the patch immediately following everyone else's, so you can use the regular game code (with a couple of minor CMP alterations).
07-21-2014, 05:38 PM
Where is that first patch you mentioned?
If you ever feel useless, just remember that Umaro has an MP stat.
07-21-2014, 08:08 PM
It's not posted anywhere yet, but the .asm is available here. It's a modification of work I did originally for the 15th Man project (so Iris could have a spell list).
07-21-2014, 10:25 PM
Don't worry about that actually, all I wanna know how to do now, is make it so he has a normal battle entry pose other than the whole: "SPINNING IN CIRCLES!!!!!" thing.
If you ever feel useless, just remember that Umaro has an MP stat.
07-21-2014, 10:48 PM
look here for that:
https://www.ff6hacking.com/forums/showth...=asked+the
https://www.ff6hacking.com/forums/showth...=asked+the
We are born, live, die and then do the same thing over again.
« Next Oldest | Next Newest »
Users browsing this thread: 1 Guest(s)