Fabric — удобный набор инструментов для создания модов. Также это библиотеки, позволяющие работать модификациям на более поздних версиях. Половина, а может и больше модов от 1.14 написано именно на нем! Именно благодаря этому Fabric и обрел такую популярность!
Как установить Fabric?
1. Скачайте Fabric нужной по ссылке ниже.
2. Запустите скачанный файл. Укажите нужную версию игры. Ничего боле менять не надо! В случае надобности можно включить показывание снапшотов. Нажмите «Установить».
3. Нужная версия со словом «fabric» уже должна появится в вашем лаунчере!
4. Для работы некоторые модов нужен Fabric API! Его стоит установить прямо сейчас! Делается это, как и с обычным модом с помощью переноса в папку /mods.
Ссылка на скачивание:
[Fabtic] fabric-installer-0.7.4.exe [411,34 Kb] (cкачиваний: 23)
Источник: minecraftonly.ru
КАК ЗАЙТИ С НОВЫХ ВЕРСИЙ МАЙНКРАФТ НА СТАРЫЕ СЕРВЕРА? VIA FABRIC 1.17.1
Создание и запуск Minecraft сервера с модами на Fabric
Это подробный гайд, инструкция по созданию и запуску Minecraft сервера с модами для Fabric который можно запустить из под Windows (и Linux). В статье я шаг за шагом покажу как создать сервер, базовые настройки, дам советы относительно установки модов.
Предупреждение :
Если вы хотите создать сервер с Forge модами, то для этого у нас уже есть похожая статья — как создать Minecraft сервер с модами Forge.
Установка необходимой версии Java:
Сервер игры использует JDK (Java Development Kit), джава для разработчиков, и вы должны установить правильную версию среды на ваш пк. Перед загрузкой рекомендую узнать, 32bit ваша операционная система или 64bit, если на данном этапе вы уже не понимаете о чем речь, не умеете гуглить и не знаете ответа, то дальше будет только сложнее.
- Для Майнкрафт 1.14-1.16.5 требуется JDK 8 — скачать можно здесь
- Для Майнкрафт 1.17: требуется — JDK 16 — скачать можно здесь
- Для Майнкрафт 1.18 и более новых версий: требуется — JDK 17 — скачать можно здесь
Скачали, установили, рекомендую сразу запомнить адреса расположения исполнительного файла Java, они нам понадобятся:
В случае JDK 8 установленной по ссылке выше это C:Program FilesOpenJDKjdk-8.0.262.10-hotspotbinjava.exe
В случае JDK 16 установленной по ссылке выше это C:Program FilesJavajdk-16.0.2binjava.exe
Предварительная загрузка файлов сервера:
Для установки Fabric сервера для любого Minecraft нам понадобится официальный установщик Fabric, он же устанавливает и сервер, нужно скачать exe или jar версию.
ПОЛНЫЙ ОБЗОР МОДА Replay Mod 1.18.1 Fabric
Запустите скачанный файл, выберите вкладку «Сервер», выберите нужную версию Minecraft и папку в которой будет ваш будущий сервер.
На следующем этапе вы увидите предупреждение, что не найден файл официального Minecraft сервера, нажмите кнопку скачать Jar сервера, так же чуть ниже кнопку Сгенерировать для создания .bat файла запуска.
Если все прошло успешно, внутри папки вы увидите это:
Настройка .bat файла запуска
Итак, я надеюсь вы установили JDK на первом шаге и запомнили адреса до исполнительного файла Java.exe, сейчас они нам понадобятся. Напомню, что Fabric сервер у майнкрафт 1.14-1.16.5 работает на JDK 8, а у 1.17 JDK 16, 1.18 и 1.19 на JDK 17, а более новые версии могут требовать и более новые версии Java.
Кликните ПКМ по start.bat и измените его (либо можете открыть любым текстовым редактором),
замените java на «C:Program FilesOpenJDKjdk-8.0.262.10-hotspotbinjava.exe» или «C:Program FilesJavajdk-16.0.2binjava.exe» (с кавычками) в зависимости от версии майнкрафт.
Так же добавьте параметр -Xmx2048M где 2048 это максимальное количество оперативной памяти доступной для сервера, не забудьте кавычки, не допускайте лишних символов, пробелов либо их отсутствия, сохраните файл.
Первый запуск сервера.
Запустите файл start.bat, вы увидите черное окно консоли, а в папке сервера появятся новые файлы и папки. Можете закрыть окно сервера, он пока все равно не запустился.
Откройте появившийся файл eula.txt, замените в нем eula=false на eula=true, это кстати говоря подтверждение что вы согласны с EULA использования сервера, т.е лицензионное соглашение, сохраните.
Базовая настройка сервера:
- Если у вас пиратка, то измените online-mode=true на online-mode=false, иначе к серверу смогут подключаться только лицензионный игроки.
- Заполните значение server-ip= это IP вашего сервера, он может быть внешним IP интернета, локальным IP вашего пк внутри домашней сети, либо IP вашего компьютера в сети Хамачи.
Предупреждение :
Помните, что если вы указываете IP вашего пк в интернете, то вы должны настроить переадресацию порта сервера (он по умолчанию 25565) в вашем роутере, либо если у вас нет роутера, то открыть данный порт в антивирусебрандмауере, возможных настройках вашего провайдера. Гуглите инструкции, проверяйте открыт ли порт на вашем пк, сделана ли переадресация этого порта на ваш пк в роутере, это может быть сложно, но к этому нет одной понятной инструкции, и вообще не тема для данной инструкции.
Все прочие параметры server.properties не являются обязательными, но в этом файле вы сможете указать название сервера, разрешить полет, включить нужный режим игры, запретить нижний мир или край, запретить спавн монстров, указать принудительный ресурспак, указать ники для белого списка и многое другое.
Повторный запуск сервера
Запустите файл start.bat, появится черное окно консоли и белое окно показывающее нагрузку на сервер и список игроков, если все окей, то вы увидите что сервер создал карту и ничего не делает, уже можно попробовать подключиться к нему, следующим шагом будет установка модов.
Установка и удаление модов:
Fabric моды устанавливаются аналогично обычному майнкрафту, вы помещаете мод и все дополнительные необходимые моды в папку mods выключенного сервера, но есть несколько важных правил описанных ниже. У модов на сервере так же есть папка с конфигами, где можно их настроить. Удаление модов из папки Mods удалит мод с сервера, в отличии от forge сервера на данный момент сервер не требует подтверждения удаления с карты предметов и блоков удаленного мода, он их удаляет сам, будьте аккуратны.
Если все прошло успешно и вы подключились к серверу, поздравляю вас, ниже на скриншоте видно папки mods клиента и сервера, 2 окна сервера и окно игры с модом.
Правила установки модов
- У сервера и у всех игроков должна быть одинаковая версия Fabric.
- У сервера и у всех игроков должны быть одинаковые моды, притом вплоть до версии самого мода. (исключение только клиентские моды, миникарты, REI итд)
- Некоторые моды не поддерживает работу в онлайне вообще, просто крашат сервер ошибками, автор не реализовал это или допустил ошибок.
- Если вы изменяете настройки мода в конфиг файле, то эти изменения должны быть у всех игроков и на сервере тоже. Т.е конфиги сервера и конфиги игроков должны быть одинаковые.
- Нет необходимости устанавливать клиентские моды на сервер, моды REI, damage indicators, миникарты итд, то, что работает у конкретного игрока и не взаимодействует с другими игроками, иногда установка клиентских модов не дает запуститься серверу.
Источник: ru-minecraft.ru
Структура мода#
Fabric использует автоматический сборщик Gradle, поэтому нам стоит придерживаться определенной структуры папок:
└── src └── main ├── java └── resources
В java хранится весь Ваш исходный код. В resources хранятся текстуры, модели, звуки, рецепты и прочее.
fabric.mod.json#
Fabric использует файл fabric.mod.json для обнаружения и загрузки Вашего мода. Он должен обязательно находится по пути src/main/resources . Файл определяет данные Вашего мода: ModId, название, зависимости, точки входа, Mixins, авторов и так далее. Примерный fabric.mod.json выглядит так:
«schemaVersion»: 1, «id»: «fabrictut», «version»: «1.0-SNAPSHOT», «name»: «FabricTutorial», «description»: «My awesome mode!», «authors»: [ «jjigem» ], «contact»: <>, «license»: «MIT», «icon»: «assets/fabrictut/icon.png», «environment»: «*», «entrypoints»: «main»: [ «ru.mcmodding.fabrictut.FabricTutorial» ] >, «mixins»: [ «fabrictut.mixins.json» ], «depends»: «fabricloader»: «>=0.10.8», «fabric»: «*», «minecraft»: «1.16.3» > >
Параметры name , description и authors могут содержать коды цветового форматирования.
schemaVersion | Обозначает версию формата json-файла Тип: число |
Нет (0 если не указано) | «schemaVersion»: 1 |
id | Обозначает идентификатор мода (MOD_ID) Тип: строка |
Да | «id»: «myawesomemod» |
version | Версия Вашего мода Тип: строка |
Да | «version»: «1.0-SNAPSHOT» |
name | Имя Вашего мода Тип: строка |
Нет | «name»: «More Food» |
description | Описание Вашего мода Тип: строка |
Нет | «description»: «Супер мод на еду из медных слитков» |
authors | Авторы мода Тип: массив строк или объектов Person |
Нет | «authors»: [«jjigem», «Notch»] |
contributors | Внесшие вклад в мод Тип: массив строк или объектов Person |
Нет | «contributors»: [«Mumfey»] |
license | Лицензия для Вашего мода Тип: строка |
Нет | «license»: «MIT» |
icon | Путь к иконке для Вашего мода. Иконка должна быть в формате PNG. Тип: строка |
Нет | «icon»: «assets/myawesomemod/icon.png» |
depends | Зависимости мода Тип: массив пар строка-строка (ID — Версия) |
Нет | «depends»: |
recommends | Рекомендации для мода. То же, что и зависимости, но не остановят игру, а покажут предупреждение Тип: массив пар строка-строка (ID — Версия) |
Нет | «recommends:» |
conflicts | Конфликты модификаций. При запуске Вашего мода с конфликтным будет предупреждение о несовместимости Тип: массив пар строка-строка (ID — Версия) |
Нет | «conflicts»: |
breaks | Конфликты модификаций, которые не дадут запустить игру. Тип: массив пар строка-строка (ID — Версия) |
Нет | «breaks»: |
entrypoints | Точки входа для мода | Да | «entrypoints»: |
environment | Игровое окружение | Да | «environment»: «*» |
mixins | Файлы Mixins для мода Тип: массив строк |
Нет | «mixins»: [«modid.mixins.json»] |
accessWidener | Файл accessWidener для мода. О нем подробнее позже Тип: строка |
Нет | «accessWidener»: «modid.accesswidener» |
Это далеко не все параметры, а лишь основные из них.
Главный класс мода#
Мы знаем как правильно выглядит файл fabric.mod.json , создали его и заполнили, как нам нужно, но мод все еще не будет инициализирован.
Точки входа#
Fabric использует точки входа для разделения клиента и сервера.
Допустимые точки входа: client , server , main . main используется для инициализации вещей, которые могут происходить как на клиенте, так и на сервере, например, регистрация предметов и существ. client используется для всего того, что не может происходить на сервере, например, регистрация рендера существ. client ни за что не будет использован на сервере. server используется для сервера, и не будет использоваться на клиенте.
Вы наверное спросите, зачем нужен server , если можно использовать main ? Дело в том, что server используется для выделенного (Dedicated) сервера, а не для встроенного (Integrated).
Итак, как создать точку входа: создаем класс в пакете нашего мода, реализуем нужный интерфейс и переопределяем метод.
ModInitializer | onInitialize() | Клиент-сервер |
ClientModInitializer | onInitializeClient() | Клиент |
DedicatedServerModInitializer | onInitializeServer() | Сервер |
Обычно моды содержат либо реализацию ModInitializer и ClientModInitializer , либо только ModInitializer .
Создаем класс нашего мода по пути наш_домен/никнейм/ID_мода , например ru/mcmodding/fabrictut . Конечно, можно использовать абсолютно любой путь, но это не очень правильно. Назовем класс FabricTutorial и укажем, что мы реализуем интерфейс ModInitializer . Затем нам нужно переопределить метод onInitialize() , иначе будет ошибка.
В итоге у нас получится такой класс:
Структура файлов при этом будет выглядеть так:
└── src └── main ├── java │ └── ru │ └── mcmodding │ └── fabrictut │ └── FaricTutorial.java └── resources └── fabric.mod.json
Не забывайте, что указанные тут имена классов и пакетов — всего лишь пример для урока.
Источник: mcmodding.ru