Zander_driver 10 321 Опубликовано 7 Июня Поделиться Опубликовано 7 Июня 4 часа назад, Black_Raven_03 сказал: local sil_obj = level.object_by_id(0) Полагаю, вот это лишнее. Достаточно объявления local sil_obj 1 Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на 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. Ссылка на комментарий
Black_Raven_03 29 Опубликовано 7 Июня Поделиться Опубликовано 7 Июня (изменено) 6 часов назад, Zander_driver сказал: Достаточно объявления local sil_obj Привычка: приучил себя по совету небезизвестного Kamikazze всегда инициализировать переменные в ЛуаДжите Как позже выяснилось, проблема была в inventory_for_each - метод (почему-то) не мог перейти на след. предмет! Изменено 7 Июня пользователем Black_Raven_03 Скрытый текст AMD FX-8100 (Bulldozer) , 16GB DDR3-1600, AFOX GeForce GTX1050Ti и нормально сталкерим в НА5.1, НА7, OGSE-0693, OGSR, НС2016, OLR, OFFLIFE, CoC, LADC, CoP Gunslinger, ShoC GA, Legend Return, Anomaly, CS OGSM! Мозг состоит на 80 процентов из жидкости, и мало того, что она тормозная, так многим еще конкретно не долили...@Denikius136 Ссылка на комментарий
Kirgudu 1 151 Опубликовано 7 Июня Поделиться Опубликовано 7 Июня (изменено) 13 часов назад, Black_Raven_03 сказал: db.actor:inventory_for_each( function( temp_sil, db.actor) А мне вот эта строчка очень любопытна. Можно сказать, что второй параметр в функции-коллбэке не нужен, но не это главное. Что-то я даже затрудняюсь сказать, что будет с глобальной кеширующей актора переменной db.actor, если её использовать в качестве выходного параметра. Обнулится со всеми вытекающими? Или будет создана локальная одноимённая переменная, не влияющая на глобальную, поскольку существует только внутри этой функции? В любом случае делать так не стоит. Изменено 7 Июня пользователем Kirgudu 1 2 Инструмент Ссылка на комментарий
abramcumner 1 117 Опубликовано 7 Июня Поделиться Опубликовано 7 Июня 43 минуты назад, Kirgudu сказал: Что-то я даже затрудняюсь сказать, что будет с глобальной кеширующей актора переменной db.actor, если её использовать в качестве выходного параметра. Обнулится со всеми вытекающими? Или будет создана локальная одноимённая переменная, не влияющая на глобальную, поскольку существует только внутри этой функции? У меня скрипт с таким объявление функции вообще не распарсился lua в ЗП. 2 Ссылка на комментарий
Black_Raven_03 29 Опубликовано 7 Июня Поделиться Опубликовано 7 Июня (изменено) @Zander_driver @Kirgudu , огромное спасибо за предупреждение - учту и сделаю выводы 7 часов назад, abramcumner сказал: вообще не распарсился lua в ЗП. а какая связь между ЗП и ТЧ-ориентированным ОГСР-движком?! я же специально указал год сборки движка - 2020! ЛуаДжиты же разные! Изменено 7 Июня пользователем Black_Raven_03 Скрытый текст AMD FX-8100 (Bulldozer) , 16GB DDR3-1600, AFOX GeForce GTX1050Ti и нормально сталкерим в НА5.1, НА7, OGSE-0693, OGSR, НС2016, OLR, OFFLIFE, CoC, LADC, CoP Gunslinger, ShoC GA, Legend Return, Anomaly, CS OGSM! Мозг состоит на 80 процентов из жидкости, и мало того, что она тормозная, так многим еще конкретно не долили...@Denikius136 Ссылка на комментарий
Капрал Хикс 497 Опубликовано 7 Июня Поделиться Опубликовано 7 Июня В Зове Припяти при покупке патронов учитывается кол-во патронов в пачке, оно влияет на цену. Хочу в ТЧ это дело поправить. Где в trade_manager.script смотреть это? 1 Ссылка на комментарий
abramcumner 1 117 Опубликовано 7 Июня Поделиться Опубликовано 7 Июня 1 час назад, Black_Raven_03 сказал: а какая связь между ЗП и ТЧ-ориентированным ОГСР-движком?! я же специально указал год сборки движка - 2020! ЛуаДжиты же разные! Такое не должно и на ТЧ/ОГСР парситься. Что было под рукой, на том и проверил. 1 Ссылка на комментарий
Balavnik 86 Опубликовано 17 Июня Поделиться Опубликовано 17 Июня Можно ли отключить add_call скриптом? 1 Устал. Ссылка на комментарий
Kirgudu 1 151 Опубликовано 17 Июня Поделиться Опубликовано 17 Июня (изменено) "Справочник", функция level.remove_call. Изменено 17 Июня пользователем Kirgudu 1 3 Инструмент Ссылка на комментарий
phalcor 56 Опубликовано 23 Июня Поделиться Опубликовано 23 Июня Привет! Как можно определить, что это была первая загрузка (load) с момента старта exe? Ссылка на комментарий
Norman Eisenherz 276 Опубликовано 24 Июня Поделиться Опубликовано 24 Июня Например, сделать запись лога через flush и поискать в нем часть фразы "* Game … is successfully loaded from file '…sav' …" – если встречается только один раз, значит первая загрузка. В ТЧ можно добраться до файла через класс fs(), в ЧН/ЗП через библиотеку io. 1 1 Мини-моды: ТЧ ЧН ЗП Шпаргалка Ссылка на комментарий
Balavnik 86 Опубликовано 26 Июня Поделиться Опубликовано 26 Июня Если колбек объекта не перевести в nil в net_destroy, то при удалении объекта колбек так и будет болтаться всю игру? Устал. Ссылка на комментарий
Kirgudu 1 151 Опубликовано 26 Июня Поделиться Опубликовано 26 Июня Скорее всего нет, в деструкторе объекта в движке есть очистка соответствующего массива коллбэков. Но это не точно, пусть двигоправы скажут лучше, если я не прав. А вот при возможном уходе в оффлайн такого объекта хвосты останутся болтаться. 2 Инструмент Ссылка на комментарий
Balavnik 86 Опубликовано 26 Июня Поделиться Опубликовано 26 Июня Можно ли как-то добавить свои консольные команды? Хочу, чтобы при вводе команды в лог записывалась информация об акторе. Устал. Ссылка на комментарий
Kirgudu 1 151 Опубликовано 26 Июня Поделиться Опубликовано 26 Июня Консольные команды должны поддерживаться движком, поэтому только через его редактирование. Но если всё, что требуется вывести, доступно в скриптах, совсем не обязательно лезть в движок. Можно, например, прикрутить кейлоггер (легко находится поиском по форуму) и повесить вывод в лог на какую-либо незадействованную клавишу. 1 1 Инструмент Ссылка на комментарий
phalcor 56 Опубликовано 1 Июля Поделиться Опубликовано 1 Июля Хочу уменьшить на 1 количество патронов в пачке, находящейся в инвентаре актора. Делаю так: netpacket:modify(sobj, "ammo_left", n-1) --sobj - серверный объект пачки патронов Но ничего не меняется. Подозреваю, что нужно менять в клиентском объекте, но как? (стрелять не предлагать ) Ссылка на комментарий
Kirgudu 1 151 Опубликовано 1 Июля Поделиться Опубликовано 1 Июля Параметр с условным наименованием "ammo_left" есть как в state, так и в update части нет-пакета пачки патронов. В таком модуле управления нет-пакетами, как m_netpk от Артоса, это предусмотрено. Что за функционал скрывается под капотом netpacket:modify, мне не известно, но я бы посмотрел в вышеупомянутую сторону. Инструмент Ссылка на комментарий
phalcor 56 Опубликовано 1 Июля Поделиться Опубликовано 1 Июля 2 часа назад, Kirgudu сказал: Параметр с условным наименованием "ammo_left" есть как в state, так и в update части нет-пакета пачки патронов. Увы, так тоже не работает: (причём в update-части параметра nammo_left вообще нет, читал пакет так m_netpk.get(sobj,2)) local id = ammo_from:id() local sobj = server_object(id) local pk = m_netpk.get(sobj) local data = pk:get() data.ammo_left = n-1 pk:set(data) Тут видимо нужно с клиентским объектом как-то работать... Ссылка на комментарий
Kirgudu 1 151 Опубликовано 1 Июля Поделиться Опубликовано 1 Июля (изменено) Тогда в голову приходит только пересоздание пачки с новым количеством патронов через alife():create_ammo(). Честно говоря, не уделял никогда внимания патронам. Вполне возможно, что управлять ими на лету и нельзя. Коллеги-старожилы, поправьте. Цитата причём в update-части параметра nammo_left вообще нет, читал пакет так m_netpk.get(sobj,2) При чтении полного пакета есть: data.ammo_left и data.upd.ammo_left. Но ни на что не влияет. Изменено 1 Июля пользователем Kirgudu 1 1 Инструмент Ссылка на комментарий
Капрал Хикс 497 Опубликовано 5 Июля Поделиться Опубликовано 5 Июля Кто-нибудь адаптировал для себя отдельно в таск_менеджер награду инфой из АМК? У меня лыжи что-то не едут. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти