Overf1rst 1 496 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Зов Припяти. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 18 9 1 1 2 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Arkada 428 Опубликовано 10 января, 2021 (изменено) 4 минуты назад, OP_artovod сказал: а почему может не спавнится квестовый предмет в трупе? предмет рабочий, в характер_деск прописан Функцию, которую ты использовал, напиши здесь. Напиши что правил. Информации очень мало, а ясновидящих в сталкерском комьюнити нет. Возможно, вы не прописали его в таблицу уникальных предметов ([keep_items] в death_generic.ltx) Изменено 10 января, 2021 пользователем liner Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
molodoy_chelovek 124 Опубликовано 10 января, 2021 OP_artovod нужно добавить этот предмет в секцию keep_items, в файле death_generic.ltx Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
OP_artovod 4 Опубликовано 10 января, 2021 понял пасиба Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Misery 433 Опубликовано 10 января, 2021 Какие файлы отвечают за количество и расположение на локации кустов, деревьев и прочего? Есть возможность деревья от Cromm Cruac'a запихнуть в стороннюю локацию? Clear Sky: Gunslinger Addon Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
molodoy_chelovek 124 Опубликовано 10 января, 2021 Misery это такая же статическая геометрия локации, как здания и т.п Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 944 Опубликовано 10 января, 2021 (изменено) 2 часа назад, Misery сказал: Какие файлы отвечают за количество и расположение на локации кустов, деревьев и прочего? Файлы локации отвечают, а конкретно level.geom level.geomx... 2 часа назад, Misery сказал: Есть возможность деревья от Cromm Cruac'a запихнуть в стороннюю локацию? Да. Берете SDK, берете исходники сторонней локации, берете модели деревьев в формате *.object, расставляете на локации и компилируете отредактированную локацию. Изменено 10 января, 2021 пользователем denis2000 1 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Arkada 428 Опубликовано 10 января, 2021 (изменено) Как зафиксировать нажатие на InitCheck, а потом, после того как GUI будет скрыт, задать ему определённый статус (true, false - или проще говоря, если он до скрытия GUI был включён, то когда GUI будет показан опять, включить InitCheck). Попробовал сделать - почему-то не получается. Наверное из-за того, что InitCheck не подходит callback BUTTON_CLICKED Спойлер class "mod_opt_dlg" (CUIScriptWnd) function mod_opt_dlg:__init() super() self:InitControls() self:InitCallBacks() end function mod_opt_dlg:__finalize() end function mod_opt_dlg:InitControls() self:SetWndRect(Frect():set(0,0,1024,768)) local oCXml = CScriptXmlInit() oCXml:ParseFile("ui_mm_main.xml") self.opt_1_status = flags.ui_mm_opt_1_status self.dMenu = oCXml:InitStatic("mod_menu", self) self.oBtnQuit = oCXml:Init3tButton("mod_menu:btn_quit", self.dMenu) self:Register (self.oBtnQuit, "OnBtnQuit") self.oBtnDef = oCXml:Init3tButton("mod_menu:btn_default", self.dMenu) self:Register (self.oBtnDef, "OnBtnDef") oCXml:InitStatic("mod_menu:cap_check_opt1", self.dMenu) self.Opt1 = oCXml:InitCheck("mod_menu:check_opt1", self.dMenu) self:Register (self.Opt1, "OnBtnOpt_1") end function mod_opt_dlg:InitCallBacks() self:AddCallback("OnBtnQuit", ui_events.BUTTON_CLICKED, self.OnQuit, self) self:AddCallback("OnBtnDef", ui_events.BUTTON_CLICKED, self.OnBtnDef, self) self:AddCallback("OnBtnOpt_1", ui_events.BUTTON_CLICKED, self.OnOpt1, self) end function mod_opt_dlg:OnKeyboard(dik, keyboard_action) CUIScriptWnd.OnKeyboard(self, dik, keyboard_action) if keyboard_action==ui_events.WINDOW_KEY_PRESSED then if dik==DIK_keys.DIK_ESCAPE then self:OnQuit() end end return true end function mod_opt_dlg:OnBtnOpt_1() if self.opt_1_status == true then self.opt_1_status = false self.Opt1:SetCheck(false) flags.ui_mm_opt_1_status = false else self.opt_1_status = true self.Opt1:SetCheck(true) flags.ui_mm_opt_1_status = true end end function mod_opt_dlg:LoadSettings() self.Opt1:SetCheck(flags.ui_mm_opt_1_status) end function mod_opt_dlg:OnBtnDef() self.opt_1_status = true self.Opt1:SetCheck(true) flags.ui_mm_opt_1_status = true end function mod_opt_dlg:OnQuit() flags.ui_mm_opt_1_status = self.opt_1_status self:HideDialog() end function mod_opt_dlg:save(packet) set_save_marker(packet, "save", false, "ModOptions") packet:w_bool(self.opt_1_status) set_save_marker(packet, "save", true, "ModOptions") end function mod_opt_dlg:load(packet) set_save_marker(packet, "load", false, "ModOptions") self.opt_1_status = packet:r_bool() set_save_marker(packet, "load", true, "ModOptions") end При вызове GUI вызывается функция, которая должна передавать статус true или false. Но почему-то всегда передаётся статус false. Изменено 10 января, 2021 пользователем liner Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Misery 433 Опубликовано 10 января, 2021 denis2000 какой компилятор использовать (у меня ПЫСовские)? В LevelEditor, во вкладке Compile выбрать пункт Make Details? Clear Sky: Gunslinger Addon Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Arkada 428 Опубликовано 10 января, 2021 1 минуту назад, Misery сказал: denis2000 какой компилятор использовать (у меня ПЫСовские)? В LevelEditor, во вкладке Compile выбрать пункт Make Details? Нужно пересобирать локацию (build), если у вас дерево это объект. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
WolfHeart 910 Опубликовано 10 января, 2021 52 минуты назад, Misery сказал: какой компилятор использовать (у меня ПЫСовские)? На вкус и цвет... Фломастеры у всех разные. ? CS&CoP Compilers 2010 v3.0 х64 для ЗП 1 AMD FX-8370 (8 X 4.35GHz); RAM 16Gb; MSI GTX 1070 (8Gb). Windows -10 PRO (х64) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Policai 1 318 Опубликовано 11 января, 2021 Народ! Кто в теме, подскажите пожалуста по интелекту полтергейстов, как они поведут себя с решёткой? Конкретно ситуация такая, есть помещения с коридорами, в которых некоторые проходы загорожены решётками из арматуры, с такой же дверью из арматуры, Мне нужно чтоб НПС и ГГ могли пройти только открыв дверь, а полтергейст пролетал независимо от состояния этой двери. Возможно ли как то это реализовать? Группа мода в VK Мод делался и тестировался на железе i5-11400, 32Гб ОЗУ, Radeon RX580 Разрешение 2560 х 1440. ВСЕ на максималке Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 944 Опубликовано 11 января, 2021 5 часов назад, Policai сказал: как они поведут себя с решёткой? Как и любые Мутанты - не в курсе о ней, от слова совсем. Что естественно пройти не могут и упираются в нее. Как решение: сделать два рестриктора с обоих сторон решетки и в логике мутанта проверять если он задержался в одном из рестрикторов более чем на 2 сек, то телепортировать его на другую сторону. 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Policai 1 318 Опубликовано 11 января, 2021 Телепортировать наверно будет заметно визуально, что не совсем эстетично, летел - пропал - появился.. а с полтером в подземках и так проблем выше крыши..((( даже если ты в закрытой комнате, и его в ней нет, всё равно в тебя летит всё что валяется под боком, даже если он на один уровень выше... у меня по крайней мере так, я на уровне 2 за закрытой дверью, а полтер летает на уровне 3, лестница между уровнями метрах в 100 игровых, и всё равно в комнате всё синее, типо ментальное воздействие, и летает в тебя всё что плохо лежит..((( Группа мода в VK Мод делался и тестировался на железе i5-11400, 32Гб ОЗУ, Radeon RX580 Разрешение 2560 х 1440. ВСЕ на максималке Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 944 Опубликовано 11 января, 2021 (изменено) 26 минут назад, Policai сказал: Телепортировать наверно будет заметно визуально, что не совсем эстетично, летел - пропал - появился.. Ну во первых - это как раз в его природе (телепортация), а во вторых это будет незаметно (всего то доли секунды). 26 минут назад, Policai сказал: даже если ты в закрытой комнате, и его в ней нет, всё равно в тебя летит всё что валяется под боком Это нормально, у него есть некая аура, которая распространяется вокруг него в виде сферы игнорируя геометрию уровня и в ней он может наносить урон телекинезом. Он вообще довольно специфическое существо и к тому же сильно забагованное. В любом случае, я только предложил идею. Изменено 11 января, 2021 пользователем denis2000 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
0ouch 143 Опубликовано 11 января, 2021 (изменено) Привет, народ. Разблокировав возможность говорить со всеми НПС в отряде обнаружил, что у них отсутствуют диалоги из файла dialog_manager.ltx. У лидера отряда, соответственно, всё на месте. В каком направлении нужно копать, чтобы исправить это? Изменено 11 января, 2021 пользователем Stgs Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 944 Опубликовано 11 января, 2021 Stgs В дескрипшинах этих персонажей прописано: #include "gameplay\character_dialogs.xml" 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
0ouch 143 Опубликовано 11 января, 2021 denis2000, то есть диалоги вроде dm_information или dm_anomalies для них не применяются? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
bad_major 2 Опубликовано 11 января, 2021 (изменено) Зов Припяти Не начинается выброс после вызова фун-ции из локиги space_restrictor: [logic] active = sr_idle@1 [sr_idle@1] on_info = {+info1 +info2} %=start_surge() =test_msg()% nil Тестовое сообщение присылается, значит дело в самой функции. Изменено 11 января, 2021 пользователем bad_major Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Little Frenchman 541 Опубликовано 11 января, 2021 bad_major, Правильнее будет так: Спойлер [logic] active = sr_idle@1 [sr_idle@1] on_info = {+info1 +info2} sr_idle@nil %=start_surge =test_msg% [sr_idle@nil] Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 944 Опубликовано 11 января, 2021 (изменено) Stgs В оригинале нет таких диалогов. bad_major На локации есть хоть одно укрытие от выброса? Изменено 11 января, 2021 пользователем denis2000 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
bad_major 2 Опубликовано 11 января, 2021 denis2000 нет, не сделал, а условие наличия укрытий вбито в движке или вынесено в скрипты? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
0ouch 143 Опубликовано 11 января, 2021 denis2000, как это нет? Ведь они прописаны в файле dialog_manager.ltx. Может я и правда что-то путаю... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 944 Опубликовано 11 января, 2021 (изменено) 1 час назад, Stgs сказал: Ведь они прописаны в файле dialog_manager.ltx. Вы путаете там прописаны фразы, а не диалоги. А точнее в этом файле указано какие фразы могут появиться в диалогах НПС, с учетом уровня, группировки НПС и инфопорций. Схема такая: НПС прописывается в дескрипшен инклуд на файл character_dialogs.xml, сами диалоги прописаны в dialogs.xml. Они полностью динамические и формируются скриптом dialog_manager.script, а файл dialog_manager.ltx - конфиг этого скрипта с необходимыми параметрами. 1 час назад, bad_major сказал: вынесено в скрипты? Да. function start_surge(p) local m = get_surge_manager() if(m:get_nearest_cover()) then m:start(true) else printf("Error: Surge covers are not set! Can't manually start") end end Нетрудно увидеть, что если функция get_nearest_cover (найти ближайшее укрытие) вернет nil, то выброс не запуститься, а в лог должно было бы отправиться сообщение об ошибке. Изменено 11 января, 2021 пользователем denis2000 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ekagors 186 Опубликовано 11 января, 2021 (изменено) 18 часов назад, Policai сказал: Мне нужно чтоб НПС и ГГ могли пройти только открыв дверь, а полтергейст пролетал независимо от состояния этой двери. Возможно ли как то это реализовать? [collide] ignore_static ignore_small_objects НПС не пускай туда или поставь ему временный оут рестиктор, на месте двери. АИ сетка должна быть под дверью, что бы и он летал и нпс ходили. Если оутку НПСу поставил. Не забудь ее отключить когда ему нужно будет пройти через дверь. Не буду 100% ручаться, не смотрел от куда ноги растут, но, со ignore_small_objects, у дверьки коллизия на НПС пропадает вроде как, на мобов должно быть соответственно, так же. p.s. по одному старому дельцу в ЛС написал. Изменено 11 января, 2021 пользователем Ekagors 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Misery 433 Опубликовано 12 января, 2021 Какими ещё программами можно делать движковые правки кроме Microsoft Visual C++? Clear Sky: Gunslinger Addon Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты