Добавлен
Спелл должен отслеживать столкновение с клифом. На моей карте я проверил уровень клифа 8. (поменять с помощью adjust не могу, рельефу капец приходит) Так вот, при уровне клифа не выше 3-х, всё работает, но выше нет, может сможете подсказать почему.
 private module OnCliff
        if .onCliff.exists then
            set dx = GetTerrainCliffLevel(nextX, nextY)
            set dy = GetTerrainCliffLevel(x, y) 
            if dy < dx and z  < (dx - GetMapCliffLevel())*bj_CLIFFHEIGHT then  
                if allocated and .onCliff() then
                    call terminate()
                endif
            endif
        endif
    endmodule
Если какие то данные ещё нужны могу добавить.

Принятый ответ

Изменил if dy < dx and z < (dx - GetMapCliffLevel())*bj_CLIFFHEIGHT then на if dy < dx and z < (GetTerrainCliffLevel(nextX, nextY))*bj_CLIFFHEIGHT then. Всё работает. Почему сам не понял, но да ладно ))
`
ОЖИДАНИЕ РЕКЛАМЫ...