Изменения:Исправления:
- Движок JavaScript заменён на Kotlin-скрипты, чтобы сделать автодополнение возможным.
- Генерация файлов проекта для IntelliJ IDEA.
- Добавлен API для пользовательских флагов мантии, создаваемых скриптами.
- Автодополнение для ванильных и кастомных свойств блоков.
- Добавлена настройка legacyRarity в dimension для изменения алгоритма редкости, так как он ломался при использовании более двух значений.
- ⚠️ ВНИМАНИЕ: изменение этой опции может сломать выражения и карты изображений.
- Добавлена настройка offsetNoiseTypes в settings.json для применения смещения на основе seed к типам шума, чтобы исправить проблему, когда разные сиды выглядели слишком похоже.
- ⚠️ ВНИМАНИЕ: изменение этой опции сломает существующие миры Iris.
- Новая команда для генерации конфигов для структур датапаков:
/iris dev generateStructures [pack=<pack>] [force=true|false]- Новый параметр datapackStructures в jigsaw-структурах, который используется для указания, какие структуры из датапаков можно размещать.
- Добавлено условие наклона для полублоков.
- Добавлено автодополнение для стаков мобов MythicMobs.
- Отображение базового блока при использовании отдельного ItemsAdder.
- Зависание студийного табло (scoreboard).
- Неправильное форматирование файла кэша миров.
- Команда find/goto иногда случайно не находила существующие объекты.
- Пак не устанавливался корректно при прямом использовании Bukkit API для создания Iris-мира.
Исправления:Изменения:
- Потенциальные проблемы в CountingDataInputStream
- Некорректное изменение размера битов данных, вызывавшее повреждение мантии
- Неправильная перезагрузка пространств имён ItemsAdder
- Отсутствие ожидания завершения обновления чанка
- Хук завершения работы не срабатывал при остановке через сигнал выхода
- Пропуск крепости при расчёте радиуса мантии
- Несколько небезопасных операций с мантией
- Случайный NullPointerException в загрузчике ресурсов
- Структуры размещались некорректно
- Централизация файловых каналов мантии для предотвращения параллельного доступа
- Добавлена проверка размера для предотвращения дальнейшей порчи данных при смещении чтения
- Изменён цикл обрезки, чтобы один шаг выполнялся раз в секунду
- Общая оптимизация генератора и обновлятора
Изменения:Исправления:
- Добавлена поддержка 1.21.8
- Добавлен параметр для команды /iris create, позволяющий автоматически сделать мир основным после перезапуска
- Добавлены опции для кастомизации форм пещер
- Добавлен провайдер данных для поддержки большего числа плагинов с кастомными сущностями
- Поддержка автономных блоков ItemsAdder без IABlockInjector
- Сохранение структуры, установленной в блок
Обслуживание:
- Детерминизм пещер
- Вычисление максимального размера пещеры для больших радиусов
- Исправлено размещение кастомных блоков, таких как hmcleaves или nexo furniture
- Небезопасные операции с чанками мантии
- Неправильное использование перенесённого bukkit.yml
- Игнорирование миров при генерации датапака при обновлении с версий ниже 3.7.0
- Не загружались оставшиеся миры, если один мир не удавалось загрузить
- Исправлено неправильное чтение значений enum
- Рефакторинг команды /iris create
- Рефакторинг команды /iris studio regen
Изменения:
- Поддержка версий 1.21.6 и 1.21.7 🎉
- Обновлён пакет overworld для 1.21.5+ до версии 31100
- Заменена система загрузки мира через контекст на байткод-инъекции
- Полная изоляция высоты мира, даже между мирами Iris
- Открыт доступ к большинству параметров типа измерения
- Разрешена генерация руд на поверхности
- Используется очередь тикетов для предгенерации по умолчанию
- Удалено предупреждение о несовместимости с Multiverse Core
Исправления:
- Уменьшение высоты мира больше не удаляет весь чанк
- Исправлены мелкие баги генерации датапаков
- Splash-экран больше не отображается дважды
- Инициализация генераторов для изолированных биомов и регионов
- Исправлено автодополнение сниппетов
- Теперь показываются обязательные свойства в файлах паков
- Исправлена генерация залежей, появлявшихся столбцами
Изменения:
– Разрешена рекурсия для вырезания (carving)
– Реализованы кастомные условия для Mythic Mobs
– Исключения JSON and zip file closed больше не отправляются в Sentry
– Глобальный кеш предварительной генерации временно отключён по умолчанию
– Добавлена дополнительная информация об движке в контекст Sentry:
— Является ли миром Studio
— Закрыт ли движок
— Версия, ID и хэш пака
— Время простоя Mantle, количество загруженных и поставленных в очередь регионов
– Добавлен Server ID (опционально), основанный на хэше JVM, процессора, объёма памяти и установленных плагинов
Исправления:
– Спавнеры не создавали сущностей из-за использования старого формата
– Удаление временных файлов Mantle до полной записи
– Ошибка при создании временного файла, если пользователь удалил временную директорию
– Деление на ноль в движке svc
– Удаление неиспользуемого утиля, вызывавшего ClassNotFoundException
– Использование корректного алгоритма перемешивания для лута
– Ненадёжная работа метода параллельной загрузки
– NullPointerException при создании кубоидов
– IndexOutOfBoundsException при получении выделения с помощью ванды
– Удаление легаси-символов перед десериализацией MiniMessage
Обслуживание:
– Обновлён Gradle Wrapper до 8.14.2 и переход на Kotlin DSL
Изменения:
– Повышена скорость записи Mantle
– Добавлена возможность отказаться от анонимной автоотчётности через Sentry
Исправления:
– Исправлена ошибка записи Mantle на Windows
– Исправлено: бенчмаркинг не отключался как положено
– Исправлено: краш или остановка при записи кеша предварительной генерации вызывала повреждение данных
– Исправлено: движок тиковал игроков в неправильном измерении
- Функции:
– Поддержка Minecraft 1.21.5
– Добавлен перевод на японский язык
– Обновлены переводы: литовский, вьетнамский, китайский
- Исправления:
– Исправлено: Mantle хранился в одной папке для всех миров, что приводило к потере или повреждению данных
– Исправлено: Mantle выгружался и сохранялся при любом переходе между мирами, а не только при переходе в целевой
– Исправлено: команды не загружались, если путь к JAR-файлу плагина содержал специальные символы
Добавлено:
– Поддержка Minecraft 1.21.5
– Реализован заголовок версии для тектонических плит
– Реализован параметр exhaustionChance для маркеров
– Асинхронный расчёт точки спауна для ускорения генерации мира
Исправления:
– Изменение размера перечисления флагов мантии ломало формат mantle
– Изменения высоты мира нарушали формат mantle
– Удаление слоёв мантии нарушало формат mantle
– Обновление теперь работает корректно
– Движки не закрывались при остановке сервера
– Пещерные жидкости игнорировали палитру жидкостей
– Прегенератор не завершался при запуске нового
Обслуживание:
– Очистка кода mantle trimmer и engine service
– Обновлён API Nexo до версии 1.6.0
- Исправлено создание пустых миров (Nether и End) при использовании Iris как основного мира
- Исправлено недостаточное количество чанков при предварительной генерации
- Исправлена некорректная работа параметра центра в Pregen
- Исправлены возможные конфликты с плагинами, создающими миры
Хотфикс:
– Исправлена ошибка создания мира из-за отсутствующих level stems
– Добавлена защита от отсутствующих типов измерений, предотвращающая повреждение мира
– Обновлён ресурспак верхнего мира до версии 31020