Создание модификаций с помощью forge/1.7+/основные уроки

Виды и преимущества загрузчиков

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

Forge. На сегодняшний день это самый распространенный загрузчик, так как большинство разработчиков создают моды при помощи его API. Все популярные дополнения сделаны именно для него, кроме того, он совместим с Optifine. Единственным недостатком является высокая требовательность к ресурсам, из-за чего может падать FPS даже при небольшом количестве установленных модов. Это особенно заметно на новых версиях Minecraft.

LiteLoader. Удобный загрузчик, который иногда используют для создания небольших модов. Отличается высокой производительностью и при этом совместим с Forge. На данный момент работает только на версиях до 1.12.2. Главным отличием является необычный формат модов — .litemod.

Rift. Данный лоадер возник после выхода версии 1.13 и некоторое время не имел конкурентов. Но спустя несколько недель появился Фордж для новой версии, и этот загрузчик перестал быть актуальным, новые моды под него почти не появляются.

Fabric Mod Loader. Самый «молодой» из загрузчиков, вышел почти сразу после обновления Майнкрафта до версии 1.14. Он спешно конкурирует с другими лоадерами благодаря высокой скорости работы. Некоторые разработчики по просьбам пользователей делают две версии модов: для Forge и Fabric. Одним из самых известных подобных проектов является VoxelMap.

Если тебя интересуют небольшие модификации, то есть смысл поискать варианты для LiteLoader или Fabric. Но крупные проекты и сборки сегодня можно запускать только с Фордж.

Модель#

Для начала добавим такой код в BlocksRegister, в метод setRender

Создадим файл . По пути:

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

Название файла должно быть таким же как и в -> , в переменной !

Теперь Вам надо создать . По пути:

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

Если ваша текстура к модели берётся из самого Minecraft, то (modid) прописывать не надо! В примере с объёмной моделью я решил использовать текстуру камня из Minecraft.

— modid нашего мода.
— регистрируемое имя нашего блока.

Когда ваша модель готово, добавьте её по пути:

Добавим в ClientProxy, в метод init такой код .

И вот, что в конечном итоге у нас может получится.

Свой материал для инструмента[]

Допустим вы хотите, чтобы ваш инструмент обладал свойствами не железной/алмазной кирок из майнкрафта, а собственными.

Тогда где-нибудь(вы можете где угодно написать эту строку, главное, чтоб можно было вызвать.), например в главном классе вне каких либо методов (то есть можно перед последней фигурной скобкой) напишите:

public static final ToolMaterial NEWMAT = EnumHelper.addToolMaterial("NEWMAT", 2, 564, 5.0F, 4.0F, 50);

Не забудьте про импорт. Давайте разберемся: static означает, что переменная NEWMAT типа ToolMaterial доступна из других классов. Затем приравнивается значению, которое и даст вашей кирке определённые свойства. Теперь об аргументах, перечисленных через запятую:

  1. Название материала
  2. На сколько кирка крута от 0 до 3, то есть какие блоки может ломать(1 — эквивалент каменной, 3 — алмазной).
  3. Максимальное количество сломанных блоков (у алмазной — 1561, каменной — 131).
  4. Скорость добычи (у золотой — 12, у алмазной — 8, деревянной — 2).
  5. Урон, наносимый существам (у деревянной/золотой — 0, железной — 2, алмазной — 3).
  6. Зачаровываемость, то есть какой шанс хороших чар (у золотой — 22, алмазной — 10, железной — 14).

Теперь можно придать какому-нибудь инструменту эти свойства, для этого в инструменте (например в нашей кирке) измените на В таком случае вы отправляете в супер-класс инструмента информацию о том, что свойства описаны переменной NEWMAT типа ToolMaterial, которая описана в классе BaseMyBestMod (или любой другой класс, где она написана).

Вот и всё, свойства инструмента изменены.

Моды для «Майнкрафта»

Прежде чем разбираться с тем, своими руками, вам следует немного погрузиться в этот загадочный мир. Так вы сможете понять, что именно можно модифицировать и как это отразится на игре. Итак, в первую очередь вам стоит взглянуть на известные существующие моды, которые признаны повсеместно. Отличным примером послужит «Индастриал Крафт» — модификация, которая добавляет в игре огромное количество блоков, рецептов для создания предметов и многое другое. Таким образом, данный мод представляет собой титанический труд, который полностью преобразил мир «Майнкрафта». Однако вам не стоит сразу замахиваться на подобное, так как это потребует многих месяцев работы, особенно если этим заниматься вы собираетесь в одиночку. Лучше взглянуть на небольшие модификации, которые добавляют несколько блоков и предметов, немного изменяют один или два аспекта игры. Такой мод можно сделать гораздо проще и быстрее. Это станет для вас отличной практикой и способом понять, хотите ли вы модифицировать и далее игру на более масштабном уровне. Но как сделать мод на «Майнкрафт»? Естественно, вам понадобится материал, с которым вы будете работать, а также соответствующие инструменты.

Атрибуты для моба[]

Если вы уже проверили моба, то заметили, что он двигается очень медленно. Чтобы исправить это и изменить атрибуты для моба, добавьте в его класс следующий код:

@Override
protected void applyEntityAttributes()
{
  super.applyEntityAttributes();
  this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0D);
  this.getEntityAttribute(SharedMonsterAttributes.followRange).setBaseValue(32.0D);
  this.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).setBaseValue(0.0D);
  this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.25D);
  this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(2.0D);
}

Разъяснение:

Параметр Описание
maxHealth Максимальное здоровье
followRange Дистанция, на которой моб будет преследовать кого-либо
knockbackResistance Сопротивление к отбрасыванию
movementSpeed Скорость движения
attackDamage Сила атаки

Атрибуты установлены.

Зачем создавать свой сервер в Майнкрафт

Создавая собственный сервер в Minecraft, пользователь получает практически безграничный контроль над игровым процессом. В нем можно создавать собственные правила, устанавливать какие-либо моды или фильтры, приглашать своих друзей в приват и так далее. Это не так сложно и дорого, как может показаться на первый взгляд. Но это не все преимущества, есть еще несколько:

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

Создание чистого мода

Если вы хотите узнать о том, как создать мод для Minecraft, то вам нужно сразу же уяснить, что его можно делать двумя совершенно разными методами — с использованием API или без. Сначала нужно разобрать создание чистого мода, который не требует дополнительного программного обеспечения. В данном случае вам нужно хорошо разбираться в механике игры и иметь определенные дизайнерские навыки, а также умение программировать на высоком уровне. Тогда вы сможете внедрять в игру что-то новое, а также изменять определенные предметы, функции и многое другое. В итоге вы сможете создать уникальный и необычный мод, но вполне вероятно, что он будет ограничен в использовании другими геймерами, так как не будет стандартизован — соответственно, у кого-то из геймеров может возникнуть проблема с запуском и совместимостью, независимо от того, для какого режима создавалась эта модификация «Майнкрафт» — выживание или креатив.

Обзор

Моды (сокращение от «модификации») могут изменять или добавлять элементы, блоки, объекты и многое другое. Предположительно, вы уже есть идея для мода, который вы хотите создать. Если вы просто хотите добавить в свою игру собственные улучшения, функции, таблицы добычи, структуры, рецепты или теги, узнайте, как создать пакет данных, который не требует программирования. Или посмотрите, как создать пакет ресурсов, если вы просто хотите настроить текстуры (цвета и дизайн), модели, музыку, звуки, языки, всплески, шрифты или финальное стихотворение. Или, возможно, вы хотите «разветвить» любимый мод. для обновления до более новых версий Minecraft. В любом случае, это руководство будет охватывать ( в конечном итоге ) только самые основные элементы создания объекта и создания объекта (движущегося объекта, такого как сельский житель, овца, зомби и т. Д.), И распространение полученного пакета модов.

Моды Minecraft состоят из файлов jar (например, yournewmod.jar), которые содержат файлы классов, файлы JSON и файлы изображений, и это лишь некоторые из наиболее распространенных.

Class файлы специфичны для языка программирования Java. Несколько учебных пособий по Java, которые стоит попробовать, включают w3schools (веб и мобильные устройства), SoloLearn (веб и мобильные устройства) и kodevelopment (веб). Для чтения или создания файлов классов вам понадобится IDE (интегрированная среда разработки), например IntelliJ или Eclipse

В этом руководстве основное внимание уделяется IntelliJ IDEA Community Edition 2019. JSON файлы — это средство детализации характеристик объектов, используемых файлами классов Java

JSON намного проще, чем Java. Вам понадобится текстовый редактор, такой как Notepad ++, Vim или Emacs, чтобы читать или создавать файлы JSON. У вас, вероятно, уже есть базовый текстовый редактор на вашем компьютере, но есть много преимуществ использования вместо него других.
Файлы изображений, с которыми вы, возможно, знакомы, включают форматы .bmp и .jpg, но для Minecraft требуется .png (пример: yournewlogo.png) в квадрате, кратном 16 пикселям (пример: 16×16, 32×32, 64×64). Вам понадобится редактор изображений, такой как Paint.NET или GIMP, для редактирования или создания файлов .png. Вероятно, у вас уже есть MS Paint на вашем компьютере, но GIMP имеет гораздо больше функций, а Paint.NET довольно удобен для пользователя. Есть также несколько веб-сайтов с инструментами для создания пиксельной графики.

Если вы играли в Minecraft Java Edition , у вас, вероятно, уже есть JRE (среда выполнения Java). Чтобы разработать мод, вам нужно будет найти JDK (Java Development Kit), который включает JRE и эмулятор.. Создайте бесплатную учетную запись на oracle.com и загрузите JDK Standard Edition версии 8. Затем следуйте инструкциям по его установке и запишите место, в которое он устанавливается

Обратите особое внимание на раздел Обновление переменной среды PATH

Установив Java Development Kit и интегрированную среду разработки IntelliJ для управления Java, вы теперь есть инструменты для разработки специального программного обеспечения, которое можно использовать в различных приложениях. Во время работы над модом продолжайте работать с руководствами по Java false. Уроки позволят вам претворить свои идеи в жизнь, а идеи сделают уроки более интересными и запоминающимися.

Еще один инструмент, который вы должны настроить перед запуском мода, — это Forge MDK (комплект для разработки модов). Forge — это набор полезных ресурсов и загрузчик модов, разработанный специально для упрощения совместимости между Minecraft Java Edition и несколькими модами, созданными сообществом

В этом руководстве основное внимание уделяется MDK версии 1.12.2 Minecraft Java Edition , хотя Forge для версии 1.14.4 существует уже некоторое время. Альтернативой Forge является Fabric, но Java все еще используется для кодирования модов в любом случае

Чего делать не следует

Есть некоторые вещи, с которыми вам следует быть осторожными не делать при создании мода. Запомните этот список:

  • Не делайте ничего, что нарушает условия использования Mojang Studios для Minecraft .
  • Не выпускайте версии или модификации Minecraft , которые позволяют вам играть, не купив Minecraft в Mojang Studios.
  • Ни в коем случае не выпускайте декомпилированный исходный код Minecraft .
  • Не изменяйте существующие моды без разрешения автора (авторов) этого мода. ). Проверьте их лицензию, обычно доступную в репозитории автора на GitHub. Если вы не можете найти лицензию, значит, у вас нет разрешения на передачу измененной версии кому-либо. Вы можете повозиться с файлами только для личного использования .

Запускаем Minecraft на VDS или выделенном сервере

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

В хостинге Timeweb можно купить готовый выделенный сервер или самостоятельно подобрать конфигурацию. Правда, этот вариант не самый дешевый. Если у вас ограничен бюджет, можно подключить VDS сервер. Это отличный вариант для начинающих геймеров. 

Из минусов – это не самый простой способ, для его реализации требуются определенные знания и навыки в администрировании. При работе могут возникать какие-либо трудности и нюансы, также вполне допустимо возникновение проблем в процессе запуска и настройки сервера.

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

О том, как создать сервер Minecraft на VDS на базе платформы CentOS 7, ранее было рассказано в другой статье. 

Создание сервера Minecraft на VDS с Ubuntu 18.04

Чтобы создать сервер Майнкрафт для игры с другом потребуется заранее установить на сервер дистрибутив Ubuntu 18.04 и включить поддержку SSH. В хостинге Timeweb можно выбрать тариф с оптимальными параметрами и ценами. Если выяснится, что этих характеристик недостаточно, вы сможете выбрать тариф с большей производительностью.

Первым делом после подготовки сервера надо установить Java. Рекомендуется версия 8 OpenJDK для Java, в частности, headless JRE. Это минимальная версия, не имеющая поддержки графического интерфейса в приложении. Именно поэтому она отлично подходит для запуска приложений Java на сервере. Для скачивания и установки надо ввести следующую команду:

sudo apt install openjdk-8-jre-headless

Еще нужно будет скачать приложение Screen (о его назначении говорилось выше), для этого дается следующий запрос:

sudo apt install screen

После того как все необходимо ПО установлено, потребуется активировать брандмауэр для разрешения трафика на сервер Minecraft. В игре по умолчанию используется порт 25565. Чтобы внедрить это правило, запускается такая команда:

sudo ufw allow 25565

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

wget https://launcher.mojang.com/v1/objects/c5f6fb23c3876461d46ec380421e42b289789530/server.jar

Как только загрузка завершится, потребуется принять лицензионное соглашение через файл. Надо для этого открыть в текстовом редакторе nano файл eula.txt. Затем следует найти параметр eula=false и поменять значение на true. Теперь можно приступать к запуску файла jar. Открываем приложение screen и даем в нем вот такую команду:

java -Xmx1024M -Xms1024M -jar minecraft_server.1.16.2.jar nogui

В течение нескольких секунд будет совершена инициализация. Потом выйдут результаты, примерно вот такие:

Server thread/INFO: Done (32s)! For help, type "help"

Это значит, что подключение сервера завершилось.

Создание модификации

Если вас интересует вопрос о том, как сделать моды «Майнкрафт 1. 5. 2» и других версий, то вам нужно будет провести немало времени в «Фордже», так как нужно будет отдельно прорабатывать каждый блок, который вы собираетесь добавить в игру, задавать его назначение, взаимодействие с другими блоками и предметами. В общем, объем работ будет просто огромен — даже для создания одного нового блока с какими-либо базовыми функциями вам понадобится несколько часов кропотливой работы. Что уж говорить про модификацию — даже самая простая из них займет у вас несколько десятков часов. Теперь вы должны представлять, сколько же времени ушло у создателей того же «Индастриал Крафта», чтобы выпустить подобный проект.

Особенности использования Minecraft Forge

Многие геймеры, которые создают или используют моды, задаются вопросом о том, зачем вообще нужен «Фордж». Ведь это так неудобно — вам обязательно нужно установить сам API, чтобы иметь возможность затем запустить модификацию. Неужели нельзя делать чистые моды, которые не требуют ничего дополнительного для игры? На самом деле «Фордж» имеет гораздо больше преимуществ, чем недостатков (кстати, он есть только один, который заключается именно в необходимости предустановки API для запуска мода). Во-первых, процесс создания мода упрощается, во-вторых, у вас появляется гораздо больше возможностей, для использования которых не нужно прикладывать усилий. Но самое главное — ваш мод становится универсальным. Если вы делаете модификацию без API, как уже было сказано выше, велика вероятность того, что многие геймеры не смогут ее установить. Если же вы использовали «Фордж», то любой геймер с установленным API сможет установить и ваш мод без малейших проблем.

Способ установки модов с помощью официального Minecraft Launcher:

Установка модов в нём сложнее, так как там нет уже готовых версий OptiFine и Forge, как они встроены в пиратских лаучнерах. Но можно упростить себе задачу, установив forge клиент. О том, как это сделать мы писали ранее здесь. После установки он появится во всех лаунчерах, даже в официальном. Про установку Fabric вы можете прочитать в отдельной статье. Там всё расписано подробно, так что вы вряд ли запутаетесь. Вот эта статья

ВНИМАНИЕ!! Моды, созданные под Fabric и Forge работают только для Fabric и Forge соответственно! Мод для Fabric не будет работать, если вы выбрали Forge для загрузки игры и наоборот

1. После установки Forge версии игры заходим в лаунчер игры.

2. Нажимаем на выбор версии игры и ищем ту, которую вы только что установили (у модифицированной версии есть приписка Forge).

3. Майнкрафт лаунчер может выдать предупреждение, но все в порядке. Просто нажимаем на кнопку «Играть».

Скачать MCreator

  • Скачать MCreator 2021.2x64exe(224,48 MB)
  • Скачать MCreator Portable 2021.2x64zip(249,06 MB)
  • Скачать MCreator 2021.2dmg(368,95 MB)
  • Скачать MCreator 2021.2x64gz(256,97 MB)[Debian/Ubuntu]

Что нового в этой версии

  • Пользовательский элемент. Поведение дозирования вызвало ошибки сборки, если процедура не была выбрана.
  • Заблокировано блок процедуры обратного направления, вызванные ошибками сборки в некоторых случаях.
  • Заблокировано блок состояния блокировки блока вызвали ошибки сборки в некоторых случаях.
  • Локальная переменная автозагрузка не работает для некоторых файлов шаблона процедуры.
  • Список мода Mod Shockspace Shift — щелчок не работает.
  • Импорт и отображение некоторых переводов мода не работает должным образом.
  • Некоторые другие незначительные исправления и улучшения.

Скачать предыдущие версии

  • Скачать MCreator 2021.1x64exe(137,75 MB)
  • Скачать MCreator 2021.1x86exe(136,02 MB)
  • Скачать MCreator Portable 2021.1x64zip(294,61 MB)
  • Скачать MCreator Portable 2021.1x86zip(161,16 MB)
  • Скачать MCreator 2021.1dmg(339,24 MB)
  • Скачать MCreator 2021.1x64gz(175,51 MB)[Debian/Ubuntu]
  • Скачать MCreator 2021.1x86gz(175,72 MB)[Debian/Ubuntu]
  • Скачать MCreator x64 (Windows) (exe) 2020.5x64exe(135,8 MB)
  • Скачать MCreator x86 (Windows) (exe) 2020.5x86exe(134,14 MB)
  • Скачать MCreator Portable x64 (Windows) (zip) 2020.5x64zip(161,98 MB)
  • Скачать MCreator Portable x86 (Windows) (zip) 2020.5x86zip(159,4 MB)
  • Скачать MCreator (Mac) 2020.5dmg(333,04 MB)
  • Скачать MCreator x64 (Linux) 2020.5x64gz(171,27 MB)
  • Скачать MCreator x86 (Linux) 2020.5x86gz(171,49 MB)
  • Скачать MCreator x86 (Windows) (exe) 2020.4x86exe(132,81 MB)
  • Скачать MCreator x64 (Windows) (exe) 2020.4x64exe(134,49 MB)
  • Скачать MCreator Portable x86 (Windows) (zip) 2020.4x86zip(158,06 MB)
  • Скачать MCreator Portable x64 (Windows) (zip) 2020.4x64zip(160,64 MB)
  • Скачать MCreator (Mac) 2020.4dmg(331,4 MB)
  • Скачать MCreator x86 (Linux) 2020.4x86gz(172,22 MB)
  • Скачать MCreator x64 (Linux) 2020.4x64gz(169,78 MB)
  • Скачать MCreator x86 (Windows) (exe) 2020.3x86exe(137,22 MB)
  • Скачать MCreator x64 (Windows) (exe) 2020.3x64exe(138,9 MB)
  • Скачать MCreator Portable x86 (Windows) (zip) 2020.3x86zip(162,57 MB)
  • Скачать MCreator Portable x64 (Windows) (zip) 2020.3x64zip(165,15 MB)
  • Скачать MCreator (Mac) 2020.3dmg(336,66 MB)
  • Скачать MCreator x86 (Linux) 2020.3x86gz(176,73 MB)
  • Скачать MCreator x64 (Linux) 2020.3x64gz(174,29 MB)
  • Скачать MCreator x86 (Windows) (exe) 2020.2x86exe(133,95 MB)
  • Скачать MCreator x64 (Windows) (exe) 2020.2x64exe(135,59 MB)
  • Скачать MCreator Portable x86 (Windows) (zip) 2020.2x86zip(159,29 MB)
  • Скачать MCreator Portable x64 (Windows) (zip) 2020.2x64zip(161,83 MB)
  • Скачать MCreator (Mac) 2020.2dmg(331,55 MB)
  • Скачать MCreator x86 (Linux) 2020.2x86gz(172,91 MB)
  • Скачать MCreator x64 (Linux) 2020.2x64gz(170,16 MB)
  • Скачать MCreator x86 (Windows) (exe) 2020.1 x86exe(132,1 MB)
  • Скачать MCreator x64 (Windows) (exe) 2020.1 x64exe(133,75 MB)
  • Скачать MCreator Portable x86 (Windows) (zip) 2020.1 x86zip(157,42 MB)
  • Скачать MCreator Portable x64 (Windows) (zip) 2020.1 x64zip(159,95 MB)
  • Скачать MCreator (Mac) 2020.1 dmg(329,5 MB)
  • Скачать MCreator x86 (Linux) 2020.1 x86gz(171,05 MB)
  • Скачать MCreator x64 (Linux) 2020.1 x64gz(168,29 MB)
  • Скачать MCreator x86 (Windows) (exe) 2019.5x86exe(132,49 MB)
  • Скачать MCreator x64 (Windows) (exe) 2019.5x64exe(134,66 MB)
  • Скачать MCreator Portable x86 (Windows) (zip) 2019.5x86zip(158,14 MB)
  • Скачать MCreator Portable x64 (Windows) (zip) 2019.5x64zip(161,55 MB)
  • Скачать MCreator (Mac) 2019.5dmg(328,14 MB)
  • Скачать MCreator x86 (Linux) 2019.5x86gz(172,79 MB)
  • Скачать MCreator x64 (Linux) 2019.5x64gz(167,61 MB)
  • Скачать MCreator x86 (Windows) (exe) 1.9.1 x86exe(130,25 MB)
  • Скачать MCreator x64 (Windows) (exe) 1.9.1 x64exe(132,42 MB)
  • Скачать MCreator Portable x86 (Windows) (zip) 1.9.1 x86zip(155,87 MB)
  • Скачать MCreator Portable x64 (Windows) (zip) 1.9.1 x64zip(159,28 MB)
  • Скачать MCreator (Mac) 1.9.1 dmg(325,37 MB)
  • Скачать MCreator x86 (Linux) 1.9.1 x86gz(170,39 MB)
  • Скачать MCreator x64 (Linux) 1.9.1 x64gz(165,2 MB)

Урок 7. Генерация[]

Теперь мы сделаем так, чтобы теперь какой-либо блок, аналогично рудам, генерировался в обычном мире, в Нижнем мире или в краю. Теперь в главном классе (BaseMyBestMod) после регистрации блока в Forge регистрируем новую переменную:

public static BestBlockGenerator bestblockgenerator = new BestBlockGenerator();

и исправляем ошибку, создав нужный класс. Естественно, вместо BestBlockGenerator вы можете использовать любое название. Далее в методе в любом месте после регистрации блока, который хотите генерировать, добавьте такой код:

GameRegistry.registerWorldGenerator(bestblockgenerator, );

Тем самым вы зарегистрируете ваш генератор. Число «0» обозначает каким по счёту будет загружаться генератор (0 — первым, 1 — вторым и т. д.).

Теперь в созданном классе после добавьте и в тело класса добавьте это:

Описание параметров метода addOreSpawn() можно увидеть (чтобы разобраться в них), наведя курсор на его название. Эту информацию мы привязали к методу, благодаря javadoc-комментарию.

Теперь можно запускать и смотреть результаты.

Экспорт вашего мода Minecraft

После того, как вы создали свой мод, вы должны экспортировать его для использования в Minecraft.

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

Замечания: Если вы хотите работать с несколькими модами одновременно, переключитесь на другое рабочее пространство из главного меню.

Детали мода В меню представлены варианты упаковки вашего мода. Вы можете ввести имя, версию, описание и информацию о создателе. Загрузите изображение, если хотите. Наиболее важным из этих вариантов является Расширение файла. Оставьте это на опции по умолчанию .JAR.

Когда вы будете готовы, нажмите Перекомпилировать и экспортировать. Это упакует ваш мод, но это может занять некоторое время в зависимости от вашего компьютера и количества вещей, которые вы изменили.

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

Подготовка

Если вы хотите узнать, как сделать мод на «Майнкрафт», то вам в первую очередь стоит подготовить свое И самым главным моментом здесь будет скачивание специальной программы под названием «Майнкрафт Фордж», в которой вы можете делать очень многое для «Майнкрафта». Вы можете проявлять свое воображение без каких-либо ограничений, создавать новые блоки, персонажей, при этом вы сразу же сможете импортировать их в игру. Также вам понадобятся текстуры, с которыми вы будете работать — их вы можете либо создать самостоятельно, но для этого потребуются определенные знания о том, какие текстуры придаются какому объекту, или же скачать с тематических сайтов, а затем изменять самостоятельно, чтобы внешне преобразить ваш «Майнкрафт». Как сделать моды 1. 7. 5, а также других версий игры, ведь пока что вы только подготовились к процессу?

Ошибки[]

Основная статья: Аварийное завершение игры

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

Сокращённый вариант отчёта об ошибке расположен ниже:

Отчёт об ошибке
---- Minecraft Crash Report ----
// Uh... Did I do that?

Time: 1/1/17 12:00 AM
Description: Manually triggered debug crash


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- System Details --
Details:
	Minecraft Version: 1.12
	Operating System: Windows 10 (amd64) version 10.0
	Java Version: 1.8.0_131, Oracle Corporation
	Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
	Memory: 524288000 bytes (500 MB) / 536870912 bytes (512 MB) up to 1073741824 bytes (1024 MB)
	JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -XX:+DisableExplicitGC
	IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
	Launched Version: 1.12
	LWJGL: 2.9.4
	OpenGL: AMD Radeon (TM) R9 999 GL version 9.9.99999 Compatibility Profile Context 99.99.999.999, ATI Technologies Inc.
	GL Caps: Using GL 1.3 multitexturing.
Using GL 1.3 texture combiners.
Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
Shaders are available because OpenGL 2.1 is supported.
VBOs are available because OpenGL 1.5 is supported.

	Using VBOs: No
	'''Is Modded: Probably not. Jar signature remains and client brand is untouched.'''
	Type: Client (map_client.txt)
	Resource Packs: 
	Current Language: English (US)
	Profiler Position: N/A (disabled)
	CPU: 9x Intel(R) Core(TM) i9-9999Z CPU @ 9.99GHz

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

Is Modded: Probably not. Jar signature remains and client brand is untouched
Is Modded: Very likely; Jar signature invalidated
Is Modded: Definitely: client brand changed to (present loader, such as "fml,forge" or modloader)
Is Modded: Unknown (can't tell)

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

Урок 8. Прокси и инстанция[]

Прокси и инстанция (экземпляр) нужны для создания мобов, регистрация собственных рендеров, звуков и др. Для создания инстанции добавьте в главный файл модификации следующий код:

@Instance("mybestmod")
public static MyBestMod instance;

Также, если вы хотите сократить число импортов, то вместо сделайте , от этого ничего не изменится. Инстанция — или экземпляр — это ссылка на вашу модификацию, которую использует Forge. Если вы не создали её сами, то Forge создаёт её для вас, но в этом случае вы не сможете взаимодействовать с ней, поэтому рекомендовано создать её самому.

Теперь следует сделать прокси. Прокси фильтрует контент на то, что должно быть для сервера, а что для клиента. Сервер хранит данные о мире, в то время как клиент рендерит мир. Для создания прокси создайте два класса: ClientProxy для клиента и CommonProxy для сервера. Суперклассом ClientProxy должен быть CommonProxy. Теперь регистрация прокси. Просто добавьте следующий код в главный класс модификации:

@SidedProxy(clientSide = "ваш.пакет.ClientProxy", serverSide = "ваш.пакет.CommonProxy")
public static CommonProxy proxy;

Прокси и инстанция готовы.

mods.toml#

В папке «resources/META-INF» распологается файл .

Этот файл определяет метаданные нашего мода: идентификатор, название, авторов, зависимости и так далее.

В файле обязательные поля обозначены как «mandatory» их необходимо заполнить т.к. у них нет значения по умолчанию, что будет вызывать ошибку, остальные поля являются опциональными.

Минимально правильный mods.toml файл должен содержать следующее:

Где — идентификатор мода. Не используйте заглавные буквы, пробелы, подчеркивания и т.д. Только английские буквы
в нижнем регистре.

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

Параметр Описание
modId Идентификатор мода.
displayName Название мода
description Описание мода в 1-2 абзаца
version Версия мода. Это должны быть просто числа, разделенные точками, в идеале, соответствующие семантическому управлению версиями
displayURL Ссылка на сайт мода
updateJSONURL Ссылка на JSON файл с данными обновлений мода
authors Строка с авторами
credits Строка с выражением благодарности кому-то
logoFile Путь к логотипу мода
dependencies зависимости мода

Вот пример умеренно заполненного файла:

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

Блок агрокультуры#

Давайте создадим класс под названием , который будет унаследован от ванильного и в связи с этим по своей механике будет схож с пшеницей. Что бы сделать агрокультуру более уникальной вы можете ознакомиться с супер-классом и поработать с добавляемыми им методами, их не так много. Наша агрокультура не будет иметь как и все остальные, а значит у неё не будет модели для предмета.

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

Как видно конструктор имеет стандартный вид, методы регистрации имён получают их параметром из конструктора блока. Имя мы будем задавать во время регистрации.

Как было отмечено, и ссылаются на новые объекты, которые будут созданы позже.

Наш класс переопределяет , который возвращает разные AABB (объект, отвечающий за физические габариты блока) для каждого (свойства) из (регистр свойств) блока. Наша агрокультура содержит одно унаследованное — «age», представляющее стадии роста — всего их восемь. Если вы хотите изменить количество стадий — создайте собственное и верните его в переопределённом . На каждой стадии роста растение имеет разные размеры и AABB различаются, возвращает нужную из массива, созданного в начале класса. Границы AABB в нашем случае определяются размером текстуры блока на разных стадиях роста.

Еще в этом классе переопределён , отвечающий за то, на сколько стадий роста будет ускорено созревание при применении костной муки. В данном случае он случайно вернёт значение ускорения на одну или две стадии.

Чтобы при затаптывании грядки с кукурузой она разрушалась, необходимо переопределить и вернуть .

Теперь регистрация блока.

Не забудьте вызвать метод в преините .

Теперь нужно создать файл блокстейта для нашей кукурузы. Создайте JSON файл по пути «src/main/resources/assets/ваш modId/blockstates/»

Рассмотрим его содержимое подробнее.

определяет версию блокстейта, всегда равен 1.

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

Блок используется для определения текстур, которые должен использовать блок с разными свойствами. В нашем случае свойство «age» использует разные текстуры для всех своих вариантов (восьми стадий роста).

Наша кукуруза использует ванильную модель блока, и нет нужды создавать собственную.

Теперь нужно добавить текстуры. В соответствии с блокстейтом их должно быть восемь, скачайте их отсюда и разместите по пути «src/main/resources/assets/ваш modid/textures/blocks/corn/». Всё, с блоком разобрались.

Главный файл мода#

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

В папке «java» создайте базовый пакет вашего мода. Если у вас уже есть домен для вашего мода, то отличным названием для
пакета будет что-то вроде . Если домена у вас нет, вполне подойдет использование вашего никнейма, как
название пакета верхнего уровня: .

В моем случае пакет будет называться так: .

Теперь создадим в нем файл . Это и будет главным файлом нашего мода.

Для того, чтобы Forge понял, что данный файл действительно является главным, мы должны добавить к определению класса
аннотацию :

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

Разбору полей аннотации посвящена отдельная статья.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector