Дополнительные возможности моддинга майнкрафт что такое

Обновлено: 02.07.2024

Здесь представлены основные уроки по созданию модификаций с помощью Forge/1.7+. Остальную информацию по данной теме смотрите в соответствующей статье.

Локализация названий в игре [ ]

Теперь скопируйте файл, и назовите копию ru_RU.lang (собственно русский перевод). Внутри него измените название на русское, например

Теперь оба этих файла можете перетащить в заранее созданную assets.mybestmod.lang При переносе выберите Copy files.

Чтобы локализировать вкладки в режиме творчество добавьте такой код:

Вот и всё! Локализация завершена, теперь в игре будут отображаться выбранные вами названия.

Подобных названий можно вписывать сколько угодно, главное в столбик.

Генерация предметов в контейнерах натуральных структур [ ]

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

Разберемся в параметрах:

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

Почти не отличается от создания собственного материала для инструмента.

В главном классе в любом месте, но вне каких-либо методов пишем:

Затем импортируем ArmorMaterial. Теперь разберём:

Вот и все. Теперь можно использовать этот материал для брони, например заменив ArmorMaterial.DIAMOND на BaseMyBestMod.BESTMAT

Дроп определённого предмета при разрушении блока [ ]

Всё очень просто. В конец класса созданного вами блока (перед последней фигурной скобкой) вставьте это:

То есть теперь при разрушении вашего блока из него выпадет алмаз. Вы можете написать, чтоб выпадало что угодно. Просто вместо return Items.diamond; напишите « return Item.getItemFromBlock(Blocks.); » (для блоков) или « return Items.; » (для предметов), а после ввода вами точки выпадет список возможных предметов или блоков.

Если хотите, чтоб выпадал не один предмет, а несколько, просто вставьте сразу после предыдущих строк

Тогда при разрушении выпадет 20 выбранных вами предметов или блоков. Всё очень легко и просто!

Мод: Мультивселенные

Мод Multidimension добавляет в мир Майнкрафт сразу 4 новых измерения. Каждый из них уникален своей структурой, а в некоторых даже есть сильные босы.

Пещерное измерение
Первое измерение в этом моде является Пещерное измерение, оно сложное и опасное, но очень полезное.

Портал пещерного измерения

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

Предмет активации Пещерного измерения

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

Пещерное измерение в Майнкрафт

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

Босс паук в Minecraft

Небесное измерение
Следующее измерение называется Небесным или Небесными землями. Измерение представляет собой небольшую область над небом.

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

Предмет активации Небесного измерения

В этом измерении появляются Зомби-Пиглины, есть таинственный храм и много ценных ресурсов.

Небесное измерение в Майнкрафт

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

Небесный Дракон в Майнкрафт

Измерение храма
Следующее измерение является неумолимым: измерение храма. Достигается это 10 песчаником и обычным кремнем, брошенным в один из углов.

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

Предмет активации портала храма

В этом измерении есть башни и храм, тут обитают Отбросы. В большом храме находится Босс-мумия, охраняемая скелетами.

Измерение Храма в Майнкрафт

Мумия
Мумия внутри пирамиды представляет собой нового босса. Босс неподвижен, но способен атаковать ударными волнами, отбрасывая вас назад. Также для атаки босс использует огненные шары. У него 600 единиц здоровья и он получит щит, когда здоровье окажется на половине.

Босс Мумия в Майнкрафт

Мумия имеет вторую фазу, которая представляет собой Огромного червя. Червь извергает ядом и атакует ударными волнами. У него 600 единиц здоровья и усиленная защита.

Огромный червь

Измерение руин
Это последнее и самое опасное измерение в этом моде.

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

Предмет активации портала руин

Это измерение представляет собой небольшую часть уже давно не существующего мира. Если посмотреть на него, то можно понять, что раньше там обитали люди, всё процветало. Теперь эта область бесплодна, мрачна…

Здесь появляются Руинные големы, которые иногда сражаются друг с другом и могут даже случайно ударить вас.

Измерение руин в Майнкрафт

Арена огня душ ведёт к самому сильному боссу — Скелетному дракону. Он не может летать, но у него 800 единиц здоровья, и становится сильнее, когда теряет половину здоровья.

Он наносит 25-30 единиц урона за удар. Также способен атаковать молниями и создавать взрывающиеся кости над вами. Он очень быстро передвигается, так что будьте готовы.

Скелетный Дракон в Майнкрафт

Новая руда
Обновление v4 добавляет новую руду — Руда мультивселенных. Эта руда генерируется во всех основных измерениях.

Новая руда в Крае

Новая руда в Незере

Новая руда в Обычном мире

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

Новую броню и инструменты также можно зачаровывать.

Новая броня мультивселенной

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

Рецепт нового музыкального автомата

Вот выглядят новые пластинки:

Новые музыкальные пластинки

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

Монолитный боссс

С него может выпасть секира и одна из трех новых пластинок.

Дроп секиры с босса

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

Интеллект для моба [ ]

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

Теперь в конструктор класса добавьте следующий код:

Интеллект Описание
Swimming Может ли существо плавать?
AttackOnCollid Базовый тип атаки, который используют зомби и пауки.
Wander Существо будет ходить вокруг, когда никого не атакует.
WatchClosest Ищет назначенное существо на заданном расстоянии.
LookIdle Существо будет осматриваться, просто стоя.
HurtByTarget Сделает целью какого-либо моба, который его ударил.
NearestAttackableTarget Ищет любое существо, которое подходит по второму параметру.

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

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

Характеристики [ ]

На данный момент существуют 7 разделов:

  • «Caves & Cliffs»
    • Позволяет протестировать возможности, планируемые к добавлению в обновлении Caves & Cliffs.
    • Активирует дополнительные возможности, добавленные в 1.8.0 и некоторых других обновлениях. Эти функции позволяют создавать пользовательские блоки и предметы, улучшают MoLang и метод run_command .
    • Активирует пользовательские биомы в дополнениях.
    • Активирует старые функции скриптов.
    • Используется для управления объёмом кода у туманов либо свойств и перестановок у сущностей.
    • Активирует набор инструментов GameTest Framework.
    • Включает экспериментальные функции Molang.

    С 1.17.11 в разделе «Caves & Cliffs» содержатся следующие возможности:

    Генерация мира

    • Новая генерация пещер
      • Добавлены шумовые пещеры, имеющие два варианта в виде сырных пещер и пещер-спагетти.
      • Добавлены аквиферы.
      • Таковыми являются величественные вершины, снежные вершины, снежные склоны, горные луга и горная роща.

      С beta 1.17.30.24 в разделе «Caves & Cliffs» содержатся следующие возможности:

      Содержание

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

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

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

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

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

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

      Экспериментальный игровой процесс

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

      Предупреждения [ ]

      Свой скин при моддинге [ ]

      Внимание! Этот способ работает только на лицензионной версии Minecraft.

      Чтобы при создании мода вы видели свой скин, вместо стандартного скина Steve, нужно прописать 2 строчки в аргументы запуска.

      Собственная вкладка в Творческом режиме [ ]

      Для этого добавьте такой код в тело класса:

      «ModID» заменяем на любое число. Рекомендую ID больше 11 (12 ID сразу на следующей странице творческого инвентаря).

      Потом создайте класс TutorialTab. Если всё правильно, то ваш класс будет иметь extends CreativeTabs до первой фигурной скобки. Теперь добавьте этот метод в ново-созданный класс:

      Для того что бы добавить что либо из вашего мода в собственную вкладку пишем:

      Обновление ForgeGradle [ ]

      Forge отделён от ForgeGradle, поэтому если вы попытаетесь обновиться на версию Forge, которая использует более новой ForgeGradle, вы получите ошибки. Вот таблица версия Forge, и какие версии ForgeGradle он использует.

      ForgeGradle Forge
      - 959<, 965
      1.0 960-964
      1.1 967-1047
      1.2 1048+

      Удалите папку .gradle, которая находится в папке, куда вы разархивировали Forge. Теперь, откройте файл build.gradle (который находится там же). Найдите такую строку:

      В 1.x-SNAPSHOT, поменяйте 1.x на нужную версию ForgeGradle. Сохраните файл и откройте командную строку. Повторно введите команды, которые вы использовали при установке Forge. ForgeGradle обновит все нужные файлы.

      Создание модификаций с помощью Forge/1.7+

      Сначала подготовим среду для работы с кодом Minecraft.

      Forge [ ]

      Распакованное содержание Forge.jpg

      Среда разработки [ ]

      Теперь нам нужно установить Forge, который при установке также произведёт декомпиляцию и деобфускацию кода Minecraft, чтобы сразу можно было начать создание модификации. Для этого необходимо установить Java Development Kit (JDK), скачав с официального сайта Oracle. При этом JDK должен быть одной версии с Java(JRE)

      При первой установке JDK проверьте, чтобы у вас в ⊞ Win + PauseBreak ->Дополнительные параметры->Переменные среды: в JAVA_HOME указан путь к папке c Java (по-умолчанию: «C:\Program Files\Java\jre1.8.0_241») и в Path был указан путь к bin-папке JDK после точки с запятой (по-умолчанию: « C:\Program Files\Java\jdk1.8.0_241\bin »).

      Затем необходимо выполнить одну из следующих команд (замените eclipse на idea , если вы используете IntelliJ IDEA):

      • gradlew.bat setupDecompWorkspace eclipse или
      • gradlew.bat setupDevWorkspace eclipse
      • gradlew.bat genEclipseRuns eclipse

      Если вы являетесь пользователем операционной системы Linux, нужно прописать следующие строки в терминале:

      • cd <путь>/<папка с Forge> и
      • ./gradlew setupDecompWorkspace eclipse --refresh-dependencies

      Чтобы выполнить команду, можно создать в папке .bat-файл с выбранной вами командой (но обычно он там уже есть) и запустить его. Также вместо всего этого можно запустить командную строку в этой папке (например, нажать ⇧ Shift + ПКМ по этой папке и выбрать «Открыть окно команд») и выполнить выбранную команду.


      Если же появляется какая-либо ошибка:

      Настройка Eclipse [ ]

      Нужно настроить Eclipse для работы с Minecraft. Первым делом зайдите в него. Он предложит выбрать рабочую директорию (Workspace). Введите туда путь к папке «eclipse» в папке (Путь к папке должен содержать только английские буквы), куда вы распаковали содержимое Forge и поставьте галочку для того чтоб окно больше не появлялось. В примере это «D:\MCModding\eclipse». Если всё прошло успешно, то слева в Eclipse вы увидите раскрывающееся меню Minecraft, а снизу не увидите красных ошибок.


      Интерфейс Eclipse после правильной установки.

      Настройка IntelliJ IDEA [ ]

      Если вместо Eclipse Вы решили использовать IntelliJ IDEA, то после того как вы установите ее, в стартовом окне в правом нижнем углу нажмите на кнопку "Configure", откройте вкладку "Project Defaults" и выберите пункт "Project Structure".


      Стартовая страница IntelliJ IDEA

      В открывшемся окне нажмите на красную надпись "No SDK", для контекстного меню и выберите пункт с вашей версией JDK. (Если же в меню нет вашей версии JDK нажмите "Add SDK" и укажите путь. В нашем случае это C:\Program Files\Java\jdk1.8.0_241 )

      IntelliJ IDEA .jpg

      После этого можно воспользоваться двумя способами:

      Первый способ: [ ]

      После того, как Forge скомпилирован и установлен, необходимо запустить IDEA, и в появившемся окне нажать 'Import Project'. После чего выбираем в папке «D:\MCModding» файл build.gradle. В появившемся окне Вам предложат выбрать способ компиляции (рекомендуется оставить значение Use default gradle wrapper.) В строчке ниже выберите Ваш JAVA_HOME. В пункте «Формат проекта» нужно обязательно выбрать «.ipr (file based)». В противном случае, придётся подключать все библиотеки и настраивать запуск самостоятельно. После всего этого нажмите OK. Ждите, пока сборка скомпилируется.

      В случае, если ваша IntelliJ IDEA установлена правильно и она различает формат *.ipr, вы можете просто дважды нажать по файлу <НазваниеПроекта>.ipr в директории вашего MCP. IDEA все сделает за вас.

      Второй способ: [ ]

      После того, как вы распаковали файлы в «D:\MCModding», сразу запускайте IntelliJ IDEA. В появившемся окне нажать 'Import Project'. После чего выбираем в папке «D:\MCModding» файл build.gradle.

      Если IDEA указывает на старую версию Gradle, нужно обновить ее на более новую. Для этого запустите консоль с директорией к папке с Forge (щелкните ⇧ Shift + ПКМ по папке с Forge > Открыть консоль команд) и выполните следующую команду:

      • gradlew.bat wrapper --gradle-version <Нужная версия>

      Список всех версий можно посмотреть на официальном сайте.

      Потребуется подождать пару минут, пока среда разработки полностью все выполнит и импортирует. После завершения процесса откройте меню "View" в верхней части экрана и выберите пункты "Tools Windows > Gradle". У вас откроется окно с Gradle задачами. Переходим в раздел Tasks > forgegradle.

      Окно с Gradle задачами

      Выполните task setupDecompWorkspace . После его выполнения запустите genIntellijRuns

      Готово. Мы проделали все то же самое, что и в первом способе, только без использования консоли, а это может быть большим плюсом для новичков.

      Запуск [ ]

      После выполнения выше перечисленных действий, в верхней части экрана перейдите в раздел "Run" и выберите пункт "Run configurations". По очереди выберите "Minecraft Client" и "Minecraft Server" и уже в правой части окна, в раскрывающемся списке "Use classpath of module" выберите тот пункт, который заканчивается на _main. Теперь вы можете запустить клиент или сервер и удостовериться, что все работает.


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

      Настройки [ ]

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

      Включение этой опции в уже существующем мире создаёт его копию с приставкой [EX] в названии. В оригинальном мире без экспериментального игрового процесса всё ещё можно играть.

      Разносторонняя текстура блока [ ]

      Я буду использовать следующие текстуры:

      Для этого, добавьте такой код в тело класса:

      И такой после конструктора класса:

      Теперь в папку assets/ID мода/resources/textures/blocks/ добавьте файлы с таким именем: <То, что вы указали в скобках в конструкторе класса, в методе this.setBlockTextureName()>_<код стороны блока>

      И ещё такой код:

      В игре блок будет выглядеть так:

      Блок с разностороней текстурой в игре.jpg

      Блок с Разносторонней текстурой (Вид сзади).jpg

      Содержание

      Создание брони [ ]

      Создание брони немного отличается от создания обычных предметов, точнее имеет свои особенности. Приступим.

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

      Шлем, нагрудник, штаны и ботинки соответственно. Теперь описываем эти переменные с помощью универсального класса. Естественно внутри метода preLoad()

      С главным классом работа окончена.

      Теперь щелкаем по одной из ошибок и создаём новый класс BestArmor. Теперь «продолжаем» класс ItemArmor, то есть пишем extends ItemArmor после названия класса. Теперь в тело класса вставляем следующее:

      Что ж, давайте разбираться.

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

      Давайте дальше разбираться с кодом: следующим идёт метод BestArmor(), в который мы посылаем из главного класса параметры id и armorType. Напомню: от armorType зависит, какая это часть брони. В нём мы посылаем информацию о том, какой материал брони. Я написал, что броня будет аналогична алмазной, но можно создать свой материал для брони и вписать его. Далее мы настраиваем вкладку в креативе. Потом мы ограничиваем максимальное количество данного предмета в одной стопке до одного, чтобы броня не «стакалась». В конце концов мы вызываем созданный нами метод setTextureName()

      Последний же метод перезаписывает метод супер-класса и указывает Майнкрафту, что должна грузиться текстура по пути texturePath, который предварительно был отредактирован во втором методе.

      Теперь можно запускать игру и убивать мобов в новых блестящих доспехах!

      Обновление Forge [ ]

      Чтобы обновить версию Forge, на который вы создаёте моды, необязательно всё перекачивать.

      Достаточно просто изменить build.gradle Так что если хотите обновить Forge откройте его любым редактором и найдите строчку

      Там будет написана версия Forge, которая у вас сейчас, соответственно вам нужно всего лишь изменить значение на новое. Измените его на версию, до которой хотите обновить Forge (например на 1.7.2-10.12.0.1012) и сохраните файл. Далее запустите gradlew.bat с командой eclipse (то есть запустить bat-файл с кодом gradlew.bat eclipse ) и после завершения его работы ваша версия Forge обновлена!

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