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

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


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

@naxac -- ірешнуть игру (после вvвода сооб    ения об ошибке в лог)
function abort(fmt, ...)
    local reason = string.format(fmt, ...)
    assert("ERROR: " .. reason)
    error_log("ERROR: " .. reason)
    log(string.format("%s",nil))
end

 

Если я правильно понял убрать строку которую выделил черным шрифтом? 

А всё я понял о чем ты, но как это сделать?

8 часов назад, naxac сказал:

@Волосатые ноги Channel

Это функция abort срабатывает, ЕМНИП. Там выше строки, на которую ругается игра, есть вывод в лог, раскомментируй его, и тогда в логе будет написана причина  вылета.

Смотри значит что я сделал и результат:

Скрытый текст

В этом скрипте заменил строчку log(string.format("%s",nil)) на log(string.format("ERROR: " .. reason)) 

function abort(fmt, ...)
    local reason = string.format(fmt, ...)
    assert("ERROR: " .. reason)
    error_log("ERROR: " .. reason)
    log(string.format("%s",nil))
end

 

Далее после этих манипуляций игра даже загрузилась, смарт заработал нормально, НПС в нем пошли на свои прописанные им места, но позже последовал такой вылет:

 

Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:\priquel\sources\engine\xrServerEntities\script_engine.cpp
Line          : 180
Description   : <no expression>
Arguments     : LUA error: ...k.e.r. - clear sky\gamedata\scripts\state_mgr.script:422: attempt to index field '?' (a nil value)

 

Изменено пользователем W.A.S.P.
оверквотинг
Добавлено  Опричник,

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

@Волосатые ноги Channel, ты изменил именно ту строчку, которая провоцирует принудительный вылет в случае критической ошибки. Естественно, игра пошла дальше, но ошибка никуда не делась, а стала всего лишь отложенной.

Оставь последнюю строчку как в оригинале, а переменную reason выведи в лог дополнительно, вставив соотв. код до последней строки функции.

Изменено пользователем Kirgudu
  • Нравится 1
  • Согласен 1
  • Полезно 1
10 часов назад, Kirgudu сказал:

@Волосатые ноги Channel, ты изменил именно ту строчку, которая провоцирует принудительный вылет в случае критической ошибки. Естественно, игра пошла дальше, но ошибка никуда не делась, а стала всего лишь отложенной.

Оставь последнюю строчку как в оригинале, а переменную reason выведи в лог дополнительно, вставив соотв. код до последней строки функции.

Спасибо, но тут не совсем понял, напиши лучше сам видоизмененную функцию если не трудно. И кстати по крайней мере я понял что смарт работает как надо.

Изменено пользователем Волосатые ноги Channel
Добавлено  Опричник,

Правила форума, п. 2.6 (оверквотинг)

Предупреждение.

Изучите правила цитирования (здесь).

Тут извини, игры под рукой нет, да и вообще я с телефона сейчас.

Тебе просто надо перед последней строкой (которая log(...)) вставить ещё одну. Какую?

Не помню, выводят ли штатные функции ЧН хоть что-нибудь в файл лога. Но ты поищи на форуме, тут масса примеров, как пользоваться для этого консолью. ЕМНИП:

local console = get_console()

console:execute("load ~~~ "..reason)

 

Мда... игра удивляет не в первый раз, ну оно и понятно. Как всегда делаешь (косячиш) что-то одно, а логи ссылают в основном на несуществующие проблемы не коим образом не относящиеся к проблеме. Оказывается что игра вылетает из-за кривых путей для НПС, тобишь если непись идет по косячному почему-то по мнению игры пути walk то игра вылетает... просто нужно их переписать. Отследил так: просто убирал из сквадов по одному неписей и решение само пришло.

Тогда вот еще вопросик: как сделать чтобы названия смартов отображались в КПК как в Повелителе Зоны? P.S в скриптах данного мода мною ничего схожего найдено небыло.

Изменено пользователем Волосатые ноги Channel

После спавна сквада мутантов на новый смарт, следует такой лог вылета  gamedata\scripts\smart_terrain.script:628: attempt to index local 'job' (a nil value)

Всем привет. Я в моддинге не новичок, но в локациях не силён. Решил добавить в ЧН пару новых уровней и столкнулся с одной проблемой. Дело в том, что при переходе с одной из новых локаций в любую другую с некоторым шансом игра просто вылетает. Иногда при самом начале загрузки уровня, а иногда - в самом конце, на стадии "Клиент:синхронизация...". Сначала думал что проблема в нехватке памяти, ибо у меня стоят Absolute Nature и Absolute Structures, но это не так. При прогулке по стандартным уровням из ЧН нет никаких проблем. К слову, я использую модифицированный движок (многопоточный, 32-bit) от Asterix. Так же я подметил, что вылет происходит при переходе после долгого прибывания на проблемной локации. В чём может быть проблема этих вылетов?

 

Скрытый текст

- Disconnect
stack trace:

0023:545669CE xrGame.dll, CxIOFile::Open() + 495966 byte(s)
0023:54453F07 xrGame.dll, CDialogHolder::shedule_Name() + 3039623 byte(s)

 

 

Всем привет! Надеюсь в правильную тему пишу.) 
Суть в том, что играя в anomaly 1.5.0 beta 3.0 решил изменить кондицию снаряжения с трупов. Качал фиксы но с ними игра запускаться не хочет

Решил поправить сам, зашёл в death_manager.script что то там натыкал, вроде б как что то там изменил, но всё же прошу разъяснить знатоков за что эти строки отвечают и что именно в них надо (если надо) подкрутить:

