Создание WayPoint
Материал из S.T.A.L.K.E.R. Inside Wiki
Создадим вейппоинт. Не буду говорить все точно, скажу для новичков :)
Содержание
Что такое вейпоинт
WayPoint(он же вейпоинт, ВП,WP) - путь передвижения для отдельного сталкера, состоит из точек путей. Чтобы создать ВП, нужно расстыковать all.spawn(не буду описывать, как это делать).
Создаем вейпоинт, с одной точкой
Открываете way_название локации и прописываете текст, подобный этому:
[name_weypoint] points = p0 p0:name = wp00 p0:position = 185.667572021484,-0.436268001794815,-260.062866210938 p0:game_vertex_id = 696 p0:level_vertex_id = 415469
А теперь, подробнее
[name_weypoint] - название пути points = p0 - список точек пути, через запятую (например points = p0,p1,p2 и т.д.) po:name = wp00 название первой точки пути. p0:position - позиции точки пути. p0:game_vertix_id - вертиксы локации p0:level_vertex_id
Вейпоинт с несколькими точками
[name_wp]
points = p0,p1,p2,p3 p0:name = wp00 p0:flags = 0x1 p0:position = 163.527374267578,-0.432826995849609,-266.167022705078 p0:game_vertex_id = 854 p0:level_vertex_id = 392698 p0:links = p1(1),p3(1)
p1:name = wp01 p1:flags = 0x2 p1:position = 176.939651489258,-0.50609302520752,-264.630889892578 p1:game_vertex_id = 696 p1:level_vertex_id = 406938 p1:links = p2(1)
p2:name = wp02 p2:flags = 0x2 p2:position = 179.156524658203,-0.430828988552094,-266.572570800781 p2:game_vertex_id = 696 p2:level_vertex_id = 409212
p3:name = wp03 p3:flags = 0x1 p3:position = 161.710388183594,-0.50619900226593,-269.339660644531 p3:game_vertex_id = 855 p3:level_vertex_id = 390503
Здесь видно, что в первой точке прописаны все 3 точки.
points = p0,p1,p2,p3
Небольшое дополнение от ColR_iT касательно приведенного пример
p0:links = p1(1),p3(1)
В этом случае, НПС будучи в точке p0 случайным образом выберет одну из предложенных p1 либо p3. Таким образом, в примере выше, НПС в первой точке выберет следующую точку следования, если выберет p1, то далее перейдет в точку p2 и остановится, если p3 - перейдет в нее и так же остановится*.
*В моих экспериментах, при выборе НПС точки, которая является "конечной", т.е. той в которой нет перехода на следующую (p3 в примере выше) у меня происходил вылет. Во избежании этого пришлось добавлять еще одну не подалёку на пути следования.
Пропишем путь нашему сталкеру
Теперь, чтобы по нашему пути ходил дядька нужно прописать ему этот путь. К кастом дате укажите файл до логики (не буду описавать, как это делаеться)
[logic] active = walker [walker] path_walk = name_wp path_look = name_wp
Думаю, что я понятно объяснил :)
Чтож, дополню и я
[esc_gen_lager_walker_1] points = p0,p1 p0:name = name00 p0:flags = 0x400 p0:position = -62.564220428467,-9.9675645828247,-56.229484558105 p0:game_vertex_id = 77 p0:level_vertex_id = 213868 p0:links = p1(1) p1:name = name01 p1:flags = 0x800 p1:position = -58.430591583252,-9.94411277771,-47.951900482178 p1:game_vertex_id = 77 p1:level_vertex_id = 219640 p1:links = p0(1)
Скажем, такой путь можно использовать для look и walk
p0:flags = 0x400 ОБРАТИМ ВНИМАНИЯ!
p0:flags = 0x800
Два этих параметра служат как связь. Если в первом поинте walk стоит флаг 0x400, а в поинте look тоже стоит 0x400, когда НПС\МУТАНТ находится на этой точке, его взгляд направлен согласно флагу
Возможно задача дополнительных ключей-параметров
Для нпс к примеру
[esc_gen_lager_walker_1] points = p0,p1 p0:name = wp00<u>|a=binocular</u> p0:flags = 0x400 p0:position = -62.564220428467,-9.9675645828247,-56.229484558105 p0:game_vertex_id = 77 p0:level_vertex_id = 213868 p0:links = p1(1) p1:name = wp01 p1:flags = 0x800|<u>a=assault</u> p1:position = -58.430591583252,-9.94411277771,-47.951900482178 p1:game_vertex_id = 77 p1:level_vertex_id = 219640 p1:links = p0(1)
Отыгрывается анимация сначала смотрит в бинокль, потом атака. Если правильно привязать к точкам обзорного пути - получится красиво
Имена анимаций брать отсюда state_mgr_animation_list.script
Расскажу фишку. Если в логике вертолётов использую путь move и look, плюс с поомшью флагов прциепить move к каждой точке look. Можно ставить на wp дополнительный параметр, стрелять. Параметр называется |e Можно сделать сценку, как будто вертолёт зачищает местность. Подробнее о ключах для вертолёта
== См. также ==http://stalkerin.gameru.net/wiki/index.php/%D0%A7%D0%B0%D1%81%D1%82%D1%8C_4#3.12.1._.D0.A1.D1.85.D0.B5.D0.BC.D0.B0_heli_move:
Всем спасибо все свободны
Дополнение от Re]Spawner
Rez@niy aka Oxygenium & Andrey K aka forest Спасибо вам огромное. Я немножко разъясню для начинающих, что за кастом дата и куда что вставлять. Допустим, у вас есть НПС, его профиль и тому подобное. Естественно, вы хотите, чтобы он пошел по вашему путю. Тогда открываете spawn_sections.ltx, в него пишите следующий текст:
[esc_respawner_test_wp]:stalker_trader character_profile = esc_respawner_test_wp spec_rank = veteran community = bandit use_single_item_rule = off can_select_items = off custom_data = scripts\esc_respawner_test_wp.ltxГде
[esc_respawner_test_wp]:stalker_trader- название профиля (точно не помню)
character_profile = esc_respawner_test_wp- вот это уже точно название профиля
custom_data = scripts\esc_respawner_test_wp.ltx-ссылка на файл логики, куда надо вбивать следующий текст:
[logic] active = walker [walker] path_walk = name_wp path_look = name_wp
Это все! Так просто ;)
Автор Участник:Rez@niy aka Oxygenium & Andrey K aka forest, Дополнил: Re]Spawner