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

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


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

 

 

Есть такая особенность(тч 1.0004) - если прописать только на walk-точку анимацию - она не будет выполняться... Бред на самом деле, раньше у меня такого небыло, но в нынешнем разрабатываемом моде почему-то так... Попробуй анимации назначить на walk и look точки.

Парсинг стоячей анимации берется из look пути, парсинг движения из walk, это совершенно логично. Еще стоит сразу заметить, что настройки путей имеют приоритет над настройками схем из кастом даты.

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

 

 

Кто подскажет, что надо прописать в путях, чтоб НПС бежал сломя голову? Пробовал писать a=run, a=sprint, a=rush - все равно бегут трусцой

Хоть бы показал как пробовал. В точках path_walk """name00|a=run"""

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

 

 

Хоть бы показал как пробовал. В точках path_walk """name00|a=run"""

Вот именно так и пробовал. НПС бегут, конечно, но не так быстро, как бы хотелось. Иной раз НПС орет "Я без пушки" и несется так, что его не догонишь. Вот такое как сотворить?

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

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

 

 

НПС орет "Я без пушки" и несется так, что его не догонишь. Вот такое как сотворить?

А может у него состояние panic просто?

Тогда фиг его знает, как его туда загнать...и не движковое-ли это...Как-то не заморачивался.

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

 

 

А может у него состояние panic просто?

Кстати, очень может быть. Может и panic, может и движковое.

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

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

Всем доброго дня. Возможно, мой вопрос несколько не по теме, однако оставлю здесь. Я так понимаю, что если хитовать актёра радиацией на обновлении, то защита костюма не учитывается. А вот если использовать следующий код, не появятся какие либо ненужные последствия?

 

-- на дистанции ближе 10 метров постоянно излучает радиацию

if self.object:clsid()==clsid.snork_s and self.object.health>0.10 then
-- будем учитывать броню
local protect=1
local suit=db.actor:item_in_slot(6)
if suit then
local sect=db.actor:item_in_slot(6):section()
local a=tonumber(system_ini():r_string(sect,"radiation_protection"))
protect=protect*((1-(a*(db.actor:get_current_outfit():condition()))) or 1)
end
local target = self.object:get_enemy() or db.actor
local dist = target:position():distance_to(self.object:position())
if dist < 10 then
local scale = 0.001*(10-dist)
SnorkNum = 1
db.actor.radiation = scale*protect
if inventory.belt["detector_simple"] or inventory.belt["detector_advances"]
or inventory.belt["detector_elite"] or inventory.belt["bioradar"] then
local snd_obj = xr_sound.get_safe_sound_object([[detectors\geiger_1]])
snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 0.5)
end
elseif SnorkNum then
SnorkNum = nil
end
end

 

Здесь могла быть ваша реклама.

Ссылка на комментарий
Expression    : assertion failed

Function      : CLocatorAPI::ProcessArchive

File          : E:\stalker\sources\trunk\xrCore\LocatorAPI.cpp

Line          : 337

Description   : hdr

 

Что значит этот вылет?

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

Мужик с РПГ приходит на точку, стреляет по цели и уходит обратно. Проблема: мужик стреляет некрасиво, выстрел происходит когда труба РПГ ещё не поднесена к плечу. На скриншоте выстрел произведен именно из этого положения трубы, он даже в сторону цели не успел развернуться. Как быть, мастырить какой-то ремарк?

9e5d97f31a.jpg

[logic]
active = walker@start
[walker@start]
path_walk = agr_assault_rpg_start_walk
path_look = agr_owl_group_look
on_info =  {+agr_assault_start} walker@agr_assault_rpg_start
meet = no_meet
[walker@agr_assault_rpg_start]
path_walk = agr_assault_rpg_fight_walk
path_look = agr_assault_rpg_objective1_look
on_timer = 5000 | walker@start
[agr_assault_rpg_objective1_look]
points = p0
p0:name = lp00|a=guard_fire
p0:flags = 0x1
p0:position = -195.896, 7.37, -224.323
p0:game_vertex_id = 555
p0:level_vertex_id = 40564
Ссылка на комментарий

@dPlayer, очень просто. Сначала ведешь его на точку, где будет анимация "РПГ на плече, и готово стрелять". Сказал бы точнее - чтото найти не могу. А потом стрельба, после поршня или таймера. 

Дерзай :)

Не соответствует правилам.

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

 

 

Description   : hdr   Что значит этот вылет?

Есть большое подозрение, что найдена истинная причина данного вылета. В папке textures/ui/ есть файл с иконками aem_ui_npc для мода Arena Extension?

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

Стало интересно как все-таки работает система видимости NPC и luminocity_factor (фактор освещения) в частности. Посмотрел исходники, нашел такую формулу:

koef = exp(log(luminocity) * luminocity_factor)

Где koef - коеффициент который умножается на итоговое значение видимости на каждой итерации обсчета видимости (если больше 1 то обнаружение быстрее, если меньше то медленнее);

luminocity - реальная освещенность объекта, рассчитанная движком (не может быть ниже 0.001, верхняя граница - предположительно 1.0);

luminocity_factor - значение одноименного параметра из конфига (например m_actor.ltx).

 

Если построить график по этой функции и менять значение luminocity_factor, то станет ясно что по сути оно задает степень линейности прироста видимости ГГ в зависимости от освещения. При низких значениях (в районе 0.2-0.6) даже при минимальном освещении (т.е. в полной темноте) неписи будут видеть ГГ очень хорошо, и только если выпрямить кривую (значения порядка 0.8-1.4) тогда в темноте значение koef будет минимальным и будет равномернее расти по мере увеличения luminocity.

 

Стоит учитывать это при изменении данного параметра.

 

И по поводу visibility_threshold - на одном форуме читал что это якобы какая-то дальность в метрах - бред. На самом деле этот параметр задает максимальное значение при котором объект считается видимым. Единица измерения условна, это просто число которое накапливается с течением времени (зависит от всех остальных коэффициентов) и как только превышает данный лимит - объект видим (в ТЧ этот процесс можно наблюдать ростом полоски видимости в интерфейсе). Другими словами чем выше данный параметр тем ниже скорость реакции NPC (нужно больше времени чтобы полностью обнаружить объект в поле зрения.)

Изменено пользователем phobos2077
  • Полезно 3
Ссылка на комментарий

 

 

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

Ну это уже все знают(кто хочет что-то вообще знать), вот только было-бы не плохо, глядя в исходники, пояснить работу этого параметра. С учетом того, что для актера он равен 1.0, а для псевдогиганта 100.0. Это типа, актера разглядят в 100 раз быстрее, чем 1.5-тонную тушу топтуна ?

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

Ну это уже все знают(кто хочет что-то вообще знать), вот только было-бы не плохо, глядя в исходники, пояснить работу этого параметра. С учетом того, что для актера он равен 1.0, а для псевдогиганта 100.0. Это типа, актера разглядят в 100 раз быстрее, чем 1.5-тонную тушу топтуна ?

 

Так я же выше описал всю суть этого параметра. Он регулирует как быстро данный непись обнаруживает других, в т.ч. игрока. Для актера 1.0 т.к. для него этот код просто не используется, вместо него - монитор и глаза игрока :) 

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

 

 

вместо него - монитор и глаза игрока

Если я правильно понял, то получается что актер - самый глазастый, а топтун будет в 100 раз дольше актера "разглядывать" врага ?

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

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

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

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

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

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

Войти

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

Войти
×
×
  • Создать...