Сегодня заспавним вертолет и разберем все по полочкам.
Первое: Распаковываем all.spawn, открываем alife_нужная локация.ltx и пишем секцию:

[.......]
; cse_abstract properties
section_name = helicopter
name = zat_heli_1
position = 206.76597595215,35.423793792725,175.6004486084
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 245
distance = 0
level_vertex_id = 1315816
object_flags = 0xffffffb2
custom_data = <<END
[story_object]
story_id = zat_heli

[logic]
cfg = scripts\zaton\zat_helicopter.ltx
END

; cse_visual properties
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01

; cse_motion properties

; cse_ph_skeleton properties
skeleton_name = idle

; cse_alife_helicopter properties
startup_animation = idle
engine_sound = vehicles\helicopter\helicopter

Разбор:

[Номер секции, по порядку, если было 1111, то теперь 1112]
; cse_abstract properties
section_name = helicopter <-Секция(не менять!)
name = zat_heli_1 <-Уникальное имя скрипта
position = 206.76597595215,35.423793792725,175.6004486084 <-позиция
direction = 0,0,0 <-поворот вертолета

; cse_alife_object properties
game_vertex_id = 245 <-гейм вертекс уровня
distance = 0
level_vertex_id = 1315816 <-левл вертекс уровня
object_flags = 0xffffffb2
custom_data = <<END
[story_object]
story_id = zat_heli

[logic]
cfg = scripts\zaton\zat_helicopter.ltx <-путь к логике вертолёта
END

; cse_visual properties
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01 <-Визуал верталёта

; cse_motion properties

; cse_ph_skeleton properties
skeleton_name = idle

; cse_alife_helicopter properties
startup_animation = idle
engine_sound = vehicles\helicopter\helicopter <-путь к звуку вертолёта

------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Если хотите чтобы вертолет летал на одном месте, то пишите это:

[.......]
; cse_abstract properties
section_name = helicopter
name = zat_heli_1
position = -67.3565368652344,20.4709529876709,763.51025390625
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 291
distance = 0
level_vertex_id = 809741
object_flags = 0xffffffb2
custom_data = <<END
[story_object]
story_id = zat_heli

; cse_visual properties
visual_name = dynamics\vehicles\mi24\veh_mi24_u_01

; cse_motion properties

; cse_ph_skeleton properties
skeleton_name = idle

; cse_alife_helicopter properties
startup_animation = idle
engine_sound = vehicles\helicopter\helicopter

------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Теперь открываем way_нужная локация.ltx:

[gen_heli_patrol_fly]
points = p0,p1
p0:name = wp00
p0:flags = 0x1
p0:position = 206.76597595215,35.423793792725,175.6004486084
p0:level_vertex_id = 1315816
p0:game_vertex_id = 245
p0:links = p1(1)

p1:name = wp01
p1:flags = 0x2
p1:position = 90.587173461914,32.625354766846,185.58322143555
p1:game_vertex_id = 209
p1:level_vertex_id = 1121725
p1:links = p0(1)

Разбор:

[gen_heli_patrol_fly] <-секция пути(имя в логике)
points = p0,p1 <-сколько точек перехода
p0:name = wp00 <-имя точки
p0:flags = 0x1 <-флаги(не трогать тем,кто с этим не знаком)
p0:position = 206.76597595215,35.423793792725,175.6004486084 <-позиция
p0:level_vertex_id = 1315816 <-левл вертекс уровня
p0:game_vertex_id = 245 <-гейм вертекс уровня
p0:links = p1(1) <-переход в точку 1(если нужно,что верт прилетел в одну точка и завис там,то переход не пишем,а и вторую точку)

p1:name = wp01 <-2-ая точка
p1:flags = 0x2 <-флаги
p1:position = 90.587173461914,32.625354766846,185.58322143555 <-позиция
p1:game_vertex_id = 209 <-гейм вертекс уровня
p1:level_vertex_id = 1121725 <-левл вертекс уровня
p1:links = p0(1) <-переход в точку 1

Запаковываем!
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Теперь заходим в configs, папка - scripts и еще одна папка - zaton и создаем файл - zat_helicopter.ltx там пишем:

[logic]
active = heli_move

[heli_move]
path_move = gen_heli_patrol_fly
max_velocity = 100
engine_sound = true
immortal = false
combat_ignore = false
dont_change_job = false

;enemy = 3333
min_mgun_attack_dist = 8
max_mgun_attack_dist = 70
min_rocket_attack_dist = 25
max_rocket_attack_dist = 70
use_rocket = true
use_mgun = true
upd_vis = 3
stop_fire = true
fire_trail = false
invulnerable = false
mute = false

Разбор:

[logic]
active = heli_move <-активная часть логики,указывается отдельно,это лишь ссылка на [heli_move]

[heli_move] <-собственно сама активная часть
path_move = gen_heli_patrol_fly <-секция патрулирования вертолёта,что прописана в way_локация.ltx
max_velocity = 100 <-максимальная скорость
engine_sound = true <-включен ли звук двигателя
immortal = false <-бессмертие вертолёта
combat_ignore = false <-игнорирование любых объектов,наносящих урон вертолёту или считающихся для вертолёта опасным
dont_change_job = false <-не сменять работу(Оо)

;enemy = 3333
min_mgun_attack_dist = 8 <-минимальная дистанция использования пулемёта
max_mgun_attack_dist = 70 <-максимальная дистанция использования пулемёта
min_rocket_attack_dist = 25 <-минимальная дистанция использования ракет
max_rocket_attack_dist = 70 <-максимальная дистанция использования ракет
use_rocket = true <-использовать ли ракеты
use_mgun = true <-использовать ли миниган
upd_vis = 3 <-не менять
stop_fire = true <- останавливать ли огонь или стрелять на поражение
fire_trail = false <линейное отставание бомбы(полосы дыма за ракетой,не включать на динамике,игра заглючит)
invulnerable = false <-неуязвимость
mute = false <-не атаковать кого-либо.

Вертолет будет летать над скадовском.

Автора не знаю, но урок откорректировал и оформил Я - ммихаилл