Users browsing this thread: 1 Guest(s)
Finishing Off The Complete Roster Hack

#8
Posts: 617
Threads: 49
Thanks Received: 0
Thanks Given: 5
Joined: Feb 2017
Reputation: 25
Status
None
(07-11-2018, 11:58 AM)GrayShadows Wrote: I've been planning to take a look at that, actually, because I ran into the same problem with another patch. It's been a while, but if you want to talk through the code with someone, I'd be up for that - maybe we can solve it together?

Yes please! I found the finger pointer hotspot data today. The 16th slot going back to the command you selected is actually a fluke, caused by this:

Code:
Hotspot data
    C3/6412:    80 00 00 01 10

Finger positioning data
    C3/6417:    F010
    C3/6419:    F01C
    C3/641B:    F028
    C3/641D:    F034
    C3/641F:    F040
    C3/6421:    F04C
    C3/6423:    F058
    C3/6425:    F064
    C3/6427:    F070
    C3/6429:    F07C
    C3/642B:    F088
    C3/642D:    F094
    C3/642F:    F0A0
    C3/6431:    F0AC
    C3/6433:    F0B8
    C3/6435:    F0C4

Data: Used by      C3/69BA
    C3/6437:    9764        (from      C3/5D60)  <---- THIS IS BEING INTERPRETED AS THE 16TH SLOT POINTER POSITION

The 16th slot pointer is reading its "position data" from a completely unrelated line of code, and it just happens to ALMOST line up with something the player did intentionally. We MAY be limited to 16 lines here, in which case that will be something we just tell the people who use the hack. There may be other creative solutions though.

Also, HatZen's extra mimic slot, which I just discovered, might point us in the right direction of what needs to be edited.
https://www.romhacking.net/hacks/1315/

(07-11-2018, 08:40 AM)madsiur Wrote: @PowerPanda:

For the banon check, here is a patch I made back in 2012, my very first ASM hack lol

That could definitely work. I also note that we can simply change this line to whichever profile we move Banon to in order to retain that functionality. I tested this with profile $0F, and it worked fine. I'd prefer to keep that functionality if possible, and allow people to apply your patch if they want to remove it.
Code:
C2/06D8: BD D8 3E     LDA $3ED8,X    (Which character)
C2/06DB: C9 0E        CMP #$0E        <--- CHANGE THIS LINE TO BANON'S PROFILE
C2/06DD: D0 05        BNE $06E4      (Branch if not Banon)
C2/06DF: A9 06        LDA #$06
C2/06E1: 8D 6E 3A     STA $3A6E      (Banon fell... "End of combat" method #6)


One other thought that I had, possibly for a "plug and play patch" for newer hackers. (Note: this would be phase 2 of the project, just writing the idea down.) If people want to add their own custom character, the easiest way to do that will be to replace an existing character with full battle sprites. The obvious choice for this is the Ghost, since it is a totally optional guest character, but has portrait data and everything. It's role could easily be replaced by a mute guest character with the Merchant sprite, as that doubles as a "Doma Guard". Heck, we could even replace it with a deceased Biggs and Wedge. Then, we could make a copy of the ghost's sprite sheet and tie it to field NPC slot $7A, which is currently empty, for all of the times the ghost appears in story sequences. Finally, we could change an existing ability (such as Possess) into a simple "cast a spell for free" like Health/Shock, and tie it to ability slot $FB or $FC, which will be unused in the final hack.

I could code a basic event that adds the new character to the party. An obvious choice for me would be replacing one of the auction items with a Bachelor/Bachelorette auction. With that, newer hackers could pretty much do everything in FF3usME, and have the satisfaction of seeing their character in game.


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



Messages In This Thread
RE: Finishing Off The Complete Roster Hack - by PowerPanda - 07-11-2018, 11:21 PM

Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite