Открываем нужный alife_...ltx и добавляем такую секцию:
[2180] ;номер по порядку.
; cse_abstract properties
section_name = zone_mine_electric_weak ;имя аномалии
name = alife_testing_electra_anomaly_0001 ;уникальное имя
position = -73,-7,575 ;координаты
direction = 0,0,0
; cse_alife_object properties
game_vertex_id = 48 ;координаты
distance = 32.2000007629395
level_vertex_id = 795179 ;координаты
object_flags = 0xffffff3e
; cse_shape properties
shapes = shape0
shape0:type = sphere
shape0:offset = 0,0,0
shape0:radius = 3.0
; cse_alife_space_restrictor properties
restrictor_type = 3
; cse_alife_custom_zone properties
max_power = 10
enabled_time = 10
disabled_time = 5
start_time_shift = 0
; cse_alife_anomalous_zone properties
offline_interactive_radius = 30
artefact_spawn_count = 32
artefact_position_offset = 0x460
; se_zone_anom properties
Подгоняем координаты и имена по своему усмотрению.
И таких секций можно наделать целое множество.
Теперь нужно сделать, чтобы в аномальной зоне появлялись артефакты, и чтобы они постепенно перемещались внутри аномальной зоны, да еще и саму зону еще на карте отметить.
В ранее используемом alife_...ltx создаем новую секцию:
[2204] ;номер по порядку.
; cse_abstract properties
section_name = anomal_zone
name = alife_testing_anomal_zone ;уникальное имя.
position = -73,-7,575 ;координаты
direction = 0,0,0
; cse_alife_object properties
game_vertex_id = 48 ;координаты
distance = 0
level_vertex_id = 795179 ;координаты
object_flags = 0xffffff3e
custom_data = <<END
[anomal_zone]
cfg = scripts\anomaly\alife_testing_anomal_zone.ltx ;путь к логике.
END
; cse_shape properties
shapes = shape0
shape0:type = sphere
shape0:offset = 0,0,0
shape0:radius = 2
; cse_alife_space_restrictor properties
restrictor_type = 3
Конечно же, координаты должны совпадать с координатами наше аномалии.
Создаём в папке gamedata\configs\scripts\anomaly файл alife_testing_anomal_zone.ltx и заполняем его:
[anomal_zone]
layers_count = 1
respawn_tries = 2
max_artefacts = 5
;applying_force_xz = 200
applying_force_y = 200
artefacts = af_electra_sparkler, af_electra_flash, af_electra_moonlight, af_dummy_battery, af_dummy_dummy, af_ice
start_artefact = af_electra_moonlight ;артефакты через запятую.
coeff = 3, 3, 2, 2, 1, 1 ;порядок их появления.
artefact_ways = alife_testing_af_way ;путь перемещения артефактов.
Открываем любой way_...ltx и в низу вставляем секцию:
[alife_testing_af_way]
points = p0,p1,p2,p3
p0:name = wp00
p0:position = -73,-7,575 ;координаты
p0:game_vertex_id = 48 ;координаты
p0:level_vertex_id = 795179 ;координаты
p0:links = p1(1)
p1:name = wp01
p1:position = ?7?7?7?
p1:game_vertex_id = ?7?7?7?
p1:level_vertex_id = ?7?7?7?
p1:links = p2(1)
p2:name = wp02
p2:position = ?7?7?7?
p2:game_vertex_id = ?7?7?7?
p2:level_vertex_id = ?7?7?7?
p2:links = p3(1)
p2:name = wp02
p2:position = ?7?7?7?
p2:game_vertex_id = ?7?7?7?
p2:level_vertex_id = ?7?7?7?
p2:links = p0(1)
Вместо ?7?7?7? прописываем свои координаты, которые лучше отмечать внутри или вокруг нашей аномалии.
Чтобы на карте аномальная зона была отмечена, создаем новую секцию в уже знакомом alife_...ltx:
[2205] ;номер по порядку.
; cse_abstract properties
section_name = space_restrictor
name = alife_testing_anomaly_spot ;уникальное имя.
position = -73,-7,575 ;координаты.
direction = 0,0,0
; cse_alife_object properties
game_vertex_id = 48 ;координаты.
distance = 0
level_vertex_id = 795179 ;координаты.
object_flags = 0xffffff3e
custom_data = <<END
[story_object]
story_id = alife_testing_anomaly_spot ;уникальный идентификатор.
END
; cse_shape properties
shapes = shape0
shape0:type = sphere
shape0:offset = 0,0,0
shape0:radius = 1
; cse_alife_space_restrictor properties
restrictor_type = 3
all.spawn можно запаковывать.
Теперь идем в gamedata\scripts открываем pda.script и находим строку:
local primary_objects_tbl =
Добавляем по аналогии строку:
{target="alife_testing_anomaly_spot", hint="alife_testing_anomaly_spot_name"}, ;идентификатор = имя в text.
Получится что то типа
{target="zat_b12_spot", hint="st_zat_b12_name"},
{target="zat_b28_spot", hint="st_zat_b28_name"},
{target="zat_b103_spot", hint="st_zat_b103_name"},
{target="alife_testing_anomaly_spot", hint="alife_testing_anomaly_spot_name"},
И по адресу gamedata\configs\text\rus открываем любой файл и добавляем секцию:
<string id="alife_testing_anomaly_spot_name">
<text>Аномальная зона: электра</text>
</string>
Похожие статьи:
Файловое название относительно всего (Разработка)
Автор: mmihaill