ДОБАВЛЯЕМ НОВУЮ ГРУППИРОВКУ ЗП Базовый урок , ничего сложного, смарт-терейны не переписывал, сами будете добавлять....
назовем нашу группировку (айди) grom
1)Открываем файл gamedata\configs\creatures\game_relations.ltx
;названия группировок (порядок должен совпадать с communities_relations)
communities = actor, 0, bandit, 1, dolg, 2, ecolog, 3, freedom, 4, killer, 5, army, 6, monolith, 7, monster, 8, stalker, 9, zombied, 10,grom, 11
- пишем группировку за следующей как в таблице, и указываем номер, по счету из таблицы, после последней запятая не нужна!!!
[communities_relations]
; |actor|bandit| dolg|ecolog|freedom|killer| army|monolith|monster|stalker| zombied|grom
;===============================================================================
====================
actor = 0, 0, 0, 0, 0, -1000, 0, -5000, -5000, 0, -5000
bandit = 0, 5000,-5000, 0, -5000, 0, -5000, -5000, -5000, -1000, -5000, -5000
dolg = 0, -5000, 5000, 0, -5000, 0, 0, -5000, -5000, 0, -5000, 0
ecolog = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
freedom = 0, -5000,-5000, 0, 5000, 0, 0, -5000, -5000, 0, -5000, 0
killer = -1000, 0, 0, 0, 0, 1000, -5000, -5000, -5000, 0, -5000, 0
army = 0, -5000, 0, 0, 0, -5000, 1000, -5000, -5000, 0, -5000, 0
monolith = -5000, -5000,-5000, 0, -5000, -5000, -5000, 1000, -5000, -5000, 1000, -5000
monster = -5000, -5000,-5000, 0, -5000, -5000, -5000, -5000, 0, -5000, -5000, -5000
stalker = 0, -1000, 0, 0, 0, 0, 0, -5000, -5000, 0, -5000, 5000
zombied = -5000, -5000,-5000, 0, -5000, -5000, -5000, 1000, -5000, -5000, 1000, -5000
grom = -5000, -1000, 0, 0, 0, 0, 0, -5000, -5000, 0, -5000, 5000
Добавляем группировку в таблицу, прописываем отношение к другим группировкам, НЕ ЗАБЫВАЕМ добавлять по еще одному значению по вертикали!
;(порядок должен совпадать с communities_relations)
[communities_sympathy]
actor = 0.0
bandit = 0.0
dolg = 0.0
ecolog = 0.0
freedom = 0.0
killer = 0.0
army = 0.0
monolith = 0.0
monster = 0.0
stalker = 0.0;0.01
zombied = 0.0
grom = 0.0
Сюда тоже добавляем в таком же порядке...
2) Создаем профайл сталкера в gamedata\configs\gameplay\character_desc_general.xml (ну или другой, который вы прописали, или на уровнях)
<specific_character id="grom spez" team_default = "1">
<name>GENERATE_NAME_stalker</name>
<icon>ui_inGame2_merc_4</icon>
<map_icon x="1" y="0"></map_icon>
<bio>Опытный сталкер. Детальная информация отсутствует.</bio> <class>grom_specnaz</class>
<community>grom</community> <terrain_sect>stalker_terrain</terrain_sect>
<snd_config>characters_voice\human_03\killer\</snd_config>
<rank>60</rank>
<money min="5000" max="10000" infinitive="0"/>
<reputation>0</reputation>
<visual>actors\stalker_merc\stalker_merc_4</visual>
<supplies>
[spawn] \n
wpn_fn2000 \n
ammo_5.56x45_ap = 1 \n
wpn_usp \n
ammo_11.43x23_hydro = 1 \n
grenade_f1 = 4 \n
#include "gameplay\character_items_nd.xml"
#include "gameplay\character_food.xml"
#include "gameplay\character_drugs_4.xml"
#include "gameplay\character_drugs_sci.xml"
#include "gameplay\character_drugs_mil.xml"
</supplies>
#include "gameplay\character_criticals_4.xml"
#include "gameplay\character_dialogs.xml"
</specific_character>
3) в файле gamedata\configs\gameplay\npc_profile.xml создаем класс нпс, вписываем его айди из профайла и класс.
<character id="grom spez">
<class>grom_specnaz</class>
</character>
gamedata\configs\creatures\spawn_sections_general.ltx
создаем секцию для спавна
[ваше название секции]:stalker
$spawn = "respawn\ваше название секции"
character_profile = grom spez -айди нпс_профайла
spec_rank = novice
community = grom ---группировка как в профайле
4)death_manager.script
local community_list = { "stalker", "dolg", "freedom", "bandit", "army", "zombied", "ecolog", "killer", "monolith","grom"}
5)в файле gamedata\configs\misc\death_items_by_communities.ltx
Добавляем секцию с группировкой, и прдукты для нее...., теоритичски можно не трогать этот файл, все будет по дефолту и вылетов не будет тоже, проверял.
6)Чтоб название было по русски в любом файле с текстами
<string id="grom">
<text>Вольный сталкер</text>
</string>
7)Отсалось заспавнить, берем секции из спавн_сектионс....а дальше сами!
Добавение лично от меня:
Расскажу как заспавнить NPC через скрипт:
Создаём скрипт спавна
- \scripts\npc.script
Вбиваем в него
Code
function имя_функции ()
if not db.actor:has_info("spawn_любое_имя")
then
alife():create("тут пишем то, что писали в название секции",vector():set(116.238,2.250,183.199),1165999,316)
db.actor:give_info_portion("spawn_имя инфопоршня который проверяли выше")
end
end
Регестрация скрипта в \scripts\db.script
Открываем db скрипт. Находим строки
Code
function add_actor( obj )
actor = obj
actor_proxy:net_spawn( obj )
add_obj( obj )
end
И меняем на такие
Code
function add_actor( obj )
actor = obj
actor_proxy:net_spawn( obj )
add_obj( obj )
npc.snaiper()
end
Вот и всё:)