Warum kompliziert, wenn es auch einfach geht?
Entweder du nimmst einfach den Charexpanderpatch.
Oder aber du lässt das Event garnicht zufällig laufen, sondern lässt es nur so aussehen, als wäre es zufällig, in dem du einfach eine Route vorfertigst, die so abläuft, dass das Event am Ende wieder am Ausgangspunkt landet. (Es muss sich also genausooft nach Links wie nach Rechts bewegen bzw. Oben - Unten.)
Hat auch den Vorteil, dass der Charakter nicht im Nirvana landet, wenn er zufällig in eine Ecke reingeht.