Overf1rst 1 505 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Зов Припяти. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 19 10 1 1 2 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 303 Опубликовано 24 декабря, 2024 (изменено) sosiska23 del Изменено 24 декабря, 2024 пользователем ian98 1 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
стрелок_2009 7 Опубликовано 25 декабря, 2024 Ребят, помогите пожалуйста Сделал уникальный ствол, про писал ему апгрейды, занес в mp_rangs Все работает как надо, но стоит вме прописать ему установленный апгрейд на крепление прицела, так игра вылетает с ошибкой stack trace Что я не так сделал? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Бессмертный 2 Опубликовано 25 декабря, 2024 Существует ли способ перетащить ствол из ТЧ на ЗП с сохранением анимаций? Знаю, что в ТЧ руки и оружие зашиты в один скелет, есть ли способ их разъединить и перетащить на ЗП, отдельно анимации рук, отдельно анимации ствола? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 96 Опубликовано 26 декабря, 2024 (изменено) В 25.12.2024 в 02:03, sosiska23 сказал: все равно еда появляется В зависимые секции тоже нуль стоИт? Как вариант, в функции итераторе удаления keep_item в death_manager.script просто поставить проверку по интересующей вас секции предмета и удалить. Посмотрите как удаляется болт в этой функции и через оператор or вписываете секции предмета в эту строку. Сглупил я! Создайте новый блок if ... then end. if section == "название секции итема" then alife():release(alife():object(item:id()), true) return end Дополнено 6 минуты спустя В 25.12.2024 в 21:46, стрелок_2009 сказал: Что я не так сделал? А секции модифицированного оружия прописали в файл? К механику тоже добавили эти секции? И в файлах xml тоже? Изменено 26 декабря, 2024 пользователем Mass 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
sosiska23 0 Опубликовано 28 декабря, 2024 гайс, как добавить возможность перехода по локе со случайными неписями, как в зп подошел сказал место и пошел Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
стрелок_2009 7 Опубликовано 28 декабря, 2024 (изменено) Я сделал новую карту Для игры, а у меня она сдвинута, то есть условно я стою на камне, а на карте в кпк я стою далеко от него, как это лечить карту ? Причём как её не двигая я все равно стою в стороне от обьекта Изменено 28 декабря, 2024 пользователем стрелок_2009 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 980 Опубликовано 28 декабря, 2024 sosiska23 Начните свое исследование данного вопроса со скарипта travel_manager.script Дополнено 11 минуты спустя стрелок_2009 bound_rect RTFM. 1 1 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
стрелок_2009 7 Опубликовано 28 декабря, 2024 (изменено) 1 час назад, denis2000 сказал: sosiska23 Дополнено 11 минуты спустя стрелок_2009 bound_rect RTFM. Спасибо, надеюсь поможет Дополнено 5 минуты спустя 2 часа назад, denis2000 сказал: sosiska23 Дополнено 11 минуты спустя стрелок_2009 bound_rect RTFM. У меня теперь также проблема с мини картой, карта в кпк как надо а на мини карте я стою правее, как это лечить? Изменено 28 декабря, 2024 пользователем стрелок_2009 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Uncle Bogdan 73 Опубликовано 28 декабря, 2024 Доброй ночи. Подскажите, если ли утилита\прога для настройки положения оружие в игре? Что- то типо hud adjust mode Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
sevo 148 Опубликовано 29 декабря, 2024 Uncle Bogdan На движке IX-Ray есть худ-аджаст Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Uncle Bogdan 73 Опубликовано 29 декабря, 2024 vasyan54636 нету Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
sevo 148 Опубликовано 29 декабря, 2024 Uncle Bogdan Тебе нужна версия движка для разработчиков, (скачать можно здесь https://github.com/ixray-team/ixray-1.6-stcop/releases) В самой игре нажимаешь Alt + i, появится активный курсор, сможешь пользоваться инструментами из менюшки слева сверху. Среди инструментов есть и худ аджаст. 1 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Domovoi 29 Опубликовано 29 декабря, 2024 Приветствую! Как перенести модельки, из формата Метро 2033 в .ogf формат? И возможно ли это через Blender? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Uncle Bogdan 73 Опубликовано 30 декабря, 2024 Domovoi открываешь в блендере с калкерским плагином, привязываешь к скелету (от калаша, например), экспортишь в объедок (object) и через сдк уже компилишь в огф. Дополнено 44 минуты спустя vasyan54636 Ну подскажи ещё пожалуйста. Гайды есть по этому худ аджасту гайд или мануал? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
sevo 148 Опубликовано 30 декабря, 2024 Uncle Bogdan В менюшке находишь худ аджаст, тыкаешь, нажимаешь галочку на Enable. Выбираешь условно первый мод, выходишь из меню, зажимаешь Shift и начинаешь двигать мышку, чтобы откалибровать положение худа рук. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Domovoi 29 Опубликовано 30 декабря, 2024 Uncle Bogdan, проблема образовалось у меня как раз не в этом моменте, это то я знаю как делать, а вот с формата .model есть ли на него плагин для Blender? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Uncle Bogdan 73 Опубликовано 30 декабря, 2024 Domovoi Вообще поищи распаковщики\импортеры для этого формата. Вроде такой плагин был на MilkShape3d, но там поискать надо хорошо. sevo Подскажи ещё пожалуйста (второй раз уже, гы), возникает проблема с Alt + i. Курсор появляется рандомно, перезапуск вообще не решает. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
sevo 148 Опубликовано 30 декабря, 2024 @Uncle Bogdan Важно, чтобы раскладка клавиатуры была на английском в момент нажатия Alt + i Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
стрелок_2009 7 Опубликовано Среда в 15:48 А можете скинутл ссылку на статью по созданию генератора имен? Я просто в интернете нечего не нашел Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Pavel2000 38 Опубликовано Среда в 17:50 стрелок_2009https://www.amk-team.ru/forum/topic/7450-spravochnik-po-funkcijam-i-klassam/?do=findComment&comment=464472 1 «Если долго мучиться, что-нибудь получится» Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Domovoi 29 Опубликовано Среда в 19:38 Приветствую! Возможно ли написать новый слот для инвентаря только через скрипты без влезания в движок? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Paradox27kms 16 Опубликовано Среда в 21:35 (изменено) Хотел адаптировать место для сна из ЗП в ЧН. Ловлю вылет из ui_sleep_dialog.script. Лог ссылается на функцию SetCurrentValue() так как её нету в lua_help.script в ЧН, но от добавления этой строчки эффекта нет, неужели нельзя адаптировать оригинальную возможность сна из ЗП? Я видел в каком-то васянском моде аж в ТЧ но не помню уже название, значит как-то можно. Вот сам скрипт меню сна ui_sleep_dialog.script Спойлер local sleep_control = nil local wide = false class "sleep_dialog" (CUIScriptWnd) function sleep_dialog:__init() super() self:SetWndRect(Frect():set(0,0,1024,768)) if(device().width/device().height>(1024/768+0.01)) then wide = true end local xml = CScriptXmlInit() xml:ParseFile("ui_sleep_dialog.xml") self.back = xml:InitStatic("background", self) -- self.sleep_static = xml:InitSleepStatic("sleep_static", self.back) self.sleep_static = xml:InitStatic("sleep_static", self.back) self.sleep_static2 = xml:InitStatic("sleep_static", self.back) self.static_cover = xml:InitStatic("static_cover", self.back) self.st_marker = xml:InitStatic("st_marker", self.static_cover) sleep_st_tbl = {} for i = 1, 24 do sleep_st_tbl = xml:InitStatic("sleep_st_"..i, self.back) end self.time_track = xml:InitTrackBar("time_track", self.back) self:Register(self.time_track, "time_track") self.btn_sleep = xml:Init3tButton("btn_sleep", self.back) self:Register(self.btn_sleep, "btn_sleep") self.btn_cancel = xml:Init3tButton("btn_cancel", self.back) self:Register(self.btn_cancel, "btn_cancel") self.sleep_mb = CUIMessageBoxEx() self:Register(self.sleep_mb, "sleep_mb")-------------------------------------------------------------------------------- self:AddCallback("btn_sleep", ui_events.BUTTON_CLICKED, self.OnButtonSleep, self) self:AddCallback("btn_cancel", ui_events.BUTTON_CLICKED, self.OnButtonCancel, self) self:AddCallback("sleep_mb", ui_events.MESSAGE_BOX_OK_CLICKED, self.OnMessageBoxOk, self)end function sleep_dialog:Initialize() local cur_hours = level.get_time_hours() for i = 1, 24 do local hours = cur_hours + i if(hours>=24) then hours = hours - 24 end sleep_st_tbl:TextControl():SetText(hours..game.translate_string("st_sleep_hours")) end local delta = math.floor(591/24*cur_hours) local r = Frect():set(delta,413,591,531) self.sleep_static:SetTextureRect(r) local width = 591-delta if(wide) then width = width*0.8 end self.sleep_static:SetWndSize(vector2():set(width, 118)) r = Frect():set(0,413,delta,531) self.sleep_static2:SetTextureRect(r) local width = delta if(wide) then width = width*0.8 end self.sleep_static2:SetWndSize(vector2():set(width, 118)) local pos = self.sleep_static2:GetWndPos() pos.x = self.sleep_static:GetWndPos().x+self.sleep_static:GetWidth() self.sleep_static2:SetWndPos(pos)end function sleep_dialog:TestAndShow() if(db.actor.bleeding>0 or db.actor.radiation>0) then self.sleep_mb:InitMessageBox("message_box_ok") if(db.actor.bleeding>0 and db.actor.radiation>0) then self.sleep_mb:SetText("sleep_warning_all_pleasures") elseif(db.actor.bleeding>0) then self.sleep_mb:SetText("sleep_warning_bleeding") else self.sleep_mb:SetText("sleep_warning_radiation") end self.sleep_mb:ShowDialog(true) else self:Initialize() self:ShowDialog(true) endend function sleep_dialog:Update() CUIScriptWnd.Update(self) local sleep_time = self.time_track:GetIValue()-1 local x = math.floor(591/24*sleep_time) if(x==0) then x = 5 end if(wide) then x = x*0.8 end self.st_marker:SetWndPos(vector2():set(x, 0))end function sleep_dialog:OnTrackButton()end function sleep_dialog:OnButtonSleep() self:HideDialog() xr_effects.disable_ui(db.actor, nil) level.add_cam_effector("camera_effects\\sleep.anm", 10, false, "ui_sleep_dialog.dream_callback") level.add_pp_effector("sleep_fade.ppe", 11, false) db.actor:give_info_portion("actor_is_sleeping") _G.mus_vol = get_console():get_float("snd_volume_music") _G.amb_vol = get_console():get_float("snd_volume_eff") get_console():execute("snd_volume_music 0") get_console():execute("snd_volume_eff 0") surge_manager.resurrect_skip_message()end function sleep_dialog:OnButtonCancel() self:HideDialog() db.actor:give_info_portion("tutorial_sleep") disable_info("sleep_active")end function sleep_dialog:OnMessageBoxOk() db.actor:give_info_portion("tutorial_sleep") disable_info("sleep_active")end--------------------------------------------------------------------------------function dream_callback() level.add_cam_effector("camera_effects\\sleep.anm", 10, false, "ui_sleep_dialog.dream_callback2") local hours = sleep_control.time_track:GetIValue() level.change_game_time(0,hours,0) level_weathers.get_weather_manager():forced_weather_change() surge_manager.get_surge_manager().time_forwarded = true if(surge_manager.is_started() and level_weathers.get_weather_manager().weather_fx) then level.stop_weather_fx()-- level_weathers.get_weather_manager():select_weather(true) level_weathers.get_weather_manager():forced_weather_change() end db.actor.power = 1 printf("dream_callback: time forwarded on [%d]", hours)end function dream_callback2() xr_effects.enable_ui(db.actor, nil) get_console():execute("snd_volume_music "..tostring(_G.mus_vol)) get_console():execute("snd_volume_eff "..tostring(_G.amb_vol)) _G.amb_vol = 0 _G.mus_vol = 0 db.actor:give_info_portion("tutorial_sleep") disable_info("actor_is_sleeping") disable_info("sleep_active")end function sleep() if(sleep_control==nil) then sleep_control = ui_sleep_dialog.sleep_dialog() end sleep_control.time_track:SetCurrentValue() sleep_control:TestAndShow()end function main() sleep()end Изменено Среда в 21:36 пользователем Paradox27kms Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 980 Опубликовано Четверг в 09:47 (изменено) Domovoi Нет. Paradox27kms Точно, как в ЗП без правок движка - нет. Но есть варианты, например КМБ Урок 54 Изменено Четверг в 09:53 пользователем denis2000 Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Paradox27kms 16 Опубликовано Четверг в 10:27 (изменено) denis2000 Ну понятно. Теперь у меня задача найти функцию позволяющую запустить GUI меню из логики (например рестриктора) P.S я находил в ЗП похожую функцию =show_freeplay_dialog, она немножечко не так работает как мне нужно хоть и гуи запускает. Изменено Четверг в 10:30 пользователем Paradox27kms Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
denis2000 980 Опубликовано Четверг в 10:42 Paradox27kms Функции вызова GUI работают плюс-минус одинаково, вся разница в составе самого окна. Так вот движок ЧН/ТЧ не поддерживает ползунковый регулятор (TrackBar), а значит его функционал вам потребуется реализовывать другими доступными средствами. Путь во мгле. Связь времен."Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты