Это популярное сообщение. Zander_driver 10 333 Опубликовано 21 Августа 2015 Это популярное сообщение. Поделиться Опубликовано 21 Августа 2015 (изменено) Раньше в этой теме находились всякие полезности. Соответствующие определенным правилам и требованиям, которые были указаны в шапке. Но т.к. со временем в тему стали постить материалы не соответствующие этим требованиям - шапка более не имеет смысла. В старых постах еще может быть что-то полезное, в новых по всей видимости - вряд ли. Изменено 1 Декабря 2021 пользователем Zander_driver Привел в соответствие современным реалиям. 2 4 4 12 Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на 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. Ссылка на комментарий
UnLoaded 313 Опубликовано 19 Октября 2016 Поделиться Опубликовано 19 Октября 2016 Обновил подборку модулей...Правки других авторов, проскальзывавшие в этой или других темах в разное время, взяты в полной мере Луа-расширения используются ? Ссылка на комментарий
Kirgudu 1 209 Опубликовано 20 Октября 2016 Поделиться Опубликовано 20 Октября 2016 @UnLoaded, только скриптовые в составе модуля lua_helper. В описании всё есть. Инструмент Ссылка на комментарий
dsh 3 824 Опубликовано 30 Октября 2016 Поделиться Опубликовано 30 Октября 2016 Правки других авторов, проскальзывавшие в этой или других темах в разное время, взяты в полной мере. Не исправлена проблема с комментариями в custom_data. Взял исправления не проверив и сейчас опять получил этой же граблей по лбу. 1 dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Kirgudu 1 209 Опубликовано 30 Октября 2016 Поделиться Опубликовано 30 Октября 2016 @dsh, вот точно помню, что исправлял! Аккурат тогда, когда прочёл сообщение об этой ошибке. Видимо, исправление «потерялось» во время интеграции правок от naxac. Спасибо, что сообщил, обновил выложенные сборки. Инструмент Ссылка на комментарий
НаноБот 742 Опубликовано 13 Марта 2017 Поделиться Опубликовано 13 Марта 2017 (изменено) Возможно кому то понадобиться. --[[--------------------------------------------------------------------------- Различные утилиты. Для С.Т.А.Л.К.Е.Р. Тень Чернобыля. (с) НаноБот 19.11.2016 --]]--------------------------------------------------------------------------- --------------------------Вывод текста на экран.------------------------------- local x_text, y_text, time_update, hud local hud_text, outtext_count, outtext_num local hud_textxy, outtextxy_count, outtextxy_num local color, height_font, type_font --- создать текстовый вывод: x, y - координата начала вывода function create_hud_outtext(...) local args = {...} x_text = args[1] or 0 y_text = args[2] or 0 color = args[3] or {255, 225, 215, 0} -- золотистый ц. height_font = args[4] or 20 type_font = args[5] or GetFontLetterica16Russian() align_text = args[6] or CGameFont.alLeft y_text = y_text - height_font hud = get_hud() time_update = 0 outtext_count = 0 hud_text = {} outtextxy_count = 0 hud_textxy = {} end --- удалить тестовый вывод: is_del - надо ли удалять function destroy_hud_outtext(is_del) if is_del then if hud_text then for i = 1, outtext_count do hud:RemoveDialogToRender(hud_text[i]) end hud_text = nil outtext_count = nil outtext_num = nil end if hud_textxy then for i = 1, outtextxy_count do hud:RemoveDialogToRender(hud_textxy[i]) end hud_textxy = nil outtextxy_count = nil outtextxy_num = nil end x_text = nil y_text = nil hud = nil time_update = nil color = nil height_font = nil type_font = nil end end --- вывести текст на экран: out - надо ли выводить, txt - текст, ... - параметры function hud_outtext(out, txt, ...) if out and hud_text then if time_update ~= time_global() then -- new update outtext_num = 0 time_update = time_global() end outtext_num = outtext_num + 1 if outtext_num > outtext_count then -- new outtext outtext_count = outtext_num hud_text[outtext_num] = CUIStatic() hud_text[outtext_num]:Init(x_text, outtext_num*height_font+y_text, 1, 1) hud_text[outtext_num]:SetFont(type_font) hud_text[outtext_num]:SetTextAlign(align_text) hud_text[outtext_num]:SetTextColor(color[1], color[2], color[3], color[4]) hud:AddDialogToRender(hud_text[outtext_num]) end hud_text[outtext_num]:SetText(string.format(txt, ...)) end end --- вывести текст на экран в нужную координату: out - надо ли выводить, x, y - координаты, txt - текст, ... - параметры function hud_outtext_xy(out, x, y, txt, ...) if out and hud_textxy then if time_update ~= time_global() then -- new update outtextxy_num = 0 time_update = time_global() end outtextxy_num = outtextxy_num + 1 if outtextxy_num > outtextxy_count then -- new outtext outtextxy_count = outtextxy_num hud_textxy[outtextxy_num] = CUIStatic() hud_textxy[outtextxy_num]:Init(x, y, 1, 1) hud_textxy[outtextxy_num]:SetFont(type_font) hud_textxy[outtextxy_num]:SetTextAlign(align_text) hud_textxy[outtextxy_num]:SetTextColor(color[1], color[2], color[3], color[4]) hud:AddDialogToRender(hud_textxy[outtextxy_num]) else hud_textxy[outtextxy_num]:SetTextX(x) hud_textxy[outtextxy_num]:SetTextY(y) end hud_textxy[outtextxy_num]:SetText(string.format(txt, ...)) end end ------------------------------------------------------------------------------- Делал по мотивам билда 1098, выводится отладочный текст на экран. Типа так. _unb.hud_outtext(out, "mYawVelocity: %.6f, dt: %.3f", self.mYawVelocity, dt) Перед использованием надо создать текстовой вывод, а потом, так же, надо не забывать удалять вывод, если уровень делает destroy. Изменено 13 Марта 2017 пользователем НаноБот 3 ...в конце концов, важен лишь, машинный код. СТАЛКЕР только для ПК! Ссылка на комментарий
Graff46 598 Опубликовано 8 Апреля 2017 Поделиться Опубликовано 8 Апреля 2017 Скриптовый модуль из мода "Новое Время".Кроме давно известных и банальных вещей содержит скриптовую систему заменяющую стандартный story_id. Подробнее в файле. Никаких адаптаций и подключений не требует. Для функцианирования некоторых плюшек могут понадобится: расширения LUA открывающие пространства имен io, os(копирование файлов), X-Ray extensions(спавн со story_id). (Для аналога story_id дополнительные правки не нужны).Ссылка.Использовать везде с указанием автора. 1 1 Ссылка на комментарий
Graff46 598 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 Какой сейчас самый юзабельный скрипт для нэт-пакетов? Ссылка на комментарий
Kirgudu 1 209 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 (изменено) @Graff46, мнения расходятся.Лично я пользуюсь модулем, выложенным в этом посте - это последняя версия, опубликованная Артосом, для неё форумчанами также были сделаны исправления ряда найденных ошибок.Если не ошибаюсь, данный модуль также получил некоторое развитие в каком-то из модов, одним из авторов которого является @naxac, но какие там были сделаны добавки, общие или частные, нужно спрашивать у него.С другой стороны, насколько мне известно, автор данной темы @Zander_driver по некоторым причинам пользуется более старой версией модуля.ИМХО, стоит начать с m_netpk, а уж если что-то не устроит - переходить на иное. Изменено 10 Мая 2017 пользователем Kirgudu Инструмент Ссылка на комментарий
dsh 3 824 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 @Graff46,соглашусь. m_netpk работает. Я использовал и m_net_utils и еще какой-то скрипт от xstream. В принципе все работают. Сейчас использую m_netpk. Единственное, если ты иногда захочешь в custom data писать данные не в формате ini, то m_netpk на это не рассчитан. Но в этом случае я бы посоветовал пересмотреть свои желания. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Graff46 598 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 @Kirgudu, Я пытался работать с m_netpk, но что то не заладилось, работаю с xrs_utils.script. А вообще в многих модулях для работы требуется отдельный LTX файл, в котором записаны классы объектов. Я нашел способ изменить class_registrator.script и читать классы из него, и если моддер добавляет свои объекты\классы, то нет необходимости возиться еще с LTX. Вот и хочу узнать на какой скрипт лучше свою фитчу навесить... Ссылка на комментарий
Kirgudu 1 209 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 @Graff46, m_netpk всё-таки наиболее современный, в нём самим Артосом было исправлено много ошибок и сделано много доработок по сравнению с m_net_utils. Повторюсь, если уж начинать, то с него. ИМХО, конечно.Скрипт xStream не щупал, про его плюсы и минусы ничего сказать не могу. Инструмент Ссылка на комментарий
dsh 3 824 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 По моим ощущениям, m_netpk сделан, как минимум, с учетом скрипта от xstream. Много похожего. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Kirgudu 1 209 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 (изменено) @dsh, так это всё тогда совместно обсуждалось и разрабатывалось. Согласен, не исключено что xStream была своего рода первопроходцем. Не в курсе деталей, но по истории форума при желании проследить, думаю, можно. Кстати, если ты иногда захочешь в custom data писать данные не в формате ini что имеешь в виду? Запись/чтение голой строки "as is", без внутреннего парсинга с попутной потерей неканонических данных? Если есть необходимость, такой форсированный режим добавить не сложно. Изменено 10 Мая 2017 пользователем Kirgudu Инструмент Ссылка на комментарий
dsh 3 824 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 (изменено) такой форсированный режим добавить не сложно Я не говорю, что сложно. Просто человеку, который только собирается использовать m_netpk, лучше об этом знать заранее, а то захочет прочитать custom data, в которой данные не в формате ini, и будет голову ломать, чего же ему :getString() возвращает пустую строку. Изменено 10 Мая 2017 пользователем dsh dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Graff46 598 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 :getString() возвращает пустую строку.А в каком виде кастом дэйта может быть кроме ини? Ссылка на комментарий
dsh 3 824 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 @Graff46, в совершенно любом. К примеру, в соляночных (в старой солянке) контейнерах артефактов все данные хранятся одной строкой. Просто строкой, секции артефактов через запятую. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Graff46 598 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 @dsh, А если логика? [logic] active = remark [remark] anim = guard meet = default_meet Ссылка на комментарий
dsh 3 824 Опубликовано 10 Мая 2017 Поделиться Опубликовано 10 Мая 2017 @Graff46, вопрос не понятен. Что если логика? dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Kirgudu 1 209 Опубликовано 11 Мая 2017 Поделиться Опубликовано 11 Мая 2017 @Graff46, а вот это как раз и есть формат ini, который m_netpk понимает и парсит для тебя в таблицу при чтении нет-пакета. Update: Хотел было по-быстрому добавить в m_netpk поддержку произвольной строки, но, заглянув в скрипт, понял, что это не обязательно.В конфиге m_netpk.ltx есть такой параметр: disable_convert_custom_data = false ;--/ отключить конвертирование 'custom_data' из строки в таблицу (и обратно) Если поставить здесь true - кастом дата всегда будет представлена только в виде строки. И если уж конкретный скриптёр знает, зачем писать туда данные не в формате ini, ему не составит труда оперировать строками в том числе и для канонических данных. Инструмент Ссылка на комментарий
dsh 3 824 Опубликовано 11 Мая 2017 Поделиться Опубликовано 11 Мая 2017 @Kirgudu, это не то. Когда я писал, то имел ввиду, что для некоторых случаев может понадобиться доступ к сырой строке. Ну вот как в моем примере, все в ini, а для контейнеров используется свой формат. Эта же опция переключает поведение глобально. По хорошему, там бы добавить методы :getStringRaw() и :setStringRaw() или что-то вроде того. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти