[Fabric 1.17] Создаём и настраиваем новый проект

Привет. Я жду, и жду, и жду форжа на 1.17, а его всё нет. Так что давайте разберемся наконец, кто же этот ваш Fabric. Ведь только он и доступен для версии 1.17.

А вот Forge не спешит, очень жаль

Качаем пример проекта отсюда. Через гит или архивом, тут уж как удобнее. Чистим лишние, а именно LICENSE и README. И мы готовы! Начинать готовы.

Проект открою в любимой Idea, она и станет основой у меня в статьях. Но если вы используете что-то другое, то тут можно найти инструкции для остальных IDE или даже для любителей блокнота.

Начинаем настройку Fabric!

В первую очередь нам нужна Java 16, так как Minecraft с 1.17 перешел именно на эту версию и некогда вечная Java 8 больше не прокатит. Устанавливаем. Проверяем в File — Project Structure, что проект использует 16 версию СДК.

Если всё сделано верно, то начнется процесс конфигурации, импорта необходимого и т.д. Ждём пока завершит.

Теперь открываем терминал и пишем это:

Для выполнения этой команды важно, чтобы в переменных средах была корректно указана JAVA_HOME. Делать это несложно, подробнее смотрите тут: Добавляем JAVA_HOME в переменные среды.

Продолжаем настройку

На очереди gradle.properties. А именно часть после # Mod Properties. Это вроде настройки проекта в целом.

mod_version = 1.0.0 это версия нашего мода, maven_group – имя пакета проекта, своего рода идентификатор. Все слова пишем через точки, у меня это dev.gs.first.

archives_base_name это имя проекта. Все слова должны быть написаны через дефиз. Пусть будет: gs-first-mod.

Остальные поля зависят от версии, для которой и будет сделан мод. Полный список можно найти тут. Выбираем свою версию заменяем эти строки на предложенные сайтом:

Хорошо, тут готово.

Теперь удалим всё из папки java и добавим туда соответствующие указанному ранее имени пакета: maven_group. Т.е. создаём папки: dev, в ней gs, а в ней first. В последнюю папку добавляем файл ModMain.java (или ваше имя, не принципиально). И пишем там такой текст:

Этот главный класс мода, который и будет отвечать за инициализацию компонентов. Мы уже добавили свою реализацию функции onInitiliaze, которая пока ничего не делает. Но это временно. Родителем нашего ModMain класса указан ModInitiliazer. Это класс из API Fabric.

В результате вы должны были получить что-то вроде этого:

Только с вашими именами!

Название, описание и другие данные мода

Теперь открываем файл в папке ресурсов: fabric.mod.json. В нём текста будет побольше. Это Json, так что надеюсь, что хоть базовое понимание его структуры у вас есть. Следите за запятыми и кавычками.

Некоторые данные будут подтянуты из предыдущего файла, например версия. Но в этом файле помимо отображаемого имени мода мы также можем указать ещё и его id, описание, добавить авторов, указать лицензию и иконку.

Путь к иконке в примере указан в таком формате: «assets/modid/icon.png». Но вместо modid вы должны указать id мода, которое был выше (у меня это first_gs_mod), а саму иконку разместить тогда в папке resources/assets/ first_gs_mod/icon.png.

Замечания по id. Они будут использованы при загрузке модов, а это значит, что должны быть уникальными.  Мы ведь не хотим конфликтов в будущем?

Ещё тут есть зависимости для мода (будь то сама игра или версия java) и ссылки для обратной связи, которые лучше оставить пустыми, если у вас нет сайта/странички мода на github.

А ещё внимание нужно уделить полю entrypoints, своего рода точки входа, загрузки мода. Там нужно указать путь к нашему ново созданному классу ModMain:

Package и путь в json совпадают

На поле mixins пока мы не смотрим и оставляем его пустым. О нём в другой раз.

Вот что я получил в конечном итоге:

Уже почти всё.

Настраиваем клиент с Fabric для тестирования

Ещё после импорта ресурсов студия должна была создать пару приложений:

Первое – локальный клиент Minecraft, а второе – сервер. Нажимаем Edit Configurations…

Как удачно всё подписано. В роли виртуальной машины JRE – Java 16, модуль Module — Имя_вашего_проекта.main. В остальном всё оставляем как есть. Жмём ок и зеленую иконку Play:

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

2 комментария к “[Fabric 1.17] Создаём и настраиваем новый проект”

  1. Пингбэк: Создание модов для Minecraft 1.15-1.17 [Forge/Fabric] – GeekStand

  2. Пингбэк: [Fabric 1.17] Добавляем новый предмет – GeekStand

Оставьте комментарий

Прокрутить наверх