WorldgenFeatureFix
Активный0.0
Установок
Последнее обновление
Версии
WorldGenFeatureFix
Этот мод решает критическую проблему, возникающую при использовании пользовательских датапаков для генерации мира. Когда в настройках мира применяются функции размещения minecraft:lake
или minecraft:snow_and_freeze
с водой, генерация чанков завершается аварийным сбоем. Данная ошибка задокументирована в баг-трекерах Mojang под номерами MC-273228 и MC-272370.
Разработка мода была вдохновлена соответствующим pull request в репозитории PaperMC. Для устранения проблемы применяются миксины, которые восстанавливают корректную работу указанных функций.
Технические особенности
В версии Minecraft 1.21 была значительно оптимизирована система генерации чанков, что привело к непреднамеренному нарушению механизма определения замерзания в функции создания озёр. Проблема возникает из-за попыток обращения к недоступным участкам мира во время генерации.
Поскольку в стандартной версии игры функция создания озёр используется исключительно для генерации лавовых озёр, данная ошибка не проявляется при обычной игре. Однако пользовательские генераторы мира, использующие водные озёра, сталкиваются с критическими сбоями. Мод применяет решение, которое возвращается к использованию метода getUncachedNoiseChunk
, что позволяет восстановить работоспособность функции создания озёр.
Важное замечание
Следует учитывать, что функция LakeFeature считается устаревшей, и разработчики Minecraft постепенно отказываются от её использования, за исключением генерации лавовых озёр. Защита от обращения к небезопасным чанкам была внедрена намеренно для предотвращения проблемного кода, такого как тот, что содержится в неиспользуемой части LakeFeature при создании водных озёр.
Хотя данный мод решает текущую проблему, это не является идеальным решением и может маскировать более серьёзные проблемы, которые останутся незамеченными. Использование осуществляется на свой страх и риск.