Users browsing this thread: 1 Guest(s)
Replace Moogle Suit with Shadow Suit

#1
Posts: 273
Threads: 19
Thanks Received: 13
Thanks Given: 48
Joined: Dec 2017
Reputation: 2
Status
None
So I've got a request for any hackers/coders out there who want to help. For all who don't know, my hack is based on General Leo edition, which replaces Shadow with General Leo as a playable character.  However, I was tinkering with the idea of having Shadow's armor replace the Moogle suit, which would basically allow any character to "become" Shadow if they so desire. I already figured out how to replace the Moogle graphic in-battle with Shadow (that part was easy).  However,  I have two other requests that would improve this concept:

1. I am rubbish at adding events, and was wondering if someone out there could help me add a basic event in which a little blue star graphic appears at Thamasa WOR at the grave site that gives you Shadow's armor along with a message.

2. C-Dude recently made a patch called Imp's Mapping that allows the Imp sprite to appear on the world map.  I was wondering if anyone knows a way to have the game check if a character is wearing the Moogle Suit/Shadow Armor and replace the world map sprite with Shadow in a similar manner (bonus points if the portrait could also change, although I imagine this is impossible).

Thanks, you guys are awesome!
  Find
Quote  

#2
Posts: 453
Threads: 45
Thanks Received: 195
Thanks Given: 116
Joined: Feb 2017
Reputation: 23
Status
None
Did somebody say event code?! I can finally help!  Laugh You'll want to edit the event that's already in place to show the tombstone text.

Code:
Original Event
C1 B4 01 B0 01 B3 5E 00 - If you're not facing up and pressing A, do nothing.
4B 45 88 - Display dialogue "Here lies Shadow" (Assuming this is unchanged in General Leo Edition)

Added Stuff
C0 A4 00 B3 5E 00 - If you're not in the World of Ruin, end event here.
C0 YY 8X B3 5E 00 - If you've already seen this event (Event bit $XYY), end here.*
80 9F - Add "Moogle Suit" to your inventory
4B YY 8X - Display dialogue $XYY (whichever one you choose to use, in hex).
FE - End Event


*So for event bits, you have to use one here. Otherwise the player could get infinite shadow suits. You can get a list of event bits from the documents section. Find one that is unused. Best way to see if it's unused is to add it to this event, load a completed game file, and then try to play this scene. If you get a Shadow Suit, then it was free.

On second thought, you could place a treasure tile on top of the flowers in front of the grave, or on the tombstone itself. This will accomplish the same purpose, and is much, much simpler.


Projects:
Divergent Paths: The 3 Scenarios (Completed) - a redo of the 3 scenarios in the original game that gives equal time to each group. Meant to be a basis for future mods.
FFVI: Divergent Paths (In Progress) - a hack built off of the 3 scenarios that changes other events in the same, such as making Leo permanently recruitable, bringing Banon's story closure, and adding 1 more secret character.
  Find
Quote  
[-] The following 1 user says Thank You to PowerPanda for this post:
  • Lightning (03-03-2021)

#3
Posts: 273
Threads: 19
Thanks Received: 13
Thanks Given: 48
Joined: Dec 2017
Reputation: 2
Status
None
Well, it looks like an event bit to obtain the armor is out of the question since every level editor seems to corrupt my hack (or crashes)... So, the armor is now obtainable via the Colosseum instead. That being said, it would still be awesome if a hacker out there could make Shadow appear in the world map as well as in-battle if someone knows a way!
  Find
Quote  

#4
Posts: 292
Threads: 22
Thanks Received: 117
Thanks Given: 117
Joined: Dec 2018
Reputation: 18
Status
Moog
Well, the RAM value to check is $11C9,Y. You want to compare it against #$9F, which is the item ID of the moogle suit.

Hypothetically this comparison would be made the same way that we check if the character is a moogle. But there's a problem...

Y is being incremented by steps of 40. But the ram block that contains $11C9 goes up by counts of 37. So if you check it in the same place and same manner as I checked for Imp, the check will fail for everyone except Actor Index $00 (Terra). I don't know how to set up another running counter to do indexed loads like that. I suppose that's what scratchpad RAM is for, but I've yet to have a success with that. I guess it would be something along the lines of "Load Scratch A, Push X, Transfer A into X, Load <value> relative to X, store in DIFFERENT scratch value, Load Scratch A again, Add <37> with Carry, Store Scratch A, pull X, and load the second scratch with our result", but again, I've yet to have success with techniques like that.
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite