Overf1rst 1 503 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Зов Припяти. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 19 9 1 1 2 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 24 мая, 2022 (изменено) denis2000 Спойлер ; cse_visual properties visual_name = dynamics\devices\dev_vodka\dev_vodka ; cse_ph_skeleton properties ; cse_alife_object_physic properties physic_type = 0x3 mass = 10 ;fixed_bones = wpn_body --- вот здесь поправил. upd:num_items = 0xe6 Дополнено 3 минуты спустя 3 минуты назад, NitWaifu сказал: Мне всё больше начинает Все начинали с ошибок, но после все получится. Дополнено 10 минуты спустя denis2000 В другом проекте имею вот это. Спойлер Expression : assertion failed Function : anim_script_callback::play_cycle File : D:\prog_repository\sources\trunk\xrGame\animation_script_callback.cpp Line : 31 Description : m.valid( ) Хотя сам мод отлично работает, но при пересадке его на ганс такая вот бяка, проект не удалил, а отложил до решения проблемы. Изменено 24 мая, 2022 пользователем Mervin62 Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 978 Опубликовано 24 мая, 2022 (изменено) NitWaifu Приведенный вылет означает, что назначенный смарт для спавна не существует. Это опять проблема all.spawn в котором нет необходимых объектов. Напомните, что вы хотели сделать в целом. Зачем редактировали АИ-сетку и что добавляли в спавн? 1 час назад, Mervin62 сказал: такая вот была ошибка Интересно, что ошибка соответствует оригинальному PhysicsShell.cpp и не совпадает с аналогом из гитхаба GunsXRay Ну да ладно, может версии сборки движка. 1 час назад, Mervin62 сказал: при пересадке его на ганс такая вот бяка А этот вылет говорит о том, что анимация объекта которую положено играть в цикле отсутствует. Вы как человек работающий с ганслингером не подскажите метод которым адаптируете спавн? Может проблема не в том чего нет, а в том что движек не корректно считывает all.spawn? Изменено 24 мая, 2022 пользователем denis2000 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Neptun 885 Опубликовано 24 мая, 2022 Есть эксперты по скриптам SGM? Спойлер Перенёс из SGM систему сохранения данных, всё работает, как надо, возникла только одна проблемка: при переходе на локацию игра создаёт autosave, система SGM должна перехватить этот сейв, и она это делает, но сохраняет как quicksave и даже перезаписывает на уже существующий, что может приводить к некоторым ошибкам. В оригинале SGM autosave перехватывается. Не понимаю, что я упустил, из-за чего именно эта часть срабатывает некорректно. Уж через поиск по всем скриптам прошерстил и так, и эдак. Мне бы наводочку, в какой скрипт заглядывать. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 24 мая, 2022 1 час назад, denis2000 сказал: метод которым адаптируете спавн А не какого-либо метода нет, решаю проблемы по мере их поступления. 1 час назад, denis2000 сказал: А этот вылет говорит о том, что анимация объекта Я предполагаю, что Ганс не понимает некоторых анимаций или команд в логике какого-то объекта, а вот какого это предстоит выявить. Дополнено 20 минуты спустя denis2000 Или все же опять спавн ковырять и искать тот объект с анимацией.? Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
NitWaifu 0 Опубликовано 24 мая, 2022 1 час назад, denis2000 сказал: Напомните, что вы хотели сделать в целом Я хочу сделать свой мод, история которого будет разворачиваться на Припяти, поэтому мне пришлось немного посидеть в SDK, чтобы убрать все лишние спавны и т.д. и т.п., а затем добавил уже ГГ. На форумах читал, как правильно работать с SDK, и казалось бы, должно всё работать, но нет. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 24 мая, 2022 (изменено) 18 минут назад, NitWaifu сказал: чтобы убрать все лишние спавны А в ресурсах игры убрал? Дополнено 6 минуты спустя NitWaifu ты допустим убрал смарт, а обращение к нему для спавна симуляционного сквада осталось, вот и результат Изменено 24 мая, 2022 пользователем Mervin62 Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Apka 77 Опубликовано 24 мая, 2022 (изменено) Может кто-нибудь подсказать по функционалу скрытия игрового худа? Спойлер Собственно, проблема возникла при адаптации Ганслингера на СВ: В паутине лжи. И вот в чем она заключается: Спойлер Как видно из скринов, при зуммировании ПДА рамка миникарты не пропадает, хотя в диалогах все работает, как и должно. Данная рамка в модификации заложена в отдельном файле, в ui_actor_hint_wnd.xml на нее обращаются подобным образом: Спойлер <file name="ui\ui_actor_hint_wnd_minimaps"> <texture id="ui_inGame2_Patroni_HUD_main_window" x="1280" y="251" width="422" height="240" /> <texture id="ui_inGame2_quickslot_background" x="844" y="52" width="164" height="84" /> <texture id="ui_inGame2_Radar_main_window" x="30" y="0" width="496" height="456" /> <texture id="ui_inGame2_Radar_main_window3x4" x="30" y="1536" width="496" height="456" /> <texture id="ui_inGame2_Radar_main_window15x9" x="798" y="1536" width="498" height="456" /> <texture id="ui_inGame2_Radar_main_window16x10" x="30" y="768" width="496" height="456" /> <texture id="ui_inGame2_Radar_main_window16x7.5" x="798" y="768" width="500" height="458" /> </file> Собственно, я не могу понять, как добиться скрытия этой рамки при зуммировании пда? Ну и при смене уровня сложности, в гансе, рамка так же не пропадает. Понимаю, вопрос, возможно, глупый, но я только еще разбираюсь во всех тонкостях... Изменено 24 мая, 2022 пользователем Apka Адаптация модификаций Смерти вопреки и GUNSLINGER mod Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Hunter 2 525 Опубликовано 24 мая, 2022 3 часа назад, Mervin62 сказал: [error]Description : wrong fixed bone такая вот была ошибка, а после редактирования алспавна все гладко Я ж говорил, смотри в ол спауне) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 24 мая, 2022 1 минуту назад, Hunter сказал: Я ж говорил, смотри в ол спауне А я же говорил, что не мог его распаковать.? Дополнено 1 минуту спустя Apka добрый человек помог. Дополнено 3 минуты спустя denis2000 А ларчик просто открывался Спойлер [vodka_destroy]:physic_destroyable_object $spawn = "dynamic_objects\devices\dev_vodka\vodka_destroy" visual = dynamics\devices\dev_vodka\dev_vodka.ogf [vodka_trash_destroy]:physic_destroyable_object $spawn = "dynamic_objects\devices\dev_vodka\vodka_trash_destroy" visual = dynamics\devices\dev_vodka\dev_vodka_trash.ogf как видим кости не указаны, вот он и ругается. 1 1 Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
vader_33 1 142 Опубликовано 24 мая, 2022 Neptun файлы-то выложите В беге за рассветом приближаешь свой закат Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Сталкер из прошлого 115 Опубликовано 25 мая, 2022 (изменено) (Да, я знаю что я тупой) Как из инвентаря ГГ удалить определённый предмет? Пробовал функцией Спойлер function questobject_delete() alife():release(alife():object(questobject_name),true) end - не срабатывает. Срабатывание прописывал через свойства рестриктора. UPD: разобрался, прописал слегка изменённую взятую с интернета схему удаления НПС - вроде заработало, Спойлер function questobject_delete(object) local id, obj, kto for id=0, 65535 do obj = alife():object(id) if obj then kto = obj:section_name() if (kto == "удаляемый_обьект") then alife():release(alife():object(id), true) end end end end Изменено 25 мая, 2022 пользователем Сталкер из прошлого ASUS z87-k, I5-4670 @3.40GHz, MSI GTX 1050ti, 16gb ОЗУ, SSD 100gb, 2xHDD 500gb, Windows 10 Pro. Аномали на ультрах летает. Вместе с компом по комнате. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 978 Опубликовано 25 мая, 2022 (изменено) 22 часа назад, Mervin62 сказал: как видим кости не указаны, вот он и ругается Не совсем так. Параметр fixed_bones в данной секции нужен для того, чтобы при добавлении объекта dynamic_objects\devices\dev_vodka\vodka_destroy при помощи SDK автоматически выставлялся параметр fixed_bones в настройках объекта. Этот параметр при компиляции спавна попадет в файл all.spawn откуда игровой движек его считает. То, что движок читает этот параметр напрямую из файла конфига, я не уверен, и кто при этом приоритетнее all.spawn или конфиг. NitWaifu Понял, вы движетесь в правильном направлении, но перекомпилировать АИ-сетку было не нужно если вы ее не меняли, но уж если изменили, то после компиляции сетки, собирается спавн. Теперь из конфигов придется удалить те объекты которые вы удалили на локации. В частности смарты спавна при старте игры: файл simulation.ltx секция [start_position_имя_локации]. Ее нужно очистить и заполнять по мере настройки спавна. Сталкер из прошлого А как она может сработать если переменная questobject_name в функцию не предается? Или переменную передавайте или прямо имя объекта внесите в функцию. Изменено 25 мая, 2022 пользователем denis2000 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 25 мая, 2022 11 минут назад, denis2000 сказал: Не совсем так. Ну это было всего лишь предположение, но теперь проверяю весь алспавн в моде чтобы потом не было сюрприза Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 978 Опубликовано 25 мая, 2022 7 минут назад, Mervin62 сказал: теперь проверяю весь алспавн в моде чтобы потом не было сюрприза Я об этом и говорил, просто подложить файл спавна может не прокатить и его придется корректировать, это и будет являться адаптацией спавна. Дополнено 4 минуты спустя Neptun Насколько я помню, сам SGM сейв не делает, он лишь перехватывает событие сохранения игры и добавляет свои параметры в специальный отдельный файл отличный от сейва движка. Конкретно в SGM 2.2 событие сохранение автосейва при переходе на другую локацию перехватывается в скрипте sgm_utils.script комментарий "Фиксация автосохранения": if sgm_functions.read_variable("currert_level")~=nil then if sgm_functions.read_variable("currert_level")~=level.name() then sgm_functions.write_variable("currert_level",level.name()) sgm_flags.string_savegame_type="autosave" data_param_save_game(user_name().."-".."autosave") end end Дополнено 13 минуты спустя 5 часов назад, Сталкер из прошлого сказал: прописал слегка изменённую взятую с интернета схему удаления НПС Какой кошмар! Используйте стандартную функцию из xr_effects.script remove_item. 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 25 мая, 2022 В 24.05.2022 в 15:27, denis2000 сказал: А этот вылет говорит о том, что анимация объекта которую положено играть в цикле отсутствует. denis2000 А здесь куда посоветуйте лезть первым делом, в логику или алспавн. Как я раньше предположил ганс не понимает некоторых команд из файла логики обьекта или я заблуждаюсь? Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 978 Опубликовано 26 мая, 2022 (изменено) Mervin62 Подобные объекты, как правило, не имеют логики вообще, анимация задана параметром skeleton_name в all.spawn (в териминалогии ACDC) или Animation в SDK. Они делятся на два типа: с зацикленной анимацией и линейной анимацией. С зацикленной играю ее постоянно (так делали бензогенераторы в ЧН, вентилятор на Юпитере у начальника Долга), а объекты с линейной анимацией часто управляются из логики другого объекта рестриктора или физического (подъемный мост в Лиманск, гермодвери в путепроводе). Изменено 26 мая, 2022 пользователем denis2000 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
makdm 676 Опубликовано 26 мая, 2022 В 24.05.2022 в 16:09, Neptun сказал: Есть эксперты по скриптам SGM? Нескромный вопрос. А зачем вам нужен этот оригинальный, но давно устаревший способ, когда есть другие способы неограниченного сохранения данных? Терпение... И все получится. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
dasher 4 Опубликовано 26 мая, 2022 Дароу, мальчишки и девчонки! Скажите кто-нить плз, кто либо спавнил воронов на навой локе? Расскажите как, будьте друзьями. А то нашёл урок 2014ого года где чувак через АСДС это делал) Кароче не то, я пипл - старомодный, но не настолько. Я вроде понимаю что смарт наверное нужен, но в ориге глянул там же 4 спавна каких то непонятных. В общем, не знаю как быть. Хелп) Дополнено 0 минут спустя Хочется просто правильно сделать всё Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 27 мая, 2022 9 часов назад, makdm сказал: есть другие способы Привет, ткните носом школьника(меня) хочу реализовать в своем проекте, да и так пригодится. 16 часов назад, denis2000 сказал: параметром skeleton_name в all Опять я к вам, перелопатил всю локу и сравнил с полностью рабочей, в итоге результата пока ноль. Может быть где-то этот skeleton_name наоборот не указан тогда возникает вопрос как все это кушает простой движок игры. Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Arkada 428 Опубликовано 27 мая, 2022 Сталкер из прошлого если удалять предмет, то лучше начинать итерацию не с ноля (0), а с единички (1), так как айди актёра всегда равен нулю. На одну итерацию меньше. Вот плохо, что в ЗП вырезали возможность получать Alife-объект по его имени. А ведь очень удобно, чем перебирать айди или заранее ему назачать spawn_story_id. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 978 Опубликовано 27 мая, 2022 (изменено) dasher Да со спавном вранов все предельно просто: 1. Создаете на локации несколько точек для рандомного спавна воронов. 2. Создаете рестриктор-спавнер с логикой: [logic] active = sr_crow_spawner [sr_crow_spawner] max_crows_on_level = 7 ;Очевидно - максимальное количество воронов на локации spawn_path = levelname_crow_spawn_1, levelname_crow_spawn_2, levelname_crow_spawn_3, levelname_crow_spawn_4, levelname_crow_spawn_5 ;точки на локации для рандомного спавна воронов 3. Все. Mervin62 Если параметр "skeleton_name" не указан, то никакая анимация играться не будет не автоматически ни по команде и соответственно никакой проблемы нет. А вот если указана анимация, то движек считывает из параметра "skeleton_name" ее имя, затем ищет ее в модели или прикрепленном файле анимаций. Вот на этом этапе происходит сбой. То есть или имя анимации считалось не верно (возможно лишние пробелы или символы табуляции) или имя считано верно, но ее нет в модели (к сожалению в сообщение о проблеме не предусмотрено выводить ни имя анимации ни имя модели). К стати а вылет этот происходит при загрузке уровня или при перемещении по локации? Изменено 27 мая, 2022 пользователем denis2000 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 27 мая, 2022 (изменено) 1 час назад, denis2000 сказал: этот происходит при загрузке Когда уровень загружается, даже уже делается сохранение avtosave. Дополнено 12 минуты спустя denis2000 Если я правильно понял ваш вопрос про то когда происходит вылет, то думаю надо искать ближайший объект к спавну игрока при переходе на локацию. Изменено 27 мая, 2022 пользователем Mervin62 Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Arkada 428 Опубликовано 27 мая, 2022 36 минут назад, Mervin62 сказал: то думаю надо искать ближайший объект к спавну игрока при переходе на локацию. Не факт что ближайший. Игра крашится из-за одного проблемного объекта, игра дальше с ним попросту не сможет работать (да и не нужно морочиться с ним) - вот и вылет. А причину вылета выше писал @denis2000. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 978 Опубликовано 27 мая, 2022 43 минуты назад, Mervin62 сказал: надо искать ближайший объект к спавну игрока при переходе на локацию К сожалению нет. Придется ковырять все объекты с анимацией перебором. Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mervin62 783 Опубликовано 27 мая, 2022 liner Ну может вы и правы, но в одной из моих работ вылет происходил только при приближении игрока к объекту, тем самым я легко вычислил. Дополнено 1 минуту спустя 1 минуту назад, denis2000 сказал: анимацией перебором Я вас понял, ох и не лёгкая это работа, благо одна из начальных локаций. Адаптации ганслингера на моды зов припятиВсегда на связи в телеге @Mervin62 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты