Всем привет! Я в этом году сделал мод с настраиваемым и совместимым шлемом/визором на основе маленького мода Universal Visor Mk II (который, похоже, не покидал пределы дискорда) - с разрешением.
Основная идея, как и у Mk II - рисовать шлем под существующими HUD с помощью ZScript и функции RenderUnderlay вместо их замены. Поэтому он совместим почти со всеми другими модами и интерфейсами.
В Mk III много новых способов настроить шлем и новые фичи:
Скрытый текст:
- Несколько стилей шлема (классический Думгай, Дум 2016 и др.)
- Смена стиля отдельных частей для комбинации разных шлемов
- Отдельные цвета для частей шлема, стекла визора и подсветки по контуру
- Выбор положения и размера частей шлема
- Цветовая индикация здоровья/брони/аммуниции (с помощью подсветки и стекла)
- Постепенно нарастающие трещины визора на основе здоровья и брони
- "Сетка" брони, визуально реагирующая на урон и обозначающая количество брони
- Пятна крови от врагов на стекле визора, совместимые с большинством модов
- Плавные покачивания (и тряска) шлема в такт движениям с интерполяцией анимации, чтобы фпс был выше 35
- Иммерсивные звуковые индикаторы
- Предустановленные визуальные пресеты
- 3 разрешения текстур на выбор
- Система пользовательских пресеты, основанная на системе во FlexiHUD
С момента релиза в мае есть 2 обновления, текущая версия: 1.2
Кроме того, я перевёл всё (там большое меню с кучей пояснений) на русский язык.
Требуется GZDoom начиная с версии 4.11.0 или LZDoom с 4.11.4
В основном мод тестировался в UZDoom 4.14.3, также совместим с UZDoom 5.0 RC1
Стоит отметить, что мультиплеер я не тестировал, и теоретически там может быть рассинхрон из-за функции random. crandom я специально не использовал, чтобы было больше совместимых версий gzdoom, а в rng идентификаторах ещё не разбирался.
Авторы оригинального мода (Universal Visor Mk II): generic name guy, Agent_Ash, CHEEKIBREEKI
Обалденный мод, суперская замена старым Dynamic Hud и Ultimate Doom Visor.
За примерно час игры набралось несколько реквестов на добавления в мод:
Было бы здорово иметь большее количество индикаторов, понимаю что мод рассчитан на совместимость с другими худами, но и без них он благодаря подсветке даёт достаточное количество информации по здоровью, броне и патронам. И было бы не плохо иметь стилизованные под визор статы уровня или индикатор берсерка. К слову о подсветке, является ли влияние освещённости сектора на яркость подсветки багом?
Моду не хватает отображения магшота, в виде иконки на подобии UDV или динамик худа, или в виде отражения на визоре. Есть конечно несколько оверлеев частично выполняющих эту функцию, но замена из такая себе.
Подозреваю что реализовать это будет весьма затруднительно, но всё же... хотелось бы чтобы отдельные прессеты (шаблоны) графики могли подключаться отдельно от мода, чтобы базовая его версия могла весить меньше, и была возможность сообществу делать свои шаблоны.
Кроме вышеперечисленного я заметил в переводе остаток "or" из оригинального текста.
Было бы здорово иметь большее количество индикаторов
Магшот и другие индикаторы пожалуй выходят за рамки мода, он задуман именно как дополнение к другим интерфейсам. Да и дизайнить отдельные UI-элементы это уже вне моей компетенции) По крайней мере, в планах такого нет.
Я лично пользуюсь иногда LevelInfo для универсальных индикаторов.
является ли влияние освещённости сектора на яркость подсветки багом?
Яркость подсветки я кажется осознанно делал тоже зависимой от освещения, чтобы она была не слишком яркой в темноте. С другой стороны, наверно постоянная в самом деле будет реалистичнее. Скорее всего, добавлю настройку выбора в следующей обнове (пока не знаю, когда она будет), на какие элементы влияет свет.
хотелось бы чтобы отдельные прессеты (шаблоны) графики могли подключаться отдельно от мода
Про подключаемые шлемы думал, да, но это и впрямь выглядит трудоёмкой задачей, может быть когда-нибудь... А так в целом формально ничто не мешает кому-нибудь выпустить расширенную версию с доп. шлемами, я там в readme в pk3 на всякий случай указывал нюансы по лицензиям и т.д.
трещины уж слишком жирноватые на большом разрешение
Эх, а я специально сделал их потолще, ведь стекло такого шлема по идее очень бронированное, тонкие смотрелись неубедительно. Наверно, тоже когда-нибудь добавлю настройку выбора, благо сделать тонкие из толстых проще, чем наоборот) Или выбор максимального уровня трещин, чтобы их меньше было. Сейчас у них кстати есть свой слайдер прозрачности. Про разрешение не понял только, на толщину трещин оно не должно влиять.
Яркость подсветки я кажется осознанно делал тоже зависимой от освещения, чтобы она была не слишком яркой в темноте. С другой стороны, наверно постоянная в самом деле будет реалистичнее. Скорее всего, добавлю настройку выбора в следующей обнове (пока не знаю, когда она будет), на какие элементы влияет свет.
Сейчас вспомнил, в нескольких своих модах тоже делал зависимость ui элементов от освещения уровня, и довольно быстро стало ясно что резкое изменения яркости выглядит не очень, так что я для этого использовал LinearValueInterpolator. Ну а для подсветки наверное можно просто уменьшить влияние освещения.
Ещё вспомнил что хотел предложить кастомное отображение сообщений в моде, ибо дефолтные здумовские не вписываются, а модов которые предлагают свои варианты по пальцами одной руки пересчитать. Если что кстати могу сам попробовать это реализовать и прислать. Или может вообще отдельный мод на худ месаджи сделать....
Сейчас вспомнил, в нескольких своих модах тоже делал зависимость ui элементов от освещения уровня, и довольно быстро стало ясно что резкое изменения яркости выглядит не очень, так что я для этого использовал LinearValueInterpolator. Ну а для подсветки наверное можно просто уменьшить влияние освещения.
Уменьшенное влияние на подсветку - это идея, да и интерполятор как раз к ней для красоты можно приделать. Насчёт обычного интерфейса хз - яркость, кмк, на него влиять и не должна, по крайней мере это непривычно. Но если и делать так, то тоже плавно, да)
Ещё вспомнил что хотел предложить кастомное отображение сообщений в моде, ибо дефолтные здумовские не вписываются, а модов которые предлагают свои варианты по пальцами одной руки пересчитать. Если что кстати могу сам попробовать это реализовать и прислать. Или может вообще отдельный мод на худ месаджи сделать....
Ну с сообщениями такая же тема, как с магшотом и т.д. Вообще хорошо бы, но сам я вряд ли буду браться. У меня, к сожалению, времени на мод скоро будет ещё меньше, чем летом, и новый масштаб не осилю. Вот весной был марш-бросок)
Если у тебя есть желание попробовать, я конечно за, как в формате добавления в мод, так и просто отдельного. К тому же у тебя опыта явно больше.
У меня в планах (тоже не особо понятных по времени) только фиксы и небольшие улучшения: та же подсветка, трещины, всплывающие подсказки в меню с помощью libtooltipmenu, чтобы разгрузить его.
А на doomworld предложили добавить ночное видение. Недавно на тяжелой карте сталкивался с тормозами от фонарика, даже от Flashlight++, так что удобное ночное видение - это вещь. Вообще уже есть отличный Night Vision Pack, однако он не меняет наэкранные текстуры, а в случае со шлемом кровь и полоска очистителя должны менять цвет тоже (не уверен насчёт трещин). Поэтому попробую добавить совместимость в виде ручного изменения цвета при активных фильтрах из того мода. Кстати, я только сейчас понял, что у меня из поверапов только невидимость даёт визуальное изменение. А ведь они бывают разные у модов. И не пойму, можно ли сделать это универсально, ведь Powerup.Colormap даёт только номер lump, и вроде как стандартные "GoldMap" можно захардкодить, а вот можно ли прочитать на лету Powerup.ColorMap 0, 1, 1 (один из фильтров в Night Vision) - вопрос. В редком случае бывает A_SetBlend, который можно считать в Powerup.Blendcolor. Ещё иногда A_SetBlend временно делается на игроке (и тогда его BlendR и т.д. можно считать), например при подборе Соулсфер в некоторых модах. Надо будет как-то собрать это всё, чтобы хотя бы часть поверапов подкрашивали шлем. Что-то наверняка придётся захардкодить... Ну а на ванильную неуязвимость наверно бахну просто STYLE_AddStencil, выглядит хорошо.
Если у тебя есть желание попробовать, я конечно за, как в формате добавления в мод, так и просто отдельного.
Окей, попробую тогда до конца лета что-нибудь соорудить. Самым трудным думаю будет оформление, ибо дизайнер из меня такой-се. Самым логичным наверное будет подсмотреть несколько вариантов из других игр и все их реализовать дав выбор в меню
Добавлено спустя 27 секунд:
Про бленд ничего не могу подсказать, сам почти дела с такими вещами не имел