Overf1rst 1 523 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Зов Припяти. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 19 10 1 1 2 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
стрелок_2009 7 Опубликовано 13 февраля Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ...all of pripyat\gamedata\scripts\smart_terrain.script:95: attempt to index local 'obj' (a nil value) играипри запуске сохранения вылетает с этим логом Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
mic900 7 Опубликовано 13 февраля стрелок_2009 , возможно что-то со спавном намудрил. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
fenit 11 Опубликовано 13 февраля Помогите пожалуйста, при телепортации неписей через: =teleport_npc(way_walk:way_look) он не смотрит на way_look, а просто куда-то в сторону, при этом path_walk и path_look прописаны корректно. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 1 041 Опубликовано 13 февраля (изменено) fenit Данная функция не подразумевает наличие точки look. Pavel2000 В моде Связь Времен есть скрипт belt_items.script с его помощью это можно проанализировать. Изменено 13 февраля пользователем denis2000 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
стрелок_2009 7 Опубликовано 13 февраля В 13.02.2025 в 17:37, mic900 сказал: стрелок_2009 , возможно что-то со спавном намудрил. А в каком файле это чинить знаешь? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
fenit 11 Опубликовано 13 февраля В 13.02.2025 в 19:26, denis2000 сказал: fenit Данная функция не подразумевает наличие точки look. Ладно, я просто видел, что кто то использовал её ещё и передавая look в аргументах, но видимо то была ошибка. Дополнено 1 минуту спустя В 13.02.2025 в 19:55, стрелок_2009 сказал: А в каком файле это чинить знаешь? Ищи где накосячил в логике смартов и всем что с ними связано, ибо в ошибке нет никакой конкретики по поводу файла или хоть какой нибудь ещё полезной информации, так что никто тебе ничего конкретного сказать не сможет. 1 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 1 041 Опубликовано 13 февраля fenit В оригинале данная функция используется, чтобы быстро подкинуть НПС до места работы (а там уж по логике будет смотреть куда надо) и не предназначена для тонких настроек положения НПС. Но чисто теоретически можно задать вторую точку, подсчитать вектор направления по этим точкам и повернуть НПС на этот вектор методом o_torso. Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
fenit 11 Опубликовано 13 февраля В 13.02.2025 в 20:16, denis2000 сказал: fenit В оригинале данная функция используется, чтобы быстро подкинуть НПС до места работы Я вот для этого и использовал, однако он не смотрел в нужную точку, а на север, так как, как я понял, анимация, которую я использовал (jup_b41_novikov_stand) сделана как-то толи костыльно, толи ещё как, но повернуться она у меня почему-то не может, а вот условная анимация wait уже нормально его поворачивает. Есть какие-то варианты её пофиксить? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 1 041 Опубликовано 14 февраля fenit А в чем проблема взять и сравнить анимационные состояния? Наверняка там есть разница. Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 124 Опубликовано 14 февраля (изменено) В 13.02.2025 в 20:37, fenit сказал: Есть какие-то варианты её пофиксить? Если анимка используется не в анимпоинте - это нормальная реакция. В таких анимках крутится только верхняя часть туловища. А метод is_body_turning всегда возвращает false. Попробуй убрать moving = true у этой анимации в state_mgr_scenario.script. А лучше создай новую с тем же содержанием например с именем jup_b41_novikov_stand_with_turn, и убери то что я указал Изменено 14 февраля пользователем Mass Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Policai 1 344 Опубликовано 14 февраля (изменено) Народ! Сори что туплю, не могу найти ошибку в логике... Задача: После перехода оказываюсь в спейсе и он телепортирует актора на нужные координаты. Переход проходит, появляется надпись нажмите любую клавишу, нажимаю и сразу ловлю вылет на рабочий стол. Вылет (Показать контент) [print_output()] SCRIPT RUNTIME ERROR: ....k.e.r. dead city final\gamedata\scripts\xr_logic.script:421: attempt to index a nil value stack traceback: [C]: in function '__index' ....k.e.r. dead city final\gamedata\scripts\xr_logic.script:421: in function 'activate_by_section' ....k.e.r. dead city final\gamedata\scripts\xr_logic.script:731: in function 'switch_to_section' ....k.e.r. dead city final\gamedata\scripts\xr_logic.script:795: in function 'try_switch_to_another_section' ...l.k.e.r. dead city final\gamedata\scripts\sr_idle.script:26: in function <...l.k.e.r. dead city final\gamedata\scripts\sr_idle.script:17> ....k.e.r. dead city final\gamedata\scripts\xr_logic.script:566: in function 'issue_event' ... dead city final\gamedata\scripts\bind_restrictor.script:94: in function <... dead city final\gamedata\scripts\bind_restrictor.script:80> ********************************************************************************* FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_pcall_failed [error]File : C:\xray\stcop_engine\src\xrServerEntities\script_engine.cpp [error]Line : 213 [error]Description : <no expression> [error]Arguments : LUA error: ....k.e.r. dead city final\gamedata\scripts\xr_logic.script:421: attempt to index a nil value Логика спейса такая: Логика (Показать контент) [logic] active = sr_idle@wait [sr_idle@wait] on_info = {+los_teleport_vozvrat_exit} sr_idle@teleport [sr_idle@teleport] on_info2 = { =actor_in_zone( drk_teleport_los_exit_sr )} sr_idle@vozvrat % =teleport_actor(drk_teleport_walk_noexit:drk_teleport_look_noexit) =run_postprocess(black:6006:true)% [sr_idle@vozvrat] on_info3 = { =actor_in_zone( drk_vozvrat_exit_sr )} sr_idle@wait % -los_teleport_vozvrat_exit % Что то совсем потерялся... Вылез из 3dмакса и подзабыл всё..((( Может косяк где то ДО перехода? Вот эта логика меня перекидывает в переход Логика 2 (Показать контент) [logic] active = sr_idle@wait [sr_idle@wait] on_info = {+drk_spawn_teleport_exit} sr_idle@vozvrat [sr_idle@vozvrat] on_info2 = { =actor_in_zone( los_vozvrat_sr ) +los_teleport_final_exit } sr_idle@wait % =teleport_actor(los_teleport_walk_exit:los_teleport_look_exit)% on_info3 = { =actor_in_zone( los_vozvrat_sr ) =actor_has_item(af_strelka) =actor_active_outfit( exo_ecolog_outfit:exo_ecolog_outfit )} sr_idle@wait % +los_teleport_done =teleport_actor(los_teleport_walk_exit:los_teleport_look_exit)% on_info4 = {=actor_in_zone( los_vozvrat_sr ) !actor_active_outfit( exo_ecolog_outfit:exo_ecolog_outfit )} sr_idle@teleport % =disable_ui% on_info5 = {=actor_in_zone( los_vozvrat_sr ) !actor_has_item(af_strelka)} sr_idle@teleport % =disable_ui% [sr_idle@teleport] on_game_timer = 50 | {=actor_in_zone( los_vozvrat_sr )} sr_idle@wait % =teleport_actor(los_teleport_walk_noexit:los_teleport_look_noexit) +los_teleport_vozvrat_exit =enable_ui =run_postprocess(black:6006:true) % Изменено 14 февраля пользователем Policai 1 Группа мода в VK Мод делался и тестировался на железе i5-11400, 32Гб ОЗУ, Radeon RX580 Разрешение 2560 х 1440. ВСЕ на максималке Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Prostomod 1 421 Опубликовано 14 февраля В 14.02.2025 в 14:25, Policai сказал: [sr_idle@wait] on_info = {+los_teleport_vozvrat_exit} sr_idle@teleport [sr_idle@teleport] on_info2 = { =actor_in_zone( drk_teleport_los_exit_sr )} sr_idle@vozvrat % =teleport_actor(drk_teleport_walk_noexit:drk_teleport_look_noexit) =run_postprocess(black:6006:true)% Вот в этом и других: ЕМНИП не надо нумерацию on_info в другой секции продолжать с предыдущей. Попробуй исправить так: логика (Показать контент) В 14.02.2025 в 14:25, Policai сказал: [logic] active = sr_idle@wait [sr_idle@wait] on_info = {+los_teleport_vozvrat_exit} sr_idle@teleport [sr_idle@teleport] on_info = { =actor_in_zone( drk_teleport_los_exit_sr )} sr_idle@vozvrat % =teleport_actor(drk_teleport_walk_noexit:drk_teleport_look_noexit) =run_postprocess(black:6006:true)% [sr_idle@vozvrat] on_info = { =actor_in_zone( drk_vozvrat_exit_sr )} sr_idle@wait % -los_teleport_vozvrat_exit % В 14.02.2025 в 14:25, Policai сказал: [logic] active = sr_idle@wait [sr_idle@wait] on_info = {+drk_spawn_teleport_exit} sr_idle@vozvrat [sr_idle@vozvrat] on_info = { =actor_in_zone( los_vozvrat_sr ) +los_teleport_final_exit } sr_idle@wait % =teleport_actor(los_teleport_walk_exit:los_teleport_look_exit)% on_info2 = { =actor_in_zone( los_vozvrat_sr ) =actor_has_item(af_strelka) =actor_active_outfit( exo_ecolog_outfit:exo_ecolog_outfit )} sr_idle@wait % +los_teleport_done =teleport_actor(los_teleport_walk_exit:los_teleport_look_exit)% on_info3 = {=actor_in_zone( los_vozvrat_sr ) !actor_active_outfit( exo_ecolog_outfit:exo_ecolog_outfit )} sr_idle@teleport % =disable_ui% on_info4 = {=actor_in_zone( los_vozvrat_sr ) !actor_has_item(af_strelka)} sr_idle@teleport % =disable_ui% [sr_idle@teleport] on_game_timer = 50 | {=actor_in_zone( los_vozvrat_sr )} sr_idle@wait % =teleport_actor(los_teleport_walk_noexit:los_teleport_look_noexit) +los_teleport_vozvrat_exit =enable_ui =run_postprocess(black:6006:true) % Если не поможет - скинь пж свой xr_logic.script, на оригинальном 421 строка - это вообще комментарий, т.е. без какого-либо кода. Мод в разработке - X-7: Эпицентр Дискорд мода - https://discord.gg/NjnUnKDD Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 124 Опубликовано 14 февраля Лог работоспособный? Если да! раскомментируй строчку printf("LOGIC[%s]: Object... в xr_logic activate_by_section Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Policai 1 344 Опубликовано 14 февраля (изменено) В 14.02.2025 в 14:49, Prostomod сказал: Вот в этом и других: ЕМНИП не надо нумерацию on_info в другой секции продолжать с предыдущей. Попробуй исправить так: Изначально так и было, это я уже потом начал нумерацию менять, не мог понять в чём косяк... Подозреваю что косяк может быть в предыдущих логиках... Там ситуация такая. При подборе арта, генерируется луч, потом на его конце, сначала партиклы отыгрывают разные, потом образуется телепорт. При входе в телепорт перекидывает на другую локацию, и там в спейсе условия, при разных условиях перекидывает в разные точки. Если условия совпали, то остаёшься на локе, если нет, тебя вышвыривает обратно... всё работает, кроме этой части, при возврате обратно вылет... Дополнено 10 минуты спустя В 14.02.2025 в 14:49, Prostomod сказал: на оригинальном 421 строка - это вообще комментарий, т.е. без какого-либо кода. Блин что за хрень... скрин 200 кб уже невозможно скинуть... допустимо только 20 кб... Вот кусок скрипта Тык (Показать контент) -- Загрузить оверрайды: db.storage[npc_id].overrides = cfg_get_overrides(ini, section, npc) -- Сбросить общие схемы: reset_generic_schemes_on_scheme_switch(npc, scheme, section) -- schemes[scheme] даст имя файла (модуля), в котором реализована схема -- _G[] даст указатель на неймспейс (таблицу) этого модуля local filename = schemes[scheme] if filename == nil then abort("xr_logic: scheme '%s' is not registered in modules.script", scheme) end --printf("_bp: calling module('%s')", filename) if not _G[filename] then abort("xr_logic: can't call %s.set_scheme() - a nil value", filename) end _G[filename].set_scheme(npc, ini, scheme, section, gulag_name) --printf("DEBUG: activate_by_section: scheme '%s' activated from section '%s'", scheme, section) db.storage[npc_id].active_section = section db.storage[npc_id].active_scheme = scheme if db.storage[npc_id].stype == modules.stype_stalker then -- чтобы избежать дальнейшего движения по пути при установке рестрикторов utils.send_to_nearest_accessible_vertex(npc, npc:level_vertex_id()) issue_event(npc, db.storage[npc_id][scheme], "activate_scheme", loading, npc) else issue_event(npc, db.storage[npc_id][scheme], "reset_scheme", loading, npc) end end Выделенная строка 421 Дополнено 27 минуты спустя В 14.02.2025 в 14:49, Mass сказал: Лог работоспособный? Если да! раскомментируй строчку printf("LOGIC[%s]: Object... в xr_logic activate_by_section Разкоментировал, но лог не изменился... По видимому надо новую игру начинать. чтоб изменения применились... Дополнено 39 минуты спустя Всё ребят, отбой, нашёл косяк. Как и предпологал, он в другой логике оказался, в том спейсе куда перекидывает дальше, забыл скобку поставить, закрыть тег... Просто вылет был мгновенный и я думал в этом спейсе выкидывает, а оказалось я уже всю цепочку пролетал до финиша... Убрал постпроцесс и успел заметить место где вылетает. Спасибо всем. Изменено 14 февраля пользователем Policai 1 Группа мода в VK Мод делался и тестировался на железе i5-11400, 32Гб ОЗУ, Radeon RX580 Разрешение 2560 х 1440. ВСЕ на максималке Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Prostomod 1 421 Опубликовано 14 февраля В 14.02.2025 в 15:08, Policai сказал: По видимому надо новую игру начинать. чтоб изменения применились... Хм... Если имеешь в виду для того, чтобы изменения в скрипте применились - то нет, НИ не нужна. А вот логика... Походу, вылет из-за того, что какая-то секция была активна, а ты изменил файл с логикой так, что эта секция из него исчезла. Отсюда и вылет. В таком случае - НИ должно помочь, но вообще нужно просто отгрузиться на момент, когда у проблемного объекта была активна секция логики, которая всё ещё присутствует в файле. Мод в разработке - X-7: Эпицентр Дискорд мода - https://discord.gg/NjnUnKDD Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Мабарин 0 Опубликовано 15 февраля где можно скачать зп без сюжета чтобы можно было работать с гемдатой ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
mirka 22 Опубликовано 15 февраля Мабарин https://www.playground.ru/stalker_call_of_pripyat/file/s_t_a_l_k_e_r_zov_pripyati_you_are_completely_free-923270 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Мабарин 0 Опубликовано 15 февраля В 15.02.2025 в 09:20, mirka сказал: Мабарин https://www.playground.ru/stalker_call_of_pripyat/file/s_t_a_l_k_e_r_zov_pripyati_you_are_completely_free-923270 а как с этим модом поменять имя гг? Дополнено 24 минуты спустя В 01.07.2020 в 22:30, Overf1rst сказал: Тема посвящена моддингу на платформе Зов Припяти. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. как выдать квест гг при старте ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Крим 889 Опубликовано 15 февраля Есть вопрос. Будет ли работать счетчик (inc_counter), если его начисление будет производится от смерти НПС в логике НПС соответственно, а уже подсчет счетчика будет производиться в рестрикторе? Бусти Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Pavel2000 72 Опубликовано 15 февраля Mass а почему нет, у нпс в секции on_death должно всё работать, но мне кажется что лучше делать как делали разрабы, и подсчёт и пополнение в рестрикторе Дополнено 3 минуты спустя В 15.02.2025 в 10:56, Мабарин сказал: а как с этим модом поменять имя гг? Ссылка Дополнено 11 минуты спустя В 15.02.2025 в 10:56, Мабарин сказал: как выдать квест гг при старте ? Ссылка «Если долго мучиться, что-нибудь получится»Охотник за артефактами Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Мабарин 0 Опубликовано 16 февраля как вырезать все доп квесты на затоне? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
RomaL23 3 Опубликовано 16 февраля есть у кого нибудь кордон из мода путь во мгле? для мода нужно Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 1 041 Опубликовано 16 февраля RomaL23 https://disk.yandex.ru/d/9XjqbgFyXJOqEA 1 1 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Pavel2000 72 Опубликовано 16 февраля в каком файле можно отредактировать высоту полёта ворон? Дополнено 7 минуты спустя upd:нашёл «Если долго мучиться, что-нибудь получится»Охотник за артефактами Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
стрелок_2009 7 Опубликовано 16 февраля (изменено) У меня тут проблема получилась Захотелось мне изменить карту в кпк на другую, в файле Game_level_single переместил локации (пока только оригинальные) захожу в игру и вижу что на карте кпк место положение актёра неправильное, поменял значение bound_recd в файле levels/имя локи/ и теперь на карте в кпк все ровно стоит а вот мини карта уехала в сторону Что делать? Изменено 16 февраля пользователем стрелок_2009 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты