Майнкрафт 26.1 Снапшот 1

Мы что-то упустили? Ах да! Этот снимок знаменует начало нашей новой системы нумерации версий для Minecraft на Java Edition. Увидимся в следующем году, чтобы увидеть больше снимков и, в конечном итоге, релиз Java Edition 26.1! Удачной добычи!

В этом финальном релизе 2025 года мы (среди прочего) обновляем нашу версию Java для среды выполнения, применяем подход, основанный на данных, к торговле с жителями деревни и добавляем новую команду, которая взмахивает руками сущностей. Наконец, все наши постройки теперь будут необфусцированными.

Изменения

  • Теперь, какие профессии открываются жителями деревни, определяются с помощью детерминированных случайных последовательностей, как и выпадение добычи и добыча при обмене
  • Алгоритм, сопоставляющий уровни освещения блоков и неба с яркостью объектов на экране, был полностью переписан
  • Введен новый отладочный рендерер карт освещения, который можно включить с помощью сочетания клавиш F3 + 4

Изменения алгоритма карт освещения

  • Новый алгоритм должен в основном давать те же общие результаты, что и раньше, но:
    • Он проще и понятнее, и Исправлены многочисленные ошибки предыдущей версии, перечисленные в разделе «Исправленные ошибки» ниже
    • Эффект тьмы и эффект затемнения мира в битве с Визером теперь работают одинаково во всех измерениях
    • Эффект ночного видения теперь просто добавляет окружающий свет вместо масштабирования результирующих цветов
      • Это означает, что полностью темные области больше не выглядят ярче, чем области, освещенные светом блоков или неба
    • Больше аспектов алгоритма, таких как оттенок света блоков, цвет окружающего света и цвет ночного видения, теперь управляются данными через атрибуты среды, как описано в разделе «Пакет данных» ниже

Отладочный рендерер карты освещения

  • Добавлен новый отладочный рендерер для карты освещения, который можно включить с помощью F3 + 4
  • Назначение клавиши
  • Это взаимоисключающее отображение с графиками FPS/TPS и сетевыми графиками
  • Отображает текстуру карты освещения в реальном времени в правом нижнем углу экрана
  • Вертикальная ось текстуры представляет уровни освещения неба (0-15 снизу вверх)
  • Горизонтальная ось текстуры представляет уровни освещения блоков (0-15 слева направо)
  • Цвет каждого пикселя представляет собой результирующий цвет, который будет применен к блокам и объектам, освещенным соответствующими уровнями освещения блоков и неба

UI

Экран отладки

  • Записи отладки looking_at_block и looking_at_fluid больше не отображаются теги
  • Добавлены новые отладочные записи:
    • looking_at_block_tags
    • looking_at_fluid_tags
    • looking_at_entity_tags
  • Переименованы отладочные записи:
    • looking_at_block -> looking_at_block_state
    • looking_at_fluid -> looking_at_fluid_state

Технические изменения

  • Версия пакета данных теперь 95
  • Если на сервере мало места на диске, операторам сервера теперь будет отображаться всплывающее сообщение
  • Для игры теперь требуется Java 25
  • Включенная дистрибуция Java теперь представляет собой сборку Microsoft OpenJDK 25

Версия пакета данных 95

  • Добавлен реестр, управляемый данными, для торговли с жителями деревни
  • Доступ к слотам инвентаря пиглинов теперь можно получить с помощью piglin.* аналогично тому, как можно получить доступ к инвентарю жителей деревни с помощью villager.*

Торговля с жителями деревни на основе данных

Торговля, предлагаемая жителями деревни и странствующими торговцами, теперь основана на данных и может быть настроена разработчиками пакетов данных

Торговля с жителями деревни

  • Находится в папке villager_trade, представляет собой чертеж для торговли, который используется жителями деревни и странствующими торговцами для генерации фактических сделок
  • Формат записи:
    • wants, объект, представляющий тип предмета и количество предметов, необходимых для торговли
      • id, идентификатор предмета
      • count, необязательное числовое значение, указывающее, сколько предметов необходимо для обмена
        • По умолчанию — константа 1
      • components, необязательная карта компонентов, представляющая ожидаемые компоненты данных для предмета
        • По умолчанию пустая карта
    • additional_wants, необязательный объект, представляющий дополнительный предмет, необходимый продавцу, имеет тот же формат, что и wants
    • gives, стопка предметов, представляющая результирующий предмет, выданный продавцом при торговле
      • Использует существующий формат для стопок предметов
    • given_item_modifiers, необязательный список предметов Модификаторы, представляющие модификаторы, применяемые к предмету в gives, такие как зачарования или зелья, используются для добавления динамики в сделку вместо жесткого кодирования определенных значений
      • Использует существующий формат для модификаторов предметов (также известных как модификаторы добычи, функции предметов, функции добычи…)
      • Если какой-либо из них возвращает пустой предмет, вся сделка будет отменена
      • Ссылки на модификаторы предметов пока не поддерживаются
      • Если у конечного предмета есть компонент stored_enchantment, содержащий зачарование в теге #double_trade_price, то количество wants удваивается
    • max_uses, необязательный параметр, представляющий максимальное количество использований сделки
      • Устанавливается в 1, если параметр возвращает меньшее значение
      • По умолчанию равно 4
    • reputation_discount, параметр, представляющий, насколько такие факторы, как спрос, скидки или штрафы, влияют на стоимость, представленную параметром wants
      • Установлено 0.0, если поставщик чисел возвращает меньшее значение
      • По умолчанию 0.0
    • xp, необязательный поставщик чисел, представляющий количество опыта, которое получает торговец при совершении сделки.
      • Устанавливается на 0, если поставщик чисел возвращает меньшее значение
      • По умолчанию 1
    • merchant_predicate, предикат, представляющий условия для торговец, условия сделки с которым должны быть выполнены
      • Использует существующий формат для предикатов (также известных как условия получения добычи)
      • Ссылки на предикаты пока не поддерживаются
    • double_trade_price_enchantments, необязательный идентификатор зачарования, список идентификаторов зачарований с пространством имен или тег зачарования с префиксом хеша, представляющий зачарования, которые удваивают дополнительную стоимость от minecraft:enchant_randomly и minecraft:enchant_with_levels, если у них установлен параметр include_additional_cost_component true и если у предмета есть одно из предоставленных значений в его компоненте minecraft:stored_enchantments

Пример обмена изумруда и книги на зачарованную книгу, предлагаемый только жителями пустыни

{
"additional_wants": {
"id": "minecraft:book"

},
"double_trade_price_enchantments": "#minecraft:double_trade_price",
"given_item_modifiers": [
{
"function": "minecraft:enchant_randomly",
"include_additional_cost_component": true,
"only_compatible": false,
"options": #minecraft:trades/desert_common

},

{
"function": "minecraft:filtered",
"item_filter": {
"items": "minecraft:enchanted_book",
"predicates": {
"minecraft:stored_enchantments": [
{}

]

}

},
"on_fail": {
"function": "minecraft:discard":

}
}

],
"gives": {
"count": 1,
"id": "minecraft:enchanted_book"

},
"max_uses": 12.0,
"merchant_predicate": {
"condition": "minecraft:entity_properties",
"entity": "this",
"predicate": {
"predicates": {

"minecraft:villager/variant": "minecraft:desert"

}

}
},
"reputation_discount": 0.2,
"wants": {
"id": "minecraft:emerald"

}
}

Наборы товаров

  • Находятся в папке trade_set, это группы товаров, предлагаемых жителями деревни и странствующими торговцами
  • В настоящее время у нас есть только жестко заданные наборы, доступные в <profession>/level_<level> для жителей деревни, а также в wandering_trader/buying, wandering_trader/special, wandering_trader/common для странствующих торговцев
  • Формат ввода:
    • trades, идентификатор сделки жителя деревни, список идентификаторов сделок жителей с пространством имен или тег сделки жителя деревни с префиксом хеша, представляющий сделки, входящие в этот набор сделок
    • amount, числовой поставщик, представляющий количество сделок, которые будут сгенерированы из этого набора при использовании
      • Если сгенерированное число больше, чем количество доступных сделок, то оно будет генерироваться только до тех пор, пока все сделки не будут использованы хотя бы один раз, если только allow_duplicates не установлено в true
    • allow_duplicates, логическое значение, указывающее, может ли набор сделок использовать одну и ту же сделку с жителем деревни несколько раз для генерации сделок
      • По умолчанию false
    • random_sequence, необязательная именованная случайная последовательность, определяющая, какие сделки генерируются
      • По умолчанию используется недетерминированная случайная последовательность

Пример набора сделок, предлагающего 2 сделки из #minecraft:armorer/level_1, разрешающий дубликаты

{
"amount": 2.0,
"trades": "#minecraft:armorer/level_1",
"random_sequence": "minecraft:trade_set/armorer/level_1",
"allow_duplicates": true
}

Команды

