Это популярное сообщение. SK0RPY0N_O89O 341 Опубликовано 18 Мая 2018 Это популярное сообщение. Поделиться Опубликовано 18 Мая 2018 Тема для вопросов по ковырянию мода "Новый Арсенал". Прежде, чем что-то самостоятельно менять в моде, убедитесь в понимании того, что делаете. Если Вы рассказываете здесь о вылетах и багах, полученных Вами вследствие изменений, то предполагается, что Вы хорошо изучили Шпаргалку АМК, Уроки по модостроению, тему ковыряния файлов вообще, бессмертные творения @Dennis_Chikin в теме ковыряния ОП-2 (там много интересного), воспользовались поиском, и после всего этого так и не нашли решение. Что, кстати говоря, маловероятно, потому что по ссылкам знаний достаточно для устранения любых багов. Автор может, но не обязан комментировать какие-либо изменения, внесенные вами в мод. Все посты с ошибками в версии без правок будут удаляться, поэтому указывайте, какие правки у Вас стоят, так же это облегчит поиск решения Вашей проблемы. Большая просьба: если вам здесь не ответили, НЕ пишите об ошибках в версии с правками в основной теме мода, лучше напишите автору правки в личку. Скрытый текст Набор правок от @Опричник Ссылка на пост. Прицелы от @slesar6razriada Ссылка на пост. Прицелы от @dog19601 Ссылка на пост. Правки от @aromatizer Ссылка на пост. Набор правок от @Фреон Ссылка на пост. Скрытый текст Работоспособность на других версиях не гарантируется. Ставить на свой страх и риск. Скрытый текст Разные аддоны от разных авторов могут быть не совместимы друг с другом и вызвать непроходимые вылеты, так что хорошо подумайте, стоит ли делать целую "солянку". Конфиги и скрипты НА 6 открыты для редактирования, вся необходимая информация дана в этом посте. Скрытый текст Архивы без проблем распаковываются конвертером бардака. Пример распаковки: converter.exe -unpack "название архива" -2947ru -dir "папка для извлеченных файлов" Измененные текстуры некоторого оружия от @aromatizer: ссылка на скачивание, скриншоты. Чистые линзы прицелов от @nasar75: ссылка на скачивание, скриншот 1, скриншот 2. Скрытый текст Худ от @aromatizer: ссылка на скачивание, описание. Моментальные сообщения о смерти сталкеров: ссылка на скачивание. (Автор @aromatizer). Текстур-пак "Золотая осень": ссылка на скачивание. (Автор сборки: @lordmuzer). Более яркий фонарик: ссылка на скачивание. Другой курсор в меню: ссылка на скачивание. (Автор: @Фреон, выложил @aromatizer). Фикс вылета в Колхозе при игре на статике: ссылка на скачивание. (Автор: @nasar75). Фикс коллиматоров при игре на статике: ссылка на скачивание.(Автор: @nasar75). Измененные звуки некоторых мутантов: ссылка на скачивание, описание. (Автор: @Alex Shaman (FLOMASTER)). Увеличение вместимости ящиков в 10 раз: ссылка на скачивание. (Автор: @W.A.S.P.). Новые прицельные сетки: ссылка на скачивание. (Выложил: @IDAVOLL, автор: Morka). Другой вид инвентаря: ссылка на скачивание, скриншот. (Автор: @W.A.S.P.). Скрытый текст Измененная иконка фонарика: ссылка на скачивание, скриншот. (Выложил: @karavan150). Разные правки от @Фреон (ОБНОВЛЕНО): ссылка на скачивание, описание. Более яркий фонарь: ссылка на скачивание. (Выложил: @karavan150). Отключение дин. худа, прицел на мастере и автопауза после загрузки: ссылка на скачивание. (Выложил: @Босс_с_АППРО). Другой худ: ссылка на скачивание, скриншот. (Выложил: @karavan150). Правка для худа от @karavan150, убирающая лишнюю иконку кровотечения: ссылка на скачивание (Автор: @slesar6razriada). Мини-фикс для ПП Узи: ссылка на скачивание, описание со скриншотами. Худ от @aromatizer: ссылка на скачивание. (Скриншоты по этой же ссылке). Правка, увеличивающая вместимость ящиков и тайников: ссылка на скачивание. (Автор: @slesar6razriada). Сборник мелких правок: ссылка на скачивание, описание. (Автор: @slesar6razriada). Новые иконки предметов V2: ссылка на скачивание, описание. (Выложил: @sputnik94). Отключение фларов: ссылка на скачивание, подробное описание в архиве. (Автор @aromatizer). Замена эффектов от ранений и взрывов на оригинальные: ссылка на скачивание. (Выложил: @Dimon12321). Погода из НА 3.0: ссылка на скачивание. (Автор: @phorumer). Всегда солнечно (ставить поверх погоды): ссылка на скачивание, описание обновления. (Автор: @slesar6razriada). Оптимизируем игру (ставить на свой страх и риск): ссылка на скачивание, подробное описание. (Выложил: @aromatizer). Исправленный зум бинокля: ссылка на скачивание. (Автор: @Dimon12321). Wfix: ссылка на скачивание, подробное описание. (Автор сборки: @Stallker23). 11 8 2 7 Ссылка на комментарий
Vier_E 37 Опубликовано 13 Декабря 2020 Поделиться Опубликовано 13 Декабря 2020 @dog19601, Хорошо бы к модам сразу писать ридми с содержанием шапки, чтобы скачавший по прямой ссылке мог понять, что это за хрень и как в неё правильно гамать. Мод выкладывают многие сайты и не всегда амк-теам идёт верхней ссылкой, увы. 1 Ссылка на комментарий
dog19601 1 414 Опубликовано 13 Декабря 2020 Поделиться Опубликовано 13 Декабря 2020 @Vier_E, конечно всё это хорошо, но есть маленькое но... Моды камрады делают на голом энтузиазме, не один день, даже не один месяц. Что то ещё от них просить как то язык не поворачивается. Мне тоже не всё в моде нравится, но что выросло, то выросло, пообщаемся промеж себя, разберёмся как нибудь гуртом . 1 2 Ссылка на комментарий
Vier_E 37 Опубликовано 16 Декабря 2020 Поделиться Опубликовано 16 Декабря 2020 Так, вылет на Лиманске в недострое близ выхода с Госпиталя (там, где неписи сквозь контейнеры ходят, стреляют и гранаты кидают). На высотке монолитовец, я его начал обстреливать одиночными, он ко мне поворачивается и Скрытый текст FATAL ERROR [error]Expression : FATAL ERROR [error]Function : CObjectList::net_Register [error]File : d:\_work\forks\ogsr-engine\ogsr_engine\xr_3da\xr_object_list.cpp [error]Line : 220 [error]Description : physic_destroyable_object ID[873] already registered [16.12.20 20:55:40.644] ***************************[ScriptCrashHandler]********************************** [16.12.20 20:55:40.644] stack traceback: [16.12.20 20:55:40.644] ********************************************************************************* [16.12.20 20:55:40.644] ******************************************************************************** [16.12.20 20:55:40.644] !![LogStackTrace] Thread: [UNKNOWN] [16.12.20 20:55:40.826] !!stack trace: ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrCore.dll], AddrPC.Offset: [000007FEF3DE3E48], Fun: [CTimerBase::getElapsedTime()] + [1516 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrCore.dll], AddrPC.Offset: [000007FEF3E0A449], Fun: [LogStackTrace()] + [73 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrCore.dll], AddrPC.Offset: [000007FEF3E0A28A], Fun: [xrDebug::backend()] + [174 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrCore.dll], AddrPC.Offset: [000007FEF3E0A1C7], Fun: [xrDebug::fatal()] + [131 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F4FFA14], Fun: [CObjectList::net_Register()] + [212 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrGame.dll], AddrPC.Offset: [000007FEED53AF2D] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrGame.dll], AddrPC.Offset: [000007FEED545075] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrGame.dll], AddrPC.Offset: [000007FEED54A8CF] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrGame.dll], AddrPC.Offset: [000007FEED5493D4] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrGame.dll], AddrPC.Offset: [000007FEED4ED2D4] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrGame.dll], AddrPC.Offset: [000007FEED4ECFF9] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrGame.dll], AddrPC.Offset: [000007FEED4E542D] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrGame.dll], AddrPC.Offset: [000007FEED4E4EE6] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F52C19C], Fun: [CLoadScreenRenderer::OnRender()] + [632 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F52B1A4], Fun: [CRenderDevice::FrameMove()] + [292 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F52B48F], Fun: [CRenderDevice::on_idle()] + [223 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F52BC76], Fun: [CRenderDevice::message_loop()] + [98 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F52B292], Fun: [CRenderDevice::Run()] + [182 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F4EE684], Fun: [CApplication::DestroyLoadingScreen()] + [6144 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F4EE9FA], Fun: [CApplication::DestroyLoadingScreen()] + [7030 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F4EC0A5], Fun: [Skin4W()] + [1969 byte(s)] ! Module: [F:\Spl\STALKER_Ars70\bin_x64\xrEngine.exe], AddrPC.Offset: [000000013F54E80A], Fun: [CPerlinNoise3D::Get()] + [42414 byte(s)] ! Module: [C:\Windows\system32\kernel32.dll], AddrPC.Offset: [00000000776A59ED], Fun: [BaseThreadInitThunk()] + [13 byte(s)] ! Module: [C:\Windows\SYSTEM32\ntdll.dll], AddrPC.Offset: [00000000777DC521], Fun: [RtlUserThreadStart()] + [33 byte(s)] [16.12.20 20:55:40.826] ******************************************************************************** [16.12.20 20:56:01.528] --Saved dump file to [f:\spl\stalker_ars70\appdata\logs\xray_vier_12-16-20_20-56-00.mdmp] Речь про какой-то разрушаемый объект, но попадал я только по чуваку, так как с оптики и одиночными, да и результаты попаданий видел. @lexa.3012, я о том, что в скачиваемом архиве с модом хорошо бы ридми с описанием делать. Мало ли какими путями к человеку сие попадает, а так он хоть через десять лет будет понимать, что это за штука и чего от неё ждать. Ссылка на комментарий
Black_Raven_03 29 Опубликовано 17 Декабря 2020 Поделиться Опубликовано 17 Декабря 2020 @Vier_E, судя по твоему логу и таким же ошибкам в НА5 это коробка или металлическая баррикада (видимо, пуля прошла по бронику монолитовца по касательной и...) А по ридми: если в архиве несколько правок (как у WASP'а) ридми действительно становится необходим (тот же WASP в пример), а если в архиве единственный файл фонарика light_night.ltx, то на кой там ридми - раздуть архив?! Скрытый текст AMD FX-8100 (Bulldozer) , 16GB DDR3-1600, AFOX GeForce GTX1050Ti и нормально сталкерим в НА5.1, НА7, OGSE-0693, OGSR, НС2016, OLR, OFFLIFE, CoC, LADC, CoP Gunslinger, ShoC GA, Legend Return, Anomaly, CS OGSM! Мозг состоит на 80 процентов из жидкости, и мало того, что она тормозная, так многим еще конкретно не долили...@Denikius136 Ссылка на комментарий
MaxOne 253 Опубликовано 17 Декабря 2020 Поделиться Опубликовано 17 Декабря 2020 @Black_Raven_03, ну фонарики тоже разные бывают. Поэтому в таком случае нужен желательно не ридми, а скриншот в тёмное время суток или в тёмном помещении с включённым фонариком. Ссылка на комментарий
Vier_E 37 Опубликовано 18 Декабря 2020 Поделиться Опубликовано 18 Декабря 2020 @Black_Raven_03, да, там он сидит впритык к коробкам и ящикам. Видимо вылет рандомный, так как после я все эти предметы специально разломал, но вылета не получил. Ссылка на комментарий
Vier_E 37 Опубликовано 20 Декабря 2020 Поделиться Опубликовано 20 Декабря 2020 Вот ещё проблемка: There are no sounds in sound collection "characters_voice\human_03\monolith\(null)" with internal type 19 (sound_script = 23) Вот это в логе спамит в режиме нон-стоп на некоторых локах. В итоге через пару часов игра просто начинает тормозить, а при выходе получаем лог-файл размером около 10 гигов. При этом нужные каталоги есть, там же есть файлики звуковые. Вопрос: как узнать на что оно конкретно жалуется и какой sjund_script ковырять? Или мож есть какие-то файлы, которые надо в геймдату добавить? 1 Ссылка на комментарий
Black_Raven_03 29 Опубликовано 20 Декабря 2020 Поделиться Опубликовано 20 Декабря 2020 (изменено) 18 минут назад, Vier_E сказал: There are no sounds in sound collection "characters_voice\human_03\monolith\(null)" with internal type 19 (sound_script = 23) Вот это в логе спамит в режиме нон-стоп на некоторых локах. В итоге через пару часов игра просто начинает тормозить, а при выходе получаем лог-файл размером около 10 гигов. ругается он на отсутствие файла привязанного в конфиге НеПиСя (монолитовцев), можно в файле "gamedata\configs\creatures\stalkers\m_stalker_monolit.ltx" в строках на sound_ посмотреть на которые ogg-хи ссылается и, если звуков в нет закомментить (символом ";" после "="), чтобы не пытался обратиться Изменено 20 Декабря 2020 пользователем Black_Raven_03 1 Скрытый текст AMD FX-8100 (Bulldozer) , 16GB DDR3-1600, AFOX GeForce GTX1050Ti и нормально сталкерим в НА5.1, НА7, OGSE-0693, OGSR, НС2016, OLR, OFFLIFE, CoC, LADC, CoP Gunslinger, ShoC GA, Legend Return, Anomaly, CS OGSM! Мозг состоит на 80 процентов из жидкости, и мало того, что она тормозная, так многим еще конкретно не долили...@Denikius136 Ссылка на комментарий
Vier_E 37 Опубликовано 20 Декабря 2020 Поделиться Опубликовано 20 Декабря 2020 @Black_Raven_03, благодарю. Там действительно были пустые строки, хотя нужные каталоги со звуками есть. Но вот конфигов женских персонажей не встретил в этом каталоге. Они где-то отдельно лежат, не в курсе? Ну и не химерами едиными, однако: Скрытый текст FATAL ERROR [error]Expression : FATAL ERROR [error]Function : CScriptGameObject::bone_position [error]File : d:\_work\forks\ogsr-engine\ogsr_engine\xrgame\script_game_object.cpp [error]Line : 347 [error]Description : model doesn't have bone [bip01_spine] for section [gigant_strong] [20.12.20 16:03:18.362] ***************************[ScriptCrashHandler]********************************** [20.12.20 16:03:18.362] stack traceback: [C]: in function 'bone_position' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:905: in function 'check_npc_on_fire_line' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:868: in function 'check_objects' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:652: in function '_execute' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:573: in function <f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:569> [20.12.20 16:03:18.362] Locals: [20.12.20 16:03:18.362] userdata (*temporary) : (game_object): 00000000DE0737D0 [20.12.20 16:03:18.362] string (*temporary) : bip01_spine [20.12.20 16:03:18.362] End [20.12.20 16:03:18.362] Locals: [20.12.20 16:03:18.362] Userdata: self [20.12.20 16:03:18.362] boolean self.firing_actor : false [20.12.20 16:03:18.362] Table: self.st [20.12.20 16:03:18.362] userdata self.st.ini : (ini_file): 00000000E3DCB3A0 [20.12.20 16:03:18.362] string self.st.scheme : alternate_combat [20.12.20 16:03:18.362] userdata self.st.npc : (game_object): 00000000DE6F8FD0 [20.12.20 16:03:18.362] boolean self.st.enabled : true [20.12.20 16:03:18.362] boolean self.st.ready_to_grenade : false [20.12.20 16:03:18.362] string self.st.section : logic [20.12.20 16:03:18.362] boolean self.can_fire : false [20.12.20 16:03:18.362] Table: self.objects [20.12.20 16:03:18.363] table self.objects.0 : [...] [20.12.20 16:03:18.363] ********************************************************************************* [20.12.20 16:03:18.363] [print_output([CScriptEngine::lua_pcall_failed])] SCRIPT RUNTIME ERROR: invalid key to 'next' stack traceback: [C]: at 0x07feed3afdc4 [C]: in function 'bone_position' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:905: in function 'check_npc_on_fire_line' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:868: in function 'check_objects' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:652: in function '_execute' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:573: in function <f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:569> [20.12.20 16:03:18.363] ********************************************************************************* [20.12.20 16:03:18.363] FATAL ERROR [error]Expression : FATAL ERROR [error]Function : CScriptEngine::lua_pcall_failed [error]File : d:\_work\forks\ogsr-engine\ogsr_engine\common_ai\script_engine.cpp [error]Line : 52 [error]Description : [CScriptEngine::lua_pcall_failed]: invalid key to 'next' [20.12.20 16:03:18.363] ***************************[ScriptCrashHandler]********************************** [20.12.20 16:03:18.363] stack traceback: [C]: at 0x07feed3afdc4 [C]: in function 'bone_position' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:905: in function 'check_npc_on_fire_line' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:868: in function 'check_objects' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:652: in function '_execute' f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:573: in function <f:\spl\stalker_ars70\gamedata\scripts\xrs_battle_ai.script:569> [20.12.20 16:03:18.363] ********************************************************************************* [20.12.20 16:03:18.363] ******************************************************************************** Я только не понял, что за вторая ошибка по 52 строке? Какая кнопка "Next"? Ссылка на комментарий
Zander_driver 10 333 Опубликовано 20 Декабря 2020 Поделиться Опубликовано 20 Декабря 2020 Только что, Vier_E сказал: не химерами едиными Весело, однако... у псевдогигантов, ЕМНИП, такой кости и в стандартном-то скелете, быть не должно. Не предусмотрено. Только что, Vier_E сказал: invalid key to 'next' OGSR-движок на кучу разнообразных скриптовых "неправильных ситуаций" так пишет. Ни с какой кнопкой next это не связано, просто такая запись лога. Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на 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. Ссылка на комментарий
Vier_E 37 Опубликовано 20 Декабря 2020 Поделиться Опубликовано 20 Декабря 2020 Более того, ни в пятой, ни в шестой частях глюков с псевдычами не было. Вопрос такой - как быть, если это место никак не обойти, а попасть по квесту очень надо? Только перезаход на локу? Ссылка на комментарий
Zander_driver 10 333 Опубликовано 20 Декабря 2020 Поделиться Опубликовано 20 Декабря 2020 Только что, Vier_E сказал: если это место никак не обойти, а попасть по квесту очень надо? Только перезаход на локу? А это на входе на локацию произошло? Или где-то в процессе брожения. Если совсем примитивно, то можно наверное закомментировать весь тот кусок, где он запрашивает кости не проверяя их наличия. Большой беды (типа вылета) не будет. А если более по нормальному, то скрипты надо править, во всех местах где работа с костями идет - ставить проверки на существование нужной кости. Но, это морока которой я как то не горю желанием заниматься) Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на 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. Ссылка на комментарий
Vier_E 37 Опубликовано 20 Декабря 2020 Поделиться Опубликовано 20 Декабря 2020 (изменено) @Zander_driver, Это место на Юпитере за мостом, где поезд. Я пошёл к гопникам за доками Х8, но с какой стороны ни подходи, видимо псевдычи попадают в онлайн и происходит вылет (обычно в один момент со звуками стрельбы). Должно быть, происходит как с химерами - генерится монстр и группа неписей, которые начинают с монстром воевать. И вот интересно, до перехода в онлайн в памяти лежит один и тот же монстр, или он случайно выбирается из вариантов в момент генерации? Хотя с химерами помогло только длительное ожидание (более суток) и подход к Барьеру с другой стороны. Вот кусок вылетающего скрипта с костями: Скрытый текст function action_altcombat:check_npc_on_fire_line( obj, weapon, be ) if not IsRPG( weapon ) then return false end local npc = self.object local npc_pos = npc:bone_position( "bip01_spine" ) local be_pos = be:bone_position( "bip01_spine" ) local friend_pos = obj:bone_position( "bip01_spine" ) return ( be_pos:distance_to( friend_pos ) < 25 or be_pos:distance_to( npc_pos ) < 25 or friend_pos:distance_to( npc_pos ) < 25 ) end Комментить каждую строку? Или это проверка неписей на линии для гранатомётчиков? Ну и в продолжение темы. Количество пробелов перед именем кости как-то влияет на результат обработки строки? Я во второй строке убрал лишний пробел, ну и пока вылетов нет, хотя возможно это потому, что группа охотников с рпг успевает отойти от места раньше, чем замечает монстряк (не знаю почему так стало выходить, но ни стрельбы, ни вылетов пока). В общем, как я понял, глючит именно часть, отвечающая за логику неписи с РПГ. Итак прежде, чем шмальнуть, непись с РПГ проверяет наличие дружественных унитов на линии до цели. Конечной точкой этой линии является эта самая кость. Если на линии до кости, а также в районе <25 (каких-то единиц) нет своих, то стреляет. Если лочить, то два участка в скрипте, так как выше есть функция (или что там), которая проверяет, вооружена ли непись РПГ, и вызывает функцию проверки, если ответ истинный. Скрытый текст -- Залочил эту тчасть, так как она требует вызова глючной части с костями. -- if enemy and bw and IsRPG( bw ) then -- for _, t in ipairs({ game_object.friend, game_object.neutral }) do -- for k, v in pairs( self.objects[ t ] ) do -- if self:check_npc_on_fire_line( v, bw, enemy ) then -- self.can_fire = false -- return -- end -- end -- end -- end if bw and bw:is_weapon() then self.can_fire = bw:get_weapon():ready_to_kill() else self.can_fire = false end end function action_altcombat:check_single_object( obj ) if not obj then return end if not ( obj:is_actor() or obj:is_custom_monster() ) then return end local npc = self.object if obj:alive() and npc:id() ~= obj:id() then if ( obj:is_actor() or obj:is_stalker() ) and primary_target[ npc:id() ] ~= obj:id() then self.objects[ npc:relation( obj ) ][ obj:id() ] = obj elseif obj:is_monster() then self.objects.monsters[ obj:id() ] = obj end end end --Глючная часть с костями. --function action_altcombat:check_npc_on_fire_line( obj, weapon, be ) -- if not IsRPG( weapon ) then return false end -- local npc = self.object -- local npc_pos = npc:bone_position( "bip01_spine" ) -- local be_pos = be:bone_position( "bip01_spine" ) -- local friend_pos = obj:bone_position( "bip01_spine" ) -- return ( -- be_pos:distance_to( friend_pos ) < 25 -- or be_pos:distance_to( npc_pos ) < 25 -- or friend_pos:distance_to( npc_pos ) < 25 -- ) --end В таком виде вылетов больше не ловил. Если лочить только вторую часть, то будет вылет по причине того, что функция вызвана, а её нихрена нет. С закомментированными строками неписи стреляют из РПГ, но часто мочат заодно и своих. А ещё чисто риторический вопрос. Ну ладно группировки и вояки, но зачем одиночному охотнику РПГ, я так и не понял. На кого он собрался с ним охотиццо? На всякий случай прилагаю сам файл скрипта: может он кому-то пригодиццо, а мож кто доковырять и поправить решит.Скрипт Изменено 20 Декабря 2020 пользователем Vier_E Дополнение 1 Ссылка на комментарий
Vier_E 37 Опубликовано 21 Декабря 2020 Поделиться Опубликовано 21 Декабря 2020 @ma-alur, проблема только в том, что как раз на Юпитер-то и не попасть. А стандартный переход - как раз среди монолитовцев появляешься. Ну а так теперь хоть к Сидору на кордон за 5К добраться можно. Ссылка на комментарий
Black_Raven_03 29 Опубликовано 23 Декабря 2020 Поделиться Опубликовано 23 Декабря 2020 (изменено) 20.12.2020 в 11:30, Vier_E сказал: Комментить каждую строку? Или это проверка неписей на линии для гранатомётчиков? Ну и в продолжение темы. Количество пробелов перед именем кости как-то влияет на результат обработки строки? Я во второй строке убрал лишний пробел, ну и пока вылетов нет, хотя возможно это потому, что группа охотников с рпг успевает отойти от места раньше, чем замечает монстряк (не знаю почему так стало выходить, но ни стрельбы, ни вылетов пока). В общем, как я понял, глючит именно часть, отвечающая за логику неписи с РПГ. Итак прежде, чем шмальнуть, непись с РПГ проверяет наличие дружественных унитов на линии до цели. Конечной точкой этой линии является эта самая кость. Если на линии до кости, а также в районе <25 (каких-то единиц) нет своих, то стреляет. Если лочить, то два участка в скрипте, так как выше есть функция (или что там), которая проверяет, вооружена ли непись РПГ, и вызывает функцию проверки, если ответ истинный. Весь кусок скрипта с обеими участками: (Показать) -- Залочил эту тчасть, так как она требует вызова глючной части с костями. -- if enemy and bw and IsRPG( bw ) then -- for _, t in ipairs({ game_object.friend, game_object.neutral }) do -- for k, v in pairs( self.objects[ t ] ) do -- if self:check_npc_on_fire_line( v, bw, enemy ) then -- self.can_fire = false -- return -- end -- end -- end -- end if bw and bw:is_weapon() then self.can_fire = bw:get_weapon():ready_to_kill() else self.can_fire = false end end function action_altcombat:check_single_object( obj ) if not obj then return end if not ( obj:is_actor() or obj:is_custom_monster() ) then return end local npc = self.object if obj:alive() and npc:id() ~= obj:id() then if ( obj:is_actor() or obj:is_stalker() ) and primary_target[ npc:id() ] ~= obj:id() then self.objects[ npc:relation( obj ) ][ obj:id() ] = obj elseif obj:is_monster() then self.objects.monsters[ obj:id() ] = obj end end end --Глючная часть с костями. --function action_altcombat:check_npc_on_fire_line( obj, weapon, be ) -- if not IsRPG( weapon ) then return false end -- local npc = self.object -- local npc_pos = npc:bone_position( "bip01_spine" ) -- local be_pos = be:bone_position( "bip01_spine" ) -- local friend_pos = obj:bone_position( "bip01_spine" ) -- return ( -- be_pos:distance_to( friend_pos ) < 25 -- or be_pos:distance_to( npc_pos ) < 25 -- or friend_pos:distance_to( npc_pos ) < 25 -- ) --end -- Залочил эту тчасть, так как она требует вызова глючной части с костями. -- if enemy and bw and IsRPG( bw ) then -- for _, t in ipairs({ game_object.friend, game_object.neutral }) do -- for k, v in pairs( self.objects[ t ] ) do -- if self:check_npc_on_fire_line( v, bw, enemy ) then -- self.can_fire = false -- return -- end -- end -- end -- end if bw and bw:is_weapon() then self.can_fire = bw:get_weapon():ready_to_kill() else self.can_fire = false end end function action_altcombat:check_single_object( obj ) if not obj then return end if not ( obj:is_actor() or obj:is_custom_monster() ) then return end local npc = self.object if obj:alive() and npc:id() ~= obj:id() then if ( obj:is_actor() or obj:is_stalker() ) and primary_target[ npc:id() ] ~= obj:id() then self.objects[ npc:relation( obj ) ][ obj:id() ] = obj elseif obj:is_monster() then self.objects.monsters[ obj:id() ] = obj end end end --Глючная часть с костями. --function action_altcombat:check_npc_on_fire_line( obj, weapon, be ) -- if not IsRPG( weapon ) then return false end -- local npc = self.object -- local npc_pos = npc:bone_position( "bip01_spine" ) -- local be_pos = be:bone_position( "bip01_spine" ) -- local friend_pos = obj:bone_position( "bip01_spine" ) -- return ( -- be_pos:distance_to( friend_pos ) < 25 -- or be_pos:distance_to( npc_pos ) < 25 -- or friend_pos:distance_to( npc_pos ) < 25 -- ) --end В таком виде вылетов больше не ловил. Если лочить только вторую часть, то будет вылет по причине того, что функция вызвана, а её нихрена нет. С закомментированными строками неписи стреляют из РПГ, но часто мочат заодно и своих. А ещё чисто риторический вопрос. Ну ладно группировки и вояки, но зачем одиночному охотнику РПГ, я так и не понял. На кого он собрался с ним охотиццо? На всякий случай прилагаю сам файл скрипта: может он кому-то пригодиццо, а мож кто доковырять и поправить решит.Скрипт Предлагаю после self.object добавить строку отсеивающую всех мутантов (как будто они могут быть союзниками..., ну, Болотный Док, исключение) , к примеру по префиксу ИД, тогда эффективность скрипта будет удовлетворительной и задумка с самой проверкой не пропадёт, а то сам сижу на движковой и каждый раз ловлю палм-фейс от гранатомётчиков старательно расстреливающих своих же на ЧАЭС-2 По собранной по моим прохождениям-брожениям статистике гранатомётчик не в онлайне умирает в отряде (ЧН, ЗП) последним, а при генерации без отряда (ТЧ) пытается прибиться к "своим" (друзья на локе или соседней, потом нейтралы на локе) Изменено 23 Декабря 2020 пользователем Black_Raven_03 дополнение Добавлено Опричник, 23 Декабря 2020 Изучите "Правила цитирования". https://www.amk-team.ru/forum/topic/13514-obyavleniya/ Скрытый текст AMD FX-8100 (Bulldozer) , 16GB DDR3-1600, AFOX GeForce GTX1050Ti и нормально сталкерим в НА5.1, НА7, OGSE-0693, OGSR, НС2016, OLR, OFFLIFE, CoC, LADC, CoP Gunslinger, ShoC GA, Legend Return, Anomaly, CS OGSM! Мозг состоит на 80 процентов из жидкости, и мало того, что она тормозная, так многим еще конкретно не долили...@Denikius136 Ссылка на комментарий
Vier_E 37 Опубликовано 30 Декабря 2020 Поделиться Опубликовано 30 Декабря 2020 (изменено) @Black_Raven_03 а шо, в НА есть а-лайф? Тогда он какой-то странный. Ротацию неписей по локам не наблюдаю, даже в онлайне они не особо двигаются. Более того, тут встретил такую дикость, что непись после смены группировки свой прежний гулаг тупо не покидает. И получается, что при следующем спавне эту непись тупо грохают бывшие соратники. После АМК сие выглядит реально дико. Ну и глянув на всё это, я пришёл к выводу, что а-лайфа здесь просто нема. Изменено 30 Декабря 2020 пользователем Vier_E 1 Ссылка на комментарий
Black_Raven_03 29 Опубликовано 30 Декабря 2020 Поделиться Опубликовано 30 Декабря 2020 (изменено) 5 часов назад, Vier_E сказал(а): @Black_Raven_03 а шо, в НА есть а-лайф? А его кто-то когда-то пытался вырезать?! или ты не читал тему по ковырянию движка? А-лайф это поддвижок (одна из длл-ок в бин), занимающаяся "симуляцией" - обработкой ИИ. И если офлайн А-лайф частенько отключают в модах (сразу вспоминается ОЛР, где он хоть и работал, но так как было задумано по диздокам...), то отключение онлайн А-лайфа приведёт к зависшим Т-образным НеПиСям... Изменено 30 Декабря 2020 пользователем Black_Raven_03 правка Скрытый текст AMD FX-8100 (Bulldozer) , 16GB DDR3-1600, AFOX GeForce GTX1050Ti и нормально сталкерим в НА5.1, НА7, OGSE-0693, OGSR, НС2016, OLR, OFFLIFE, CoC, LADC, CoP Gunslinger, ShoC GA, Legend Return, Anomaly, CS OGSM! Мозг состоит на 80 процентов из жидкости, и мало того, что она тормозная, так многим еще конкретно не долили...@Denikius136 Ссылка на комментарий
MarsiK 97 Опубликовано 10 Января 2021 Поделиться Опубликовано 10 Января 2021 Господа, иконками под НА7 никто не поделится? Не могу распаковать как обычно архивы мода. Уж больно низкого разрешения иконки, на широкоформатных мониторах глаза режет. Хочу поменять под себя. 1 "Если вы заметили, что вы на стороне большинства, это верный признак того, что пора меняться." (Марк Твен) Ссылка на комментарий
dog19601 1 414 Опубликовано 11 Января 2021 Поделиться Опубликовано 11 Января 2021 @MarsiK я конечно дико извиняюсь, ты хоть немного представляешь какой объём работы надо сделать, что бы перевести ВСЁ оружие на иконки высокого разрешения? Распаковка, по сравнению с этим, детский лепет. 1 Ссылка на комментарий
MarsiK 97 Опубликовано 11 Января 2021 Поделиться Опубликовано 11 Января 2021 @dog19601 многие модели, используемые в НА7, достаточно распространены в других модах, взять даже твои иконки из OGSR, там точно повыше разрешение должно быть у иконок. А вообще порою, может что-то удастся улучшить. Цели исправить всё нет, тупо неоткуда их брать. Файликом иконок поделишься? "Если вы заметили, что вы на стороне большинства, это верный признак того, что пора меняться." (Марк Твен) Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти