• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Dawn, Gloria, Juliana, or Summer - which Pokémon protagonist is your favorite? Let us know by voting in our poll!
  • 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.

[Script] Pokemon Fire Red - How to edit the first healing script (Pallet Town)

  • 120
    Posts
    6
    Years
    • Seen Nov 2, 2023
    Hello everyone, this is my first time posting and I am sincerely sorry if I end up breaking some rules. I've pretty much gained a lot of experience as far as scripting goes and have always used dynamic offsets. The problem is that I don't know how to edit the first healing script so that when the trainer whites out, it spawns in Prof. Oak's lab instead. I've come across Hackmew's and Linkandzelda's tutorial, but I honestly don't understand anything from it, as it also extends the sethealingplace and the thread talks about manually repointing data in Xse which isn't my best subject. I am actually kinda surprised because I'm unable to find much information regarding this topic. I'd like to know how to make the player respawn to Prof. Oak's lab in Pallet town (map bank and number), in a certain x and y position as well as where to put the script (I assume the map script as I've only used person events, signposts and regular scripts so far). Any help would be appreciated.
     
    The information in linkandzelda's tutorial is enough to find how the data that sets which map you respawn in. He says that the table to spawn points is structured like this: "[Map Bank - 2 Bytes] [Map - 2 Bytes]" and give the start of the table as 0x3EEC98. Since the player's house is the first spawn point in the table you just have to edit the first four bytes to change where you respawn. Specifically, in order to change the spawn point from your house to Oak's Lab, you need to change the byte at 0x3EEC9A to 03.

    As for changing the scene that plays out when you respawn, you can find the default script at 0x1A8DD8. You can do a nifty trick to repoint the script without having to change its pointer in a hex editor every time you want to edit it. Use this excerpt at the start of your script and it will repoint your new commands/ dialogue/ whatever to free space:

    Code:
    #dynamic 0x800000
    
    #org 0x1A8DD8 // Begining of mother's revive script
    goto @Repoint
    
    #org @Repoint
    ... // Your new script continues from here

    If you want to change the Pokemon Centre respawn script as well, you can do the same thing, but change the static pointer to 0x1A8D97.
     
    Back
    Top