At long last, we've got you cornered.

Talk about all aspects of the gameplay of Final Fantasy 3us/6j.

Moderators: General Moderator, Game Moderator

At long last, we've got you cornered.

Postby Assassin » Tue Aug 01, 2006 7:08 am

If you've followed the gamefaqs board for awhile, you'll know that every several months, somebody will show up and post that after they exit the Gem Box room at the top of the Fanatics' Tower, the drone groupies arrive, but MagiMaster never will. This leaves the player trapped, and they'll have to reset. We've known about this issue for ages, yet have never been able to replicate it. Well, Maronakins ( http://boards.gamefaqs.com/gfaqs/genmes ... c=29597350 ) has provided an Snes9x savestate of right before the Gem Box room!

http://assassin17.brinkster.net/magimaster.zip

thus allowing us to readily duplicate the bug.

(he also sent me his ROM, and it's a clean v1.0)

if i wipe out both of the "Begin action queue for character $21 (NPC $21)" blocks in the event code (i just replaced them with 92h, pause), the party will be able to respond to and fight an invisible MagiMaster. this isn't much of a stride, as character 21h is MagiMaster, and we already knew he was the problem.

what i'd like to know is where the different NPC characters involved are defined in the first place.
Last edited by Assassin on Sun Jan 03, 2016 1:27 am, edited 1 time in total.
Reason: updated savestate link
User avatar
Assassin
Moderator
Moderator
 
Posts: 1195
Joined: Tue Sep 14, 2004 5:10 am

Postby erokdrah » Tue Aug 01, 2006 8:30 am

removed
Last edited by erokdrah on Fri Sep 19, 2008 1:10 am, edited 1 time in total.
User avatar
erokdrah
Active User
Active User
 
Posts: 57
Joined: Sat Apr 22, 2006 12:42 am

Postby Assassin » Tue Aug 01, 2006 8:41 am

be specific.
User avatar
Assassin
Moderator
Moderator
 
Posts: 1195
Joined: Tue Sep 14, 2004 5:10 am

Postby ArmorVil » Tue Aug 01, 2006 9:45 am

Assassin, did you try hitting Imzo's NPC data doc ? In location 364 are listed all the NPCs which should appear at the top of the tower...
User avatar
ArmorVil
Regular User
Regular User
 
Posts: 249
Joined: Mon Nov 01, 2004 2:48 pm
Location: Le Mans, France

Postby Assassin » Tue Aug 01, 2006 10:07 am

ah, thanks.
User avatar
Assassin
Moderator
Moderator
 
Posts: 1195
Joined: Tue Sep 14, 2004 5:10 am

Postby Novalia Spirit » Tue Aug 01, 2006 10:20 am

Knowing what series of events this person went through prior to reaching the current location might be helpful...

The only thing I found is that when the game invokes a party selection screen, it mysteriously solves the problem.
User avatar
Novalia Spirit
Regular User
Regular User
 
Posts: 268
Joined: Tue Aug 30, 2005 5:30 am
Location: Quebec

Postby Assassin » Wed Aug 02, 2006 1:20 am

yah, i noticed that too. in contrast, leaving the tower and flying the airship didn't do anything.
User avatar
Assassin
Moderator
Moderator
 
Posts: 1195
Joined: Tue Sep 14, 2004 5:10 am

Postby Imzogelmo » Wed Aug 02, 2006 9:45 am

Did either of you guys try leaving and doing a regular save? If that solves the problem (and I suspect it might), then it would narrow down the range of screwed up RAM a bit.

I may look at this later if no one else figures it out.
User avatar
Imzogelmo
Veteran
Veteran
 
Posts: 659
Joined: Wed Sep 08, 2004 4:07 pm
Location: On the spirtual plane

Postby Assassin » Wed Aug 02, 2006 9:49 am

good idea; just tried; no dice.
User avatar
Assassin
Moderator
Moderator
 
Posts: 1195
Joined: Tue Sep 14, 2004 5:10 am

Postby Imzogelmo » Wed Aug 02, 2006 10:07 am

Ah, I was coming back to edit in the same info. Did you try doing a regular save, resetting, and loading from that save? I didn't try that, but it could make a difference.

EDIT: Nope. No difference. Now I'm really stumped.
User avatar
Imzogelmo
Veteran
Veteran
 
Posts: 659
Joined: Wed Sep 08, 2004 4:07 pm
Location: On the spirtual plane

Postby Lenophis » Wed Aug 02, 2006 2:04 pm

Well let's review the scenario. It's been a while since I fought the MagiMaster, but this is what I recall happens from memory.

Enter the Gem Box room.
Step on the tile that guards the treasure chest, and for good measure, got the Gem Box too. It's that good. ;)
Leave the room, attempt to leave the stairwell when the fanatics surround us.
"Master Kefka's treasure...Return it now!"
During this point, menu access is restricted. (I think...)
Eventually another figure climbs up the stairs. At the top, it does a weird counter-clockwise circling of the area, then (assuming we never moved) it comes to a stop two tiles above us. Battle begins!
After the battle, everything is mysteriously gone, as if nothing ever happened.

There are a few things that seem like it would cause havoc.
Do we have the Gem Box? (I don't think this one matters.)
When was the last time the game/system was turned off?
Did the MagiMaster follow his rather odd counter-clockwise path to eventually stop where he does?
Can you open the menu?
Can you walk around while the MagiMaster is climbing up?
What was the previous storyline event that was done?
Did we do the entire tower in one run, getting everything and killing the White Dragon on the way up?

That's a lot of crap to look for. That's everything I can think of though.
Lenophis
Veteran
Veteran
 
Posts: 588
Joined: Sat Mar 26, 2005 5:52 am
Location: Duluth, MN

Postby Djibriel » Wed Aug 02, 2006 2:30 pm

What's interesting about the section is how it lacks the normal object introduction sequence. Normally, it goes down like this:

Create object
Sometimes, a location or initial movement is given here
Show object
Stuff happens
Hide object
Delete object

This isn't present for NPC $21, the MagiMaster, but it also isn't for the multiple cult NPCs, so while it can be a reason, it's not the direct and only one.

So what's the difference between $21 and the rest? Either <b>a</b> $21 is given a special treatment causing the other $21 to be treated differently by the same section, or the mysterious Command 3A is the culprit. It's used all the time but I have no idea what it does.
"The population in Iraq is over 80% Shi'ite. Couldn't the same be said about your music, Mr. Durst? "
User avatar
Djibriel
Regular User
Regular User
 
Posts: 354
Joined: Wed Sep 08, 2004 3:45 pm
Location: Outsider!

Postby Lenophis » Thu Aug 03, 2006 2:23 am

Ahhh hell. I just thought of something. It might also explain a couple other event mysteries too...

I'll use the sealed gate as an example.

Code: Select all
CB/3A23: 4B    Display dialogue message $0665, wait for button press (At bottom of screen)
               This is the sealed gate_
CB/3A26: 95    Pause for 120 units
CB/3A27: 30    Begin action queue for character $30 (NPC $30), 3 bytes long (Wait until complete)
CB/3A29: C1        Set vehicle/entity's event speed to slow
CB/3A2A: 8E        Move vehicle/entity down 4 tiles
CB/3A2B: FF        End map script
CB/3A2C: B2    Call subroutine $CB3890
CB/3A30: B5    Pause for 15 * 6 (90) units
CB/3A32: B2    Call subroutine $CB3F9A
CB/3A36: F6    Command $F6, $81, $32, $C8
CB/3A3A: B5    Pause for 15 * 6 (90) units
CB/3A3C: 39    Free screen
CB/3A3D: 00    Begin action queue for character $00 (TERRA ), 3 bytes long
CB/3A3F: C1        Set vehicle/entity's event speed to slow
CB/3A40: 90        Move vehicle/entity up 5 tiles
CB/3A41: FF        End map script
CB/3A42: 32    Begin action queue for character $32 (Party Character 1), 4 bytes long
CB/3A44: E0        Pause for 4 units
CB/3A46: 80        Move vehicle/entity up 1 tile
CB/3A47: FF        End map script
CB/3A48: 34    Begin action queue for character $34 (Party Character 3), 4 bytes long
CB/3A4A: E0        Pause for 8 units
CB/3A4C: 80        Move vehicle/entity up 1 tile
CB/3A4D: FF        End map script
CB/3A4E: 33    Begin action queue for character $33 (Party Character 2), 4 bytes long
CB/3A50: E0        Pause for 8 units
CB/3A52: 80        Move vehicle/entity up 1 tile
CB/3A53: FF        End map script
CB/3A54: 4B    Display dialogue message $0664, wait for button press
               TERRA: __
CB/3A57: 35    Command $35, $00
CB/3A59: 92    Pause for 30 units
CB/3A5A: F6    Command $F6, $81, $64, $FF
CB/3A5E: B2    Call subroutine $CB3890
CB/3A62: 92    Pause for 30 units
CB/3A63: 00    Begin action queue for character $00 (TERRA ), 2 bytes long (Wait until complete)
CB/3A65: 21        Do vehicle/entity graphical action $21
CB/3A66: FF        End map script
CB/3A67: 41    Show object $16
CB/3A69: 41    Show object $17
CB/3A6B: 41    Show object $18
CB/3A6D: 16    Begin action queue for character $16 (NPC $16), 3 bytes long (Wait until complete)
CB/3A6F: C8        Set bit $1E80($02) [$1E80, bit 2]
CB/3A71: FF        End map script
CB/3A72: 17    Begin action queue for character $17 (NPC $17), 3 bytes long (Wait until complete)
CB/3A74: C8        Set bit $1E80($02) [$1E80, bit 2]
CB/3A76: FF        End map script
CB/3A77: 18    Begin action queue for character $18 (NPC $18), 3 bytes long (Wait until complete)
CB/3A79: C8        Set bit $1E80($02) [$1E80, bit 2]
CB/3A7B: FF        End map script
CB/3A7C: 93    Pause for 45 units
CB/3A7D: 38    Hold screen
CB/3A7E: 94    Pause for 60 units
CB/3A7F: F6    Command $F6, $81, $00, $00
CB/3A83: F4    Play sound effect 205 (Kefka's laugh)
CB/3A85: 95    Pause for 120 units
CB/3A86: FB   
CB/3A87: 91    Pause for 15 units
CB/3A88: 30    Begin action queue for character $30 (NPC $30), 3 bytes long
CB/3A8A: C3        Set vehicle/entity's event speed to fast
CB/3A8B: 9A        Move vehicle/entity down 7 tiles
CB/3A8C: FF        End map script
CB/3A8D: F6    Command $F6, $10, $1F, $FF
CB/3A91: 35    Command $35, $30
CB/3A93: 92    Pause for 30 units
CB/3A94: 32    Begin action queue for character $32 (Party Character 1), 2 bytes long
CB/3A96: CE        Turn vehicle/entity down
CB/3A97: FF        End map script
CB/3A98: 33    Begin action queue for character $33 (Party Character 2), 2 bytes long
CB/3A9A: CE        Turn vehicle/entity down
CB/3A9B: FF        End map script
CB/3A9C: 34    Begin action queue for character $34 (Party Character 3), 2 bytes long
CB/3A9E: CE        Turn vehicle/entity down
CB/3A9F: FF        End map script
CB/3AA0: 00    Begin action queue for character $00 (TERRA ), 2 bytes long (Wait until complete)
CB/3AA2: CE        Turn vehicle/entity down
CB/3AA3: FF        End map script
CB/3AA4: 93    Pause for 45 units
CB/3AA5: 4B    Display dialogue message $066E, wait for button press
               TERRA!
               _the gate_quickly!
CB/3AA8: 32    Begin action queue for character $32 (Party Character 1), 2 bytes long
CB/3AAA: 63        Do vehicle/entity graphical action $23, flipped horizontally
CB/3AAB: FF        End map script
CB/3AAC: 92    Pause for 30 units
CB/3AAD: B2    Call subroutine $CB38AC
CB/3AB1: 00    Begin action queue for character $00 (TERRA ), 5 bytes long (Wait until complete)
CB/3AB3: 20        Do vehicle/entity graphical action $20
CB/3AB4: E0        Pause for 1 units
CB/3AB6: CE        Turn vehicle/entity down
CB/3AB7: FF        End map script
CB/3AB8: 97    Fade screen to black
CB/3AB9: 5C    Command $5C
CB/3ABA: 42    Hide object $00
CB/3ABC: 3F    Remove character $00 (TERRA ) from the party
CB/3ABF: 40    Assign properties $2A to character $0F (LEO   )
CB/3AC2: 3D    Create object $0F
CB/3AC4: 45    Refresh objects
CB/3AC5: 7F    Change character $0F's name to $2A (KEFKA )
CB/3AC8: 37    Assign graphics $15 to object $0F (LEO   )
CB/3ACB: 43    Assign palette $03 to character $0F (LEO   )
CB/3ACE: 88    Remove all but the following status ailments from character $0F (LEO   ): Float, Dog Block, Hide, Chant (Casting Spell), Morph (Esper-form), Instant Death Protection, Frozen, Rage, Death (Wound), Petrify (Stone), Imp, Vanish (Clear), Poison, Zombie, Dark
CB/3AD2: 8B    For character $0F (LEO   ), take HP and set to maximum
CB/3AD5: 8C    For character $0F (LEO   ), take MP and set to maximum
CB/3AD8: B2    Call subroutine $CACFBD (function heals all HP/MP/Statuses except M-Tek & Dog Block)
CB/3ADC: 4D    Invoke battle, enemy set $79, background $3F (Default for this area), other flags $40


Right after Kefka laughs, the screen pans down very quickly and Metamorphosis starts playing. And now the catch, in this event snippit, you never see the song played here. This brings me to two conclusions:

1: The song is the song for this room, but nothing would've triggered it to start up.
2: The damn thing is hardcoded (and by that, manually and deeply hidden to play that song specifically)!

By the way, Metamorphosis is song 1F, or 31 in decimal.

I'm going out on a limb and am gonna say that the MagiMaster is so odd (and was probably one of the first events they tried to do) that there's something hardcoded in this mess.
Lenophis
Veteran
Veteran
 
Posts: 588
Joined: Sat Mar 26, 2005 5:52 am
Location: Duluth, MN

Postby Novalia Spirit » Fri Aug 04, 2006 10:47 am

It appears the ground events on the top floor are in no way responsible for this occurence, except perhaps if you put the blame on them for not including a countermeasure. I've relocated both MagiMaster and a disciple so that I could see them regardless of the aforementioned events, and discovered that $1F53, bit 1 is what toggles the sprites there; what makes them disappear ordinarily is probably the result of the Load Map command following the MagiMaster battle. So what I've noticed is that when the bug is effective, MagiMaster never shows up (no kidding ;)), which is not applicable to normal circumstances.

After examining the airship code, I've discovered that the following segment is what "heals" the bug:

Code: Select all
CACCA4: E3    Command $E3
CACCA5: C0    If ($1E80($1A0) [$1EB4, bit 0] is set), branch to $CACCAD
CACCAB: 3E    Delete object $00
CACCAD: C0    If ($1E80($1A1) [$1EB4, bit 1] is set), branch to $CACCB5
CACCB3: 3E    Delete object $01
CACCB5: C0    If ($1E80($1A2) [$1EB4, bit 2] is set), branch to $CACCBD
CACCBB: 3E    Delete object $02
CACCBD: C0    If ($1E80($1A3) [$1EB4, bit 3] is set), branch to $CACCC5
CACCC3: 3E    Delete object $03
CACCC5: C0    If ($1E80($1A4) [$1EB4, bit 4] is set), branch to $CACCCD
CACCCB: 3E    Delete object $04
CACCCD: C0    If ($1E80($1A5) [$1EB4, bit 5] is set), branch to $CACCD5
CACCD3: 3E    Delete object $05
CACCD5: C0    If ($1E80($1A6) [$1EB4, bit 6] is set), branch to $CACCDD
CACCDB: 3E    Delete object $06
CACCDD: C0    If ($1E80($1A7) [$1EB4, bit 7] is set), branch to $CACCE5
CACCE3: 3E    Delete object $07
CACCE5: C0    If ($1E80($1A8) [$1EB5, bit 0] is set), branch to $CACCED
CACCEB: 3E    Delete object $08
CACCED: C0    If ($1E80($1A9) [$1EB5, bit 1] is set), branch to $CACCF5
CACCF3: 3E    Delete object $09
CACCF5: C0    If ($1E80($1AB) [$1EB5, bit 3] is set), branch to $CACCFD
CACCFB: 3E    Delete object $0B
CACCFD: C0    If ($1E80($1AC) [$1EB5, bit 4] is set), branch to $CACD05
CACD03: 3E    Delete object $0C
CACD05: C0    If ($1E80($1AD) [$1EB5, bit 5] is set), branch to $CACD0D
CACD0B: 3E    Delete object $0D
CACD0D: C0    If ($1E80($1AA) [$1EB5, bit 2] is set), branch to $CACD15
CACD13: 3E    Delete object $0A
CACD15: 45    Refresh objects
CACD16: FE    Return


If you replace the original $E3 command with an $FE command (Return), not only will MagiMaster remain invisible, but a half-dozen of the disciples will suffer the same bug as MagiMaster. As for MagiMaster himself... I couldn't narrow it down to a single entry in the above code. For example, if you erase the CACD05-CACD14 segment, the MagiMaster bug will exist ONLY if you make a four-character party. I find this very, very frustrating...
User avatar
Novalia Spirit
Regular User
Regular User
 
Posts: 268
Joined: Tue Aug 30, 2005 5:30 am
Location: Quebec

Re: At long last, we've got you cornered.

Postby Assassin » Mon Mar 07, 2011 12:43 pm

*bump*

this thread looks like an unresolved cliffhanger because the board went down for a long time in 2006-2008, and the latest backup mnrogar had was a few months older than recent. but rest assured, Novalia Spirit and Drakkhen further nailed this bug down, and an exact cause was found.

from what i remember, you have to recruit Gogo and/or Umaro in the WoR with no space for them in your party, not do any party switching on the airship, then head to the Fanatics' Tower, and you'll get the freeze bug at the top.

but is it Umaro, Gogo, or both? i'm somewhat foggy on this.
User avatar
Assassin
Moderator
Moderator
 
Posts: 1195
Joined: Tue Sep 14, 2004 5:10 am

Re: At long last, we've got you cornered.

Postby Drakkhen » Mon Mar 07, 2011 9:43 pm

Both are required. Neither alone is powerful enough to hold back this powerful foe.
Drakkhen
Active User
Active User
 
Posts: 71
Joined: Thu Sep 09, 2004 9:06 am
Location: Dry Land, Earth

Re: At long last, we've got you cornered.

Postby Assassin » Tue Mar 08, 2011 6:24 am

thanks.

*pictures Gogo and Umaro in the airship laboringly holding two fishing lines with MagiMaster attached to them*
User avatar
Assassin
Moderator
Moderator
 
Posts: 1195
Joined: Tue Sep 14, 2004 5:10 am

Re: At long last, we've got you cornered.

Postby Novalia Spirit » Fri Mar 11, 2011 12:18 pm

In order to illustrate the complexity of the bug, a brief explanation concerning the mechanics that govern map objects is necessary. First of all, one element that must be emphasized is that a map can contain a maximum of only 23 active entities without any adverse repercussions. Any exceeding entity will exhibit the following symptoms: 1) absence of graphics 2) incapacity to move 3) impossibility of multiple interactions with the party.

For each of the sixteen character slots to be considered as activated, the corresponding object must be created via event command $3D. Only through event command $3E, which allows for an object to be deleted, will the slot no longer be considered as such; certain battle situations, such as the successful execution of BabaBreath, will achieve similar effects. NPC slots operate in the same manner, with the exception that they can also be activated through flags stored at RAM address $1EE0 and further. Another distinction lies in the fact that NPCs are automatically deleted whenever the map changes.

Before proceeding further, here is a list of scenarios in which a character slot is activated despite the absence of the occupant in all possible parties:
  • Whenever the player elects to rescue Mog in preference to Lone Wolf, the moogle never immediately joins the active party. Regardless, the corresponding object is created. Note that it will automatically be deleted after the banquet, should Mog be recruited before that point.
  • After the battle that results in Leo's demise, Kefka's character slot remains active despite the lack of an immediate purpose. This oversight is seemingly devoid of repercussions, even if Mog should subsequently be recruited.
  • When Gogo is recruited, the corresponding character slot is activated. Should the member capacity of the group prove insufficient, thereby forcing the mime to depart for the airship, the character slot will remain active regardless.
  • When Umaro is enlisted, the sasquatch never immediately joins the active party. Regardless, the corresponding object is created.
It bears mentioning that seemingly inconsequential scenarios have been omitted. For instance, Gau's character slot remains activated after the invocation of his naming screen; given his imminent recruitment, adverse impacts are highly unlikely. Additionally, situations that are similar to those depicted above can be experienced through other bugs; for example, the bug described under "127" in this post allows for up to five character slots to be active at the same time. Further note that in all cases, the simplest way to rectify the situation is to invoke a party-selection screen.

Now, let's examine the repercussions:
  • After the party confronts Kefka at the sealed gate, the gateway becomes obstructed by a total of thirteen boulders. At this time, there are seven other active NPCs on the map (six gate tiles, plus Kefka, who is merely hidden), bringing the total to twenty. Should the active party consist of four members, or three if Mog should be recruited before the group ventures into the cave, the final rock will not be displayed. Should both conditions be met, then the second-to-last rock will be affected by the bug as well. Note that all rocks are displayed correctly when the gate is subsequently seen during a scene preceding the rise of the Floating Continent. Further details can be found here.
  • The highest floor of the Fanatics' Tower houses nineteen NPCs. The highest-numbered NPC harbors no graphics, as it temporarily prevents the party from returning inside the room with the Gem Box; the preceding NPC is MagiMaster. Should a total of six character slots be activated, which can normally be achieved by bringing a group of four characters after having recruited Umaro and Gogo in the manner described above, MagiMaster will be affected by the bug. Because the event script is halted until the action queue for MagiMaster is complete, which cannot be accomplished under such circumstances, an infinite loop will ensue, thereby forcing the player to reset the console.
  • In Maranda during the second half of the game, a letter can be attached to a carrier pigeon, which will then head toward Zozo, where it can subsequently be found. Should a party of four characters follow the bird under the same conditions that are applicable for MagiMaster, the spectre that provides an explanation of the esper system will be affected by the bug until the party interacts with the bird. Such a phenomenon cannot be observed once the rust on the door leading to Mt. Zozo has been dissolved, as it is actually an invisible entity that prevents the door from being opened.
On a final note, I should mention that I have taken a look at the relevant RAM addresses of the save file that was provided by Maronakins, and that I was able to confirm that Umaro and Gogo were the culprits in this specific case. Now that I have a viable description readily available, I'll see whether I can come up with a fix that will eliminate all known instances of this bug. :P
Last edited by Novalia Spirit on Mon Mar 14, 2011 4:45 pm, edited 4 times in total.
User avatar
Novalia Spirit
Regular User
Regular User
 
Posts: 268
Joined: Tue Aug 30, 2005 5:30 am
Location: Quebec

Re: At long last, we've got you cornered.

Postby Assassin » Sat Mar 12, 2011 9:58 am

great post, very informative.

Novalia Spirit wrote:Should the active party consist of four members, or three if Mog should be recruited before venturing into the cave, the final rock will not be displayed.


to be sure, you mean recruited but not enlisted in the party?

Now that I have a viable description readily available, I'll see whether I can come up with a fix that will eliminate all known instances of this bug. :P


ok, i can see how you'd stop recruited Mog from causing a missing boulder.. but how will you stop the presence of 4 current party members from causing one?

also, do you know what Objects $16 - $19 and $27 are in the NPC data for this map?


Note that all rocks are displayed correctly when the gate is subsequently seen during a scene preceding the rise of the Floating Continent.


where's the event code to put the rocks at their correct places on this visit?
User avatar
Assassin
Moderator
Moderator
 
Posts: 1195
Joined: Tue Sep 14, 2004 5:10 am

Re: At long last, we've got you cornered.

Postby Novalia Spirit » Sun Mar 13, 2011 5:15 pm

to be sure, you mean recruited but not enlisted in the party?

Indeed. As I mentioned, Mog never immediately joins the active party when recruited. Only through the party-selection screen can the moogle be placed into the immediate party. However, should that occur, the distinctive aspect of the situation will cease to exist.

I have edited that part of the post to alleviate the confusion, as the wording implied that "Mog" was the subject of "venturing."

ok, i can see how you'd stop recruited Mog from causing a missing boulder.. but how will you stop the presence of 4 current party members from causing one?

It is my belief that the situation can be rectified simply by deactivating Kefka.

also, do you know what Objects $16 - $19 and $27 are in the NPC data for this map?

Here's the full list for that location:
Code: Select all
10. $1F0D:0 Gate segment (NW)
11. $1F0D:0 Gate segment (NE)
12. $1F0D:0 Gate segment (SW/W)
13. $1F0D:0 Gate segment (SW/E)
14. $1F0D:0 Gate segment (SE/E)
15. $1F0D:0 Gate segment (SE/W)
16. $1F0D:6 Kefka
17. $1F0D:7 Soldier (W)
18. $1F0E:0 Soldier (E)
19. $1EFF:7 Gestahl
1A. $1F1F:6 Boulder 1
1B. $1F1F:6 Boulder 2
1C. $1F1F:6 Boulder 3
1D. $1F1F:6 Boulder 4
1E. $1F1F:6 Boulder 5
1F. $1F1F:6 Boulder 6
20. $1F1F:6 Boulder 7
21. $1F1F:6 Boulder 8
22. $1F1F:6 Boulder 9
23. $1F1F:6 Boulder 10
24. $1F1F:6 Boulder 11
25. $1F1F:6 Boulder 12
26. $1F1F:6 Boulder 13
27. $1F1F:3 Pebble

where's the event code to put the rocks at their correct places on this visit?

It can be found within the subroutine at CB/3F08:
Code: Select all
CB/3F08: F2    Fade out current song with transition time 64
CB/3F0A: D8    Set event bit $1E80($4FE) [$1F1F, bit 6]
CB/3F0C: D8    Set event bit $1E80($4FB) [$1F1F, bit 3]
CB/3F0E: 6B    Load map $0187 (Cave to the Sealed Gate, sealed gate room) instantly, (upper bits $0000), place party at (8, 14), facing up
CB/3F14: F6    Subcommand $10: Play song $39 (Wind) at volume $00 (may have other effects)
CB/3F18: F6    Subcommand $81: Change volume of currently playing song to $78, transition time 40
CB/3F1C: B2    Call subroutine $CB3DCF
CB/3F20: 1A    Begin action queue for character $1A (NPC $1A), 4 bytes long (Wait until complete)
CB/3F22: D5        Set vehicle/entity's position to (9, 8)
CB/3F25: FF        End queue
CB/3F26: 1B    Begin action queue for character $1B (NPC $1B), 4 bytes long (Wait until complete)
CB/3F28: D5        Set vehicle/entity's position to (8, 7)
CB/3F2B: FF        End queue
CB/3F2C: 1C    Begin action queue for character $1C (NPC $1C), 4 bytes long (Wait until complete)
CB/3F2E: D5        Set vehicle/entity's position to (8, 8)
CB/3F31: FF        End queue
CB/3F32: 1D    Begin action queue for character $1D (NPC $1D), 4 bytes long (Wait until complete)
CB/3F34: D5        Set vehicle/entity's position to (7, 8)
CB/3F37: FF        End queue
CB/3F38: 1E    Begin action queue for character $1E (NPC $1E), 4 bytes long (Wait until complete)
CB/3F3A: D5        Set vehicle/entity's position to (7, 7)
CB/3F3D: FF        End queue
CB/3F3E: 1F    Begin action queue for character $1F (NPC $1F), 4 bytes long (Wait until complete)
CB/3F40: D5        Set vehicle/entity's position to (8, 8)
CB/3F43: FF        End queue
CB/3F44: 20    Begin action queue for character $20 (NPC $20), 4 bytes long (Wait until complete)
CB/3F46: D5        Set vehicle/entity's position to (8, 8)
CB/3F49: FF        End queue
CB/3F4A: 21    Begin action queue for character $21 (NPC $21), 4 bytes long (Wait until complete)
CB/3F4C: D5        Set vehicle/entity's position to (7, 8)
CB/3F4F: FF        End queue
CB/3F50: 22    Begin action queue for character $22 (NPC $22), 4 bytes long (Wait until complete)
CB/3F52: D5        Set vehicle/entity's position to (9, 7)
CB/3F55: FF        End queue
CB/3F56: 23    Begin action queue for character $23 (NPC $23), 4 bytes long (Wait until complete)
CB/3F58: D5        Set vehicle/entity's position to (7, 7)
CB/3F5B: FF        End queue
CB/3F5C: 24    Begin action queue for character $24 (NPC $24), 4 bytes long (Wait until complete)
CB/3F5E: D5        Set vehicle/entity's position to (8, 7)
CB/3F61: FF        End queue
CB/3F62: 25    Begin action queue for character $25 (NPC $25), 4 bytes long (Wait until complete)
CB/3F64: D5        Set vehicle/entity's position to (8, 7)
CB/3F67: FF        End queue
CB/3F68: 26    Begin action queue for character $26 (NPC $26), 4 bytes long (Wait until complete)
CB/3F6A: D5        Set vehicle/entity's position to (8, 6)
CB/3F6D: FF        End queue
CB/3F6E: B2    Call subroutine $CB39AC
CB/3F72: 59    Unfade screen at speed $04
CB/3F74: 5C    Pause execution until fade in or fade out is complete
CB/3F75: 94    Pause for 60 units
CB/3F76: B5    Pause for 15 * 6 (90) units
CB/3F78: B2    Call subroutine $CB3DEA
CB/3F7C: B5    Pause for 15 * 6 (90) units
CB/3F7E: 58    Shake screen ($F4):
               (Intensity: 0))
               (Permanance and ???: 1))
               (Layer 1 affected)
               (Layer 2 affected)
               (Layer 3 affected)
               (Sprite layer affected)
CB/3F80: F6    Subcommand $82: Change volume of currently playing sound effect to $00, transition time 40
CB/3F84: B5    Pause for 15 * 6 (90) units
CB/3F86: B2    Call subroutine $CB38AC
CB/3F8A: 97    Fade screen to black
CB/3F8B: 5C    Pause execution until fade in or fade out is complete
CB/3F8C: 39    Free screen
CB/3F8D: F0    Play song 31 (Metamorphosis), (high bit clear), full volume
CB/3F8F: D2    Set event bit $1E80($1CC) [$1EB9, bit 4]
CB/3F91: D9    Clear event bit $1E80($4FE) [$1F1F, bit 6]
CB/3F93: D9    Clear event bit $1E80($4FB) [$1F1F, bit 3]
CB/3F95: B2    Call subroutine $CB3995
CB/3F99: FE    Return
User avatar
Novalia Spirit
Regular User
Regular User
 
Posts: 268
Joined: Tue Aug 30, 2005 5:30 am
Location: Quebec


Return to FF3 Gameplay Discussion

Who is online

Users browsing this forum: No registered users and 1 guest

cron