Итак, ID - это положительное целочисленное значение, присваиваемое каждому объекту в игре. Поскольку количество идентификаторов ограничено (Максимальный ID для блока - 4095), разработчикам модов не всегда удаётся избежать использования тех ID, которые уже были заняты другими модами. Поскольку мы решаем эту проблему в ручном режиме, нам не потребуется использовать специальные моды для переназначения уже занятых ID.
Начать стоит с отчёта об ошибке, который появляется после попытки запустить игру. Обычно в самом начале этого текста содержится следующая строчка:
java.lang.IllegalArgumentException: Slot *a* is already occupied by *b* when adding *c*
*a* - ID, который не поделили моды *b* и *c*
После того, как мы получим эти данные, нам потребуется открыть папку confins в корне нашей сборки. Далее открываем конфигурационный файл мода *b*, либо мода *c*. Там нам потребуется найти идентификатор *a*, и исправить его на тот, который не используется в других модах. Обычно это делается методом подбора свободного значения. Если Вы найдёте свободный идентификатор, игра должна нормально запуститься.
Обратите внимание: изменения можно внести как в конфигурационный файл мода *b*, так и мода *c*. Если оба мода не поддерживают изменение ID через конфигурационные файлы, решить конфликт вручную не выйдет.
Это был один из двух возможных способов ручного устранения конфликта ID. Второй мы рассмотрим в следующей статье.
Мой совет: устанавливая каждый следующий мод, проверяйте, работает ли сборка после его установки. Так не возникнет цепной реакции, связанный с использованием одинаковых идентификаторов.
Также, советую посмотреть видео-урок по устранения конфликта ID в ручном режиме: