Users browsing this thread: 1 Guest(s)
Final Fantasy VI: Revised Old Style Edition

#38
Posts: 174
Threads: 23
Thanks Received: 22
Thanks Given: 7
Joined: Feb 2016
Reputation: 8
Status
Enlight
Imp Skimp is released on LeetSketcher's site, and it's also on Romhacking.net.

From the Readme:
Quote:The game does a lousy job of updating monsters in Imp status. The only way to change a monster's sprite to an Imp is via the Imp spell, but this always changes the sprite as long as it hits, even if the monster doesn't actually gain the status. This can happen either with immunities or with enemy Runic. Also, other spells that can grant Imp status to monsters, such as Rippler and Sour Mouth, don't update the sprite. The Pugs, if they've been turned into Imps, will revert upon stepping back despite still having Imp status. Finally, if Celes absorbs the Imp spell via Runic, she will still transform into an Imp, then abruptly change back. This patch fixes all of these bugs.

The patch periodically compares each enemy's "displayed" Imp status with its "actual" Imp status, and if the two disagree, then the displayed sprite is updated accordingly.

The problem is, sometimes the status bit for the "actual" Imp status is not up to date, leading to at least two issues:

  1. The SrBehemoth fight. The undead SrBehemoth replaces the living one in the same slot, and the Imp bit never gets cleared. The undead SrBehemoth is immune to Imp. The patch runs the check, and invalidly attempts to replace the normal enemy sprite with an Imp.
  2. The Pugs fight. According to LeetSketcher, their appearance should not revert from Imp to normal whenever they step back, because they still have Imp status at the time. But the Pugs' statuses DO actually revert to normal automatically after stepping back; just not right away with the bit checked by the patch. (With the patch applied, Pugs will abruptly change from the Imp sprite to normal when the "actual" Imp status bit finally clears -- not very appealing.)
To fix the above, revert these two subroutine calls to the original:
Code:
Executes upon new enemy appearing (i.e. SrBehemoth; start of battle)
> Imp Skimp v1.4:
C1/9369: 20 1B D7    JSR $D71B
> Original FF3us v1.0:
C1/9369: 20 25 7C    JSR $257C

Executes upon enemy regenerating (i.e. Pugs; undead+Doom)
> Imp Skimp v1.4:
C1/93C5: 20 1B D7    JSR $D71B
> Original FF3us v1.0:
C1/93C5: 20 25 7C    JSR $257C

I am not sure if this removes any of the helpful functionality of the patch.
Are there any cases where a reappearing enemy is supposed to have Imp status?

An alternative fix may be to identify a more responsive bit for monsters' Imp status than the one used by the patch.


Thanks for the tip, Gi.
That thread didn't get very far with the Imp Skimp problem, but it does raise the potential issue Assassin identified with his Unaffected Rows patch -- also in ROSE via the C. V. bug-fix comp.
I will look into that next and see if Assassin's solution works. Edit: Done. Findings posted here.

Looks like I have a few places to share the above info, and hopefully get some loops closed.
Quote  



Messages In This Thread
RE: Final Fantasy VI: Revised Old Style Edition - by SilentEnigma - 10-16-2020, 09:51 PM
RE: Final Fantasy VI: Revised Old Style Edition - by REDTITAN - 10-12-2021, 02:26 PM

Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite