[SoC]Секрет глючности Янтаря - Скрипты / конфиги / движок - AMK Team
Перейти к контенту

[SoC]Секрет глючности Янтаря


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

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

Заподозрил зомбированных сталкеров (если помните в оригинале в некоторых профилях зомбей были неверно прописаны mp5)

Ответ нашелся в all.spawn. Сделал следующее:

1. у некоторых зомбаков в логике было

custom_data = <<END

[smart_terrains]

none = true

 

[logic]

active = walker

on_combat = combat

 

[combat]

combat_type = nil

 

[walker]

path_walk = yan_zombies_1_walk

sound_idle = state

END

 

 

переделал

custom_data = <<END

[smart_terrains]

none = true

 

[logic]

active = walker

 

[walker]

path_walk = yan_zombies_1_walk

END

 

 

2. у других зомбей увидел еще интересности

custom_data = <<END

[spawner]

cond = {+yantar_tunnel_finish}

 

[smart_terrains]

none = yan_st_stalker1 ;такой комбинации раньше никогда не видел поставил none = true

END

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

Что нет вылетов - это очень даже хорошо. Но не наблюдаются ли после этих изменений, изменения в поведении зомбарей?

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

Не заметил, м... м... мачииии!!! :lol:

 

Добавлено через 16 мин.:

Кстате сейчас обшарил все файлики аллспавна alife_[имя локи].ltx

на предмет наличия конструкций

none = <имя смарттерейна>

и

[combat]

combat_type = nil

нигде данные фишки кроме Янтаря не встречаются

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

щяс копался в интернете, набрел на нечто подобное, вот что говорит Bardak на эту тему:

Коротко: нихера этот вылет _не_ исправлен. По крайней мере, исправление

(если оно всё же было) не попало в доступное нам обновление S.T.A.L.K.E.R.

Сначала я специально снёс _все_ моды, и прошёл локацию Янтарь снова.

Словил точно такой вылет.

Потом добавил следующий кусок кода в xr_gulag.script:gulag: prepare_jobs()

начиная со строки 168:

if path_name == "yan_st_stalker3_patrol_1_walk" then
    for i=0,ptrl:count()-1 do
        local lvid = ptrl:level_vertex_id(i)
        dbglog("%s[%d]:lvid=%d", path_name, i, lvid)
    end
end

А также в se_stalker: on_register() код, который "выталкивает"

объекты из гулага yan_st_stalker3 (это долговцы возле мобильного комплекса

учёных, если кто не понял). Это чтобы они снова добавились в этот же гулаг

и гарантированно отработала указанная выше функция prepare_jobs().

В журнале получились такие строки:

! Unknown command:  dbg:yan_st_stalker3_patrol_1_walk[0]:lvid=69053
! Unknown command:  dbg:yan_st_stalker3_patrol_1_walk[1]:lvid=66241
! Unknown command:  dbg:yan_st_stalker3_patrol_1_walk[2]:lvid=66226
! Unknown command:  dbg:yan_st_stalker3_patrol_1_walk[3]:lvid=68588
! Unknown command:  dbg:yan_st_stalker3_patrol_1_walk[4]:lvid=-2147483648
! Unknown command:  dbg:yan_st_stalker3_patrol_1_walk[5]:lvid=63170
! Unknown command:  dbg:yan_st_stalker3_patrol_1_walk[6]:lvid=63192
! Unknown command:  dbg:yan_st_stalker3_patrol_1_walk[7]:lvid=65530

Видно, что level_vertex_id точки пути yan_st_stalker3_patrol_1_walk

с индексом 4 равен -2147483648 (шестнадцатеричное 0x80000000).

Судя по многочисленным жалобам, xrGame.dll вываливается именно с руганью

на такое странное значение.

надо будет глянуть и эту проблему

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

проверил тот косяк о котором говорил Bardak, судя по всему он уже пофиксен

! Cannot find saved game ~~~ yan_st_stalker3_patrol_1_walk[0]:lvid=69053

! Cannot find saved game ~~~ yan_st_stalker3_patrol_1_walk[1]:lvid=66241

! Cannot find saved game ~~~ yan_st_stalker3_patrol_1_walk[2]:lvid=66226

! Cannot find saved game ~~~ yan_st_stalker3_patrol_1_walk[3]:lvid=68588

! Cannot find saved game ~~~ yan_st_stalker3_patrol_1_walk[4]:lvid=62297

! Cannot find saved game ~~~ yan_st_stalker3_patrol_1_walk[5]:lvid=63170

