I’m new to this, and have read through the Ultimate Tutorial ASM guide and searched this site seemingly without finding the answer to my problem, so bear with me a little if this is basic and I just did not understand.
I’m playing around with A-support-dependent “Talk” conversations. The one between Hector and Lyn in 29x/31x is triggered based on an ASM function; seen here in FEBuilder’s disassembler.
I copied these bytes:
00 B5 02 20 2D 21 AC F7 03 FD 00 06 00 16 02 BC 08 47
pasted them in free space (0xD00010), and changed the first “02” to “01” to test creating a conversation between Eliwood and Lyn. I got the events all set up etc, pointed to the right location for the function. It didn’t work (Eliwood froze upon riding up to Lyn), and when I checked the new function in FEBuilder’s disassembler I saw:
Everything is the same except the offset after the BL on the fourth line. Doing the math, this offset is about the same distance from the new function location as the offset in the original from the original location, so I assume it’s defined relatively. However, I just don’t know how to make it so that the new function is looking at the right offset. I’m not sure what bytes correspond to that, or if I’d have to make something entirely new for it to work.
Does anyone have insight? Thank you.