A slickproductions.org /forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&action=printpage;topic=1769.0 e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index09ce.html slickproductions.org /forum/index.php?PHPSESSID=5f0fck550j2m4m2fpbtkj2vkm1&topic=1769.0 e:/My Web Sites/Slick Productions - FFIV Message Board/slickproductions.org/forum/index09ce.html.z x
]g^ ,0 R OK text/html ISO-8859-1 gzip @ R Tue, 10 Mar 2020 09:41:57 GMT 0 0 P
]g^ R
Print Page - Decoding World Map Triggers
Board of Slick
Library of the Ancients => Final Fantasy IV Research & Development => Topic started by: chillyfeez on October 17, 2012, 11:10:37 AM
Title: Decoding World Map Triggers
Post by: chillyfeez on October 17, 2012, 11:10:37 AM
I've been working on figuring out the Overworld/Underworld/Moon map triggers. Most of what follows is interpreted from Yousei's document. Hopefully this will clarify a bit what took me some experimenting and time to figure out:
The World Map trigger data is located from D0066-D01FF (headered US ROM). Each trigger is five bytes long. Byte 0: X-Position Byte 1: Y-Position Byte 2: Call to load a new map (or play an event - more on this later) Byte 3: New map X-Pos Byte 4: New Map Y-Pos
So, at D0066, we have: 65 9C 24 10 1E "At 65/9C (NW Corner of Baron Castle), load map 24 (Baron Castle) at position 10/1E."
If Byte 2 = FF, this is an event call. The game, as programmed, has seven of these - two in the Overworld and five in the Underworld:
Quote
Event Call ID X-Pos Y-Pos Event ID Description ------------- ----- ----- -------- ----------- (Overworld) 10 77 3E 42 Redwings Bombing Damcyan 2B DD 38 83 Boarding the ship in Fabul (Underworld) 58 30 0F 06 Entering the Tower of Bab-il from the Underworld "" 31 0F "" "" 36 37 14 FE Dwarf tanks shooting tower of Bab-il "" 36 11 "" "" "" 33 10 "" ""
I don't quite understand why the event call IDs do not match the actual event IDs. Also, I've played around with inserting other values besides the four used, and have not found any others that work (but have not exhausted all 252 possibilities by any stretch).
It's also worth mentioning that, as with location maps, if the position of a trigger is moved, the target location must contain a trigger-friendly tile in order for the trigger to function (such as a town tile, cave, castle, etc.). You can use Yousei's FF4ed to do this (if you change the data first, the editor will blue-in the new trigger location).
Also - I think D0060-D0065 contains the data related to which triggers belong in which World Map, but have not yet experimented with this.
Title: Re: Decoding World Map Triggers
Post by: Grimoire LD on October 17, 2012, 03:39:25 PM
Great work there! This will be helpful. But I have to wonder why they would include two of the same event for entering the Tower of Babil (Underworld) that seems an odd choice.
This topic should explain that all better. Tiles use a separate index for events, not entirely sure why but they do. The event calls listed here match up with normal tile events.
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 17, 2012, 04:08:52 PM
"Entering the Tower of bab-il" is not an event like we tend to think of it, it simply puts you in the entrance of the tower. There are two tiles because the tower is two tiles wide. I'm guessing they had a finite number of "Entrance" trigger tiles to work with, and ran out before programming the tower... or something like that...
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 17, 2012, 04:46:29 PM
You know, now that you mention it, I've seen that post of yours before. Guess I haven't played enough with tile event calls to have remembered it.
Title: Re: Decoding World Map Triggers
Post by: Deathlike2 on October 17, 2012, 06:37:16 PM
All I can say is that the tower is "two spaces wide" like many other things - usually towns are that many spots wide.
Title: Re: Decoding World Map Triggers
Post by: Grimoire LD on October 17, 2012, 07:05:52 PM
Ah, my memory was playing tricks on me and I thought that the tower itself was three tiles wide with only one being accessible. My mistake. Now that I think on it though you cannot enter the Tower of Babil once Golbez destroys the stairs. Likely the purpose of that designation is to put a "Requires Event Flag XX" to make it accessible/unaccessible.
Ah found it, it's in the notes in that topic. Requires Event Flag 3B to kill the event.
Title: Re: Decoding World Map Triggers
Post by: Deathlike2 on October 17, 2012, 09:06:12 PM
You can reenter the Tower of Babil underground route at any time until you possess/lose the Dark Crystal.
Title: Re: Decoding World Map Triggers
Post by: Grimoire LD on October 17, 2012, 09:54:51 PM
My mistake. I guess I was thinking too... logically? I never realized you could go back after Golbez destroys the stairs.
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 18, 2012, 11:38:18 AM
Confirmed- the six bytes preceding this table are pointers. Overworld triggers start at byte 0000, underworld at 0122, moon at 0177. So it is possible to redistribute triggers. That's not ground breaking news, but I wanted to make sire that info was also on this thread...
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 18, 2012, 11:40:36 AM
On a more philosophical note... since world map triggers seem to work exactly the same as location map triggers, I wonder if it's possible to hide treasure in the world maps...
Title: Re: Decoding World Map Triggers
Post by: Pinkpuff on October 19, 2012, 06:29:48 AM
You mean like, "Hey why can't I step on this forest tile?" *Hits A* "Found cool item!"
Title: Re: Decoding World Map Triggers
Post by: Deathlike2 on October 19, 2012, 05:31:36 PM
My only guess is that the dialogue screen never comes up ever on the overworld. It probably won't work the way you expect.
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 19, 2012, 08:13:36 PM
My only guess is that the dialogue screen never comes up ever on the overworld. It probably won't work the way you expect.
I Didn't even think of that... My concern was that there are no chest-type tiles used in the world maps. If you try to assign a treasure to, say, a staircase in a location map, it doesn't work... In theory there would have to be a way to change the ASM of tiles so that a world map tile functions as a chest.
Is the world map any different from the field? Is the world map basically a stripped down version of the field, where you can only access the menu, get into random battles, and go to field events (where almost all of the story happens)?
One thing that is definitely true about the Overworld map is that it is 64 times the size of any location map. Given the hardware limitations of the SNES, I'd wonder if the game had enough RAM to load a world map that had all the interactivity of a location map...
Title: Re: Decoding World Map Triggers
Post by: Deathlike2 on October 19, 2012, 09:16:43 PM
One thing that is definitely true about the Overworld map is that it is 64 times the size of any location map. Given the hardware limitations of the SNES, I'd wonder if the game had enough RAM to load a world map that had all the interactivity of a location map...
I doubt it would be anything like that. You are very likely loading portions of that map into memory. Consider the long distance traversing you do on that map. The longest IIRC is the trip from Mysidia to Mt. Ordeals... and even that is linked to the "peninsula of power" with the different monster location borders... this is unlike FF6 (I'm not sure where FF5 goes, but it's probably close to FF4 in terms of overworld design).
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 19, 2012, 10:41:21 PM
I don't know about that, Deathlike2. Using Yousei's editor, I once created a land bridge from Baron to Mysidia, thereby enabling one to walk from the Mist Cave all the way to Mt. Ordeals. It worked just fine - bridge even crossed into Eblan's territory, so the same walking trip involved monsters from all three regions.
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 19, 2012, 11:04:03 PM
So I just did some trials. Seems like anytime you try to call an event in the Overworld that involves any dialogue, as soon as the dialogue is cued to appear, the game simply freezes. Whether my reasoning about RAM is correct or not, it seems the Overworld was not programmed to be able to support the use of dialogue.
Title: Re: Decoding World Map Triggers
Post by: Dragonsbrethren on October 20, 2012, 05:06:40 PM
My concern was that there are no chest-type tiles used in the world maps. If you try to assign a treasure to, say, a staircase in a location map, it doesn't work...
Yes it does, you just can't use the "return" type stairs (the ones marked with an arrow in Phoenix's editor). As long as you use an event tile and you set the treasure up properly (http://slickproductions.org/forum/index.php?topic=1713.msg17558#msg17558), it'll work. Of course, using a non-solid tile has the drawback of functioning as an exit too, usually resulting in you teleporting to Baron.
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 21, 2012, 12:09:48 PM
Well, at any rate, setting up a trigger in the world map in the way that would be proper in a location map teleports you to a glitch world (that has interactive NPCs and is exitable, believe it or not). I'm guessing that the lack of text ability and the exclusion of world maps in the treasure index are at least partly responsible for this.
I suppose you could still hide treasure in the world maps, but you'd have to do it by way of an event: Put a hidden trigger somewhere on the map, linked to an event that adds an item or GP. Maybe you could signify that something has happened with a screen flash or a sound effect (both of those work fine in the world map). Of course, unless you used (READ: wasted) an event flag on this, the treasure would be infinitely re-collectible...
Title: Re: Decoding World Map Triggers
Post by: Grimoire LD on October 21, 2012, 02:17:01 PM
Honestly it seems the game didn't use nearly 255 Event Flags. I could be wrong of course, but finding unused ones shouldn't be difficult. The real issue in this is how do you create a trigger on the world map which doesn't take up space of existing events? The Underworld has a couple of areas, but the Overworld only has... two I believe you said?
Title: Re: Decoding World Map Triggers
Post by: chillyfeez on October 21, 2012, 08:27:04 PM
I was thinking, decrease the size of the world map representations of some towns. Baron: 4 tiles Toroia: 3 Mist: 2 (and I think only one is ever used, because it is cut in half after the earthquake) Agart: 2 Mysidia: 2 And, saving the best for last, there are two tiles at the base of The tower of Bab-il in the Overworld map that are triggers, but are completely unreachable. I looked at their data, they're not even event triggers - they're entrance tiles. One for the Giant's mouth (B5), and one for onboard an airship (C0)... really have no idea why they are there, but they are seemingly expendable.
Title: Re: Decoding World Map Triggers
Post by: Grimoire LD on October 24, 2012, 07:17:40 PM
Now that last part is interesting! I heard rumors back in the day that they planned for the player to be able to re-enter the Giant of Babil and it seems that you may have stumbled onto proof of that. (Or perhaps at one point in production the Giant maps were just another part of the Tower of Babil) Not sure about the Airship part though.
Title: Re: Decoding World Map Triggers
Post by: Pinkpuff on October 25, 2012, 08:30:00 AM
Or maybe at one point in development the tower was enterable from the overworld directly rather than from inside the cave, and then they just forgot/neglected to clean up the inaccessible tiles.
Title: Re: Decoding World Map Triggers
Post by: Dragonsbrethren on October 25, 2012, 01:47:45 PM
That's my guess. The first floor of the overworld tower even has an inaccessible exit tile. It could just be for detail, but that tile isn't used for detail anywhere else in the tower and I'm fairly certain you can't even see it in-game.