Добавлен swing

  • Новая команда, позволяющая эсминцам размахивать руками
  • Не все эсминцы поддерживают анимацию размахивания. swing будет успешно выполнен для этих сущностей, но клиенты будут отображать его только тогда, когда это возможно
  • Например, это позволяет раскачивать руки манекена
  • Возвращает количество сущностей, для которых был отправлен сигнал раскачивания

Синтаксис: /swing <mainhand|offhand>

Атрибуты окружения

minecraft:visual/block_light_tint

Оттенок света блока. Цвет света блока изначально темно-серый при низком уровне освещенности, становится окрашенным этим атрибутом при среднем уровне и становится белым при высоком уровне. По умолчанию он обеспечивает желтоватый оттенок факелов. Для этого атрибута лучше всего подходят яркие цвета, при этом хотя бы один цветовой компонент должен быть полностью ярким. Оттенок применяется глобально ко всем источникам света, видимым на экране. Отдельные источники света нельзя оттенить по-разному.

  • Тип значения: цвет RGB
  • Значение по умолчанию: #FFD88C
  • Модификаторы: Модификаторы цвета RGB
  • Интерполировано: да
  • Разрешено в позиции камеры

minecraft:visual/ambient_light_color

Определяет как оттенок, так и яркость окружающего освещения. Этот свет применяется к миру при уровне освещенности 0. Блок и свет неба добавляются поверх него.

  • Тип значения: цвет RGB
  • Значения по умолчанию: #0A0A0A для Верхнего мира, #302821 для Нижнего мира, #3f473f для Края
  • Модификаторы: Модификаторы цвета RGB
  • Интерполировано: да
  • Разрешено в позиции камеры

minecraft:visual/night_vision_color

Этот цвет используется аналогично цвету окружающего освещения. Когда эффект ночного видения активен, в качестве окружающего цвета используется максимум minecraft:visual/night_vision_color и minecraft:visual/ambient_light_color для каждого компонента. Ночное видение по умолчанию не тонируется.

    • Тип значения: цвет RGB
    • По умолчанию

Значение t: #999999

  • Модификаторы: Модификаторы цвета RGB
  • Интерполировано: да
  • Разрешено в позиции камеры

 

Компоненты данных

Добавлено minecraft:additional_trade_cost

  • Временный компонент, используемый для изменения count необходимого предмета gives в обмене с жителем деревни; удаляется после создания обмена
  • Формат: целое число

Добыча Функции

  • Добавлен тип таблицы добычи minecraft:villager_trade, который принимает следующие параметры:
    • this, сущность, предлагающая обмен
    • origin, позиция блока сущности у ее ног

Добавлен minecraft:set_random_dyes

  • Добавляет красители к компоненту данных minecraft:dyed_color предмета, если предмет находится в #dyeable:
  • conditions — условия для применения функции
  • number_of_dyes — числовой поставщик, представляющий количество случайных красителей из шестнадцати, которые будут применены к предмету
    • Один и тот же краситель может быть выбран несколько раз

Добавлен minecraft:set_random_potion

  • Случайно устанавливает компонент данных minecraft:potion_contents для предмета. Поля:
  • class=»MC_Effect_TextHighlightA»>conditions — условия для применения функции
  • options — необязательный идентификатор зелья, список идентификаторов зелий с пространством имен или тег зелья с префиксом хеша, представляющий возможные зелья для выбора
    • По умолчанию используется любое зелье из реестра potions

Изменено minecraft:enchant_with_levels

Теперь также принимает следующее поле:

  • include_additional_cost_component — необязательное логическое значение, указывающее, следует ли добавлять компонент minecraft:additional_cost_component к предмету в зависимости от стоимости зачарования
    • По умолчанию false
    • Значение определяется поставщиком чисел levels и совпадает с тем, которое используется для определения уровня зачарования

Изменено minecraft:enchant_randomly

Теперь также принимает следующее поле:

  • include_additional_cost_component — необязательное логическое значение, указывающее, следует ли добавлять minecraft:additional_cost_component к предмету в зависимости от стоимости зачарования
    • По умолчанию false
    • Значение определяется значением, выбранным levels, или его значением по умолчанию с использованием следующей формулы: 2 + random(0, 5 + level * 10) + 3 * level

Предикаты

Сущность Предикаты

player Подпредикат
  • Новое необязательное поле: food — Предикат «Еда»
  • Формат: Объект с полями:
    • level — необязательный целочисленный диапазон min/max, указывающий требуемый уровень еды
    • saturation — необязательный диапазон float min/max, указывающий требуемый уровень насыщенности

Добавлено minecraft:sum

  • Возвращает сумму список поставщиков номеров
  • Поля:
    • команды, список поставщиков номеров

Зачарования

  • Компонент post_piercing_attack больше не работает только для игрока, если у этого игрока есть определенный уровень еды

Теги

  • Добавлено несколько тегов, представляющих группы ремесел жителей деревни, из которых жители деревни и странствующие торговцы формируют свои торговые портфели
    • Жители деревни имеют следующие теги, представляющие каждую профессию и уровень торговли в формате: #<profession>/level_<level>, до 5-го уровня
      • Кузнецы имеют теги #common_smith/level_<level>, представляющие распространенные профессии среди оружейников, оружейников и инструментальщиков, до 5-го уровня
    • Странствующие торговцы имеют следующие теги: #wandering_trader/buying, #wandering_trader/special, #wandering_trader/common

Теги зачарования

  • Удалены следующие теги:
    • trades/desert_special
    • trades/jungle_special
    • trades/plains_special
    • trades/savanna_special
    • trades/snow_special
    • trades/swamp_special
    • trades/taiga_special

Теги зелий

  • Добавлено #tradeable — все эффекты зелий, которые могут появляться в сделках с жителями

Версия ресурспака 76

Изменения шейдера Lightmap

  • Шейдер lightmap.fsh был значительно изменен изменено.
    • Униформа LightmapInfo теперь имеет два новых поля:
      • BlockLightTint
      • NightVisionColor
    • Поле AmbientLightFactor было удалено, его значение теперь умножается на AmbientColor
    • Поле DarkenWorldFactor было переименовано в BossOverlayWorldDarkeningFactor
  • Текст и предметы, отображаемые в пользовательском интерфейсе, теперь используют отдельную текстуру белого цвета размером 1×1, поэтому шейдеру карты освещения не всегда нужно сохранять 15,15 пикселей чисто белыми

Исправлены ошибки в версии 26.1 Snapshot 1

  • MC-64087 — Мстительные зомби / Подкрепление зомби будут пытаться атаковать вас в творческом режиме
  • MC-179949 — Вы не можете редактировать инвентарь Пиглины с помощью ‘/item replace’
  • MC-197497 — Плавный переход освещения с уровня 1 на 0 не плавный
  • MC-199589 — Удар по мобам в творческом режиме, а затем переключение в режим выживания приводит к тому, что моб нацеливается на вас
  • MC-219981 — Мобы-лидеры типа зомби появляются с 20 единицами здоровья, несмотря на увеличенное максимальное здоровье
  • MC-300465 — Карты с максимальным количеством маркеров нельзя разместить в рамках для предметов
  • MC-302186 — Окружающее освещение в Нижнем мире выглядит обесцвеченным по сравнению с предыдущими версиями
  • MC-302408 — Непоследовательное подводное освещение при применении эффекта «Сила проводника»
  • MC-302528 — Низкое небо & Блокировка света выглядит откровенно сломанной при применении на одну и ту же область
  • MC-303119 — Кормление кошки или волка в режиме выживания всего одним предметом в выбранном слоте не восстанавливает столько здоровья, сколько должно
  • MC-303125 — Криперы могут взорваться после смерти игрока
  • MC-303389 — Скорость Краевого дракона может изменяться под воздействием атак, когда он находится на ветке
  • MC-303692 — Текст отладочного наложения имеет отступ, когда улучшенная прозрачность отключена
  • MC-304023 — Избыточные файлы исправления данных уровней сохраняются в «data» мира. папка
  • MC-304217 — Требование к голоду для «Выпада» применяется к эффектам post_piercing_attack пользовательских зачарований
  • MC-304599 — Дельфины не следуют за игроками, едущими на наутилусах, как в Bedrock Edition
  • MC-304631 — Анизотропная фильтрация, установленная на 8x, приводит к тому, что непрозрачные полупрозрачные текстуры становятся прозрачными на расстоянии, когдатекстуры блоков нестандартного размера
  • MC-304725 — Зомби-жители, призванные с помощью яиц призыва по умолчанию, всегда появляются в виде своего варианта на равнине
  • MC-304991 — При нажатии на сундук с добычей, которая не была сгенерирована в режиме наблюдателя, раздается звук «block.chest.locked»
  • MC-305012 — В описании правила игры «Универсальный гнев» по-прежнему используется старый ID правила «Простить мертвых игроков» правила игры
Короткая ссылка

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *