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:
#org 0x1A8DD8 // Begining of mother's revive script
... // 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.