как добавить свою модель в майнкрафт

Minecraft Wiki

Из-за новой политики Microsoft в отношении сторонних ресурсов, Minecraft Wiki больше не является официальной. В связи с этим были внесены некоторые изменения, в том числе и обновлён логотип вики-проекта. Подробности на нашем Discord-сервере.

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

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

Содержание

Урок 1. Директория Eclipse (Установка среды) [ ]

Теперь вы можете приступать к созданию своей первой модификации.

Урок 2. Главный класс [ ]

Итак, можно приступить к созданию модификации. Создадим его основу.

Нажмите ПКМ на директории модификации (com.platon.mybestmod) и выберите New → Class, и в поле Name введите название класса. Это главный класс модификации, поэтому пусть это будет указано. Например, одно из возможных названий — «BaseMyBestMod». Обратите внимание, что каждое слово написано с большой буквы (естественно, именно так делать необязательно, но общепринятым считается именно этот вариант). Далее просто нажмите Finish. Всё, у вас теперь есть главный класс модификации.

Приступим к написанию кода. Запишем ВНЕ тела, то есть над строчкой public class. [4] класса следующую строчку:

Вы написали, что ваша модификация называется «My Best Mod» и имеет версию 1.0. Но Eclipse сообщает об ошибке, так как ему неизвестно, что значит @Mod. Нужно импортировать соответствующий класс, для этого после строчки с указанием пакета ( package platon.mods.mybestmod; ) напишите следующую строчку:

После этого сообщение об ошибке должно исчезнуть.

Далее уже в теле (в фигурных скобках) пишем:

Вот и всё. Основа модификации готова. Можете запустить Minecraft (Зеленая кнопка сверху → Client) и увидеть в списке модификаций свою модификацию. По крайней мере для того, чтобы приступить к созданию первого блока.

Урок 3. Блок [ ]

Приступим к созданию своего первого собственного блока.

В самом начале тела Класса (После первой фигурной скобки если вы ещё не поняли) пишем:

Теперь укажем, где про блок будет написано более подробно. В теле метода preLoad() напишем строчку:

Эта строка говорит, что про объект bestblockever будет написано в классе BlockBestBlockEver. И он выдаёт ошибку. Естественно, ведь никакого класса BlockBestBlockEver не существует. Его легко создать, нажав по ошибке и выбрав Create Class… Далее нажмите Finish.

В скобках у объекта, где написаны аргументы, которые должны быть посланы снаружи уберите аргумент Material par1Material. Мы пошлем его отсюда, а не снаружи класса. Теперь в следующей строчке в скобках у super() замените «par1Material» на «Material.rock», или после точки сами выберите нужный вам материал.(Не забудьте про импорт) То есть мы посылаем в суперкласс Block что материал блока камень. То есть блок как камень: на звук как камень, ломается с тем же звуком и т. д. Список доступных материалов можно посмотреть через точку после Material.

Итак, давайте поработаем над характеристиками блока. Это можно сделать из главного класса, указывая их через точку после bestblockever = new BlockBestBlockEver(); (до точки с запятой). Но можно и отсюда. Для этого пишите их в теле этого объекта после «this.» также можно не писать.

Также можно установить будет ли блок светиться. Чем больше число, тем светлее. Вместо 0 пишете уровень света, создаваемого блоком, умноженное на 10. Таким образом нужно вставить туда значение от 0 до 150 (150 означает уровень света 15, максимальное значение).

Так, текстура есть, теперь пропишем её в код. Следующее пропишите всё в том же методе блока.

Теперь поместим текстуру в проект. Слева в окне директорий проекта выберите src/main/resources и нажмите правой кнопкой и создайте директорию.(New → package) Назовите так: assets.краткое название модификации.textures.blocks (assets.mybestmod.textures.blocks). Теперь мышкой перетяните текстуру из windows в эту директорию. В окне выберите «Copy files».

Теперь нужно зарегистрировать блок. Перейдите в главный класс и в самом конце метода preLoad допишите

Это должно зарегистрировать блок в Forge.

Начиная с версии 1.9, блоки регистрируются в два этапа. О том, как это сделать, можно посмотреть здесь

И последнее: мы не указали, как будет называться блок в игре. Локализация описана в этом доп. уроке.

Ну вот и всё, блок создан. Теперь необходимо проверить его работоспособность. Запускайте Minecraft с вашей модификацией! Но сначала сохраните оба класса ( Ctrl-S ). Для запуска нужно нажать сверху зелёный круг с треугольником (или Ctrl-F11 ). После запуска посмотрите, есть ли ваша модификация в списке модификаций (в главном меню), создайте новый мир в режиме креатив и найдите свой блок в креатив-инвентаре во вкладке блоки. Если он там есть, берется, ставится и ломается, то поздравляю: модификация, добавляющая блок, создана!

Урок 4. Предмет [ ]

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

Перейдем в главный класс модификации. До метода preLoad() сразу после public static Block bestblockever; допишите:

Тем самым мы создадим переменную типа Item с кодовым названием кирки.

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

Итак, мы создали кирку, дали ей нелокализированное имя [7] и зарегистрировали в Forge. Щелкнув по ошибке создадим класс этой кирки. Класс создан, но Eclipse не знает, что мы хотим создать — еду или инструмент, поэтому сделаем этот класс наследником класса, где написано про инструмент или еду или что хотите, главное, что про предмет, а не блок. В строчке public class BestPickAxe< после BestPickAxe допишите extends ItemPickaxe и импортируйте этот самый ItemPickaxe.

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

Немного об ItemPickaxe: pickaxe — это кирка по-английски, и, соответственно, extends ItemPickaxe говорит о том, что мы «продолжаем» или дополняем класс ItemPickaxe, в котором указаны все базовые характеристики и функции, такого Item’а или предмета, как кирка. Таким образом можно продолжать любой класс, в зависимости от того, какой предмет нужен. То есть, если нужна еда, то мы продолжаем класс ItemFood, если броня, то ItemArmor, а если свой особенный предмет, то просто Item. Не забывайте: вы всегда можете посмотреть список возможных продолжений того, что вы пишете. [8]

Теперь, не обращая внимания на появившуюся ошибку вставьте в тело это:

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

тем самым добавив кирку в раздел инструменты в режиме «Творчество».

Почти готово. осталось только добавить текстуру, давайте модифицируем текстуру из Minecraft. Зайдите в папку c Minecraft\versions\1.7.2, там откройте jar-файл c помощью архиватора, в архиве перейдите в assets\items и там найдите какую-нибудь текстуру кирки, извлеките на рабочий стол. Файлы текстур НЕЛЬЗЯ редактировать обычным Paint’ом, так как текстура должна быть кое-где прозрачной, если вы не хотите конечно идеально квадратную кирку. В общем отредактируйте текстуру как угодно, главное чтоб была 16×16. Назовите текстуру BestPickAxe.png Теперь создайте в проекте директорию с текстурами предметов. Для этого ПКМ по src → New → package а в названии напишите assets.mybestmod.textures.items и туда мышью с раб. стола перенесите готовую текстуру и нажмите ОК. Теперь скажем предмету где его текстура. Пропишите следующее всё в том же методе кирки.

И можно запускать для проверки.

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

Урок 5. Крафт [ ]

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

Тогда я запишу вот это в тело метода preLoad главного класса после строки регистрации блока в Forge:

Давайте разберем, что тут написано: Итак с помощью GameRegistry мы добавляем новый рецепт, new itemStack значит, что создастся новая стопка с предметом bestblockever который объявлен в классе BaseMyBestMod в количестве одной штуки (вместо 1 можно вписать любое число до 64). А далее уже записана сетка крафта. Как мы помним в верстаке мы видим всего 9 клеток, здесь первая строка верстака это «###», вторая строка — это «XYX», ну и последняя — «###». Понятней будет, если посмотреть вот так:

Каждый предмет в крафте обозначается своим личным знаком (любым). Далее это записано как (‘X’), Blocks.gravel То есть это означает, что X — это гравий, который является блоком. Соответственно знак # — это слиток железа (который является предметом, а не блоком), а Y — это блок обсидиана. Если нужно, чтоб в ячейке крафта ничего не лежало, то вместо знака пишется пробел (Например » # » значит что посередине будет слиток железа, а по бокам ничего).

Добавить рецепт крафта можно не только вашему блоку или предмету. Можно вписывать вместо BaseMyBestMod.bestblockever или Blocks.obsidian что угодно, главное что бы после точки была указана зарегистрированная переменная типа Block или Item. А до точки — это просто путь к этой переменной.

Если хотите создать крафт, который можно произвести в инвентаре, вместо «###», «XYX», «###» используйте «AA», «BC» соответственно.

Бесформенный крафт (то есть крафт, в котором можно располагать ингредиенты как угодно) опишите так:

То есть если вы положите в верстак/инвентарь 2 блока гравия и стрелу, то получите 4 блока Земли, покрытой травой.

Если у блока/предмета есть несколько видов (например: дубовые, еловые, березовые доски и т. д.), то указав просто например: Blocks.Planks в крафте можно будет использовать любые доски! Что бы это исправить вместо Block.Planks напишем new ItemStack(Blocks.planks, 1, 0)

Первое число всегда 1. Изменяем только второе число. 0 — это дубовые доски, 1 — еловые доски и т. д. (см. ID)

Так же в игре, как мы знаем, присутствует переплавка одних предметов/блоков в другие. Рецепт такой переплавки создаётся всего одной строкой, которую нужно писать после регистрации блока bestblockever:

