Also da du ein Custom Script verwendest sinkt die Wahrscheinlichkeit stark, dass dir jemand helfen kann. Und das mit den "Nach 2 Tiles Entfernng schließen schließen" fällt mir spontan keine Funktion ein die das macht. Man muss vermutlich von Scene_Map aus @window_message.terminate aufrufen., aber das mit "2 Tiles entfernung" muss mal jmd. anderes liefern, zu viel Arbeit. Vermutlich Position des Events das die Message anzeigt ermitteln und dann einfach Distanz zwischen dem Event und dem Helden mit einer Metrik deiner Wahl (euklidisch oder Manhattan) berechnen.

Damit man noch laufen kann wenn eine Message angezeigt wird, würde bei nem Standard-Message-Script folgendes reichen:
Eventuell klappts auhc bei dem Custom script.

In Game_Player update ersetze die unless moving? Zeile mit
Code:
unless moving? or ($game_system.map_interpreter.running? and not $game_temp.message_window_showing) or
           @move_route_forcing
Das "whitelisted" den Fall "interpreter läuft UND message window ist sichtbar".