A ver, cómo técnica de debugging, lo primero es:
1 - Decompilar el script una vez insertado, para ver cómo ha quedado realmente.
2 - Modificarlo temporalmente para que no quede ninguna posibilidad sin acción (es decir, en lugar de terminar el script si la flag está en 1, pon un msgbox).
También hay que tener en cuenta que el valor "desconocido" solo es 3 en terrenos normales, es decir, en un cambio de nivel (escaleras), un puente, o un terreno elevado (marcado como tal en el mapa, claro) va a ser otro valor. Esto lo descubrí trabajando en el islas doradas.