Users browsing this thread: 1 Guest(s)
Patch: Pugs Rage

#3
Posts: 174
Threads: 23
Thanks Received: 22
Thanks Given: 7
Joined: Feb 2016
Reputation: 8
Status
Enlight
(12-06-2021, 04:54 AM)assassin Wrote: this rivals some of leet sketcher's patch releases for Archive Contents size!  that must've been fun to make. ;P

I think it's safe to say I will not be including a set of anti-patches with this. lol

(12-06-2021, 04:54 AM)assassin Wrote: will Function C2/1560 still have C2/1566 (which i think is run for Mimic; worth confirming) defer to an existing Rager with this pre-setting of the $33A8,indices now having occurred?

(The code in question...)
Code:
Rage

C2/1560: B9 A8 33     LDA $33A8,Y    (get monster #)
C2/1563: 1A           INC
C2/1564: D0 13        BNE $1579      (branch if it's already defined)
C2/1566: AE 93 3A     LDX $3A93      (if it's undefined [like with Mimic], get the
                                     index of another Rager, so we can copy their
                                     monster #)
C2/1569: E0 14        CPX #$14
C2/156B: 90 02        BCC $156F      (if the Rager index corresponds to a character
                                     [0, 2, 4, 6] or an enemy [8, 10, 12, 14, 16, 18],
                                     consider it valid and branch.)
C2/156D: A2 00        LDX #$00       (if not, default to looking at character #1)
C2/156F: BD A8 33     LDA $33A8,X    (get that other Rager's monster)
C2/1572: 99 A8 33     STA $33A8,Y    (save it as our current Rager's monster)
C2/1575: 7B           TDC
C2/1576: 99 A9 33     STA $33A9,Y
C2/1579: 8C 93 3A     STY $3A93      (save the index of our current Rager)

Oof, who snuck that reference to $33A8,Y in there!?
...Yeah, I didn't touch this function. Looks like Mimic will grab the wrong rage 99% of the time. (Viva la 1.1!)

I will need to find another way to detect that a mimic is taking place at that moment.
Or, it might be as simple as changing C2/1560 to "LDA $33A9,Y" since the high byte still holds #$FF until the rage occurs, after which it holds #$00. If all works out, that should get us back to vanilla behavior.

But it seems like even vanilla is a bit off, too. Won't Mimic use a stale rage ID in the following scenarios?

  1. Gau rages
  2. Gogo mimics Gau
  3. Gau & Gogo get KO'd
  4. Gau & Gogo revive
  5. Gau rages again (different rage)
  6. Gogo mimcs Gau again
- or -
  1. Gogo rages
  2. Gogo gets KO'd
  3. Gogo revives
  4. Gau rages (different rage)
  5. Gogo mimics Gau
I'm pretty sure the rage ID for each character never gets set back to null during battle.

Anyway, thanks for the tip-off.

(12-06-2021, 04:54 AM)assassin Wrote: it's curious how little you wound up having to change there!

It was few months ago, but iirc the menu stuff in C1 practically wrote itself compared to C2. I'll just assume I was super careful about C1, at least until C2 gets tightened up.
Quote  



Messages In This Thread
Patch: Pugs Rage - by SilentEnigma - 12-06-2021, 12:48 AM
RE: Patch: Pugs Rage - by assassin - 12-06-2021, 04:54 AM
RE: Patch: Pugs Rage - by SilentEnigma - 12-06-2021, 03:32 PM
RE: Patch: Pugs Rage - by SilentEnigma - 12-20-2021, 02:53 AM
RE: Patch: Pugs Rage - by assassin - 12-23-2021, 02:04 AM
RE: Patch: Pugs Rage - by SilentEnigma - 12-24-2021, 11:17 AM
RE: Patch: Pugs Rage - by assassin - 12-24-2021, 02:37 PM
RE: Patch: Pugs Rage - by CVReynolds - 12-28-2021, 04:45 PM
RE: Patch: Pugs Rage - by SilentEnigma - 12-31-2021, 05:55 PM
RE: Patch: Pugs Rage - by assassin - 01-02-2022, 03:12 AM

Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite