• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

[Other✓] Fire Red: Changing which World Map Loads

metapod23

Hardened Trainer
673
Posts
15
Years
  • Seen Aug 18, 2016
This is a fairly simple inquiry, but one I can't figure out for myself, lol. Does anyone know where the data might be stored in the Fire Red rom that determines which world map is loaded for any map that is in the game?

For instance, Pallet Town will always load the Kanto map, so I'm assuming it has something to do with the headers, but I'm not sure. I also thought that the byte used for the Kanto map might be 8E, due to this in Advanced Map's map editor:

mapnumber.jpg


But I haven't been able to figure that out. It would be so much easier if that "Manage world map number" button wasn't grayed out, lol, but I guess that was never implemented. Anyone have any more information about how it works, or if there's a table that determines which map loads based on the header or the maps in the games themselves?

Thanks!
 
5,256
Posts
16
Years
This was answered by Jambo51 a while back here.

It's determined by a set of arrays in the ROM. These arrays are terminated with the byte 0xC5 (as 0xC5 is the highest map ID in FR). It searches through each array, one by one, and if it finds the map name ID, it stops.

The exception to this rule is if the map name is less than 0x8F (so, 0x8E and down), then it automatically appears in Kanto.

It's relatively simple to redefine which maps appear in Kanto, and just as easy to define which maps appear elsewhere by repointing the arrays.

The Kanto definition byte is at 0xC0064 and the arrays start at 0x3F1AA4 and end at 0x3F1AFF (Total data size) with Sevii Islands 1 starting at 0x3F1AA4, Sevii Islands 2 starting at 0x3F1AC2 and Sevii Islands 3 starting at 0x3F1AE0.

By changing these bytes around (and repointing if necessary) you can define which map name appears on which map quite easily.

ETA: The world map flags only control the availability of flight spots, additional information and the colour of the minor locations on the world map, nothing more.
 
1
Posts
14
Years
  • Seen Apr 19, 2024
Thanks, I searched the forums but couldn't find it. I will look at this and see how to implement it.

Hey!

You could make changes?
from the number 8E down over write the names of other points of Kanto and from 57 down does not work.
 
15
Posts
4
Years
  • Age 30
  • Seen Jun 16, 2019
Anyone figure out how to change the images for world maps 2 3 and 4?
 
62
Posts
5
Years
So I'm noticing that the rom does not actually point to the arrays for the second or third sevi island maps. How does the game know when to load those two maps? I've repointed the first set of arrays to C00 000 (just some free space) so that I could extend the amount of maps on it, however I'm looking to repoint the second set of arrays, however there is no pointer pointing to it in the first place. Any suggestions?
 
Back
Top