Приветствую! Я тут часто в чате виде вопрос: как создать нового торговца в Зове Припяти. Я долго искал нужную статью, но так и не нашел. Пришлось самому учится. Ну и научился. Теперь делюсь со всеми! Итак, обьесняю как создать непися в зп (торговца)
ВНИМАНИЕ: ВЫ ДОЛЖНЫ ИМЕТЬ БАЗОВЫЙ УРОВЕНЬ ЗНАНИЙ ПО РАБОТЕ С ACDC COP (редактором спавна)
Итак приступим:
Открываем configs\gameplay\character_desc_(нужная лока)
Создаем запись (лучше в конце файла, перед </xml>:
<specific_character id="rad_a24_pechkin" имя секции вашего НПСteam_default = "1">
<name>Печкин ИМЯ ВАШЕГО НПС</name>
<icon>ui_inGame2_ren_3 Иконка нпс</icon>
<map_icon x="1" y="0">
</map_icon>
<bio>Курьер Печкин статус нпс (необязательно)</bio>
<class>rad_a24_pechkin имя секции вашего НПС</class>
<community>renegate группировка, в которой состоит нпс </community>
<terrain_sect>stalker_terrain</terrain_sect>
<snd_config>characters_voice\human_01\bandit\</snd_config>
<rank>50</rank>
<reputation>0</reputation>
<visual>actors\stalker_renegate\stalker_renegate_3 визуал нпс</visual>
<supplies>
[spawn] \n
device_torch \n
wpn_binoc \n
wpn_mac10 \n
ammo_9x19_pbp \n
wpn_fort \n
ammo_9x18_pmm \n спавн предметов в его рюкзак
#include "gameplay\character_food.xml"
#include "gameplay\character_drugs_2.xml"
#include "gameplay\character_drugs_mil.xml"
</supplies>
<actor_dialog>actor_break_dialog</actor_dialog>
#include "gameplay\character_criticals_4.xml"
</specific_character>
Теперь открываем npc_profile.xml
Создаем запись перед </xml>
<character id="rad_a24_pechkin имя секции вашего НПС">
<class>rad_a24_pechkin имя секции вашего НПС</class>
</character>
Теперь открываем файл spawn_sections_(нужная лока).ltx и пишем:
[rad_a24_pechkin имя секции вашего НПС]:stalker_silent
$spawn = "respawn\radar_pechkin"
character_profile = rad_a24_pechkin имя секции вашего НПС
spec_rank = master ранг нпс
story_id = rad_a24_pechkin имя секции вашего НПС
custom_data = scripts\radar\rad_a24_pechkin.ltx ;НЕ ИСПОЛЬЗОВАТЬ!!!
Теперь, если не хотим, чтобы ваш непись гулял по зоне, пока не нарвется на аномалию или монстра впишем ему функцию НЕ ДВИГАТЬСЯ
Создаем в папке configs \scripts\нужная лока файл ltx (например файл ТЕКСТ.txt переименовываем в текст.ltx
Открываем его и пишем:
[logic]
prior = 200
active = remark2
danger = danger_ignore
level_spot = trader
can_select_weapon = false
trade = misc\trade\dcm\trade_radar_a24_pechkin.ltx путь к файлу торговли
[danger_ignore]
ignore_distance = 5
[remark2]
no_move = true
Создаем файл торговли:
Берем файл trade_barman_all.ltx и копируем его. Копированный файл переименовываем так, как вы записали его в предидущем файле. (Например мне пришлось назвать его trade_radar_a24_pechkin )
Теперь осталось поставить его на карту: вскрываем через ACDC COP all.spawn и открываем файл alife_(нужная локация).ltx и в конец вносм запись:
[6384 порядковый номер секции ]
; cse_abstract properties
section_name = rad_a24_pechkin имя секции нпс
name = rad_a24_pechkin имя секции нпс
position = 282,-42,57 позиция на карте
direction = 0,0,-0.162930771708488
; cse_alife_trader_abstract properties
money = 5000
character_profile = rad_a24_pechkin имя секции нпс
; cse_alife_object properties
game_vertex_id = 1205 геймвертекс уровня
distance = 0
level_vertex_id = 198876 левелвертекс уровня
object_flags = 0xffffffff
custom_data = <<END
[logic]
cfg = scripts\radar\rad_a24_pechkin.ltx путь к файлу-скрипту, который вы создали в configs\scripts\(нужная лока)
END
; cse_visual properties
visual_name = actors\stalker_renegate\stalker_renegate_3 визуал нпс (такой же как и в характер деск.хмл)
; cse_alife_creature_abstract properties
g_team = 8
g_squad = 0
g_group = 0
health = 1
dynamic_out_restrictions =
dynamic_in_restrictions =
upd:health = 1
upd:timestamp = 0
upd:creature_flags = 0
upd:position = 282,-42,57 позиция на карте (такая же как и выше!)
upd:o_model = 0
upd:o_torso = 0,0,0
upd:g_team = 8
upd:g_squad = 0
upd:g_group = 0
; cse_alife_monster_abstract properties
base_in_restrictors = yan_bunker_door_zomby_restrictor
upd:next_game_vertex_id = 65535
upd:prev_game_vertex_id = 65535
upd:distance_from_point = 0
upd:distance_to_point = 0
; cse_alife_human_abstract properties
predicate5 = 2,2,1,1,2
predicate4 = 1,0,0,1
; cse_ph_skeleton properties
upd:start_dialog =
; se_stalker properties
Готово. Осталось только адаптировать файл ACDCCOP.PL
Открываем его блокнотом и поиском ищем запись:
mar_csky_tactic
Нашли? Теперь пишем между этой и следующей записью:
rad_a24_pechkin имя секции нпс => 'se_stalker',
Готово! Сохраняем, собираем спавн и кидаем его в папку spawns и пробуем, что получилось.
ЗАПИСИ, ВЫДЕЛЕННЫЕ СИНИМ ЦВЕТОМ: МОИ КОМЕНТЫ. ИХ ПЕРЕД ДОБАВЛЕНИЕМ В ФАЙЛЫ НУЖНО УДАЛИТЬ!!!
Так-же я не собираюсь учить вас, как пользоваться ACDC COP!
Автор статьи: Я (jeka215)
Вот, что получилось у меня:
Клянчить нехорошо, да и на тутор с АМК похоже....Если окажется простым дублированием с АМК с заменой авторства-накажу
Добавлено (23.08.2010, 00:12:52)
---------------------------------------------
ZeeK, минуточку! Тут АМК только текстура непсия. Остольное я лично писал минут 30!