Zander_driver 10 348 Опубликовано 14 Июля 2022 Поделиться Опубликовано 14 Июля 2022 7 часов назад, egorkaufman1 сказал: scripts\_g.script:480: bad argument #2 to 'format' (string expected, got nil) Для устранения таких вылетов неплохо было бы привести в порядок _g.script, заменив в нем древние и убогие функции вывода лога, на более логически адекватные. Ведь есть же уже куча примеров как это сделать. А так, вам _g.script буквально сообщает, что "вылет произошел потому, что не получилось сообщить причину вылета в логе". Это практически анекдот "вскрытие показало, что пациент умер от вскрытия" - ну неужели вас это не смущает в вашем моде? Не приводит к мысли, что может быть, этот скрипт должен работать не так? Скрытый текст Чтобы не быть голословным. --============================================================================================== local tostring_all_tbl = { ["table"] = function(table, ind) --Распечатка таблиц local res = "{" --Начало local end_res = ind and "\n"..ind.."}" or "\n}" --Конец local def_ind = " " --Отступ от начала строки ind = ind and ind..def_ind or def_ind --Для каждой "таблицы внутри таблицы" отступ увеличивается в 2 раза for k, v in pairs(table) do res = res.."\n"..ind.."["..tostring_all(k, ind).."] = "..tostring_all(v, ind).."," end return res..end_res end, ["string"] = function(v) return "'"..v.."'" end, --Строки берём в кавычки. Это нужно, чтобы можно было отличить строку "123" от числа 123, "nil" от nil и тд... ["number"] = function(v) return tostring(v) end, ["boolean"] = function(v) return tostring(v) end, ["nil"] = function(v) return tostring(v) end, ["function"] = function() return "[[FUNCTION]]" end, --Function, Userdata и Thread распечатать нельзя, просто заменим на строки ["userdata"] = function() return "[[USERDATA]]" end, ["thread"] = function() return "[[THREAD]]" end, } --Конвертирование чего угодно в строку. Использовать только для вывода в лог! function tostring_all(obj, ind) --ind - служебный аргумент для распечатки "таблиц в таблицах". return tostring_all_tbl[type(obj)](obj, ind) end --Функциональная обёртка для log1. --Делает дополнительную работу по конвертации параметров, которые не воспринимаются родной функцией string.format. --Параметры можно передавать ЛЮБОГО ТИПА! В строке формата они должны стоять как %s (потому, что будут сконвертированы в строки). function log3(fmt, ...) local args = {...} for i=1, #args do args[i] = tostring_all(args[i]) end local res, msg = pcall(string.format, fmt, unpack(args)) if not res then --Если произошла ошибка msg = "!!log3 failed: "..msg.."\n"..debug.traceback() end log1(msg) end --============================================================================================== function abort(fmt, ...) log1("!!****************************[ABORT]*********************************") log1(debug.traceback()) log3(fmt, ...) log1("!!********************************************************************") error(tostring(fmt)) end Вот из OGSR для примера. Тоже старый, не лучший (имхо) вариант, но хорош тем что не подтягивает функций из других файлов - тут все перед глазами, наглядно. Он не пишет сообщений в духе "вскрытие показало, что пациент умер от вскрытия" - а пишет по делу. 1 2 Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на 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. Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1433886
h0N0r 387 Опубликовано 15 Июля 2022 Поделиться Опубликовано 15 Июля 2022 @Graff46 проверить в сдк, у актора должен быть включен флажок: Used AI Locations, и сетка на драфте не влияет на видимость нпс. 1 https://sites.google.com/view/xray-sdk-0-4-smg Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1433904
Graff46 623 Опубликовано 16 Июля 2022 Поделиться Опубликовано 16 Июля 2022 @h0N0r это проверял, галочка есть. Да и ситуация с невидимостью ГГ для НПС только на 1 локации, а спавниться ГГ на другой локации Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1434035
WinCap 323 Опубликовано 4 Августа 2022 Поделиться Опубликовано 4 Августа 2022 Здравствуйте. Понадобилось сделать своё собственное диалоговое окно. Следуя многочисленным советам с форума, взял за основу "ui_numpad.script". Скрытый текст function main() super_dlg = ui_MyDialog.MyDialog() super_dlg:ShowDialog(true) end class "MyDialog" (CUIScriptWnd) function MyDialog:__init() super() self:InitControls() end function MyDialog:__finalize() end function MyDialog:InitControls() local xml = CScriptXmlInit() xml:ParseFile("ui_numpad_wnd.xml") xml:InitStatic("background", self) self.st = xml:InitStatic("edit_box", self) self.st:SetWindowName("edit_box") self:AddCallback("edit_box", ui_events.BUTTON_CLICKED, self.On_BUTTON_CLICKED, self) <-- "Проблемная" строчка end function MyDialog:On_BUTTON_CLICKED() end function MyDialog: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:HideDialog() end end return true end В целом всё получилось, но столкнулся с одной непонятной проблемой: Мне не требуется обработка событий для отдельных элементов окна, хватает общего "OnKeyboard", но я не могу удалить строчку с установкой Callback'а. Если её удалить то при открытии окна, через несколько секунд происходит стабильный вылет. Скрытый текст [STACK TRACE UF] : 0023:0377AC2E luabind.beta7-devel.rc4.dll, luabind::detail::do_call_member_selection() 0023:054191DA xrGame.dll, CDialogHolder::OnFrame() Unhandled Error [error][ 183] : Невозможно создать файл, так как он уже существует. Подскажите, пожалуйста, в чем дело? S.T.A.L.K.E.R. CoP Objects (upd 15.11.24) Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1435444
Norman Eisenherz 354 Опубликовано 4 Августа 2022 Поделиться Опубликовано 4 Августа 2022 (изменено) Закомментил указанную строчку и function MyDialog:On_BUTTON_CLICKED(), сделал запуск function main() через съедание бинта: окно с задником выводится и отображается без вылетов, правильно реагирует на выход через [Esc] и перезагрузку. Видимо, конфликт еще с каким-то модом… Зачем нужен вывод "return true" в OnKeyboard? Изменено 4 Августа 2022 пользователем Norman Eisenherz Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1435460
WinCap 323 Опубликовано 4 Августа 2022 Поделиться Опубликовано 4 Августа 2022 10 минут назад, Norman Eisenherz сказал: отображается без вылетов Попробуй подождать подольше. 11 минут назад, Norman Eisenherz сказал: Зачем нужен вывод "return true" в OnKeyboard? Не знаю. Был в оригинальном "ui_numpad.script". S.T.A.L.K.E.R. CoP Objects (upd 15.11.24) Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1435462
Norman Eisenherz 354 Опубликовано 4 Августа 2022 Поделиться Опубликовано 4 Августа 2022 Пять минут – ни зависания, ни вылета. Выложи свой скрипт. Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1435470
WinCap 323 Опубликовано 4 Августа 2022 Поделиться Опубликовано 4 Августа 2022 2 минуты назад, Norman Eisenherz сказал: Выложи свой скрипт. Он выложен постом выше. Я только начал оформлять диалог, удалив ненужное из "ui_numpad.script", поэтому там ничего особенного и нет. Единственное, что могу добавить, это то, что я для теста вставил этот диалог вместо "ui_numpad" в "ph_code.script". Кстати, если в оригинальном "ui_numpad.script" закомментировать все "AddCallback", то при срабатывании "ph_code" происходит такой же вылет. Может и правда ещё где-то "накосячил". S.T.A.L.K.E.R. CoP Objects (upd 15.11.24) Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1435472
Norman Eisenherz 354 Опубликовано 4 Августа 2022 Поделиться Опубликовано 4 Августа 2022 Выложен текст, а нужен файл для испытаний. Как раз хотел спросить, откуда выполняется вызов. Для теста в [ph_code.script] нужно точно знать, какого ввода он ожидает. Задача в создании своего окна или именно в изменении логики [ui_numpad]? Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1435477
AndreySol 215 Опубликовано 4 Августа 2022 Поделиться Опубликовано 4 Августа 2022 @WinCap Ты пытаешься из скриптовой схемы сделать некое рандомное окно. Разве это правильно? Я не работаю с ЗП, по этому не знаю как там правильно вывести свое срипт-окно на худ, но в ТЧ уж точно нет нужды переделывать какие-то скриптовые схемы, там есть нормальный ф-ционал для такого. Опять-же, ты используешь диалоговое окно, которое изначально подразумевает взаимодействие с пользователем. так может по этому, при отсутствии обработчиков взаимодействия получается вылет. Сделай окно на базе чего-то типа UIStatic, там может и без обработчиков будет все нормально. Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1435481
spirt17 0 Опубликовано 17 Августа 2022 Поделиться Опубликовано 17 Августа 2022 Здравствуйте. Не знаю куда и писать. Стоит call of chernobyl 1.5 r6, и имеется баг - в инвентаре у артефактов не отображается параметр "fire_wound_immunity", то есть пулестойкость. И по всей видимости, он и не учитывается при расчетах. Подскажите, как это исправить? Только через изменения в движке? Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1436323
Lieutenant Novikov 16 Опубликовано 19 Августа 2022 Поделиться Опубликовано 19 Августа 2022 @spirt17 а ты точно проверял что он не действует? Зайди в файл с параметрами артефактов и повысь его до предела, а затем побегай под пулями. Если будешь неуязвимым значит он действует, а проблема скорее всего в отображении параметра. Тогда надо искать файл отвечающий за отображение параметров в папке ui. Вообще у меня этот параметр fire_wound_immunity стоит на нуле и относить к иммунитету самого артефакта. Но у меня другая версия так-что... Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1436406
wiegy 1 Опубликовано 7 Сентября 2022 Поделиться Опубликовано 7 Сентября 2022 (изменено) Добрый день. Я начал разрабатывать мод для Зова Припяти и захотелось мне портировать инвентарь и HUD из аддона "Чистое небо". Но как это сделать? Какие файлы из ЧН надо портировать в ЗП? Как исправить баг с квадратной миникартой (то есть, текстура карты квадратная, а сама она круглая)? Как сделать так, чтобы в 1 первый слот можно будет брать только пистолеты, а во второй - все остальное? И если не сложно, то можно прикрепить файлы инвентаря и HUD из ЧН. Заранее спасибо! Изменено 7 Сентября 2022 пользователем wiegy Небольшие ошибки Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1437764
ZeeK 62 Опубликовано 11 Сентября 2022 Поделиться Опубликовано 11 Сентября 2022 (изменено) 18.08.2022 в 01:58, spirt17 сказал: в инвентаре у артефактов не отображается параметр "fire_wound_immunity Насколько я помню в ЧН и ЗП этот параметр не учитывается, а берется коэффициент сопротивления костюма. Посмотрите как сделаны кевларовые пластины в COC и Anomaly и сделайте по аналогии. Изменено 11 Сентября 2022 пользователем ZeeK Не соответствует. N6260 Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1438016
WinCap 323 Опубликовано 12 Сентября 2022 Поделиться Опубликовано 12 Сентября 2022 Здравствуйте. Подскажите, пожалуйста, почему в биндере физических объектов (bind_physic_object) все callback'и устанавливаются в функции "update", а не, например, в "reinit"? Это ошибка или какая-то военная хитрость? S.T.A.L.K.E.R. CoP Objects (upd 15.11.24) Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1438105
dsh 3 824 Опубликовано 12 Сентября 2022 Поделиться Опубликовано 12 Сентября 2022 Когда-то я тоже задался этим вопросом, и перенес установку коллбеков. Работать перестало, т.ч. я вернул все обратно. Подробнее разбираться не стал. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1438133
WinCap 323 Опубликовано 13 Сентября 2022 Поделиться Опубликовано 13 Сентября 2022 (изменено) @dsh, у меня тоже поначалу перестало работать, но потом заметил, что не работает только "use_object". В результате "раскопок" выяснил, что этот callback снимается в "xr_logic.reset_generic_schemes_on_scheme_switch()" при переключении схемы. Для чего это было сделано, не понятно, ведь ни одна схема callback'и не устанавливает. Решил, что это все-таки ошибка и убрал, после чего все callback'и в "bind_physic_object" нормально заработали. Пока что полет нормальный. В итоге получил следующий код: Скрытый текст function generic_physics_binder:net_spawn(data) ... local c = self.object:clsid() if not ((c ~= clsid.inventory_box) and (c ~= clsid.inventory_box_s)) then self.object:set_callback(callback.hit, generic_physics_binder.hit_callback, self) self.object:set_callback(callback.death, generic_physics_binder.death_callback, self) end self.object:set_callback(callback.use_object, generic_physics_binder.use_callback, self) db.add_obj(self.object) return true end function generic_physics_binder:update(delta) ... if self.st.active_scheme ~= nil then xr_logic.issue_event(self.object, self.st[self.st.active_scheme], "update", delta) end xr_sound.update(self.object:id()) end Изменено 13 Сентября 2022 пользователем WinCap 1 3 S.T.A.L.K.E.R. CoP Objects (upd 15.11.24) Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1438160
wiegy 1 Опубликовано 1 Октября 2022 Поделиться Опубликовано 1 Октября 2022 Привет, разработчики модов на сталкер. А как перенести мини-карту из ЧН в ЗП? Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1439178
shahvkit 3 796 Опубликовано 1 Октября 2022 Поделиться Опубликовано 1 Октября 2022 22 минуты назад, wiegy сказал: А как перенести мини-карту из ЧН в ЗП? Тебе сюда - https://www.amk-team.ru/forum/topic/8013-hud/#comments Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1439181
TDV 0 Опубликовано 4 Октября 2022 Поделиться Опубликовано 4 Октября 2022 Решил пойти по пути моддинга. Попробовал создать в ЗП автомотический дробовик с внешностью калаша (эдак недосайга). Решил делать на базе протектора. Класс оружия заменил у него на asalut rifle, добавил visual от Ак. Протектор стреляет, но при попытке перезарядится происходит вылет. Перенос худов и анимаций от Калаша результата не дал - все равно вылет. Как можно исправить? Ссылка на комментарий https://www.amk-team.ru/forum/topic/14899-cop-kovyrjaemsja-v-fajlah/page/380/#findComment-1439353
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти