Делается это по типу телепорта, через опкод записи координат игрока со смещением
Код
04C4: store_coords_to 0@ 1@ 2@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
Что бы бегать по воздуху можно использовать объект ровный, то есть загружаем объект через Object.Load после чего создаём его под игроком через Object.Create создавать нужно так что бы координата Z была на -1.12 от текущей позиции игрока, и узнавай угол поворота, после чего делай смещение на Y где-то на 0.7-0.9 метров. Ну и всё это в цикле при нажатии на 2 кнопки желательно. Будет ходить сквозь стены)