..::STALKER.BY::..
http://stalker.by/forum/

Создание НПС
http://stalker.by/forum/viewtopic.php?f=534&t=38
Страница 1 из 3

Автор:  Дядя Вася [ 14 авг 2009, 19:25 ]
Заголовок сообщения:  Создание НПС

Для того, чтобы создать нового НПС нам понадобятся координаты нужного места, где и будет заспаунен наш NPC. Возьмём Кордон, лагерь новичков. Можете снять координаты сами, а можете взять мною уже снятые: (-218.20,-20.2,-145.63),35362,47). Далее. Создаём файл в папке gamedata/scripts файл, скажем esc_unik_npc.script. В нём создаём функцию. Код: function esc_unik_npc () alife():create("esc_unik_npc",vector():set(-218.20,-20.2,-145.63),35362,47) end

Теперь мы в файле npc_profile.xml (в папке gameplay) добавляем нашего НПС. Код: <character id="escape_trader"> <class>Trader</class> <specific_character>escape_trader</specific_character> </character>

<character id="esc_unik_npc"> <class>esc_unik_npc</class> <specific_character>esc_unik_npc</specific_character> </character>

Копируем или создаём по образцу только нижний блок Второго торговца нам ненадо. Теперь моздадим секцию нашего персоонажа. В файле spawn_section.ltx (gamedata/config/creatures) в блоке:

--------Escape--------------
--------neutrals------------

Создаём секцию. Код: [esc_unik_npc]:stalker $spawn = "respawn\esc_unik_npc" character_profile = esc_unik_npc spec_rank = regular community = dolg

В строке community можете вместо долга вписать другую группировку. Однако если мы хотим, чтоба наш персоонаж не гулял по Зоне, пока не наткнётся на первуюю аномалию, то пропишем чтобы он стоял на месте. Для этого под community вставляем: custom_data = scripts\esc_unik_npc.ltx Далее создаём в gamedata/config папку scripts в в папке создаём файл esc_unik_npc.ltx В наш созданый файл вставляем: Код: [logic] active = remark1 danger = danger_ignore

[danger_ignore] ignore_distance = 5

[remark1] no_move = true

Всё наш НПС будет стоять на месте своего спауна. Едем дальше. Нам надо активировать нашего персоонажа. для этого мы должны вставить строку: <action>esc_unik_npc.esc_unik_npc</action> Либо в диалог, либо в какой-нибудь квест. Давайте вставим строку в файл info_portions.xml (gamedata/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>esc_unik_npc.esc_unik_npc</action>
</info_portion>

Однако мы не прописали самого НПС, как личность В файле character_desc_escape.xml (gamedata/gameplay) добавляем: Код: <specific_character id="esc_unik_npc" team_default = "1"> <name>GENERATE_NAME_bandit</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

1. include "gameplay\character_items.xml" \n
2. include "gameplay\character_food.xml"

</supplies>

1. include "gameplay\character_criticals_3.xml"

1. include "gameplay\character_dialogs.xml"

</specific_character>

Правда тут получится у нас долговец в одежде бандита и говорящего голосом монолитовца xD Всё сохроняем. НПС готов.

Но так же можно добавить нашему НПС диалог) Как добавлять диалоги написано в нашем факе) Если хотяте сделать нашему НПС своё имя то в файле stable_bio_name.xml (gamedata/config/text/rus) добавляем: Код: <string id="esc_unik_npc"> <text>Факер-мазафакер</text> </string>

А в файле сharacter_desc_escape.xml (gamedata/gameplay) находим нашего уже прописаного НПС и вставляем в секцию <name></name> (у нас в ней написано GENERATE_NAME_bandit) esc_unik_npc Всё Поздравляю)

Автор:  Наёмник [ 02 авг 2010, 15:50 ]
Заголовок сообщения:  Re: Создание НПС

тут видно что-то перепутали...именно я создавал по образцу создания торговцев... только получался долговец с иконкой свободовца..но теперь я можно сказать официальный модмейкер...

Автор:  Chester [ 02 авг 2010, 15:56 ]
Заголовок сообщения:  Re: Создание НПС

Наёмник писал(а):
тут видно что-то перепутали...именно я создавал по образцу создания торговцев... только получался долговец с иконкой свободовца..но теперь я можно сказать официальный модмейкер...

Просто иконка свободы,озвучка монолита,а визуал бандита
.

Автор:  SNORK [ 06 авг 2010, 19:27 ]
Заголовок сообщения:  Re: Создание НПС

СПС

Автор:  Sashok96 [ 09 авг 2010, 08:58 ]
Заголовок сообщения:  Re: Создание НПС

а как заспавнить НПС не на кардоне а на баре и т.д.???

Автор:  Chester [ 09 авг 2010, 10:17 ]
Заголовок сообщения:  Re: Создание НПС

function esc_unik_npc ()
alife():create("esc_unik_npc",vector():set(-218.20,-20.2,-145.63),35362,47)
end
В координатах укажи гейм и левел вертексы локации на которую ты хочешь его заспавнить.

Автор:  Burbon [ 09 авг 2010, 12:53 ]
Заголовок сообщения:  Re: Создание НПС

А что если у меня таких папок и файлов нету как в инструкции сказано?

Автор:  seregik [ 09 авг 2010, 13:04 ]
Заголовок сообщения:  Re: Создание НПС

Значит бери распаковщик ресурсов и распакуй архивы

Автор:  Sashok96 [ 06 янв 2011, 11:33 ]
Заголовок сообщения:  Re: Создание НПС

вопрос: сколько долбанных попыток я делал! скажите в какой файл нужно засунуть строку (например) <action>my_kot.spawn_kot_trader_1()</action> что бы он заспавнился в самом начале игры?

Автор:  barmidrol [ 06 янв 2011, 15:14 ]
Заголовок сообщения:  Re: Создание НПС

не надо долбаных попыток. всунь куда-нибудь при разговоре с сидором. еще можно в бинд_сталкер

Страница 1 из 3 Часовой пояс: UTC + 2 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/