23w32a (Java Edition)

**23w31a** — це друга попередня збірка для Java Edition 1.20.2, випущена 9 серпня 2023 року, яка виправляє помилки.

## Нововведення

### Загальні

Таблиця здобичі
* Додано `sequence` функцію здобичі.
	+ Містить 1 поле:
		- `functions`: масив підфункцій для послідовного виконання.
	+ Також може бути оголошений як вбудований масив без типу.
		- Це відповідає існуючій поведінці, коли JSON-файли функції видобутку можна оголошувати як масив складених функцій.
* Предикати `all_of` у таблицях луту тепер можна неявно оголошувати як вбудований масив без типу.
	+ Це аналогічно відповідає існуючій поведінці, коли файли JSON предикату грабування можна оголошувати як масив підпредикатів.

## Зміни

### Блоки

Скалковий сенсор і відкалібрований скалковий сенсор
* Більше немає ризику втрати вібрацій на обмеженні дистанції симуляції.
* Зняття предметів випромінює нову частотну вібрацію `unequip` `4`.
* Різьблені книжкові полиці випромінюють вібрацію `block_change` частотою `11`, коли приймають книги з лійки.
* Яйця черепах, які тріщать, випромінюють `block_change` вібрацію частоти `11`.
* Яйця черепахи, що вилуплюються, випромінюють вібрацію `block_destroy` частотою `12`.
* Використання кісткового борошна випромінює вібрацію `item_interact_finish` частотою `3`.
* Вогонь, який поливається водним зіллям, випромінює вібрацію `block_destroy` частотою `12`.
* Заклиначі викликають бісиків чи ікла випромінюють `entity_place` вібрацію частотою `14`.
* Моркву, яку їдять кролики, випромінює `block_change` вібрацію частотою `11`.
* Солодкі ягоди, які їдять лисиці, випромінює `block_change` вібрацію частотою `11`.
* Верблюд, що їсть кактус, випромінює частотну вібрацію `їсти` `8`.

### Загальні

Чат
* Клієнти більше не будуть відключатися при отриманні невірного повідомлення в чаті.
	+ Замість цього в чаті буде показано повідомлення-заповнювач.

Формат чанку
* Гра більше не використовує числові значення під час зберігання ефектів мобу у світі.
	+ Наприклад, `4` стає `minecraft:mining_fatigue`.
	+ Змінено наступні поля в екземплярах ефекту мобу:
		- `Id` (ціле число) -> `id` (рядок, розташування ресурсу)
		- `Ambient` -> `ambient`
		- `Amplifier` -> `amplifier`
		- `Duration` -> `duration`
		- `ShowParticles` -> `show_particles`
		- `ShowIcon` -> `show_icon`
		- `HiddenEffect` -> `hidden_effect`
			* Це поле є екземпляром ефекту мобу, тому зміни до батьківського елемента також застосовуються тут рекурсивно.
		- `FactorCalculationData` -> `factor_calculation_data`
* У форматі NBT для типу сутности блоку `beacon`:
	+ `Primary` (ціле число) -> `primary_effect` (рядок, розташування ресурсу)
	+ `Secondary` (integer) -> `secondary_effect` (рядок, розташування ресурсу)

Пакет даних
* Тепер версія `17`.

Екран налагодження
* Якщо відкрити його за допомогою `Ctrl` + `F3`, тепер відображатимуться діаграми ping та отриманого мережевого трафіку.

Формат сутности
* У форматі NBT для типу сутности `mooshroom`:
	+ Видалено`EffectId` і `EffectDuration`.
	+ Додано `stew_effects` із таким самим форматом, як поле `effects` у форматі предмету `suspicious_stew`.
* У форматі NBT для типу об’єкта `area_effect_cloud`:
	+ Перейменовано `Effects` на `effects`.
* У форматі NBT для типу сутности `arrow`:
	+ Перейменовано `CustomPotionEffects` на `custom_potion_effects`.
* У форматі NBT для живих істот (гравці, стійки для обладунків та всі моби)
	+ Перейменовано `ActiveEffects` на `active_effects`.

Формат player.dat
* У форматі NBT для типу предмета `potion`, `lingering_potion`, `splash_potion` і `tipped_arrow`:
	+ Перейменовано `CustomPotionEffects` на `custom_potion_effects`.
* У форматі NBT для типу предмета `suspicious_stew`:
	+ Перейменовано `Effects` на `effects`, також змінено наступні поля в цьому полі:
		- `EffectId` (ціле число) -> `id` (рядок, розташування ресурсу)
		- `EffectDuration` -> `duration`

Протокол
* Оптимізована мережа для покращення роботи під час з’єднань із низькою пропускною здатністю.
	+ Ігрові пакети тепер упаковані у більші TCP-пакети, щоб зменшити накладні витрати від TCP-заголовків, що значно зменшує використання мережі.

Пакет ресурсів
* Версія зараз `17`.
	+ Тло текстового поля тепер є дев'ятирізним спрайтом в `widget/text_field` і `widget/textfield highlighted`.
	+ Смуга прокрутки в списках і текстових полях тепер є дев'ятирізним спрайтом у `widget/scroller`.

Теґи
* Додано `unequip` до тегів ігрових подій `vibrations` і `warden_can_listen`.

## Виправлення

22 помилок виправлено
З версій, випущених до 1.20
* MC-61041 – `CustomPotionEffects`, `ActiveEffects` і `Effects` Теґи NBT досі використовують цифрові ID.
* MC-135339 – Скін госта невидимий для інших гравців у світі LAN, якщо гост раніше не відкривав жодного світу.
* MC-177110 – Звуки кроків мобів мають непослідовні субтитри.
* MC-209798 – Скалкові сенсори не активуються під час використання кісткового борошна.
* MC-210485 – Скалкові сенсори не активуються, коли заклиначі викликають бісиків.
* MC-219440 – Скалкові сенсори не виявляють вогонь, який гаситься вибуховим зіллям води.
* MC-251525 – Скалкові сенсори не активуються, коли кролики їдять посаджену моркву.
* MC-253137 – Консоль виведення гри реєструє помилки щодо відсутніх підписів у текстурах властивостей під час приєднання до світів локальної мережі.
* MC-259982 – Орнаменти обладунків «Дикість» і «Око» відображають «плаваючі» пікселі, якщо нанести на кольчужний шолом.
* MC-261261 – Скалкові сенсори не виявляють, коли виточена книжкова полиця змінюється через лійки та викидача.

З 1.20
* MC-262591 – Верблюди випромінюють вібрації взаємодії з мобами замість вібрацій споживання предметів, коли їдять кактус.
* MC-263338 – Текстура орнамента обладунків виступає над формою панциря черепахи.

З 1.20.1
* MC-264092 – Функції виконують команди не по порядку, якщо містять `/say`.
* MC-264260 – Під час зміни даних блоку GUI печі відображається неправильно.

З попередньої версії розробки
* MC-264548 – У файлі журналу з Minecraft 23w31a з'являється дивна помилка.
* MC-264557 – Назви файлів для спрайтів із повною їжею та наполовину як для нормального, так і для голодного є зворотними.
* MC-264565 – Папка `bundle` у каталозі sprites лише з файлом `mcmeta`.
* MC-264576 – Босбар візуально розтягується, а не обрізається.
* MC-264610 – Гра зависає, якщо `border` у `button.png.mcmeta` змінюється на половину `width` або більше, і ви намагаєтеся відкрити меню гри.
* MC-264664 – У меню відсутні висококонтрастні повзунки.
* MC-264687 – Плащі та скіни господарів мережевих світів не рендеряться для інших гравців.
* MC-264689 – Пакет ресурсів високої контрастності дозволяє відображати додаткові пікселі на повній панелі босу.

## Примітки

1. ↑ "Minecraft Snapshot 23w32a" – Minecraft.net, 9 серпня 2023 року