Dynamic Lights
Dynamic Lights добавляет динамическое освещение предметам и сущностям в Minecraft. Серверный датапак и мод для Java, который работает с клиентами без обязательной установки модов и поддерживает Fabric, Forge, NeoForge и Quilt.
Dynamic Lights - динамическое освещение в Minecraft
Dynamic Lights - оптимизированный кроссплатформенный датапак и мод для Minecraft, который добавляет подвижные источники света. Предметы, горящие сущности, зажжённый TNT и другие объекты освещают пространство во время перемещения, поэтому в пещерах и тёмных местах больше не приходится постоянно останавливаться ради установки факела.
Проект относится к игровым механикам, utility и adventure-контенту. По сути, это удобное улучшение ванильного освещения без обязательной установки клиентского мода у каждого игрока. На сервере достаточно установить Dynamic Lights один раз, после чего эффект будет доступен всем участникам.
Что освещает Dynamic Lights
Система отслеживает несколько типов предметов и сущностей:
- Все предметы, которые могут быть источниками света
- Сущности, находящиеся в огне
- Зажжённый TNT
- Светящиеся спруты (Glow Squids)
- Сущности с эффектом свечения (Glowing)
- Все сущности Allay
- Зачарованные предметы и броня
Это особенно заметно во время исследования пещер. Факел в руке или светящийся предмет освещает путь, пока игрок идёт, а горящий моб становится хорошо виден в темноте. При этом мир не превращается в постоянный яркий режим: источники света появляются только рядом с игроками и с учётом ограничений производительности.
Как меняется игра
В обычном Minecraft факел или фонарь начинает освещать территорию только после установки на блок. Dynamic Lights меняет этот принцип: источник света следует за предметом или сущностью, пока та перемещается. Это удобно при спуске в шахты, поиске проходов в больших пещерах и перемещении по тёмным участкам, где ставить блоки каждые несколько шагов не хочется.
Зачарованная броня и предметы получают дополнительную практическую пользу. Они могут подсвечивать окружение во время путешествия, а светящиеся Allay и Glow Squids становятся заметнее в подземных и водных зонах. Для ванильного выживания это небольшая, но очень приятная настройка качества игры.
Серверная установка и совместимость
Dynamic Lights работает как полностью серверный datapack. Игрокам не требуется отдельно устанавливать мод на клиент, если сервер уже содержит нужные функции. Это удобно для приватных миров, совместного выживания и серверов, где не хочется заставлять каждого участника собирать одинаковый клиентский набор модификаций.
Поддерживаются следующие сценарии:
- Одиночная игра с установленным датапаком или модом
- Java-серверы с несколькими игроками
- Подключение клиентов Minecraft Java и Bedrock через Java-сервер
- Установка в сборки на Fabric, Forge, NeoForge и Quilt в мод-версии
Доступность зависит от выбранного формата и версии игры. Проект заявлен для Minecraft 1.17-1.21.x, а также для версий 26.1.x, 26.2 и 26.3. Перед установкой стоит проверить, что версия датапака или мода совпадает с версией мира и загрузчика.
На сервере Dynamic Lights должен быть установлен именно на стороне сервера. Если просто добавить его одному игроку, динамический свет в многопользовательском мире работать не будет. Это ключевой нюанс проекта.
Пресеты и меню настроек
В Dynamic Lights есть встроенное меню конфигурации в чате. Для его открытия нужны права оператора. Выполните команду:
/function #dynamic_lights_by_creepermeyt:config
В меню доступны три готовых пресета:
- FASTEST - самый лёгкий режим, в котором динамический свет получают только факелы
- OPTIMIZED - все основные функции включены с упором на производительность
- SMART - режим по умолчанию и рекомендуемый вариант, который включает все функции и исправляет проблемы с освещением
Там же открывается меню переключаемых параметров. Для каждой функции можно отдельно выбрать состояние ON или OFF, а ещё посмотреть количество активных источников света.
Перед удалением датапака используйте пункт Uninstall. Он отключает динамическое освещение и очищает связанные данные перед удалением файлов из папки datapacks. Для обычного выживания это обязательный шаг: резкое удаление работающего датапака может оставить в мире служебные световые блоки.
Ограничения по расстоянию
Dynamic Lights не обрабатывает все объекты на любой дистанции. Это сделано специально, чтобы система не нагружала сервер и не мешала техническим механизмам вроде мобоферм.
- Зачарованные предметы и броня светятся только в пределах 24 блоков от игрока
- Зажжённый TNT, сущности с эффектом свечения, горящие сущности, Glow Squids и Allay работают в пределах 48 блоков
- Зажжённый TNT создаёт максимум 48 динамических источников света, даже если рядом находится больше блоков TNT
- Предметы на земле обрабатываются в радиусе до 96 блоков от игрока
- Не все предметы получают свет: незначимые источники с уровнями света 1 или 3 могут быть исключены
Такие расстояния выглядят разумно на практике. Игрок видит свет рядом с собой, но серверу не приходится постоянно отслеживать каждый предмет в загруженных чанках.
Что важно знать о световых блоках
Технически динамическое освещение строится на световых блоках. У такого подхода есть ограничения, которые встречаются у всех подобных datapack-проектов.
- Датапак не работает в мультиплеере, если не установлен на стороне сервера
- Световые блоки нельзя размещать внутри блоков без столкновений или в текущей воде
- Динамический свет может влиять на обычное течение воды и лавы
- Световые блоки способны мешать движению поршней
- Некоторые TNT-дупликаторы могут перестать работать корректно
- Световые блоки, размещённые создателем карты, могут удаляться, если рядом проходит игрок с Dynamic Lights
- При движении свет выглядит немного блочно, а не как полностью плавный источник освещения
Поэтому проект лучше использовать в обычном выживании и приключенческих мирах. На техническом сервере с большим количеством поршней, водных механизмов или TNT-дупликаторов сначала стоит проверить отдельную копию мира.
Оптимизация и производительность
Dynamic Lights рассчитан именно на серверную работу и старается обрабатывать только нужные источники света в заданных радиусах. Автор заявляет, что проект может быть до 50 процентов быстрее похожих датапаков. Фактическая нагрузка зависит от количества игроков, предметов, горящих сущностей и активного TNT.
Для слабого сервера разумно начать с пресета FASTEST, особенно если динамический свет нужен только от факела в руке. На обычном сервере подойдёт SMART: это рекомендуемый режим с исправлением проблем освещения. OPTIMIZED можно выбрать, если нужны все функции без автоматической логики SMART.
В актуальном релизе v1.4.6 улучшена обработка перегрузки, добавлена поддержка Minecraft 26.3, реализовано постепенное появление света у предметов, а также исправлены проблемы со светом в режиме наблюдателя и переключением пресетов при большом количестве источников.
Совместимость с другими проектами
Dynamic Lights не требует от игроков обязательной установки клиентских модов, поэтому его удобно добавлять в серверные сборки с разными клиентами. При этом он использует световые блоки, а значит может пересекаться с другими датапаками, которые управляют освещением, поршнями, водой или TNT.
Для Iris, Sodium и других графических модов отдельная клиентская интеграция не является обязательной: Dynamic Lights меняет освещение на уровне мира, а не только внешний вид кадра. Основные нюансы совместимости связаны не с графикой, а с другими datapack-механиками и техническими конструкциями.
Связанный ресурс Flashlight использует Dynamic Lights как обязательную часть для Minecraft 1.21.4. Это хороший пример того, как серверное динамическое освещение может стать базой для собственных предметов и механик.
Совместимость для авторов датапаков
В проекте предусмотрена точка расширения для разработчиков собственных datapack-проектов. Dynamic Lights содержит тег функций:
#dynamic_lights_by_creepermeyt:custom.compatibility
Он запускается непосредственно перед обработкой источников света за текущий тик. Благодаря этому другие датапаки могут добавлять собственные условия, координаты и уровни освещения, не переписывая основной алгоритм Dynamic Lights.
В папке /function/compatibility находится пример файла compatibility.mcfunction. В нём показано, как обращаться к алгоритму динамического света из собственных функций, добавлять пользовательские источники и подключать совместимость с другими датапаками.
Можно задавать собственные условия появления света, координаты, уровень освещения и дополнительные проверки. Эта возможность пригодится авторам карт, приключенческих сценариев и игровых механик, где свет должен появляться не только от ванильных предметов.
Расширение распространяется на условиях лицензии MIT. При добавлении собственных функций важно учитывать ограничения световых блоков: они всё так же могут мешать поршням, воде, лаве и техническим конструкциям.
Кому подойдёт Dynamic Lights
Dynamic Lights стоит рассматривать как серверное улучшение ванильного Minecraft, а не как полноценный графический мод. Он особенно полезен тем, кто часто исследует пещеры, играет с друзьями на Java-сервере или хочет видеть свет от факелов и предметов без установки клиентской сборки.
Для обычного выживания оптимальным выбором будет пресет SMART. На технических картах лучше проверить ограничения световых блоков, а на слабом сервере начать с FASTEST и включать дополнительные источники постепенно. По факту это небольшой datapack, который заметно меняет ощущения от подземных вылазок и при этом не требует одинаковых модов у всех игроков.
Скриншоты Dynamic Lights
Часто задаваемые вопросы
Совместимость
Создатели
Детали
Версии датапака Dynamic Lights
Доступно 35 версий. Сначала показаны самые популярные и самые свежие.