Важно: не используйте данный урок с кветовыми персонажами, ибо в итоге вы получите их целую кучу, причём с другой логикой!!!
Описание урока:
Как известно, многие не хотят редактировать персонажей, что бы у них была другая экипировка, а хотят быстро добавить нового обычного персонажа в игру, что бы он был как бы добавлен к списку всех обычных персонажей, которые периодически спавнятся по всей Зоне.
Практика на словах:
Что бы создать нового (с этого момента обычного я повторять почти не буду) персонажа, нам нужно просто приписать его в нужном файле. Короче, например создали мы 3D модель члена группировки "Чистое Небо". Привязывать к какому-нибудь уже готовому персонажу мы не хотим, мы хотим что бы она была привязана к сталкеру, который наравне со всеми остальными спавнился повсеместно на всех локациях. Для этого нужно, например, копировать профиль какого-нибудь персонажа из файла gamedata/config/gameplay/character_desc_simulation.xml, например новичка бандита, копируем её, и вставляем в самый конец списка новичков бандитов. Далее, меняем значение строчки
<specific_character id="sim_bandit_novice_default1" team_default = "1">
на
<specific_character id="sim_bandit_novice_default*" team_default = "1">
* Смотрим туже строчку только на профиле чуть-чуть повыше, прибавляем к нему 1, и вписываем на место звёздочки.
Всё! Можем редактировать этого бандита как вам угодно, он будет спавнится на точках новичков бандитов, и попадет туда с вероятностью 100/**=**.
* 100 нужно делить на количество профилей в нужном вам блоке, в нашем случае блоке новичков-бандитов. Результат будет вероятностью.
Практика на примерах:
Практика на словах может быть для кого-то менее понятной, чем практика сразу на примерах. Тут примеры берутся из оригинала, так что если в плане количества у вас что-то не совпадает, вероятно у вас: 1.) Другой патч, 2.) Стоит какой-то мод. И так приступим.
Вот цель, добавить персонажа, который должен спавнится в лагере новичков на Кордоне, а потом сидеть у костра, или быть на страже. Открываем файл gamedata/config/gameplay/character_desc_escape,xml, ищем блок с названием (если будете присматриваться, не пропустите) STALKER NOVICE. Ищем самый последний профиль этого блока (блок ranger уже не относится к редактируемому), копируем этот профиль полностью и вставляем. Перед началом блока ranger. Должно получится вот что:
......
#include "gameplay\character_dialogs.xml"
</specific_character>
---начало нашего нового профиля, и конец копированного---
<!------------------------------------------------------------------------------------------>
<specific_character id="esc_stalker_novice_default10" team_default = "1">
<name>GENERATE_NAME_stalker</name>
<icon>ui_npc_u_green_stalker_5</icon>
<bio>esc_stalker_novice_bio</bio>
<class>esc_stalker_novice</class>
<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>
<rank>58</rank>
<reputation>-2</reputation>
<money min="200" max="600" infinitive="0"/>
<snd_config>characters_voice\human_02\stalker\</snd_config>
<crouch_type>-1</crouch_type>
<visual>actors\novice\green_stalker_5</visual>
<supplies>
[spawn] \n
wpn_pm \n
ammo_9x18_fmj = 1 \n
device_torch \n
#include "gameplay\character_items.xml" \n
#include "gameplay\character_drugs.xml" \n
#include "gameplay\character_food.xml"
</supplies>
#include "gameplay\character_criticals_3.xml"
<start_dialog>hello_dialog</start_dialog>
#include "gameplay\character_dialogs.xml"
</specific_character>
-----конец нашего нового профиля, а также конец блока-----
<!-------------------------------------ranger----------------------------------------------------->
<specific_character id="esc_ranger" team_default = "1">
......
Теперь нам надо поменять значение одной строки, что бы всё работало стабильно:
......
#include "gameplay\character_dialogs.xml"
</specific_character>
---начало нашего нового профиля, и конец копированного---
<!------------------------------------------------------------------------------------------>
<specific_character id="esc_stalker_novice_default11" team_default = "1">
<name>GENERATE_NAME_stalker</name>
<icon>ui_npc_u_green_stalker_5</icon>
<bio>esc_stalker_novice_bio</bio>
<class>esc_stalker_novice</class>
<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>
<rank>58</rank>
<reputation>-2</reputation>
<money min="200" max="600" infinitive="0"/>
<snd_config>characters_voice\human_02\stalker\</snd_config>
<crouch_type>-1</crouch_type>
<visual>actors\novice\green_stalker_5</visual>
<supplies>
[spawn] \n
wpn_pm \n
ammo_9x18_fmj = 1 \n
device_torch \n
#include "gameplay\character_items.xml" \n
#include "gameplay\character_drugs.xml" \n
#include "gameplay\character_food.xml"
</supplies>
#include "gameplay\character_criticals_3.xml"
<start_dialog>hello_dialog</start_dialog>
#include "gameplay\character_dialogs.xml"
</specific_character>
-----конец нашего нового профиля, а также конец блока-----
<!-------------------------------------ranger----------------------------------------------------->
<specific_character id="esc_ranger" team_default = "1">
......
Теперь данный персонаж будет спавнится в лагере новичков (с вероятность 100/9=11.1111), причём делать всё что делают остальные новички из лагеря, то есть стоять на страже, спать, жрать и сидеть у костра. Думаю, отредактировать этого персонажа вам не составит труда, только не делайте ему уникальных диалогов и прозвищ, для этого вам нужно создавать совершенно нового персонажа со своей логикой, классом и спавном, эта статья в этом вам никак не поможет, возможно на сайте вы найдете другую статью о том как создать собственного уникального персонажа.
Готовый пример:
Готовый пример, новый новичок который будет жить в лагере новичков на Кордоне.
<specific_character id="esc_stalker_novice_default11" team_default = "1">
<terrain_sect_>stalker_terrain</terrain_sect_>
<name>GENERATE_NAME_stalker</name>
<icon>ui_npc_u_stalker_ki_head_1</icon>
<bio>esc_killer_specnaz_bio</bio>
<team>Killer_specnaz</team>
<class>esc_stalker_novice</class>
<community>stalker</community> <terrain_sect>stalker_killer_terrain</terrain_sect>
<rank>585</rank>
<reputation>-85</reputation>
<snd_config>characters_voice\human_02\killer\</snd_config>
<crouch_type>0</crouch_type>
<panic_treshold>0</panic_treshold>
<visual>actors\killer\stalker_ki_head_1</visual>
<supplies>
[spawn] \n
wpn_pm \n
ammo_9x18_fmj = 1 \n
wpn_ak74 \n
ammo_5.45x39_fmj \n
#include "gameplay\character_drugs.xml"
</supplies>
#include "gameplay\character_criticals_4.xml"
<start_dialog>hello_dialog</start_dialog>
</specific_character>
В итоге у меня на Кордоне будет спавнится житель лагеря новичков в амуниции наёмника, с АК74 и ПМ, с голосом наёмника, с рангом 585, и с плохой репутацией.
P.S.: Надеюсь вы всё поняли.
Данный урок подходит для Чистого Неба, а также для Зова Припяти. Но не забывайте, делайте такое только с обычными персонажами, а не квестовыми.
© Следопытник