Что такое fml в minecraft

Обновлено: 05.07.2024

Может прозвучать странно, но я пишу простенький мод в качестве моего курсового проекта. Сам мод почти закончен и пришла очередь написания отчёта.
Собственно, мне нужна теоретическая информация о фордже и майнкрафте, если конкретнее, то:
1. Как работает Forge. Я узнал, что это API, которое декомпилирует и обфусцирует код майнкрафта, позволяя использовать его классы, при этом не изменяя их. Он позволяет модам не конфликтировать между собой (не знаю, как), добавляет словарь руд. Если не правильно, поправьте.
2. Стадии загрузки (преинит, инит, постинит). В учебнике есть краткое описание, но этого мало. Я так и не понял, эти стадии добавляет сам фордж, или они есть в чистом майнкрафте?
3. Что такое FML.
4. Что такое MCP.
5. Как происходит инициализация чистого Minecraft и как её меняет Forge.
6. Как происходит подгрузка ресурсов.
Любая дополнительная информация кроме перечисленной также будет полезна. Также очень полезными будут любые схемы и диаграммы.
Ссылки, которые уже есть:
How does forge work?
Minecraft Coder Pack
Loading Stages - Forge Documentation
Если есть прошаренные деды-теоретики, прошу поделиться этой информацией из своих архивов.

TomYoll

1622427648215.jpg

Нарисовал тут диаграмму процесса запуска игры, может кто-то оценить её правильность?
will0376

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

Стадии загрузки (преинит, инит, постинит). В учебнике есть краткое описание, но этого мало. Я так и не понял, эти стадии добавляет сам фордж, или они есть в чистом майнкрафте?

Как работает Forge. Я узнал, что это API, которое декомпилирует и обфусцирует код майнкрафта, позволяя использовать его классы, при этом не изменяя их. Он позволяет модам не конфликтировать между собой (не знаю, как), добавляет словарь руд. Если не правильно, поправьте.

Ну.
сам forge на клиенте/сервере декомпилит майн в srg имена в рантайме, чтоб моды не обосрались при загрузке.

А вот Forge MDK - набор(как и MCP) всего и вся необходимого для быстрого декомпила майна(srg или в mcp маппинги по выбору), и такого-же быстрого билда мода(gradle же).
Про forgeGradle рассказать мне нечего - Чисто враппер для граблей под майн.

Вторая попытка запуска сервера:

Снова открывайте файл start.bat (run.bat) и у вас должно открыться окно сервера с графиком и списком игроков (если в start.bat нет параметра nogui) или черная консоль сервера, сервер загрузится и создаст карту, но не торопитесь запускать игру и подключаться, сервер не настроен и моды не установлены.

Как создать сервер майнкрафт с модами и Forge

Как создать сервер майнкрафт с модами и Forge

Как создать сервер майнкрафт с модами и Forge

Как создать сервер майнкрафт с модами и Forge

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

В данной статье я буду использовать официальный сервер майнкрафт на который будет произведена установка Forge, установлены моды и вы сможете играть с друзьями в сборки.

Предупреждение :
Современные моды майнкрафт работают не только на Forge, но есть и альтернативный загрузчик - Fabric, пока моды не поддерживают друг друга, потому если вы хотите создать сервер с Fabric модами: Создать сервер майнкрафт с модами Fabric.

Установка нужной версии Java для сервера

Сервер Forge требует для работы JDK (Java Development Kit), джава для разработчиков, все версии фордж_сервера до minecraft 1.17 требуют наличия JDK 8, версия minecraft 1.17+ требует установки JDK 16.

Если хотите сервер, а не игру по сети, вам придется выполнить этот квест.

    Все версии майнкрафт до 1.17 требуется JDK 8 - скачать можно здесь

Правила сервера с модами:

  • У сервера и у всех игроков должна быть одинаковая версия minecraft forge.
  • У сервера и у всех игроков должны быть одинаковые моды, притом вплоть до версии самого мода. (исключение только клиентские моды, миникарты, JEI итд)
  • Некоторые моды не поддерживает работу в онлайне вообще, просто крашат сервер ошибками, автор не реализовал это или допустил ошибок.
  • Если вы изменяете настройки мода в конфиг файле, то эти изменения должны быть у всех игроков и на сервере тоже. Т.е у конфиги сервера и конфиги игроков должны быть одинаковые.
  • Нет необходимости устанавливать клиентские моды на сервер, моды JEI, damage indicators, миникарты итд, то, что работает у конкретного игрока и не взаимодействует с другими игроками.

Если все хорошо, вы можете подключиться к серверу и увидеть на нем моды.

Как создать сервер майнкрафт с модами и Forge

Если ваш сервер не запускается, то читайте файл лога в папке logs, там может быть написан проблемный мод и причину сбоя.

Как читать и понимать краш-лог майнкрафта? [Guide]

Хочешь научится понимать, в чем заключается ошибка? Тогда этот гайд для тебя
1: Для работы с краш-логами вы можете использовать любой текстовой редактор, но для удобного использования я советую использовать редактор с поддержкой строк кода (Пример: Visual Studio Code)
2: Нам потребуется только начало документа, в котором чередуются строки, начинающиеся на at
3: Нужно знать правило написания краш-репорта. Мы читаем строки снизу - вверх (То есть самая последняя at является самой первой.)

4: Ваши краш-логи находятся по адресу: Имя_Пользователя/AppData/Roaming/.minecraft/crash-reports

Если вы играете с модами и игра не запускается/вылетает, то в краш-логе можно найти название конфликтного мода. В нашем случае (пример выше под спойлером) краш вызвал мод JEI, это можно понять по строчкам at mezz.jei.
Если краш произошел в ванильном майнкрафте, то в краш-логе будет указана конкретная причина.


Теперь вы знаете 90% информации, необходимой для понимания ваших краш-логов. Для полного понимания краш-лога вы должны быть продвинутым пользователем и знать все ошибки майнкрафта, что очень трудно и не играет важной роли. Спасибо за прочтение статьи.

Правка run.bat (только для minecraft 1.17 и более новых)

Если у тебя версия до 1.17, то ты выполнял пункт выше, этот можешь пропустить, если версия новее, то наверное все точно так же.

На версии 1.17+ автор чуть изменил процесс, немного его упростил, потому после окончания работы установщика форджа вы увидите примерно такое содержимое папки сервера которую вы указали:

Как создать сервер майнкрафт с модами и Forge

Здесь уже есть run.bat для запуска из под Windows и run.sh для запуска из под Linux, но не торопитесь запускать.

Открываем текстовым редактором файл run.bat заменяем Java на "C:\Program Files\Java\jdk-16.0.1\bin\java.exe" (с кавычками) это ваш адрес до установленной Java JDK 16, сохраняем и запускаем файл run.bat

Как создать сервер майнкрафт с модами и Forge

Создание файла start.bat для запуска сервера:

Выполнять данный пункт только для версий 1.5.2-1.16.5.

Создайте в папке сервера текстовый документ, поместите внутрь такую строчку:

Здесь вы должны иметь правильное название файла сервера, в данном случае forge-1.12.2-14.23.5.2855.jar, если вы переименовали, либо у вас другая версия майнкрафт или форджа, измените название на ваше.

Прочие параметры:

  • "C:\Program Files\OpenJDK\jdk-8.0.262.10-hotspot\bin\java.exe" - адрес до нужной версии Java которую вы установили на предыдущем шаге, в данном случае JDK 8
  • Xmx1024M - значение указывающее максимальное количество мегабайт оперативной памяти доступное серверу.
  • Xms1024M - значение указывает значение оперативной памяти которое сервер займет сразу на старте сервера, даже если ему не нужно.
  • nogui - Важным моментом является параметр nogui, он отключает окно сервера которое показывает игроков и график нагрузки на сервер, да, это окно может быть удобным, но лично у меня оно очень сильно нагружает процессор при работе сервера, НАСТОЯТЕЛЬНО рекомендую отключать GUI сервера.

Как создать сервер майнкрафт с модами и Forge

Сохраните файл, переименуйте его например в start и замените расширение .txt на .bat

Как создать сервер майнкрафт с модами и Forge

Если у вас нет возможности изменить .txt при переименовании, то включите эту опцию в системе: инструкция

Первая попытка запуска сервера:


После того как вы запустите файл start.bat (run.bat), окно сразу же закроется или закройте его сами (1.17+), это нормально, в папке появятся несколько папок и файлов:

Как создать сервер майнкрафт с модами и Forge

Откройте файл eula.txt, внутри измените eula=false на eula=true

Как создать сервер майнкрафт с модами и Forge

Если вдруг файлы не появились и eula.txt нету, всего скорее вы установили не ту Java, либо не верно указали адрес, либо допустили другие ошибки, что бы лучше понять что за ошибка, добавьте в start.bat pause на новой строчке, с этим консоль не закроется и там будет какая-то ошибка или информация которую можно погуглить

Как создать сервер майнкрафт с модами и Forge

Создадим сервер:

Скачайте установщик Minecraft forge необходимой версии, exe или jar, не важно.

Запустите скачанный файл, в данном окне выберите Install server, а ниже укажите произвольную папку в которой будет ваш сервер, нажмите Ok.
Установочник сам все скачает, необходим интернет.

Как создать сервер майнкрафт с модами и Forge

Перейдите в папку которую указали, там вы увидите примерно это:

Как создать сервер майнкрафт с модами и Forge

Как установить Minecraft Forge?

Клиент должен быть чистым, (лучше просто заново скачайте полностью чистый майнкрафт удалив из .minecraft все папки кроме saves).

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

Нажмите Ок, ждите окончания.
После чего запустите (перезапустите) лаунчер и выберите версию игры с припиской Forge:

Готово, если не поняли, смотрите подробное видео:

Работа с сервером:


После того как вы настроили сервер, настало время работать с ним.
Всегда стоит останавливать сервер командой /stop, а не просто закрывать окно сервера.
Сервер поддерживает ввод команд (подобно чату в игре), команды вводятся сюда: (если запустили через .bat файл будет черное окно консоли, пишите в нем.)

Как создать сервер майнкрафт с модами и Forge

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

Minecraft Forge - скачать Майнкрафт Фордж [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.8.9] [1.7.10]


Minecraft Forge, майнкрафт фордж, скачать

Minecraft Forge или майнкрафт фордж это очень важное дополнение, при его помощи в игру устанавливаются моды. Это универсальный инструмент для добавления модов в игру, вы вставляете моды в папку, а майнкрафт фордж помещает их прямиком в игру.

Фордж умеет отслеживать проблемы с модами, если вы удалили моды, а на карте остались блоки из мода, фордж это заметит и заменит их на стандартные игровые. За много лет разработки фордж превратился в своеобразный язык программирования для модов, что позволяет устанавливать в игру 100-200 модов без проблем и конфликтов между ними.

Как установить моды:

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

Настройка сервера:

Перейдем к базовой настройке, закройте окно сервера если оно открыто.

1) Откройте файл server.properties текстовым редактором в нем есть основные настройки сервера.

2) Если у вас пиратка, то что бы вас пускало на сервер найдите параметр online-mode=true и измените его на online-mode=false

3) Укажите IP своего сервера в параметре server-ip=
Вы можете указать IP своего пк в интернете (не забывайте открыть порты), IP в хамачи, локальный адрес пк если ваши игроки находятся в одной сети ( подключены к одному вайфай или проводом)
Инструкция как настроить хамачи.
Инструкция как играть по сети

4) Значение - max-players=20 указывает максимальное количество игроков, все прочие настройки вы легко найдете поискав в гугле.

5) В файле еще очень много настроек, многие понятны без перевода, другие понятны если перевести переводчиком, а так же вы можете использовать эту вики.

Читайте также: