1) В алл спавне открываем alife_название локации на которой будем делать тайник.ltx Идем в самый низ и пишем туда такую конструкцию:
Code
[ХХХ]
; cse_abstract properties
section_name = inventory_box
name = bla_bla_bla_box
position = XXX
direction = 0,0,0
; cse_alife_object properties
game_vertex_id = XXX
distance = 0
level_vertex_id = XXX
object_flags = 0xffffff3b
custom_data = <<END
[logic]
cfg = scripts\treasure_inventory_box.ltx
END
story_id = XXXX
; cse_visual properties
visual_name = physics\equipment_cache\equipment_instrument_case_01_case
ГДЕ: [ХХХ] - номер секции (никогда не повторяется!). В конце смотрим последнюю конструкцию и номер ее секции, к этому номеру прибавляем пару десятков (чтобы уж наверняка) и записываем его в фигурные скобки. Например: у последней секции имеем номер [666]. Прибавляем к нему пару десятков и пишем уже к себе. Вместо [ХХХ] записываем [700]
section_name - название секции. Не трогаем.
name - Задаем какой хотим (я задал bla_bla_bla_box). Никогда в названии не должно быть пробела. Вместо него юзаем знак "_".
position - Координаты спавна тайника. записываются в формате X,Y,Z : -44.825649,-10.059822,-74.628242 (это пример, пишем свои координаты, которые снимаем в нужной точке).
direction - Направление обзора. Тут оно не важно, поэтому ставим нули.
game_vertex_id - Вертекс в игре. Узнать его можно во время снятия координат. Как правило пишется сразу после X,Y,Z.
level_vertex_id - Вертекс на уровне. Узнать его можно также, как и с гейм вертексом.
ПРИМЕР: -44.825649,-10.059822,-74.628242,234287,77
где: -44.825649,-10.059822,-74.628242 --- это координаты (X,Y,Z), 234287 --- это левел вертекс, 77 --- гейм вертекс.
cfg - Это ссылка на логику, ничего не меняем.
story_id - Уникальный айди обьекта, о том как его добавить расскажу чуть ниже. Вместо моих иксов пишем например число 19123.
visual_name - Визуал тайника (модель). Можно задавать не только стандартную, но и например модель ящика, бревна, и т.д
Когда данную конструкцию вставили, заполнили все пункты которым я написал описание, можно запаковывать обратно алл спавн.
2) Добавим наш айди тайника: В gamedata\config\game_story_ids.ltx в самом низу, после строчки: 5480 = "ros_secret_0025". Так как в алл спавне мы задали сид равный 19123 (а так можно любой, но только не тот который есть уже в игре), то мы пишем следующую строчку:
Code
19123 = "bla_bla_bla"
ГДЕ: 19123 - это айди обьекта, указанный в алл спавне.
"bla_bla_bla" - название тайника в game_story_ids.ltx
Название обязательно должно совпадать в game_story_ids.ltx и treasure_manager.ltx
3) Теперь наполнение тайника: В gamedata\config\misc\treasure_manager.ltx пишем следующие строчки:
Code
[bla_bla_bla]
target = 19123
name = bla_bla_bla_name
description = bla_bla_bla_descr
items = wpn_gauss, 1, medkit, 10
condlist = {=npc_rank(experienced)} 9
community = stalker
ГДЕ: [bla_bla_bla] - конфигурационное имя тайника (такое же как и в game_story_ids.ltx)
target - СИД (который мы писали в алл спавне и регистрировали в game_story_ids.ltx)
name - имя тайника которое будет выводится в игре.
description - описание тайника (также выводится в игре).
items - наполнение тайника. (я прописал 1 винтовку гаусса и 10 аптечек)
condlist - кондишн выпадения тайника. Т.е условие при котором тайник выпадет для ГГ.
community - группировка, при обыске мертвых бойцов которой, тайник может выпасть (влияет condlist)
Далее в этом же файле находим строчки (вверху файла): ros_secret_0025. И следом за этой строчкой пишем наш тайник: bla_bla_bla.
4) Осталось прописать имя и описание для тайника, которое будет выводится в игре. Идем в gamedata\config\text\rus\stable_treasure_manager.xml и пишем внизу, но ДО закрывающего тега следующие строчки:
Code
<string id="bla_bla_bla_descr">
<text>текст с описанием тайника</text>
</string>
<string id="bla_bla_bla_name">
<text>название тайника</text>
</string>
ГДЕ: Code
<string id="bla_bla_bla_descr">
Это описание тайника, которое мы задавали в treasure_manager.ltx (description = bla_bla_bla_descr)
Code
<string id="bla_bla_bla_name">
Это имя тайника, которое мы также задавали в treasure_manager.ltx (name = bla_bla_bla_name)
Все. Заходим в игру и любуемся своим созданным тайником (не забываем про условие выпадения).