Но теперь разберём. Итак, первой в скобках указана переменная типа Block (также можно Item), в данном случае это наш блок, затем идет переменная типа ItemStack, которая создаётся сразу же. У этой переменной уточняется, что создастся стак с блоком или предметом, в данном случае алмазным блоком, в количестве 2. Ну и последняя переменная отвечает за количество опыта, получаемого при переплавке.

Урок 6. Компиляция [ ]

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

Компилировать модификацию очень просто, запустите файл gradlew.bat с командой build. Или другими словами создайте bat-файл (или измените оставшийся) с кодом:

и запустите его. После автоматического закрытия консоли модификация скомпилирована и находится в папке build/libs. Если для компиляции модификации требуется подключение дополнительных jar библиотек, то необходимо в корневой папке проекта (MCModding) создать папку libs и поместить все необходимые файлы в неё.

Так же немного о build.gradle Вы можете его модифицировать так, чтобы jar-файл автоматически назывался как надо. Откройте его любым текстовым редактором. Вы можете изменить следующие строки, как захотите, например так:

Сохраните файл. Таким образом вы получите при компиляции файл My Best Mod-1.0.jar

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

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

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

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

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

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

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

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

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

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

Урок 9. Моб [ ]

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

Цвета для яиц призывания вы можете посмотреть здесь, только когда выберете цвет, замените «#» на «0x». Переменная primaryColor назначает цвет фона яйца, а переменная secondaryColor за цвет пупырышек.

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

Ингредиенты Рецепты крафта
Гравий +
Железный слиток +
Обсидиан
Параметр Описание
MyBestEntity.class Класс моба.
«myBestEntity» ID моба
0x00FFFF Цвет фона яйца
0x00008B Цвет пупырышек яйца.

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

В примере суперклассом класса моба является класс «EntityMob», предназначенный для враждебных мобов. Также существуют классы «EntityCreature», «EntityAnimal», «EntityLiving» и другие.

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

Далее в класс ClientProxy добавьте следующий код:

Теперь надо вызвать созданный метод в главном файле модификации. Просто добавьте этот код:

Далее создайте класс RenderВашМоб. В нашем случае это «RenderMyBestEntity». Его суперклассом должен быть класс «RenderBiped». В класс добавьте следующий код:

Для локализации яйца моба добавьте в файл локализации следующий код:

Теперь зайдите в игру. Во вкладке «Разное» будет яйцо.

Источник

Minecraft Wiki

Из-за новой политики Microsoft в отношении сторонних ресурсов, Minecraft Wiki больше не является официальной. В связи с этим были внесены некоторые изменения, в том числе и обновлён логотип вики-проекта. Подробности на нашем Discord-сервере.

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

В этой статье описывается создание модификаций на основе Minecraft Forge с использованием Eclipse для версий Minecraft с 1.12.

Содержание

Установка Forge Gradle [ ]

Не забудьте! Далее, все связанное с Java кодом мы будем делать в каталоге src\main\java, а остальное в src\main\resources.

Примечание! Для установки потребуется компьютер с минимальным объёмом ОЗУ от 4Гб! Если у вас недостаточно ОЗУ, добавьте необходимый объём из файла подкачки, но такой метод работает лишь на 64-битных системах.

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

build.gradle [ ]

Это файл, который задает свойства проекта и его нужно немного подправить:

Если вы используете IntelliJ IDEA, то в конец build.gradle дополнительно добавьте это:

pack.mcmeta [ ]

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

mcmod.info [ ]

Этот файл задаёт более подробную информацию о модификации и заполняется следующим образом:

Класс модификации [ ]

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

Класс блока [ ]

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

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

Модель [ ]

Модель (которую, например, можно создать здесь) решает то, как наш блок будет выглядеть. Важно знать, что для блоков используется две модели. Одна задает вид блока, поставленного в мире, а вторая, его иконку в инвентаре. Это дает нам возможность сделать блоку отдельную иконку для инвентаря. Сами же модели для блока подключаются к нему как состояния, normal для блока в мире и inventory для его иконки в инвентаре. Поэтому для начала создадим файл идентификатор_блока.json в пакете assets.идентификатор_мода.blockstates, который и подключит наши модели.

Теперь подключим модели. Для этого создайте файл регистрируемое_имя.json в пакете assets.идентификатор_мода.models.block со следующим содержимым:

Теперь зададим иконку блока в инвентаре в пакете assets.идентификатор_модификации.models.block с именем идентификатор_блока.json со следующим содержанием:

Регистрация [ ]

Наш блок имеет текстуры и свойства, но его нужно зарегистрировать в игре. Создадим в пакете домен.автор.мод.init класс BlocksInit :

Предмет [ ]

Основное [ ]

Класс предмета [ ]

Для создания предмета создадим класс с именем TutorialItem:

Регистрация [ ]

Для регистрации предмета создадим класс ItemsRegister:

Модель [ ]

Примечание: название файла модели должно совпадать с RegistryName предмета

Источник

Minecraft Wiki

Из-за новой политики Microsoft в отношении сторонних ресурсов, Minecraft Wiki больше не является официальной. В связи с этим были внесены некоторые изменения, в том числе и обновлён логотип вики-проекта. Подробности на нашем Discord-сервере.

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

В этой статье описывается процесс создания модификаций для Minecraft с использованием API Forge и Eclipse. Для создания даже простых модификаций требуется знание основ Java. Если во время создания модификаций возникнут вопросы или проблемы, не описанные здесь, опишите их на странице обсуждения.

Таблица готовности
Урок 1.6+ 1.7+ 1.9+ 1.10+ 1.12+ 1.14+
Блок Готов Готов Готов Готов Готов Не планируется
Предмет Готов Готов Готов Готов Приостановлено Не планируется
Крафт Готов Готов Готов Готов Приостановлено Не планируется
Компиляция Готов Готов Готов Готов Приостановлено Не планируется
Генерация Возможно Готов Готов Не планируется Приостановлено Не планируется
Прокси и инстанция Не планируется Готов Не планируется Не планируется Приостановлено Не планируется
Моб Возможно Готов Не планируется Не планируется Не планируется Не планируется
Блоки с моделью Возможно Возможно Не планируется Не планируется Приостановлено Не планируется
Доп. Уроки Всего: 3 Всего: 12 Всего: 10 Всего: 0 Всего:0 Всего:0

Общие сведения [ ]

Для создания модификаций в любом случае нужны JDK и Eclipse. Первая — это комплект разработчика Java и отличается от обычной Java тем, что имеет средства для компиляции/декомпиляции, несколько дополнительных библиотек и документацию. С 2019-го года ввиду изменений в лицензировании для загрузки JDK потребуется учётная запись Oracle. Также важно то, что Minecraft 1.12 не поддерживает Java ниже 7-й и выше 9-й включительно, тогда как 1.14 поддерживает практически все версии Java выше 8-го выпуска. Eclipse — это среда разработки, которая имеет поддержку синтаксиса нужного языка программирования, а также в ней был написан сам Minecraft.

Источник

Создание модов для Minecraft

Гайд о подготовке модификаций, блоков и текстур. С чего начать и как действовать дальше

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

Неофициальный контент для трехмерной песочницы появляется регулярно: сторонние разработчики выпускают для Minecraft новые карты и рецепты крафта, изобретают модификации с новыми предметами и состязательными механиками, дополняют виртуальную вселенную биомами и шахтами с ресурсами. Несмотря на разнообразие предлагаемого контента, выбора порой все равно недостаточно, а потому многие энтузиасты мечтают воплотить собственные идеи в жизнь. Но как сделать мод для Майнкрафт без знания языков программирования? Истина на поверхности: достаточно воспользоваться специальным набором инструментов MCreator.

Как установить MCreator

Распространяется набор инструментов для разработки модификаций в виде стороннего программного обеспечения, устанавливаемого не в каталог Minecraft, а в отдельную директорию, откуда в дальнейшем запускается для разработки нового контента. Переносить новые предметы, текстуры или декоративные элементы предстоит уже после, через специальное меню и раздел Build & Run. Сначала же предстоит разобраться непосредственно с установкой:

Скачать программу для создания модов для Майнкрафт

Функции MCreator

Интерфейс MCreator перегружен кнопками, контекстными меню и панелями быстрого доступа, а еще представлен лишь на английском языке. Мгновенно освоиться у новичков не выйдет (даже с учетом всплывающих подсказок и рекомендаций), но 3-4 часа проведенные за экспериментами принесут долгожданные плоды. А какими станут результаты – зависит непосредственно от выбранных функций :

Как создать блок в Майнкрафте

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

Если действия, описанные выше, проделаны корректно, то в заглавном меню MCreator появится информация о новом блоке с возможностью перенести контент непосредственно в Minecraft. Альтернативный способ взаимодействия – выбрать пункт «отредактировать» и вновь, в том же пошаговом режиме, пройти весь путь для смены физических параметров, оформления, свойств или места добавления в песочницу.

MCreator – не единственный представитель жанра: схожие по замыслу инструменты периодически появляются в сети. Но где-то необходимо знать языки программирования или подбирать подходящую версию под Minecraft, а где-то не обойтись без дополнительной подготовки. MCreator призван помочь каждому реализовать задуманное в полуавтоматическом режиме: справятся даже новички.

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

Вам будет интересно:

Блокировка интернет-ресурсов на территории Украины

Стала доступна предзагрузка обновления 1.10.1.1 WOT

Источник

Читайте также:  farming simulator 17 моды техника для тюковки
Компьютерный онлайн портал