Вход

Регистрация

Восстановление доступа

Create Collision Crashfix

Create Collision Crashfix

|

Umpa

Компактный фикс, устраняющий критический сбой сервера (NullPointerException) в Create 6.0.10 при столкновении движущихся механизмов.

Скачать

Версия игры

1.21.1

Ссылка на сайт

modrinth.com

Разработчик

Лицензия

MIT

Скачиваний:

0

Обновлено:

02.11.2026

ID:

Похожие моды20

Связанные материалы5

Специализированный хотфикс для устранения критической ошибки в Create 6.0.10, которая вызывает краш сервера при определенных условиях столкновения объектов.

Create Collision Crashfix — это минимальный однокомпонентный миксин-хотфикс, разработанный для устранения фатального сбоя сервера в моде Create версии 6.0.10 на платформе NeoForge (Minecraft 1.21.1).

В версии Create 6.0.10 движущиеся конструкции (например, системы с канатной лебедкой или добывающие буровые установки) могут вызвать критическую ошибку в цикле тиков сервера. Это происходит из-за возникновения исключения java.lang.NullPointerException, когда поле mf.axis оказывается пустым.

Обычно после возникновения этой ошибки мир попадает в цикл крашей при каждой попытке загрузки, так как виновная конструкция вызывает тот же сбой каждый тик. Ошибка активируется, когда проверка столкновения движущейся конструкции сталкивается с дегенеративным случаем: центр ограничивающей рамки (bounding-box) сущности оказывается в точности в центре блока конструкции по всем осям.

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

java.lang.NullPointerException: Cannot read field "x" because "mf.axis" is null
    at com.simibubi.create.foundation.collision.ContinuousOBBCollider.collideMany(ContinuousOBBCollider.java:153)
    at com.simibubi.create.content.contraptions.ContraptionCollider.collideEntities(ContraptionCollider.java:166)
    at com.simibubi.create.content.contraptions.ContraptionHandler.tick(ContraptionHandler.java:54)
    Description: Exception in server tick loop

Ошибка возникает из-за того, что в коде Create оси разделения (axis и normalAxis) записываются только тогда, когда тестируемое расстояние не равно нулю. В случае идеального совпадения центров дистанция равна нулю, и оси остаются пустыми. При попытке обращения к этим полям сервер аварийно завершает работу.

Данный мод внедряет проверку на пустоту (null guard) для чтения этих полей. Если записанная ось отсутствует, мод возвращает Vec3.ZERO. Это нейтрализует столкновение в текущем тике, не вызывая краша. На следующем тике, когда сущность сместится даже на минимальное расстояние, валидная ось появится, и коллизия разрешится штатно — сущности не застрянут и не будут проваливаться.

@WrapOperation(
    method = "collideMany",
    at = @At(value = "FIELD",
             target = "L.../ContinuousOBBCollider$ContinuousSeparationManifold;axis:Lnet/minecraft/world/phys/Vec3;",
             opcode = Opcodes.GETFIELD),
    remap = false)
private static Vec3 guardAxis(@Coerce Object manifold, Operation<Vec3> original) {
    Vec3 value = original.call(manifold);
    return value == null ? Vec3.ZERO : value;     // same for normalAxis
}

Использование Vec3.ZERO абсолютно безопасно: поскольку при пустой оси скаляр разделения равен Double.MAX_VALUE, любой другой ненулевой вектор при умножении на это число выбросил бы сущность в бесконечность. Ноль же полностью нейтрализует воздействие в момент совпадения центров.

Мод жестко привязан к версии Create 6.0.10. При попытке запуска с любой другой версией Create проект выдаст сообщение requires create [6.0.10]. Это служит напоминанием о том, что после выхода официального обновления Create 6.0.11 (содержащего это исправление), данный мод следует удалить.

Для корректной работы мод необходимо установить как на клиент, так и на сервер (версии должны совпадать). Проект не вмешивается в классы аддонов и корректно сосуществует с дополнениями, использующими миксины для ContraptionCollider (такими как Create Big Cannons, Aeronautics, Sable и др.).

Требования проверенного файла

  • По манифесту для файла create-collision-fix-1.0.0.jar (Minecraft 1.21.1; NeoForge) требуется create. Встроенных JAR-библиотек в проверенном файле нет.

Войдите, чтобы поставить оценку и оставить отзыв.

Отзывов пока нет — будьте первым!
Канал Файл Игра Модлоадер Язык Скачиваний Загружен
Релиз create-collision-fix-1.0.0.jar 3.1 KB 1.21.1 NeoForge — 0 28.06.2026
Зависимостей нет.

Скачать

Версия игры

1.21.1

Ссылка на сайт

modrinth.com

Разработчик

Лицензия

MIT

Скачиваний:

0

Обновлено:

02.11.2026

ID:

Похожие моды20

Связанные материалы5