Случайная подборка модов
Dead City Breakthrough
3.7
Холодная кровь
3.4
Путь Бандита
2.0
Хроники Кайдана. Вторая серия
4.0
Oblivion Lost 3.0
3.0
Связной
4.2
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
Как создать самый простой путь path_walk
Российская Федерация  BadQvik
Четверг, 24.01.2013, 08:21 | Сообщение # 1
Статус:
Отмычка:
Сообщений: 128
Награды: 0
Регистрация: 17.01.2013

Здравствуйте. По просьбе одного знакомого на форуме, решил написать «тутор» о том: Как создавать пути path_walk.
Попытаюсь объяснить довольно понятно, по крайней мере на сколько это мне возможно. Итак, думаю можно приступить.
Для того чтобы создать так называемые path_walk точки путей, нам понадобится: Распакованный all.spawn (что это такое даже объяснять не буду!).
Когда мы смотрим на распакованный файл all.spawn мы видим довольно обширную структуру из файлов типа “ltx”. Есть файлы с аббревиатурой “alife_название локации”, а есть “way_название локации”. На данный момент нам понадобится файл way_***(для примера я беру Болота из ЧН), то есть way_marsh. Открыв его, мы видим не знакомые буквы и числа:



Как мы видим данная секция представляется из себя путь из двух точек: (р0) и (р1), сейчас попытаюсь кратко объяснить где что:

Вроде с секциями разобрались, теперь можно пробовать создать путь. Для примера я создам путь из двух точек, в которых нпс будет ходить туда-сюда. То есть от 1-й ко 2-й от 2-й к 1-й. Приступим.
В файле way_mars.ltx (у вас например кордон) создаем секцию:

Внимание! Предварительно вам нужно снять координаты точек, например 2-х, у меня координаты не рабочие*взяты для примера! Если задать p1:links = p2(2), то нпс останется в точке 2, так что всегда будьте внимательны с это строкой.
После того как пути созданы, осталось прицепить этот путь к НПС(надеюсь вы создали нового? Если нет то создайте).Делается это путем не сложной логики.
В папке gamedata\configs\scripts\название вашего файла.ltx Делаем так:


Все, после закрываем, сохраняем и например если вы спавнили нпс через all.spawn ищите секцию с вашим неписем, находим там:
custom_data = <<END
пишем
[logic]
cfg = scripts\название вашего файла.ltx
END
Все закрываем, компилируем all.spawn и идем смотреть творение. Наш непись должен ходить туда сюда до бесконечности, конечно пока его не убьют.
Я преподнес вам самый простой пример того, как можно создавать пути path_walk, можно сделать очень сложный с анимацией и звуком. Но это будет в следующем уроке.
Спасибо за внимание. С вами был BadQvik, статья написана BadQvik из личных источников.
Сообщение отредактировал BadQvik - Четверг, 24.01.2013, 13:29
  Злобная реклама
Четверг, 24.01.2013, 08:21
Статус:
Сообщений: 666
Регистрация: 17.01.2013
Российская Федерация  Green_Men
Четверг, 24.01.2013, 09:26 | Сообщение # 2
Статус:
Отмычка:
Сообщений: 73
Награды: 0
Регистрация: 28.12.2012

Спасибо BadQvik ты просто cool полезная статья для тех кто хочет научится создавать пути для новых неписей smile

Добавлено (24.01.2013, 09:25)
---------------------------------------------
а как например сделать так чтобы их было например 2 и они когда достигали своей точки (например дошли до лагеря или костра) и присели отдохнуть? как так сделать?

Добавлено (24.01.2013, 09:26)
---------------------------------------------
ну потом конечно же ушли опять чтоб там вечно не сидели biggrin smile

  Злобная реклама
Четверг, 24.01.2013, 09:26
Статус:
Сообщений: 666
Регистрация: 28.12.2012
Украина  BozKurt
Четверг, 24.01.2013, 12:05 | Сообщение # 3
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

BadQvik, хорошая статья, хоть и с недочётами, но правда хорошая.
По традиции, не могу удержатся от нескольких реплик, касаемо ошибок/недочётов.
Цитата (BadQvik)
points = p0,p1 - точки
Лучше будет сказать, количество точек, из которых будет состоять патрульный путь, либо путь для точек look. Несущественно, но нагляднее.

Цитата (BadQvik)
p0:name = wp00 – имя лучше оставлять так(wp00, wp01, wp02 и т.д.)
Имя для точки можно назначать абсолютно любое, игра не парсит имя, а учитывает только флаги, которые будут идти после символа "|". Поэтому для наглядности того, где эта точка пути находится, можно задавать весьма информативные имена, например: way_point_sidor_enter_door.

