Свой мод для Minecraft на Java: от пустого проекта до рабочего .jar
Как собрать первый мод Minecraft: MDK, JDK 21, Gradle и структура проекта. Плюс честный разбор, что в этой работе может сделать ИИ, а что придётся делать самому.
По запросу «как создать мод на майнкрафт» выдача состоит из курсов. Skillbox, RTS School, Top Academy, книги — все продают обучение, и почти никто не показывает путь целиком.
Путь при этом короче, чем кажется. Первый рабочий .jar собирается за вечер, если знать
порядок действий.
Что понадобится
JDK 21. Именно 21, не 17 и не 23: современные версии Forge требуют его. Официально
рекомендуется сборка Eclipse Temurin. Проверить установленную версию — java -version.
MDK — Mod Development Kit с сайта Forge. Это архив с готовым каркасом: gradle-файлы и папка
src. Распаковывается в пустую папку.
IDE. IntelliJ IDEA или Eclipse — у обеих есть встроенная интеграция с Gradle, и при открытии проекта они сами доделают настройку рабочего пространства.
Первая сборка
Порядок такой, что важно — не пропуская шаги.
Распаковал MDK, открыл папку в IDE, дождался, пока Gradle подтянет зависимости. Первый раз это долго: качается сам движок и библиотеки.
Дальше сгенерируй конфигурации запуска — команда зависит от IDE:
gradlew genIntellijRuns
Для Eclipse это genEclipseRuns, для VS Code — genVSCodeRuns.
Теперь правки в build.gradle, без них мод останется примером:
base.archivesName = 'mymod'— имя итогового файла;group = 'com.example'— твой пакет;version = '1.21.1-1.0.0.0'— версия по схеме Maven.
Сборка:
gradlew build
Готовый .jar появится в build/libs. Это и есть мод — его можно класть в папку mods.
Первый запуск сервера через gradlew runServer завершится сразу. Это нормально: нужно принять
лицензию, отредактировав eula.txt в рабочей папке. После этого сервер поднимется.
Что дальше на практике
Каркас собран, и дальше начинается собственно моддинг: регистрация предметов и блоков, события, рецепты, текстуры. Здесь путь у каждого свой, и универсального порядка нет.
Единственный общий совет, который стоит дать: делай по одной сущности за раз и проверяй в игре. Мод, где сразу двадцать предметов и ничего не работает, отлаживается втрое дольше, чем мод, который рос по одному предмету.
Может ли ИИ написать мод за тебя
Отвечу честно, потому что вопрос задают часто, а ответ обычно продают.
Генераторы модов по описанию существуют, и простые вещи они действительно делают: предмет с текстурой, базовый блок, несложный рецепт. Просишь меч, который светится, — получаешь меч, который светится.
Ломается это на второй итерации. А вторая итерация будет всегда: мод надо править. Генератор
не знает, что уже есть у тебя в проекте, не видит ошибку компиляции, не может пересобрать
.jar и прочитать лог. Каждый круг превращается в ручной перенос кода туда и обратно, и на
третьем круге становится быстрее писать самому.
Разницу даёт не более умная модель, а другое положение относительно проекта. Агент, который
видит исходники, правит файлы на месте, запускает gradlew build и читает ошибку компиляции,
находится внутри цикла разработки. Генератор — снаружи, и оттуда каждая правка стоит ручной
работы.
Типичные задачи, где это заметно: разобрать чужой мод и понять, как он устроен; перенести мод
на новую версию Minecraft, когда половина API переименована; найти, почему .jar собирается,
но игра его не видит; добавить двадцать однотипных предметов по образцу одного.
Дока — такой агент: работает с файлами и терминалом, а модель может быть локальной. Подробнее про класс инструментов — в статье про ИИ-агента для кода.
Чего ИИ не сделает: не придумает за тебя, каким мод должен быть, и не заменит проверку в игре. Компилируется — не значит играется.
Мод, сервер и датапак — разные вещи
Путаница частая, поэтому коротко.
Мод меняет код игры, требует Forge или Fabric и Java. Это то, о чём вся статья.
Датапак меняет данные — рецепты, лут, функции — обычными JSON-файлами, без Java и без модов вообще. Многое из того, ради чего люди начинают писать мод, делается датапаком за полчаса: как его собрать.
Сервер с модами — отдельная задача: ставим Forge и моды.
Если твоя идея — новые рецепты, изменённый лут или скриптовые события, начни с датапака. Java понадобится позже и, возможно, не понадобится вовсе.
С чего начать
Поставь JDK 21, скачай MDK, собери пустой проект и убедись, что .jar появился в build/libs.
Пока без своего кода. Этот шаг отсеивает большинство проблем с окружением, и делать его лучше
до того, как появятся идеи.
Дальше добавляй по одной вещи. Если застрянешь на ошибке сборки — скачай Доку и покажи ей папку проекта: разбор ошибок Gradle это ровно та работа, где агент экономит вечер.