! Cannot find saved game ~~~ yan_st_stalker3_patrol_1_walk[6]:lvid=63192

! Cannot find saved game ~~~ yan_st_stalker3_patrol_1_walk[7]:lvid=65530

Люди! Кто нибудь поизвёл эти изменения? Всё нормально?

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

Gonarh, возьмешься?

думаю универсальной заплатки не будет, т.к. изменяется all.spawn(нужно декомпилировать, вносит изменения и компилить обратно), в разных солянках/модах он разный. Кроме того, то что сработало у меня, это ещё не значит что подойдёт всем. Нужно проверять на других сборках

Gonarh, Так форум то АМК, так и заплатку надо делать к АМК 1.4.1 Кстати произвёл изменения, всё вроде нормально, буду смотреть ещё(наблюдать). Изменено пользователем Виталий Зверь

щяс копался в интернете, набрел на нечто подобное, вот что говорит Bardak на эту тему:

А также в se_stalker: on_register() код, который "выталкивает" объекты из гулага yan_st_stalker3
А можно подробней? Что за скрипт?

 

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

4)Разобрался я с битыми сохранялками на ЯНТАРЕ оказывается была опечатка

...\gamedata\config\scripts\amk\yantar.ltx

Есть такая строка creature_binded_logic = logic\yan_dvor1 ее стоит заменить на: creature_binded_logic = logic\yan_dvor

Вот, что говорил Кастл - и такое вполне могло вызывать вылеты. Но это - АМК

 

Добавлено через 8 мин.:

Gonarh,

По поводу

[smart_terrains]

none = yan_st_stalker1

правильно пишется

[smart_terrains]

yan_st_stalker1 = true

так как есть смартеррейн соответствующий:

; cse_abstract properties

section_name = smart_terrain

name = yan_st_stalker1

К сожалению, я тоже столкнулся с вылетами без лога. Заплатка, выложенная чуть выше, не помогла (видимо потому, что установлен NLC?).

Имеются ли какие-то варианты решения?

Сообщение от модератора n6260
Попросить (например автора темы) сделать заплатку и на НЛС.

 

Добавлено через 26 мин.:

Ок!

Многоуважаемый Gonarh!

Играющие в NLC коленопреклоненно молят о заплатке!

Благодарность, выраженная этой многочисленной армией игроков не будет знать границ (может быть, даже сто рублей дадут, во! :) )

Спасибо!

 

Добавлено через 1 мин.:

Во всяком случае, увеличение репутации гарантируем! :)

По поводу

[smart_terrains]

none = yan_st_stalker1

правильно пишется

[smart_terrains]

yan_st_stalker1 = true

не ко мне, это в оригинале так :ny_wink:

 

молят о заплатке!

хмм, мне нужен алл_спавн файл и утилита acdc для распаковки вашего мода,

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

изза моих косяков. Не знаю почему, но если я скриптом спавнил объекты в а-лайф радиусе, образовывались битные сейвы, как только спавн перенёс подальше от ГГ, это прекратилось

 

Что за утилита такая - не знаю, есть ссылки на концерт AC/DC, пойдет?

:rofl2: неа, неподойдет, поспрашивай у мододелов вашего мода, они в курсе

all.spawn как удобнее всего передать?

выложи на какую нить файлопомойку - сцыль сюда

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

Что за утилита такая - не знаю, есть ссылки на концерт AC/DC, пойдет? :)

all.spawn как удобнее всего передать?

 

Файл тут: http://ifolder.ru/16395682

Про acdc счас Сяку закину удочку.

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

подтверждаю, распаковалось нормально, щяс сделаем

 

Добавлено через 6 мин.:

вот, готовое, не уверен, что проблема в этом :(

 

Счас затестим, 5 минут.

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

логика зомбарей уже у них в нет-пакетах

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

Счас затестим, 5 минут.

 

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

Не знаю, может быть, это частный случай, но лично мне помогло пройти этот участок без вылетов. Спасибо.

 

P.S.: Да у меня вроде и так сработало... :)

 

А, словил-таки вылет, на выходе из подземелья. Но не пустой:

 

Expression : assertion failed

Function : CSafeFixedRotationState::create

File : e:\stalker\patch_1_0004\xr_3da\xrgame\phvalidevalues.h

Line : 81

Description : dBodyStateValide(B)

 

Это что-то с контролером вроде было, да? С той проблемой, которую сейчас решали, это связано или разные вещи?

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

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

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

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

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

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

Войти

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

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

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