• 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.

Can't Activate Scripts in the Safari Zone Secret House? (and why are some maps linked?)

6
Posts
4
Years
    • Seen Apr 25, 2020
    Hi all,

    I'm having some issues with the start of my ROM hack. The player starts out in Fuchsia City and has to go through the Safari Zone as a sort-of opening gauntlet. When I get to the Secret House, I can't get any script to activate for some reason. Below is the script I'm attempting to implement but I've tried just a simple msgbox command and it still just freezes the game. This same script works in other areas of the Safari Zone, this only happens in the Secret House.
    Spoiler:
    Another thing I'm having trouble with is I've repurposed the Bill's grandfather's house to be the player's house. I restyled it a bit only to find it's linked to the Move Deleter's house next door somehow despite them being different maps. It shows up properly in AdvanceMap but in game either the Move Deleter's house now has the player's house map or vice versa depending on which map was edited and saved last. My plan was to just move it to an entirely new map and change the warp but I'd be curious to know why it does that.

    Thanks in advance for any help!
     

    DrFuji

    [I]Heiki Hecchara‌‌[/I]
    1,691
    Posts
    14
    Years
  • For your script, it seems like you've mixed up the 'var number' and 'var value' boxes in A-Map. As its set up right now, you're checking if variable 0x0 has a value of 0x4017, which as you've experienced, isn't healthy for the ROM.

    As for the linked maps, that's a pretty common thing that happens, but thankfully can be solved pretty easily if you know what you're doing. Those maps share a 'Map ID'. The Map ID is a halfword in the map header that tells the game which map (not events) to load, but if two maps share the same ID, one can load instead of the other. You can check out this thread by Spherical Ice for some more info. Anyway, to fix this, all you have to do is change the map IDs of the interlocked maps. The Map ID is determined by the 19th and 20th bytes in the map header. For example, here's the vanilla Map Header of Pallet Town with its Map ID underlined:

    Code:
    C0D42D08504E3B085A5416086C2735082C01[U]4E00[/U]5800020101060000

    If you were to change those bytes to 4F 00, you will load Viridian City instead. These can't be changed in Advance Map on the fly, so you'll have to open your ROM in a Hex Editor and change the header data through that instead. I went through the game a long time ago and recorded every map's Map ID based on Spherical Ice's initial data, so feel free to use it to know which specific maps are linked with each other.
     
    6
    Posts
    4
    Years
    • Seen Apr 25, 2020
    Oh, you're kidding me. I can't believe I missed that! Thanks for pointing that out! And that's very interesting on the linked maps. Fair enough as well. I guess it's like pointing to the same string of text in different events to save space.

    if you know what you're doing
    I'm not sure I do anymore, ha!
     
    Back
    Top