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

[SoC] Вылеты без лога


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

Сначала написал в тему по Arsenal Mod`у, но потом решил не загрязнять ее, а создать новую

 

В теме Arsenal mod Pinhead упоминал что я помог справиться с вылетом. Привожу описание того, что я сделал

 

Этот способ действует только если сейв загружается, но вылетает когда вы куда то идете или к вам идут :) вообщем если вылет почему то происходит при переходе нпц в онлайн, как в случее ниже.

 

У PinHead был вылет при подходе к мосту с жарками на ростоке . Что я сделал:

добавил в файл xr_motivator в функцию motivator_binder:net_spawn в самое начало следующую строчку:

sak.dbglog("motivator_binder:net_spawn(): self.object:name()='%s'", self.object:name())

get_console():execute("flush")

 

После этого при переходе в онлайн НПЦ в лог будет выводиться кто собственно в онлайн вышел

 

При вылете у меня в логе осталось что последним в онлайн перешел rostok_stalker_zombied_0003

 

Если сейв вываливается не сразу при загрузке, то можно этого зомби замочить. для этого я в файле bind_stalker.script заменил следующие строчки:

function actor_binder:update(delta)
  object_binder.update(self, delta)

 

на:

local is_kill = false

function actor_binder:update(delta)
  object_binder.update(self, delta)

if is_kill == false then
local obj = alife():object("rostok_stalker_zombied_0003")
  if obj then
    local name = obj:name()
    alife():release(obj, true)
    sak.dbglog("%s killed", name)
  else
    sak.dbglog("npc not found")
  end
  is_kill = true
end

 

Пока отличие этого зомби от остальных заметил только в наличии укороченного мп5. кто-нибудь пробовал с ним бегать? нормально все?

Пробовал из character_desc_yantar.xml e,bhfnm tuj - не помогло(поэтому может быть дело и не в нем, я правда не знаю чтобы изменения в этом файле подействовали надо новую игру начинать или нет)

 

Для борьбы с монстрами в таком стиле возможно потребуется добавить в файл bind_monster.script в функцию net_spawn вывод имени монстра, перешедшего в онлайн

 

- тема на контроле, не разводите лишней демогогии... (Pollux)

Ссылка на комментарий
https://www.amk-team.ru/forum/topic/1358-soc-vylety-bez-loga/

Колмогор хотел спросить почему ты говоришь что у него mp-5 когда в character_desc_yantar

у него в секции <specific_character id="yan_zombied_default4" team_default = "1">

вот это

[spawn] \n

wpn_bm16 \n

ammo_12x70_buck = 1 \n

wpn_pm \n

ammo_9x18_fmj = 1 \n

device_torch \n

 

Почему я думаю что это его секция потому что я смотрел его секцию в all.spawn

у него визуал прописан visual_name = actors\stalker_zombi\stalker_zombie4

а такой визуал есть только у этого yan_zombied_default4 и yan_zombied_veteran_default3, у этого вообще

прописана lr-300

После изменения файла вида character_desc надо начинать новую игру,либо,использовать сейв до входа в локацию.

Колмогор хотел спросить почему ты говоришь что у него mp-5 когда в character_desc_yantar

у него в секции <specific_character id="yan_zombied_default4" team_default = "1">

вот это

[spawn] \n

wpn_bm16 \n

ammo_12x70_buck = 1 \n

wpn_pm \n

ammo_9x18_fmj = 1 \n

device_torch \n

 

Почему я думаю что это его секция потому что я смотрел его секцию в all.spawn

у него визуал прописан visual_name = actors\stalker_zombi\stalker_zombie4

а такой визуал есть только у этого yan_zombied_default4 и yan_zombied_veteran_default3, у этого вообще

прописана lr-300

посмотрел в сейве :) в мп5 я совершенно не уверен пока - это пока гипотеза

И вот кстати непонятно по какому принципу назначаются нпц <specific_character id="yan_zombied_default4"

Думаешь по совпадению визуалов?

Вроде связи между ними кроме yan_zombied я не заметил - решил что случайно расскидываются

посмотрел в сейве :) в мп5 я совершенно не уверен пока - это пока гипотеза

И вот кстати непонятно по какому принципу назначаются нпц <specific_character id="yan_zombied_default4"

Думаешь по совпадению визуалов?

Вроде связи между ними кроме yan_zombied я не заметил - решил что случайно расскидываются

Если заглянуть в all.spawn, то обнаружим, что у зоби с именем rostok_stalker_zombied_0003

прописан профайл yan_zombied. Если открыть файл config\gameplay\npc_profile.xml , обнаружим, что этому профайлу соответствует класс yan_Zombied, а открыв файл config\gameplay\character_desc_yantar.xml, обнаружим 7 профайлов с таким классом. И у зомби с id="yan_zombied_default7" действительно есть mp5:

 

[spawn] \n
wpn_mp5 \n
ammo_9x19_fmj = 1 \n
wpn_pm \n
ammo_9x18_fmj = 1 \n
device_torch \n

Насколько я понимаю, визуал, указанный в character_desc... имеет приоритет, профайл при спавне выбирается в зависимости от ограничений гулага и уровня, для которого спавнится непись, а если подходящих профайлов несколько, то скорее всего рандомно. Так что, у него вполне мог быть mp5.

 

Насчет новой игры: изменённый профайл повлияет на вновь заспавненных неписей. Заспавненные до изменения, останутся без изменений (я так думаю).

[spawn] \n
wpn_mp5 \n
ammo_9x19_fmj = 1 \n
wpn_pm \n
ammo_9x18_fmj = 1 \n
device_torch \n

Насколько я понимаю, визуал, указанный в character_desc... имеет приоритет, профайл при спавне выбирается в зависимости от ограничений гулага и уровня, для которого спавнится непись, а если подходящих профайлов несколько, то скорее всего рандомно. Так что, у него вполне мог быть mp5.

На счет новой игры - изменённый профайл повлияет на вновь заспавненных неписей. Заспавненные до изменения, останутся без изменений (я так думаю).

Там ошибка была в том что в адаптации Arsenal mod`а этому зомби был прописан укороченный мп5 wpn_mp5K - "К" большая

вылет был из-за нее, если поставить маленькую буквук "к", то все было нормально

Честно слово, теория занятная. Тогда получается по созданной тобой теории и наблюдению.

Много слишком ошибок в игре.

Вообще луа пох как написан код, и хмл просто парсер иногда заикается. И такие ошибка и правда есть, но в большинстве случаев они редко вызывают вываливатся.

Честно слово, теория занятная. Тогда получается по созданной тобой теории и наблюдению.

Много слишком ошибок в игре.

Вообще луа пох как написан код, и хмл просто парсер иногда заикается. И такие ошибка и правда есть, но в большинстве случаев они редко вызывают вываливатся.

это не теория к сожалению :( прописываешь в character_desc_escape.xml Волку пушку с большой буквой, начинаешь новую игру и получаешь вылет без лога. Можешь проверить сам, например Волку прописать не wpn_ak74u, а wpn_ak74U

 

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

  local a = 1
  loca A = 2
  dbglog("a=%s A=%s", a, A)

 

выдаст: a =1 A=2

Уважаемые коллеги итак что пишем в Анамнезе "История болезни" ?

Проводил Круглова до янтаря, и дальше все... постоянные вылеты с пустым логом?

Пытался менять K на k - не помогает, или нужно начинать с начала что бы пофиксить эту ошибку?

 

и Эпикриз: Какие рецепты для лечения вы посоветуете?

 

Можно ли задать функцию что бы если кто-то респился не правильный, это не приводило к вылету, а просто этот чувак тихо и спокойно анигилировался?

Уважаемые коллеги итак что пишем в Анамнезе "История болезни" ?

и Эпикриз: Какие рецепты для лечения ?

Проводил Круглова до янтаря, и дальше все... постоянные вылеты с пустым логом?

Пытался менять K на k - не помогает, или нужно начинать с начала что бы пофиксить эту ошибку?

нужно начинать с начала что бы пофиксить эту ошибку

:)

 

Желательно аргуметировать... (Pollux)

Уважаемые коллеги итак что пишем в Анамнезе "История болезни" ?

Проводил Круглова до янтаря, и дальше все... постоянные вылеты с пустым логом?

Пытался менять K на k - не помогает, или нужно начинать с начала что бы пофиксить эту ошибку?

 

и Эпикриз: Какие рецепты для лечения вы посоветуете?

 

Можно ли задать функцию что бы если кто-то респился не правильный, это не приводило к вылету, а просто этот чувак тихо и спокойно анигилировался?

прочитай шапку - там написано как понять что вылет именно из-за неправильного чудика и как конкретного чудика аннигилировать.

Возможно все что я расписал к тебе не подходит - вылет может быть совершенно не из-за этого

По опыту скажу что не у всех именно 3й зомби, у меня вообще их 2е было 3й и 6й, так что каждому надо индивидуально

Столкнулся с описываем багом на Складах. После павлика бегу к выходу на бар, и сразу после автобусной остановки - вылет с вышеописанным логом. Глюк точно связан с переходом кого-то в online. Так как обежав по кругу через переход на Росток и снова обычным путем зайдя на склады получил то же вылет.

Сегодня посмотрю, что за "гад" не может перейти в онлайн.:E

 

По поводу заглавных букв и их нелюбви с LUA.

Есть идея набросать простенькую утилитку, которая обработает ресурсы и просто тупо переименует заглавные английские буквы в маленькие и тоже самое сделает с именами файлов.

Если бы у меня под рукой был мой любымый Delphi...уже бы написал:(, а так - только вечером/завтра.

С помощью реомендаций Kolmogor-а свою проблему исправил.

Проблема была c sim_stalker_master_chuchelo.

Хочу заметить только следующее, пред тем как произошел глюк, этого чучело колбасило почем зря. Он шманал труп свободовца и никак не мог остановиться. Труп был пустой, чучело стоял рядом и каждую пару секунд наклонялся и шманал. Как только я от него убежал - вылезла описываемая ошибка. Сейв сохранен, но только для wawka 2.1.5

Если еще остались заинтересованные в исправлении данного бага, вот новая информация.

Решив проблему с Чучело методом его убийства, я повторно словил этот вылет с другим НПС, там же на Складах.

НПС сидел рядом с костром, Волком, Монголом и отцом Диодором(сборка от WAWKA).

Я решил его не "убивать", а исследовать проблему.

Подошел так, что стал виден Волк и горящий костер(в бочке), но НПС еще не перешел в онлайн. Вылета нет, сохранился.

"Заглянул" в прицел винтареза и стал медленно идти в сторону огня и увидел как НПС жарится в костре! И примерно через три секунды произошел вылет! Что делать? Стрелять! Загружаюсь, медленно подхожу, НПС опять в костре горит! Стреляю, он оживает, спрыгивает, начинает отстреливаться и...вылет.:(

Загружаюсь снова, заряжаю бронебойные, медленно подхожу, НПС опять в костре! Стреляю, убиваю первым выстрелом...УРРА! Вылета нет!!!

Для успокоения совести пробую еще пару раз. Каждый раз НПС спавнится в костре. Если убиваю его сразу - вылета нет. Если хоть немного живет(около 2-3 сек) - вылет.

Вот так вот. Подозреваю, что с Чучелом был то же глюк, так как он как раз находился в районе костра группы Черепа.

Во избежание повторения проблем я у себя отключу повреждение огнем. Реализм - реализмом, а вылеты это плохо.

2 strannik я не понял - лог то при вылете был?

я вижу название темы - но все же?

По опыту - вылет без лога обычно бывает при поиске неопределенного пути - т.е в гулаге данного непися не определен путь...

Все как в первом посте данной темы.

Если не вносить предложенные изменения - вылет без лога.

Если внести - можно определить последнего переходящего в онлайн НПС.

В моем случае вылет был связан с тем, что последний переходящий в онлайн НПС спавнился в огне.

Точный лог сейчас привести не могу, нет под рукой, вечером попробую(сейв вроде остался).

Такс, отключение повреждения огнем не помогает. Вылет стабилен.

Помогает только быстрое убийство.

Все, что мне приходит в голову, что вылет связан с моментом "нанесения" урона огнем.

В общеми, я проблемное место прошел, но к разгадке причин вылетов без лога мы похоже так и не приблизились.:(

Такс, отключение повреждения огнем не помогает. Вылет стабилен.

Помогает только быстрое убийство.

Все, что мне приходит в голову, что вылет связан с моментом "нанесения" урона огнем.

В общеми, я проблемное место прошел, но к разгадке причин вылетов без лога мы похоже так и не приблизились.:(

вылет скорее всего из-за того что он не может из костра выйти

по идее должен быть лог с ошибкой в patrol path

костры вроде накрыты рестриктором, запрещающим НПЦ ходить по ним. Если он туда попадет - то выйти оттуда не сможет.

Непонятно как он туда попадает

Если я в него попадаю слабым потроном (не убиваю первым же встрелом), то НПС с костра соскакивает и начинает отстреливаться, но вылет происходит все равно...может только на пару секунд дальше.

 

В логе(и то, только если воспользоваться правками из первого поста, иначе лог пустой) пресловутая ошибка 1121, что перед fatal error я сейчас не помню, но точно не про patrol path.

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

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

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

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

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

Войти

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

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

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...