-- Create a list of outfit drop condition based on rank
    local n = death_ini:line_count("outfit_drop_condition")
    for i=0,n-1 do
        local result, id, value    = death_ini:r_line_ex("outfit_drop_condition",i,"","")
        local p = alun_utils.str_explode(value,",")
        if (p) then
            p[1] = tonumber(p[1]) or 0.1
            p[2] = tonumber(p[2]) or p[1]
            outfit_drop_condition[id] = { math.ceil(p[1] * 100) , math.ceil(p[2] * 100) }
        end
    end

--[[
    local temp = not (death_ini:line_exist("exclude_from_multi",section)) and diff_multi or 1
    if (item:is_ammo() ~= true and xr_corpse_detection.lootable_table and xr_corpse_detection.lootable_table[section] and math.random(1,100) < 65 * temp) then
        return
    end
Так же искал где подкрутить что бы больше патронов выпадало:

local ammo = itm:get_ammo_in_magazine()
        
        --printf("--Weapon: "..itm:section())
        
        --printf("--Ammo before edit: "..itm:get_ammo_in_magazine())
        
        if (ammo > 10) then
        
            local chance = math.random(0,100)
            if chance > 15 then
                itm:set_ammo_elapsed(math.random(5,10))
            end
        end
        
        --printf("--Ammo after edit: "..itm:get_ammo_in_magazine())
        
    end
end
Мне показалось, что где-то здесь, но я ничего не понял.

P.S Первый раз пишу, так что если что не кидайтесь помидорами пожалуйста)

 

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

@Lehanster, судя по коду, надо смотреть в конфигах: файл death_manager.ltx или один из заинклуженных в нем файлов, секция [outfit_drop_condition] - в ней настройка состояния брони в зависимости от ранга непися.

По патронам - это не то, здесь, если в магазине оружия больше 10-ти патронов,  то с вероятностью 85% в магазине оставляется 5-10 патронов.

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

Expression    : fatal error
Function      : CInifile::r_string
File          : Xr_ini.cpp
Line          : 532
Description   : <no expression>
Arguments     : Can't find variable immunities_sect in [ammo_11.43x23_fmj]

 

Чет не могу понять в чем проблема.

Изменено пользователем W.A.S.P.
правописание

Expression    : fatal error
Function      : CInifile::r_section
File          : Xr_ini.cpp
Line          : 521
Description   : <no expression>
Arguments     : Can't open section 'wpn_mp5_m1'. Please attach [*.ini_log] file to your bug report

 

С тем разобрался, а вот с этим никак не получается.

Изменено пользователем W.A.S.P.
правописание

Никто случайно не адаптировал Эмуляцию новых слотов от Charsi для ЧН? Чот у меня ничого не получается...

http://stalkerin.gameru.net/wiki/index.php?title=Эмуляция_новых_слотов_в_ТЧ_по_скриптам_от_АМК

 

Вопрос:

Мне нужен пример,хочу изменить выдаваемое начальное снаряжение.

Это в скрипте dialogue marsh как прописать например чтобы выдали артефакт?

@Cheburator988, добавить строку в function tutorial_give_equipment

    dialogs.relocate_item_section_to_actor(first_speaker, second_speaker, "af_medusa", 1)

Изменено пользователем nasar75
  • Согласен 1

При переносе оружия из других модов чн,_игра вылетает и жалуется на отсутствие анимации!_Вопрос:_Как правильно переносить анимации оружия?_Ogf и omf файлы переношу,_даже в таком случае вылет._И ещё,_в некоторых оружиях нет отдельного omf файла,_а оружию прописаны новые анимации,_вопрос как и где их найти?

Что может приводить к "зависанию" игры?_В моём случае зависание на базе долга на агропроме._Интересный момент,_что если быстро уйти из базы на локацию,_то зависание можно миновать,_если же стоять,_то игра зависает_и закрыть её (игру) можно только через диспетчер задач и лога вылета просто нет.

Изменено пользователем W.A.S.P.
пунктуация
Добавлено  Опричник,

Следите за пунктуацией - https://pixelplus.ru/studio/stat/pravila-postanovki-probela-ryadom-so-znakami-prepinaniya/

Господа, добрый день! 

Тут решил себе собрать ЧН на основе OGSM с упором на графику. И тут в прохождении вдруг обнаружил что "Пузырь" не виден. Это в моде так сделано или я уже чем-то поломал? Где видимость этой аномалии прописана, второй день ковыряюсь в папках и не нахожу.

@MrRome, перенёс посты.

 

Три варианта:

1. отключил видимость в конфиге аномалии.

2. неправильный шейдер в конфиге или в самих шейдерах.

3. заменил или  удалил текстуру аномалии.

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

3 часа назад, monk сказал:

как поправить сползание аддонов в сравнении в рюкзаке и инвентаре ГГ?

@monk, вот тут (gameru==proxy/VPN) на глаза попадалось (разговор, правда, про ЗП). Ни проверить, ни подтвердить/опровергнуть не могу. Скорее - для информации.

  • Спасибо 1

Всем доброго времени суток.
Нужна помощь профессионалов по ЧН, а интересует  вот что:
Как в раздел статистика группировок можно добавить дополнительные строчки по группировкам. У меня в моде наемники и ученые полноценные группировки, я вношу их в табло статистики, но в итоге группировка двигает к примеру сталкеров и они пропадают из статистики. Возможно есть какое-то ограничение которое можно снять, подскажите будьте добры.
Также интересует вопрос с озвучкой квестовых персонажей, как можно отдельному квестовому персонажу выделить специальную озвучку по типу приветствия и прощания (не брать уже существующую и весить на него, а свою), как это выполнено например с командиром долга, свободы и.тд
Заранее спасибо)

 

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

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

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

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

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

Войти

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

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

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