For the wrong Pokemon error, my guess is that you have two object events that you added after OBJ_EVENT_GFX_HOOH in
include/constants/event_objects.h
, but before all of the follower object events. This would cause all of the offsets to be off by two. If this is the cause of the issue, you can fix this by going into
src/overworld.c
, and then look at the function
UpdateFollowerPokemonGraphic
. Then make this change to the first line:
Code:
u16 leadMonGraphicId = GetMonData(&gPlayerParty[GetLeadMonNotFaintedIndex()], MON_DATA_SPECIES, NULL) + 238;
↓ ↓ ↓ ↓
u16 leadMonGraphicId = GetMonData(&gPlayerParty[GetLeadMonNotFaintedIndex()], MON_DATA_SPECIES, NULL) + OBJ_EVENT_GFX_BULBASAUR - 1;
This will allow you to have as many object event constants as you want before the start of the followers without causing this offset to occur. I'm going to add this in the next time I update the repository, along with a similar fix to
IsFlyingPokemonGraphic
in
gflib/sprice.c
. Thanks for bringing this to my attention!
Now this error is much harder to solve. I only have a couple ideas, and I'm not really confident in either of them.
The first thing you can try is go into
include/global.h
, and go down to the definition of
struct SaveBlock2
. Make sure that
bool8 autoRun;
is below
struct Follower follower;
. Sometimes the order of the elements of a struct are important, so that might be messing it up. Still, I'm not confident that this is the solution.
The other idea that I have is based on what I saw in the video. From what I could tell, it looked like the follower acted as if it was south of the protagonist, even though it was actually north. It's possible that, when you switch off the auto-run feature, it causes the follower to reset to being south of the player, regardless of where it actually is. It's a stretch, but something like that may be happening. You could try resetting the follower's coordinates to their proper location whenever you switch off the auto-run feature. Again, I'm not very confident with this fix either, but it's worth a shot.
Let me know if these fixes work for you or not!