Логика для БТР
Материал из S.T.A.L.K.E.R. Inside Wiki
Всем доброго времени суток. Для начала я объясню, что такое кастом дата. Кастом дата (custom data)- это и есть всё поле "Скрипт", которое можно увидеть, если открыть all.spawn через Xr Spawner или дописав строку custom_data = <<END под object_flags, распаковав с помощью acdc.
100% работающая логика для БТР.
Теперь, когда Вы знаете, что такое кастом дата можно начать работу.
Если открыли через Xr Spawner:
1. В кастом дате прописываете путь до .ltx файла (название у него может быть любое):
[logic] cfg = scripts\ваше название.ltx
2. В папке config\scripts создаёте свой .ltx фаил логики, который Вы прописали в кастом дате и пишите туда это:
[logic] active = ph_car [ph_car] target = actor ;цель, которую будет атаковать БТР (ГГ). ; Две нижние строки нашел в логике для БТР из АМК (спасибо). fire_range = 80 ;радиус от БТР, в котором цель будет атакована. Дальность стрельбы по русски. Если цель дальше 80 м. стрелять не будет. fire_repeat = 3000 ;Время повторения огня. Время измеряется в тысячных секунды, сейчас указано что повторная очередь будет через 3 секунды. 1000 = 1 секунда. auto_fire = true ;значение этой строки я не знаю, если её удалить ничего не изменится.(Правка:останавливать ли огонь или стрелять на поражение) track_target = true ;значение этой строки я не знаю, если её удалить ничего не изменится. on_timer = 4000 | ph_car@4 ;через 4 секунды произойдёт переход на следующую секцию логики. [ph_car@4]
Если открыли через acdc:
1. Под строкой object_flags напишите следующее:
custom_data = <<END [logic] cfg = scripts\ваше название.ltx
2. В папке config\scripts создаёте свой .ltx файл логики, который Вы прописали в кастом дате и пишите туда это:
[logic] active = ph_car [ph_car] target = actor ;цель, которую будет атаковать БТР (ГГ). ; Две нижние строки нашел в логике для БТР из АМК (спасибо). fire_range = 80 ;радиус от БТР, в котором цель будет атакована. Дальность стрельбы по русски. Если цель дальше 80 м. стрелять не будет. fire_repeat = 3000 ;Время повторения огня. Время измеряется в тысячных секунды, сейчас указано что повторная очередь будет через 3 секунды. 1000 = 1 секунда. auto_fire = true ;значение этой строки я не знаю, если её удалить ничего не изменится.(Правка:останавливать ли огонь или стрелять на поражение) track_target = true ;значение этой строки я не знаю, если её удалить ничего не изменится. on_timer = 4000 | ph_car@4 ;через 4 секунды произойдёт переход на следующую секцию логики. [ph_car@4]
Небольшая заметка.
1. В .ltx файлах игры можно заметить много комментариев после знака ";". Дело в том, что после знака ";" игра не видет строку, то есть считает её за пустое место, как в скриптах знак "--".
2. Если в кастом дате прописать строку [spawner], то объект заспаунится ТОЛЬКО, если у ГГ есть инфопоршень, который прописывается в {+название инфопоршня}:
[spawner] cond = {+название инфопоршня}
3. Для БТР можно задать путь, куда он поедет. Например, как у БТР на ЧАЭС. Для этого в секции [ph_car], также друг под другом пишите path_walk = название пути:
[ph_car] path_walk = название пути
4. Для ЧН/ЗП нужно подключить схему ph_car в файле modules.script по аналогии с ТЧ, добавив строку
load_scheme("ph_car", "ph_car", stype_item)
В ЗП файла ph_car.script нет, поэтому его нужно взять из ЧН.
Либо из ТЧ, но в вызовах функции xr_logic.switch_to_section в строках 929, 1086 и 1095 заменить "self.st" на "self.st.ini"
Спасибо за внимание. Автор статьи: Бага.
Также отдельное спасибо Ork, за правки в моей статье.
Правил: V2V3V4 и W_S