Цитата (BadQvik)
p0:links = p1(1) – обозначает с какой точки начинать путь.
А вот это уже ошибка. Это то в какую точку НПС пойдёт после данной точки. НПС начинает своё движение всегда с первой точки патрульного пути. Цифра в скобках обозначает вероятность с которой НПС пойдёт в следующую точку. Для одной точки это не имеет значение. Но! Можно задавать несколько точек в которые может пойти НПС, т.е. простыми словами можно задавать путь в котором НПС будет ходить по рандомным точкам.
Остановлюсь немного подробнее...
  Злобная реклама
Четверг, 24.01.2013, 12:05
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Российская Федерация  BadQvik
Четверг, 24.01.2013, 12:07 | Сообщение # 4
Статус:
Отмычка:
Сообщений: 128
Награды: 0
Регистрация: 17.01.2013

Green_Men, На данный момент сам разбираюсь как это сделать. Наверное создаются смарт_террейны, где нпс будет выполнять работу которую задашь в логике. А так в принципе, все то что ты сказал можно сделать в ltx файле логики. То есть прописать в логике анимации и действия и все будет:) Врать не буду, но в этой я пока и сам не разобрался толком...

Добавлено (24.01.2013, 12:07)
---------------------------------------------
ColR_iT, Спасибо за поправку, очень благодарен smile

  Злобная реклама
Четверг, 24.01.2013, 12:07
Статус:
Сообщений: 666
Регистрация: 17.01.2013
Украина  BozKurt
Четверг, 24.01.2013, 12:19 | Сообщение # 5
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

BadQvik, может ты ошибку в "шапке" всё же поправишь?
  Злобная реклама
Четверг, 24.01.2013, 12:19
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Российская Федерация  Scouser
Четверг, 24.01.2013, 12:57 | Сообщение # 6
Статус:
Опытный:
Сообщений: 1614
Награды: 16
Регистрация: 21.10.2012

Лучше бы написал побольше тогда) А так неплохо)
  Злобная реклама
Четверг, 24.01.2013, 12:57
Статус:
Сообщений: 666
Регистрация: 21.10.2012
Антарктика  FaLcon
Четверг, 24.01.2013, 13:20 | Сообщение # 7
Проект Смерти Вопреки
Статус:
Опытный:
Сообщений: 2022
Награды: 8
Регистрация: 17.07.2011

Цитата (Green_Men)
а как например сделать так чтобы их было например 2 и они когда достигали своей точки (например дошли до лагеря или костра) и присели отдохнуть? как так сделать?

Можно через remark и таймер .

Добавлено (24.01.2013, 13:20)
---------------------------------------------
[logic]
active = walker
level_spot = quest_npc
on_death = death

[walker]
path_walk = ohrana_02_walk
path_look = ohrana_02_look
anim = bar_head
on_timer = 80000| walker@vodka

[walker@vodka]
anim = bar_fas
on_timer = 14000| remark
P.S. С логикой в игре плохо разбираюсь так что сильно не бейте biggrin
Сообщение отредактировал FaLcon - Четверг, 24.01.2013, 13:20
  Злобная реклама
Четверг, 24.01.2013, 13:20
Статус:
Сообщений: 666
Регистрация: 17.07.2011
Российская Федерация  BadQvik
Четверг, 24.01.2013, 13:54 | Сообщение # 8
Статус:
Отмычка:
Сообщений: 128
Награды: 0
Регистрация: 17.01.2013

FaLcon, Кажется лучше будет так:
[logic]
active = walker

[walker]
path_walk = urok_badqvik_1
anim = bar_head
on_timer = 30000| remark@lem

[remark@lem]
anim = bar_fas
on_timer = 40000| remark2

[remark2]
anim = bar_head
on_timer = 30000|remark@lem
То есть наш НПС пройдет по пути urok_badqvik_1 отыграет анимацию bar_head и спустя 30 секунд перейдет к схеме remark@lem после этой схемы пойдет следом remark2 через 40 секунд, а после нее через 30 секунд вернется к схеме remark@lem smile
  Злобная реклама
Четверг, 24.01.2013, 13:54
Статус:
Сообщений: 666
Регистрация: 17.01.2013
Антарктика  FaLcon
Четверг, 24.01.2013, 13:58 | Сообщение # 9
Проект Смерти Вопреки
Статус:
Опытный:
Сообщений: 2022
Награды: 8
Регистрация: 17.07.2011

BadQvik, ну я просто пример написал .
  Злобная реклама
Четверг, 24.01.2013, 13:58
Статус:
Сообщений: 666
Регистрация: 17.07.2011
Российская Федерация  BadQvik
Четверг, 24.01.2013, 14:00 | Сообщение # 10
Статус:
Отмычка:
Сообщений: 128
Награды: 0
Регистрация: 17.01.2013

FaLcon, Я понял smile Я просто немного подправил, ну это по крайней мере как я писал в ЧН логику для непися...
  Злобная реклама
Четверг, 24.01.2013, 14:00
Статус:
Сообщений: 666
Регистрация: 17.01.2013
Российская Федерация  Green_Men
Четверг, 24.01.2013, 14:38 | Сообщение # 11
Статус:
Отмычка:
Сообщений: 73
Награды: 0
Регистрация: 28.12.2012

Вот это полезнейшая инфа для меня спасибо вам мены (Особенное BadQvik - у) wink
  Злобная реклама
Четверг, 24.01.2013, 14:38
Статус:
Сообщений: 666
Регистрация: 28.12.2012
Российская Федерация  Назар
Вторник, 28.11.2017, 17:46 | Сообщение # 12
Статус:
Зевака:
Сообщений: 7
Награды: 0
Регистрация: 04.11.2017

Привет всем, помогите плиз с патрулем:
хотел сделать 3 патруля новой группировки на Юпитере(ЗП), на самом заводе, в итоге пошёл только один.
Если нужно, вот логика:



Скажите, что не так?

PS: точки пути - левел вертексы. Когда я ставлю 1 или 3 на путь 2 они идут нормально.

сорри если не по теме.
Сообщение отредактировал Назар - Вторник, 28.11.2017, 18:54
  Злобная реклама
Вторник, 28.11.2017, 17:46
Статус:
Сообщений: 666
Регистрация: 04.11.2017
Коста Рика  Jargon
Вторник, 28.11.2017, 19:10 | Сообщение # 13
X-Ray Multiplayer Extension
Статус:
Бывалый:
Сообщений: 1078
Награды: 3
Регистрация: 24.06.2012

Цитата Назар ()
точки пути - левел вертексы. Когда я ставлю 1 или 3 на путь 2 они идут нормально.

Очевидно же что неправильно заспавнены сами пути
  Злобная реклама
Вторник, 28.11.2017, 19:10
Статус:
Сообщений: 666
Регистрация: 24.06.2012
Российская Федерация  Назар
Вторник, 28.11.2017, 19:16 | Сообщение # 14
Статус:
Зевака:
Сообщений: 7
Награды: 0
Регистрация: 04.11.2017

Дело в том, что все они спавнятся, но логике не следуют, уходят куда хотят. Еще вопрос, может ли быть такое, что они к смарту привязаны?
  Злобная реклама
Вторник, 28.11.2017, 19:16
Статус:
Сообщений: 666
Регистрация: 04.11.2017
Российская Федерация  _Val_
Вторник, 28.11.2017, 20:00 | Сообщение # 15
Ф.О.Т.О.Г.Р.А.Ф
Статус:
Бывалый:
Сообщений: 1063
Награды: 5
Регистрация: 20.01.2012

Цитата BadQvik ()
То есть наш НПС пройдет по пути urok_badqvik_1 отыграет анимацию bar_head и спустя 30 секунд перейдет к схеме remark@lem

Не знаю, плакать или смеяться. Может быть тебе рановато писать туторы? Пара вопросов.
1. Каким образом непись поймёт, что он дошел до конца пути, чтобы отыграть анимацию?
2. А вообще в схеме волкер отыгрываются анимации - прописанные подобным способом?
По крайней мере в ТЧ этого нет.
Подскажу, как на самом деле будет действовать непись согласно твоей логике.
Он потянется, почешет задницу, возьмет оружие в дефолтное(ибо другого у тебя не прописано) положение и попытается пойти. Не факт, что за 30 секунд, прописанные для перехода в ремарку, он пройдет(с учетом почесываний) шагов десять...ну и само собой перейдет в ремарку, пройдя этих десять шагов.
А если непись заспавнен не в первой точке пути, то учитывая то, что сказал BozKurt, получится, что находясь уже под схемой волкер, он почешет задницу...и через 30 секунд перейдет в ремарку, даже не успев дойти не то что до конца пути, а до первой точки. И дело тут не в таймере.
Сообщение отредактировал _Val_ - Вторник, 28.11.2017, 20:44
  Злобная реклама
Вторник, 28.11.2017, 20:00
Статус:
Сообщений: 666
Регистрация: 20.01.2012
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: