А в чем проблема собственно?
в ПТСе сначала луч летит с учетом высот, если по прямой луч не проходит - то ПТС сервер ищет путь по (заранее скомплированным всем возможнным вариантам) графам из pathnode, если 10 раз не нашел с разной солью (графы они такие, зацикленные ненаправленные), то просто...