Перейти к контенту

[SoC] Ковыряемся в файлах


Рекомендуемые сообщения

@ctepbrthik, ну у меня собственно так же. При этом другие файлы заменить удается успешно. Мож патч какой приоритетнее геймдаты?

Другие моды полностью работают и этот таскменеджер редактируется корректно

Изменено пользователем hp416
Ссылка на комментарий
29.06.2020 в 12:48, Святой Сев сказал:

в чем разница между [bloodsucker_immunities] и скажем [bloodsucker_immunities_strong], как эти группы взаимодействуют при нанесении урона по мутанту?

Стандартная система наследования, активно применяемая в конфигах:

родительская секция:  [m_bloodsucker_e]:monster_base

дочерняя секция:         [bloodsucker_strong]:m_bloodsucker_e

Все параметры и значения, явно не указанные в дочерней секции, вычитываются из родительской. Указанные явно - подменяют собой эти параметры и их значения.

 

@Cr1stal, xr_corpse_detection

 

@hp416

1. Тест "на горячую" на уже активных заданиях.

2. Кодировка и расположение файла.

3. Наличие/отсутствие в папке mods\ дополнительных файлов *.xdb.

Что бы ещё такого нагадать? :az1000106:

  • Полезно 1
Ссылка на комментарий
14 часов назад, Cr1stal сказал:

там все очень глобально и много мне не нужно

Ненужные схемы отключаются - вся информация в текстовом файле с модом.

  • Согласен 1
  • Полезно 1
Ссылка на комментарий
23 часа назад, Купер сказал:

Тест "на горячую" на уже активных заданиях.

 

22 часа назад, hp416 сказал:

Каждый раз НИ и перезапуск клиента.

В это-то и странно. По идее, старт НИ и все должно быть ОК. А изменения в файле-то сохраняются?

 

23 часа назад, Купер сказал:

Кодировка и расположение файла.

Если кодировка изначально правильная, то изменение числа не должно ничего нарушить.

  • Согласен 1

Сталкер - наше всё!

Ссылка на комментарий

@mole venomous,  Действительно много странного :) @Купер, Благодарю за пояснение.

 

Решил поменять скорость бега мутантов и обнаружил параметры вызывающие вопросы - speed factors: angular_real | angular_path | min |  max. Мог бы кто прокомментировать в достаточной подробности данный аспект?

Хотелось бы добавить по поводу SoundThreshold, как именно работает этот параметр?

Ссылка на комментарий
1 час назад, Святой Сев сказал:

Решил поменять скорость бега мутантов и обнаружил параметры вызывающие вопросы

linear - Скорость при различных видах движения.

angular_real - Скорость разворота

Остальные параметры лучше не трогать.

 

 

 

  • Полезно 1
Ссылка на комментарий

Товарищи движковеды, а вот это действительно правда? 

10 часов назад, aromatizer сказал:

...а съемные прицелы влияют на поведение?

Не влияют. ...только класс оружия, прописанный в конфиге: ef_main_weapon_type, ef_weapon_type. 

Суть вопроса: у npc в руках "железяка":
                  holder_range_modifier  = 1.0 

                  holder_fov_modifier      = 0.7

Выдаём и ставим на неё оптику:

                  holder_range_modifier  = 1.2
                  holder_fov_modifier      = 0.3

Это где-то учитывается?

Ещё, это бы вот почитать для самообразования.

  • Полезно 1
Ссылка на комментарий
38 минут назад, Купер сказал:

 вот

К сожалению, файл удален, однако судя по названию, там про предпочтения нпс в выборе оружия, а этим делом заведует менеджер оружия, т.е. зависит от фантазии того, кто этот менеджер писал и значений ef_main_weapon_type, ef_weapon_type в конфиге оружия .

38 минут назад, Купер сказал:

holder_range_modifier  = 1.2
holder_fov_modifier      = 0.3

Судя по названию, влияют на дальность и угол обзора, т.е. именно на поведение нпс в бою влияют косвенным образом и весьма не значительно. Под поведением подразумевается как нпс будет вести огонь из оружия. Например, из снайперки будет долго целиться и редко стрелять, а из штурмовой винтовки - поливать от души очередями.

Изменено пользователем aromatizer
  • Сомнительно 1

Отношения между людьми- главная ценность в человеческом обществе.
Любая полученная информация- это только повод для размышлений, а не побуждение к действию.
Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAE
Накопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt

Ссылка на комментарий
5 минут назад, Купер сказал:

Это где-то учитывается?

Ага. Исходно читается в inventory_item.cpp, а в weapon.cpp читается так же из секции прицела, если прицел установлен.

Применяется в ai_stalker_fire.cpp

Собственно, эти параметры изменяют угол обзора и дальность обзора нпс.

 

Только что, aromatizer сказал:

на поведение нпс в бою влияют косвенным образом и весьма не значительно.

Ну это НЕ верно и смешно просто. Непись в разы больше/меньше видит - это не значительно? :smehs-241:

Только что, aromatizer сказал:

Судя по названию

Оно конечно "удобно", но надежнее судить по программному коду.

Изменено пользователем Zander_driver
  • Полезно 2

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий
45 минут назад, Zander_driver сказал:

Непись в разы больше/меньше видит

Про "разы" не погорячился?)

 

45 минут назад, Zander_driver сказал:

эти параметры изменяют угол обзора и дальность обзора нпс.

В каких пределах находятся валидные значения holder_range_modifier и holder_fov_modifier ?

Изменено пользователем aromatizer

Отношения между людьми- главная ценность в человеческом обществе.
Любая полученная информация- это только повод для размышлений, а не побуждение к действию.
Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAE
Накопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt

Ссылка на комментарий

Драсте, делаю скрипт на телепортацию компаньона на другую локацию и мне нужен способ переписки параметров read_stalker_params(obj), т.е. способ, чтобы можно было переписать гейм и левел вертекс (способ ниже не переписывает)

  

function comp_tele()
for a=1,65534 do
obj=alife():object(a)
if obj and (level.map_has_object_spot(obj.id, "companion_friend_location")~=0 or level.map_has_object_spot(obj.id, "companion_neutral_location")~=0 or level.map_has_object_spot(obj.id, "companion_enemy_location")~=0) and alife():level_name(game_graph():vertex(db.actor:game_vertex_id()):level_id())==alife():level_name(game_graph():vertex(obj.m_game_vertex_id):level_id()) then
cobj=level.object_by_id(obj.id)
if cobj then
t=iscpxrs_utils.read_stalker_params(obj)
rep=alife():create(obj:section_name(),db.actor:position(),209876,253)
t.x=36.412
t.y=0.485
t.z=-305.825
t.game_vertex_id=253
t.level_vertex_id=209876
t.m_game_vertex_id=253
t.m_level_vertex_id=209876
iscpxrs_utils.write_stalker_params(t, rep)
local tbl = {}
cobj:iterate_inventory(function (tmp, item)
table.insert(tbl, item:section())
end,cobj)
alife():release(obj,true)
end
end
end
end

 

Нашёл решение, оказывается вместо:
 

t.game_vertex_id=253
t.level_vertex_id=209876
t.m_game_vertex_id=253
t.m_level_vertex_id=209876

нужно просто использовать:

t.gvid=253
t.lvid=209876

 

Ссылка на комментарий

@Pug-Lover, а зачем это, если ты его все равно телепортируешь через alife():release - alife():create ?

Прежние значения gvid & lvid на новом месте не пригодятся.

  • Согласен 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

@Zander_driver, ещё как пригодятся, так как при write_stalker_params прописываются и позиция и гейм с левел вертексами, что телепортирует объект обратно на начальную точку

Драсте, как можно считать данные level_changer'а? Функция get_lc_data из АМК не робит:

function get_lc_data(obj)
	local packet = net_packet()
	obj:STATE_Write(packet)
	local t={}
	t.game_vertex_id = packet:r_u16()
	t.distance = packet:r_float()
	t.direct_control = packet:r_s32()
	t.level_vertex_id = packet:r_s32()
	t.object_flags = packet:r_s32()
	t.custom_data = packet:r_stringZ()
	t.story_id = packet:r_s32()
	t.spawn_story_id = packet:r_s32()
	
	t = iscpamk.parse_shape_packet(t,packet)
	
	t.restrictor_type = packet:r_u8()
	t.dest_game_vertex_id = packet:r_u16()
	t.dest_level_vertex_id = packet:r_s32()
	t.dest_position = packet:r_vec3()
	t.dest_direction = packet:r_vec3()
	t.dest_level_name = packet:r_stringZ()
	t.dest_graph_point = packet:r_stringZ()
	t.silent_mode = packet:r_u8()

	if packet:r_elapsed() ~= 0 then
		den.cout("left="..tostring(packet:r_elapsed()))
	end
	return t
end

Вылетает начиная с:

	t.restrictor_type = packet:r_u8()

Может есть какой-то другой способ? Если есть - прошу помочь.

Ссылка на комментарий

Как удалить из игры всех авторских персонажей ? Я Создавал своих солдат, вооруженных и одетых так как я хочу. Они заполонили всю зону, бьются ошибки. Желательно по id в characters_simulation, или по параметру в spawn_section

 

пример:
[rex_stalker_respawn_1]:stalker
character_profile    = sim_stalker_rex
spec_rank = veteran
community = stalker

Ссылка на комментарий
57 minutes ago, BFG said:

@Pug-Lover, а не проще через смарты перегонять ?

@oggycoc, опять же. Смарты. Дольше, но зато надёжнее.

@yousoup22, поиском по фразе в оригитен, текстовка и вызов диаога убра ибрыт

не понял.

Добавлено  Опричник,

Изучите "Правила цитирования". https://www.amk-team.ru/forum/topic/13514-obyavleniya/

Устное предупреждение.

  • Сомнительно 1
Ссылка на комментарий

@yousoup22, смотри начало логики Сидоровича: gamedata\config\scripts\esc_trader.ltx:

[mob_trader@new_start_wait] - [mob_trader@new_start_intro4] / [mob_trader@new_idle1]

 

@aromatizer, видишь ли в чём дело: помимо всяческого "красивого" и скриптового, присутствует ещё и донельзя родная движковая боёвка. Беда только в том, что реальное состояние кода дел порой очень сильно отличается от мощных и аргументированных комментариев, оставленных GSC в конфигах. Оставленного и выполняющего декоративную роль "билдомусора" (особенно в ТЧ) столько, что проще действительно сначала попробовать поинтересоваться - а работает ли оно вообще?

  • Согласен 2
  • Полезно 1
Ссылка на комментарий
10 часов назад, Купер сказал:

видишь ли в чём дело

Вижу: на всякого мудреца довольно простоты.)

Что ты имеешь сказать по поводу holder_range_modifier, holder_fov_modifier и ef_main_weapon_type, ef_weapon_type ?

Полагаю, мы тут общаемся с целью сделать игру лучше, а не померяться длиной, толщиной и красотой короны.

  • Не нравится 1

Отношения между людьми- главная ценность в человеческом обществе.
Любая полученная информация- это только повод для размышлений, а не побуждение к действию.
Это должен знать каждый: уроки боевой подготовки Дяди Саши https://yadi.sk/d/60Ec2B06goLAE
Накопано и накнопано:https://yadi.sk/d/mzVY5jQEspwpt

Ссылка на комментарий

Вот нашёл на одном форуме  функцию, которая позволяет удалять всех нпс со всех локаций нажатием кнопки по имени в spawn_section
 

Spoiler

function del_tele_dva()
for a=10,65634,1 do
local obj=alife():object(a)
if obj and string.find(obj:name(),"yan_ecolog_respawn_1") then          ---имя секции обьекта
alife():release(obj,true)
end
end
end

 

 

  • Сомнительно 1
Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   1 пользователь

×
×
  • Создать...