📌 Обновление Форума
 📌 Популярные темы
 📌 Топ Сталкеров
Anubis Anubis ✒️767.Сообщ ⚖️Реп: 137 💠О-Сознание
Митяй Митяй ✒️100.Сообщ ⚖️Реп: 12 💠Чистое Небо
s-stalk s-stalk ✒️94.Сообщ ⚖️Реп: 46 💠Чистое Небо
LISSZ10 LISSZ10 ✒️74.Сообщ ⚖️Реп: 37 💠Наёмники
stalkercom stalkercom ✒️64.Сообщ ⚖️Реп: 8 💠Монолит
Стриж Стриж ✒️57.Сообщ ⚖️Реп: 14 💠Одиночки
 📌 Новые сталкеры на форуме
gayshmal gayshmal 📅Четверг 🕑22:54:50
NIKNECHITAT NIKNECHITAT 📅Четверг 🕑22:31:47
radddmir005 radddmir005 📅Четверг 🕑21:41:16
eithanbrooklyn eithanbrooklyn 📅Четверг 🕑19:02:16
vovan02 vovan02 📅Четверг 🕑15:34:09
kougiyomu kougiyomu 📅Четверг 🕑14:51:10



  • Страница 1 из 1
  • 1
Разбор спауна вертолета сталкер
Anubis

Anubis

Онлайн

Титул: Хранитель Зоны

767

55

137


Сообщение 1 13:17:57, 2024.10.15
Сталкерское уважение +1 Сталкерское уважение +2 Постоянный житель портала Постоянный житель портала + Постоянный житель портала +2 Постоянный житель портала +2 Постоянный житель портала +2
В данной теме я расскажу как заспавнить динамический вертолёт. Также в этом уроке мы рассмотрим логику вертолёта

Для спавна вертолёта потребуется:
- Распакованный all.spawn
- Распакованная игра
- Position Informer

Итак, начнем.
1. Спавн вертолета
В alife_нужная локация.ltx пишем:
[1922]
; cse_abstract properties
section_name = helicopter
name = pri_a28_heli_1
position = 154.740036,-2.654960,182.621597
direction = 0,-0.0252000000327826,0

; cse_alife_object properties
game_vertex_id = 316
distance = 0
level_vertex_id = 1216486
object_flags = 0xffffffb2
custom_data = < [logic]
cfg = scripts\generators\heli_boom_1.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
[Номер секции(если в alife_локация.ltx у вас не было других секций,ставим [1]]
; cse_abstract properties
section_name = helicopter <-Секция(не менять!)
name = pri_a28_heli_1 <-Уникальное имя скрипта
position = 154.740036,-2.654960,182.621597 <-
direction = 0,-0.0252000000327826,0 <- поворот вертолета

; cse_alife_object properties
game_vertex_id = 316 <- гейм вертекс уровня
distance = 0
level_vertex_id = 1216486 <- левел уровень
object_flags = 0xffffffb2
custom_data = < [logic]
cfg = scripts\generators\heli_boom_1.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 <- путь к звуку вертолёта, нужен другой-изменяем путь

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

[1922]
; cse_abstract properties
section_name = helicopter
name = pri_a28_heli_1
position = 154.740036,-2.654960,182.621597
direction = 0,-0.0252000000327826,0

; cse_alife_object properties
game_vertex_id = 316
distance = 0
level_vertex_id = 1216486
object_flags = 0xffffffb2

; 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
Для тех,кто создаёт путь:

2. Создаём путь heli:

В way_нужная лока пишем сецкцию-
[gen_heli_patrol_fly]
points = p0,p1
p0:name = wp00
p0:flags = 0x1
p0:position = 3.06068515777588,-0.420349597930908,-51.1655464172363
p0:level_vertex_id = 29038
p0:game_vertex_id = 934
p0:links = p1(1)

p1:name = wp01
p1:flags = 0x2
p1:position = -0.443285942077637,-0.312863349914551,-48.4627227783203
p1:game_vertex_id = 1966
p1:level_vertex_id = 29038
p1:links = p0(1)

Расшифрую:
[gen_heli_patrol_fly] <-секция пути(имя произвольно)
points = p0,p1 <-сколько точек перехода
p0:name = wp00 <-имя точки
p0:flags = 0x1 <-флаги(не трогать тем,кто с этим не знаком)
p0:position = 3.06068515777588,-0.420349597930908,-51.1655464172363 <-позиция
p0:level_vertex_id = 29038 <-level vertrex/вертекс уровня
p0:game_vertex_id = 934 <-game vertex/вертекс игры
p0:links = p1(1) <- переход в точку 1(если нужно, что верталёт прилетел в одну точку и завис там, то переход не пишем, а и вторую точку)

p1:name = wp01 <- 2-ая точка
p1:flags = 0x2 <-флаги
p1:position = -0.443285942077637,-0.312863349914551,-48.4627227783203 <-позиция
p1:game_vertex_id = 934<-level vertrex/вертекс уровня
p1:level_vertex_id = 29038 <-game vertex/вертекс игры
p1:links = p0(1) <-переход в точку 1

3. Создаем файл heli_boom_1.ltx (создаем текстовый документ, переименовываем полностью, заменяя расширение), открываем блокнотом
туда пишем:

[logic]
active = heli_move

[heli_move]
path_move = gen_heli_patrol_fly
max_velocity = 0.5
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

[line][/line]

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

[heli_move] <-собственно сама активная часть
path_move = gar_heli_patrol_fly <-секция патрулирования вертолёта,что прописана в way_локация.ltx
max_velocity = 0.5 <- максимальная скорость
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 <-не атаковать кого-либо.

Примечание:
В ЗП есть определённые логики вертолёта, я не помню что это за логики и как называются
но пишутся в:
path_move = gar_heli_patrol_fly|a=анимация
Также можно прописать звук:
s=звук.

Спасибо за внимание. Если будут проблемы, то постараюсь ответить в этой теме.

Вроде все должно пахать
Если надо, то создам тему про "Обстрел NPCами корпуса вертолёта", "Спавн и логика БТР`а"



  • Страница 1 из 1
  • 1
Поиск:



🔰Заходили сегодня: | Anubis, stariknov6, doza1991, andy1961, alekbabanov, goshabogdanow2014, vinnikvitaliy85, frolovsergey2034, vcudryashov2015, goncharov_050575, tamarakandrik, andrejresetov79714, muren, bezobrazishe, Norad, BelykhVl, radddmir005