Перейти к контенту

Создание нового НПС


Рекомендуемые сообщения

Люди подскажите,работаю над модом,

создал новых сталкеров возле костра,

и вот скажите что нужно сделать? Что прописать в логике?

как сделать что бы они сидели и жрали

Строгое предупреждение от модератора kokkai
А вот жирным шрифтом писать не следует.
Ссылка на комментарий

В сообщении #98 АККК1 есть такой пример логики для заспауненого НПС:

Ну и файл логики esc_unik_npc

[smart_terrains]

none = true Чтоб не захватывался гулагами

[logic]

active = kamp схема сидеть у костра

[kamp]

center_point = esc_lager_camp_center полные названия точек (координат)

path_walk = esc_lager_camp_center_task

soundgroup = esc_lager

meet = meet@lager

Спауню непися возле деревни новичков, пробую этот пример логики для него - вылетаю с ошибкой:

Expression : fatal error

Function : CScriptEngine::lua_error

File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp

Line : 73

Description : <no expression>

Arguments : LUA error: ...es\stalker\Тень Чернобыля\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)

 

судя по ошибке (если я правильно разобрался) - что-то с форматированием строки при загрузке логики в мотиватор.

Что не так ? Что еще надо прописать неписю ?

 

Добавлено через 9 мин.:

RealStalkeR'у

создал новых сталкеров возле костра,

и вот скажите что нужно сделать? Что прописать в логике?

как сделать что бы они сидели и жрали

Ну, на мой взгляд новичка в модострое, попробовать им в файл логики прописать:

[smart_terrains]

none = false

после этого их должно просто захватить логикой гулага, ну а в деревне новичков она как раз - "что бы они сидели и жрали" :) . Но может оказаться, что в настройках этого гулага не хватит ёмкости для принятия всех Ваших вновь заспауненых.

Ссылка на комментарий

братья я сделал нпс по его статье но у меня игра вылетела когда новую игру начал(((

в чем ошибка , подскажите))) плиз

Ссылка на комментарий

В данный момент твоя ошибка в том, что ты не дал никак данных вообще, о том что сделал, я уже молчу о логе...

Он(лог) находится тут С:\Documents and Settings\All Users\Документы\STALKER-SHOC\logs (для ХР)

Так же выкладывай, что сделал, под спойлеры.

Изменено пользователем Desertir
Ссылка на комментарий

Всем доброго вечера! Пробовал спавнить НПС по урокам (как заспавнить через скрипт торговца Михалыча) ничего не получилось. Там нужно было в геймплей создать свой xml файл с именем торговца,прописал kolivan_trader.xml. После того как выяснилось по форумам,что у всех кто пробовал создать НПС по этим урокам ничего не вышло.Начал создавать по урокам SCRIPTа папку с названием торговца удалил конечно,упаковываю-вкладываю в игру способ SCRIPTа и при загрузке выбивает с таким логом

FATAL ERROR

 

[error]Expression : xml_result

[error]Function : CXML_IdToIndex<class CSpecificCharacter>::InitInternal

[error]File : e:\stalker\sources\trunk\xr_3da\xrgame\xml_str_id_loader.h

[error]Line : 162

[error]Description : error while parsing XML file

[error]Arguments : kolivan_trader.xml

 

Что делать и как исправить. Тренируюсь на NLC-6-начало. Учусь из любознательности так как это моя любимая игра. Не оставьте без внимания Помогите, буду очень признателен!

И еще вопрос- код придумываешь произвольный и прописываешь везде где нужно одинаковый?

Изменено пользователем smeh
Ссылка на комментарий

Smeh, лучше использовать файлы, которые уже есть в игре, со своими мороки больше...

 

У меня в gameplay файлы character_desc_escape - для задания параметров моего нпс; npc_profile - для задания ссылки на параметры в предыдущем файле...

 

В НЛЧ(NLC) наверно такие же файлы есть...

 

Ссылка на комментарий

помогите как координаты делить)))

 

Добавлено через 279 мин.:

Ну и файл логики esc_unik_npc

[smart_terrains]

none = true Чтоб не захватывался гулагами

[logic]

active = kamp схема сидеть у костра

[kamp]

center_point = esc_lager_camp_center полные названия точек (координат)---- что здесь ставь координаты где будет заспавнен НПС???

path_walk = esc_lager_camp_center_task

soundgroup = esc_lager

meet = meet@lager

 

 

пришли этот код подробно переделанный как пример)))

Ссылка на комментарий

я так понял если нпс спавнится не в гулаге то он будет бродить до конца своих дней, и на заданную логику ему наплевать, а если в гулаге то логике он подчиняется, так ли это?

Ссылка на комментарий

Wik, вообще-то это не совсем так.

Его судьба зависит от того - разрешил ли ему пользоваться логикой (собственной или из гулага - не важно) или нет.

Если в custom_data модмейкер прописал секцию [smart_terrains], указав в дальнейшем имя смарттерейна, то он, НПС, перейдет под логику данного гулага. Если прописал секцию [logic], далее саму логику, то будет использовать ее. Если прописал:

[smart_terrains]
none = true

и не прописал логику, то в этом случае будет просто скитаться по локациям.

Ссылка на комментарий

ColR_iT спасибо что откликнулся, но не мог бы ты привести пример.

 

[smart_terrains]-должен быть в начале, а логика после него?

none = true

 

[logic]

 

Или [smart_terrains] вообще не писать, а только [logic]

