→ Модостроение
(OFF) _715_Murad185 6 сен 2014

[ТЧ] Создание НПС в одной связке с логикой

Всем хай, с вами Dimak-stalker,сегодня я научу вас делать НПС в одной связке в многочисленном числе,но с настройкой логики,потому что некоторые спрашивают куда деваются НПСы.

1. Для начала создадим файл nps.script в папке gamedata\scripts и пишем туда:
function mp_stop ()
alife():create("mp_stop_stalker",vector():set(-218.20,-20.2,-145.63),35362,47)
alife():create("mp_stop_stalker",vector():set(-218.20,-20.2,-145.63),35362,47)
alife():create("mp_stop_stalker",vector():set(-218.20,-20.2,-145.63),35362,47)
alife():create("mp_stop_stalker",vector():set(-218.20,-20.2,-145.63),35362,47)
alife():create("mp_stop_stalker",vector():set(-218.20,-20.2,-145.63),35362,47)
end
2. Открываем файл npc_profile.xml (в папке gameplay) и добавляем наших НПС:
<character id="mp_stop_stalker">
<class>mp_stop_stalker</class>
<specific_character>mp_stop_stalker</specific_character>
</character>
3.Теперь создадим секцию наших НПСов. В файле spawn_section.ltx (gamedata/config/creatures) в блоке:
--------Escape--------------
--------neutrals------------
Создаём секцию.
[mp_stop_stalker]:stalker
$spawn = "respawn\mp_stop_stalker"
character_profile = mp_stop_stalker
spec_rank = regular
community = stalker
custom_data = scripts\stop.ltx
4. Далее создаём в gamedata/config папку scripts в в папке создаём файл stop.ltx В наш созданный файл вставляем:
[logic]
active = remark1
danger = danger_ignore

[danger_ignore]
ignore_distance = 5

[remark1]
no_move = true
5. Далее вставим строку в файл info_portions.xml (gamedata/cofigs/gameplay) под строчку:
<game_information_portions>
<info_portion id="storyline_actor_start">
<task>storyline_eliminate_gunslinger</task>
Чтобы получилось так:
<game_information_portions>
<info_portion id="storyline_actor_start">
<task>storyline_eliminate_gunslinger</task>
<action>nps.mp_stop</action>
</info_portion>
6. Пропишем личность в файле character_desc_escape.xml (gamedata/cofigs/gameplay):
<specific_character id="mp_stop_stalker" team_default = "1">
<name>Стоячий сталкер</name>
<icon>ui_npc_u_stalker_bandit_3</icon>
<bio>esc_wolf_bio</bio>

<class>esc_otbrosi_1</class>
<community>dolg</community>
<terrain_sect>stalker_terrain</terrain_sect>

<rank>367</rank>
<reputation>-60</reputation>
<money min="600" max="2000" infinitive="1"/>

<snd_config>characters_voice\human_01\monolith\</snd_config>
<crouch_type>-1</crouch_type>
<visual>actors\bandit\stalker_bandit_3</visual>
<supplies>
[spawn] \n
wpn_groza \n
ammo_9x39_pab9 \n
</supplies>

#include "gameplay\character_criticals_3.xml"
#include "gameplay\character_food.xml"

</specific_character>
Все НПСы будут стоять в Деревне новичков на Кордоне

P.S. Способ модернезирован XOBAH
Также все НПСы при спавне будут отодвигаться друг от друга на минимальное расстояние чтобв не слипнутся.

Комментарии (9)

Долговцы в куртках бандитов?:tLol
А им клички можно поставить?И чтоб на русском и каждому свою?
нет. в этом уроке описывается как один нпс спавнится 5 раз
ответил root1997
Можно. Вместо esc_otbrosi_1 написать generate_name_bandit (или как-то так - посмотри в других характерах). Это генератор имён, он раздаст всем нпс случайные разные имена.
Окей,спасибо.Попробую
Отредактировано!
Кто может в блокнот этот урок запихнуть??
а самому?
Уже не надо я сам все сделал))
Показать комментарий
Скрыть комментарий
Для добавления комментариев необходимо авторизоваться
→ Модостроение
Братва
Здесь все по понятиям: отчаянные перестрелки...
Тема: Светлая | Тёмная
Версия: Mobile | Lite | Touch | Доступно в Google Play