Мини-профиль
Приветствуем, гость!
-Приветствую тебя, гость!
Если ты здесь впервой, то зарегистрируйся. А если уже бывал здесь, то входи, не стесняйся!

Связь

Онлайн
Онлайн всего: 2
Заглянувших: 2
Сталкеров: 0

Посетители | Подробно..

Как сделать логику НПС?

Главная » Статьи » Моддинг » Скрипты


Как сделать логику НПС?
Как сделать Логику НПС

Ответ: Во первых нужно с орентироваться на том, чем будет заниматься сталкер. 1- Нужно определить приписываем ли мы сталкеру Кастом дату либо мы прописываем ему логику по Гулагом (Смарт терайном.) 2- Создаём ли мы сами Гулаг либо берём уже существующий. 3- Определяем и вносим изменения в LTX.

Для того чтобы прописать логику через кастом дату нам понадобиться: 1- Файл ALL Spawn, LTX - 2 файла.
Так вот начнём с Файла ALL Spawn мы создали сталкера и теперь нам нужно прописать ему Логику. Это можно сделать двумя способами, это сделать логику в самом файле либо сделать ссылку на LTX файл.
Разберём первый способ: Вот простой пример Сталкера в Спавне.

[94]
; cse_abstract properties
section_name = stalker = Строчка отвечающая за тип объекта
name = esc_lager2 = Строчка отвечающая за имя объекта
position = -207.545303344727,-20.132755279541,-143.41960144043 = Позиция на карте
direction = 0.0524457320570946,-0.000378208060283214,0.00721459882333875 = указываеться только для Стоячих, без точки Path Look

; cse_alife_trader_abstract properties
money = 5000 = Денег в инвентори
character_profile = esc_stalker_novice = профиль в character_descr_******

; cse_alife_object properties
game_vertex_id = 61 = точка вертекс
distance = 7.69999980926514 = Дистанция спавна сталкера от точки вертекс
level_vertex_id = 45939 Точка левел вертекса
object_flags = 0xffffffbf = флаг объекта, пусть стоит стандартный.
custom_data = <<END = Вот и интересующая нас Строчка Кастом Дата.
[smart_terrains] Смарт под каторым находиться Сталкер.
esc_lager = true

[spawn] = То что спавниться у Сталкера в инвентори, если указкть другие вещи в Характере то они от туда удаляться.
bandage
END

; cse_visual properties
visual_name = actors\novice\green_stalker_10 = Визуалка сталкера, модель

; cse_alife_creature_abstract properties Тут идёт проверка того что объект именно типа Stalker а не другой.
g_team = 0
g_squad = 1 = Сквад
g_group = 5 = Группа
health = 1 = Живой ли объект 1-да 0-нет
dynamic_out_restrictions =
dynamic_in_restrictions =

upd:health = 1 = Проверка Мёртвый или живой.
upd:timestamp = 0x302e3120
upd:creature_flags = 0x2c
upd:position = -207.545303344727,-20.132755279541,-143.41960144043 = Проверка позиции
upd:o_model = 0
upd:o_torso = -0.000378208060283214,0.0524457320570946,0 = Проверка положения
upd:g_team = 0
upd:g_squad = 1 = Проверка сквада
upd:g_group = 5 = Проверка группы

; cse_alife_monster_abstract properties

upd:next_game_vertex_id = 65535
upd:prev_game_vertex_id = 65535
upd:distance_from_point = 0
upd:distance_to_point = 0

; cse_alife_human_abstract properties
predicate5 = 0,2,1,2,2
predicate4 = 2,1,0,0

; cse_ph_skeleton properties

upd:start_dialog =

; se_stalker properties

Так вот теперь нам нужно добавить объекту логику, ну скажем что нашему сталкеру нужно перейти с Лагеря новичков в Лагерь на окраине кордона и там он должен будет пить и жрать водку.
Так вот что там нужно сделать.

Найти строчки
; cse_alife_object properties
game_vertex_id = 61 = точка вертекс
distance = 7.69999980926514 = Дистанция спавна сталкера от точки вертекс
level_vertex_id = 45939 Точка левел вертекса
object_flags = 0xffffffbf = флаг объекта, пусть стоит стандартный.
custom_data = <<END = Вот и интересующая нас Строчка Кастом Дата.
[smart_terrains] Смарт под каторым находиться Сталкер.
esc_lager = true

и заменить строку custom_data = <<END
на допустим такую custom_data = scripts\naw_lagersmart

А что нам нужно сделать в этом файле файле naw_lagersmart, помните этот файл лежит в папке config в папке script.

а в этом файле нам нужно написать такие строки.

[logic]
active = walker

[walker]
path_walk = значения приписаные в смарте, это вэй-поинт
path_look = значения приписаные в смарте, это вэй-поинт
on_info = {+dialog_speak_stalker} walker2@new_zone

[walker2@new_zone]
path_walk = значения приписаные в смарте, это вэй-поинт
path_look = значения приписаные в смарте, это вэй-поинт

Либо можно сделать под гулаговую работу.

В логике писать.

[smart_terrains]
esc_lager = true
esc_new_lager = true

esc_lager = {-dialog_speak_stalker}
esc_new_lager = {+dialog_speak_stalker}

где dialog_speak_stalker = Это инфопоршин дающий герою, во время диалога или получения задания, или при в ходе в рестриктор или при ввыходе из него.
Категория: Скрипты | Добавил: ШиЗ (04.08.2011)
Просмотров: 8118 | Комментарии: 2 | Рейтинг: 4.0/2
Всего комментариев: 2
1 ZigHail   (10.05.2013 11:44)
А где мне найти как заспавнить БТР,а также прописать путь движения,"туда-обратно", и естественно его поведение(хочется на кордоне,агропроме и на АЭС поселить на двух первых,и оживить "тупые пукалки" на последней...Есть ведь мод по поведению вертолетов) funny

2 Forgotten_Hawk   (05.07.2016 21:23)
К сожалению, вертолёты в игре доступны лишь скриптово (заранее запланировано) и их постоянная логика не предусмотрена в оригинальном Сталкере, а моды делаются сложно и не всегда качественно.

Имя *:
Email:
Код *:

Этот текст сгенерирован случайно. Даже если вы сумели его понять, то это не более чем совпадение.
Все материалы из игры, использованные для сайта принадлежат Blizzard Entertainment.
Stalker: Shadow of Chernobyl · Stalker: Clear Sky · Stalker: Call of Pripyat · Stalker 2 · Hearthstone · Fallout 3/NV · Fallout 4
2010-2017 | Хостинг от uCoz | Powered by Math_Thunderpick and Alive


Яндекс.Метрика Тиц и pr сайта
Хостинг от uCoz