I noticed that weird behavior with Drago's script. I've made a patch that you can stick to the bottom of it:
class Scene_Map
alias reset_pixel_on_transfer_player transfer_player
def transfer_player
$game_player.reset_pixel
$game_player.transfer_start = [$game_temp.player_new_x, $game_temp.player_new_y]
reset_pixel_on_transfer_player
end
end
class Game_Player
attr_accessor :transfer_start
TRANSFER_START_NIL = [-1,-1]
alias init_starting_transfer_loc initialize
def initialize
@transfer_start = TRANSFER_START_NIL
init_starting_transfer_loc
end
alias check_if_move_off_transfer_start update
def update
if @x != @transfer_start[0] || @y != @transfer_start[1]
@transfer_start = TRANSFER_START_NIL
end
check_if_move_off_transfer_start
end
alias buffer_trigger_here check_event_trigger_here
def check_event_trigger_here(triggers)
if @x == @transfer_start[0] && @y == @transfer_start[1]
return false
end
buffer_trigger_here(triggers)
end
end
Addresses two things
1. If the player is offset before triggering a map transfer, the game "slides" it back to that same offset upon loading the new map. The fix will stop that slide.
2. If transferring on top of another event that is triggered by player touch, it will trigger upon the player pressing any directional input. The fix will not trigger the event until the player has moved entirely off the space first.
I've also looked at various caterpillar scripts. Fukuyama's (which I think Blizz rewrote and included in Tons of Add-ons) behaves upon player directional input, i.e. one press of DOWN will update all the followers to move 1 full tile space forward, which doesn't work with pixel movement since one press of DOWN isn't a full tile space anymore. In contrast, Zeriab's and Kyonides' wait for the player to move entirely off of the tile first before it updates the movement of the followers 1 full tile forward. This looks better, but this means the followers still move as if using the default RMXP movement, unlike the player.
Both scripts I tried enabling "pixel_movement = true" but the followers' behaviors were still wonky.