Заранее благадарен.

 

Добавлено через 6 мин.:

Паходу я вверху глупости написал! :dash2:

Ссылка на комментарий
Wik, а почуму бы не взглянуть, как это сделано у ПЫС? Распакуй all.spawn и пользуйся тем, что предоставили разработчики.
Ссылка на комментарий

Спасибо ColR_iT

 

скажите где уменя ошибка

[logic] 
active =meet@dinner
danger = danger_ignore 

[danger_ignore] 
ignore_distance = 5 

[meet@dinner]
meet_state = 5|eat_bread@wait| 3|eat_energy@wait
meet_state_wpn = 5|eat_kolbasa@wait| 3|eat_vodka@val_escort_dead
victim = 8|actor 
victim_wpn = 8|actor 
use = true 
use_wpn = true 
meet_dialog = escape_lager_guard_start_dialog

 

 

 

Добавлено через 253 мин.:

Спецы подскажите, как сделать чтобы НПС когда с ним поговориш или близко падайдеш не пялился на ГГ , а то отойду на метров 20 он на меня смотрит, спрячусь за стеной

он всеравно на меня смотрит.

 

И вопрос не в тему можно ли в сталкере тч сделать кастюм в катором НПС трудно было тебя заметить?

 

Сообщение от модератора Cyclone
Пиши грамотно и используй тег "код" для выделения кода.
Ссылка на комментарий

Еще вопрос, как сделать так чтобы 2-3 анимации проигрывались по кругу?

 

Добавлено через 2 мин.:

1-я,2-я,3-я, и опять 1-я,2-я,3-я.

 

Добавлено через 11 мин.:

Вопрос как называются анимации, где НПС смотрит в бинокль, стоит и держит оружие в руках.

 

И еще один вопрос, если НПС заспавнен через скрипт можно ли заставить его смотреть

в ту сторону в которую мне захотелось или такое возможно только через all.spawn.

 

Ссылка на комментарий

Спасибо огромное за урок и за видео, наконец-то научился спавнить новых НПС. Только у меня вопрос возник...Я ему сменил координаты ( все правльно сменил, настроил, он стоит на том месте, где я его поставил). Но как только я ему сменил группировку с Долга на Одиночку, то он почему-то вместо заданного места стоит в углу домика, куда Толик прибегает. Как сие чудо исправить?

Ссылка на комментарий

помогите у меня персонаж со своими координатыми не спавниться.

 

Нам очень жаль... Какую ты помощь ожидаешь, задавая такой вопрос?

ColR_iT

Изменено пользователем ColR_iT
Ссылка на комментарий

Wik- Ты имеешь в виду создать прозрачный костюм ( невидимка ) ?

 

HellStalkerDog- Хорошо проверь свои координаты, особенно если ты их округлял, дабы не писать километр цифр.

Ссылка на комментарий

Привет всем, вот я решил создать свой NPC следуя инструкциям Scriptа. (В моддинге я чайник, недавно начал). Я всё сделал и у меня выбивает при загрузки самой игры(при синхронизации).

Вот выбрасывает такой лог

Expression : fatal error

Function : CInifile::r_string

File : E:\stalker\patch_1_0004\xrCore\Xr_ini.cpp

Line : 352

Description : <no expression>

Arguments : Can't find variable radiation_v in [esc_Borys_npc]

Помогите плиз, второй день мучусь.

 

 

Ссылка на комментарий

Вот что я сделал. Мож тут какая-нить ошибка?

 

 

unction esc_Borys_npc ()

 

local a = vector()

a.x = -254.9029

a.y = -18.0704

a.z = -116.2938

 

obj = alife():create("esc_Borys_npc", a, 8190, 8,65535)

 

end

 

 

 

 

[smart_terrains]

none = true

[logic]

active = kamp

[kamp]

center_point = esc_lager_camp_center

path_walk = esc_lager_camp_center_task

soundgroup = esc_lager

meet = meet@lager

 

 

 

 

<!---------------------------------------esc_Borys_npc----------------------------------------------------->

<specific_character id="esc_Borys_npc" team_default = "1">

<name>esc_Borys_npc</name>

<icon>ui_npc_u_green_stalker_2</icon>

<bio>esc_wolf_bio</bio>

 

<class>esc_otbrosi_1</class>

<community>Stalker</community>

<terrain_sect>stalker_terrain</terrain_sect>

 

<rank>367</rank>

<reputation>1</reputation>

<money min="600" max="2000" infinitive="1"/>

 

<snd_config>characters_voice\human_01\newbie\</snd_config> <crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_2</visual>

<supplies> [spawn] \n

wpn_pm \n

ammo_9x18_fmj = 1 \n

wpn_ak74u \n

ammo_5.45x39_fmj \n

device_torch \n

#include "gameplay\character_food.xml"

</supplies>

#include "gameplay\character_criticals_3.xml"

</specific_character>

 

 

 

 

<!-- Escape -->

<character id="escape_trader">

<class>Trader</class>

<specific_character>escape_trader</specific_character>

</character>

 

<character id="esc_Borys_npc">

<class>esc_Borys_npc</class>

<specific_character>esc_Borys_npc</specific_character>

</character>

 

 

 

 

<game_information_portions>

<info_portion id="storyline_actor_start">

<task>storyline_eliminate_gunslinger</task>

<action>esc_Borys_npc.esc_Borys_npc</action>

</info_portion>

 

 

Изменено пользователем Mediv006
Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...