Привет всем! Увидел ресурс пак изменяющий модель Ифрита (Всполох, Blaze):
И подумал, а я тоже так хочу. Скачал этот пак, посмотрел внутрь, а потом ещё и посмотрел более подробно в сети.
И теперь хочу поделиться своими находками с вами! Погнали.
Что нужно знать до?
Что такое ресурс пак для Minecraft знают все, я думаю. Это могут быть модели, текстуры, шейдеры. Короче, какие-то дополнительные или альтернативные ресурсы. Есть ещё датапаки, но они созданы, чтобы вносить более глобальные изменения в то, как игра работает. Их используют, чтобы редактировать достижения, рецепты, биомы, дроп и т.д. Но в этот раз нас интересуют только модели и Optifine.

Если честно, то в этом паке была ещё папка со скриншотами, но они нам ни к чему там. Необязательно для создания своего пака брать чей-то, всё необходимое можно создать буквально по ходу дела. Я просто начал с этого для наглядности. Итак, разберём, что же тут у нас есть.
pack.mcmeta это JSON объект, который содержит описание и версию игры. Создать и открыть его можно обычным блокнотом, только следите, чтобы в имени файла не осталось всяких .txt!
1 2 3 4 5 6 |
{ "pack": { "pack_format": 6, "description": "A Recource Pack by Someone" } } |
Цифра 6 для pack_format соответствует версиям 1.16.2 — 1.16.5. Для других версий:
- 4 для версий 1.13 – 1.14.4
- 5 для версий 1.15 – 1.16.1
- 6 для версий 1.16.2 – 1.16.5
- 7 для версии 1.17+
Описание (description) может быть практически любым. Не забывайте, что для JSON важно положение кавычек, запятых и скоб. Не оставляйте открытыми блоки. Если надо поставить именно кавычки, то используем \».
pack.png — изображение, которое игрок увидит в игре. В примере мы будем использовать png изображение 560х560.

Теперь более интересное. Папка assets. Именно тут и будут наши ресурсы. Чтобы не грузить лишней инфой, просто создайте такие папки: assets\minecraft\optifine\cem. В последней и будут сохранены новые модели.
Формат моделей будет .jem и именно их мы сейчас будем создавать.
Делаем модели для Minecraft Optifine!
Модели тоже можно открыть блокнотом и там снова будет JSON код. Но руками это писать — дикое извращение. На помощь нам приходит достаточно удобное решение в виде Blockbench. Я его уже когда-то использовал для гайда по созданию нового моба на Forge.
Запускаем редактор и видим такое окошко:

Получаем пустой проект. Предлагаю изменить курочку, поэтому используем chicken в имени модели:

И теперь можно начинать творить 😊. Хотя, куда проще было бы редактировать существующие, чем делать с нуля, да? Для этого существует очень неплохой плагин CEM Template Loader.

И выбираем курицу запустив плагин из вкладки Filter:

Результат:

Окей, ноги странные, но это потому, что модель пока без текстуры. Добавляем текстуру (временно):

Но есть весомое НО. У моделей для optifine есть свои требования для имён частей тела. Курице нужны такие части:
# chicken head, body, right_leg, left_leg, right_wing, left_wing, bill, chin.
У нас всё совпало, это хорошо.
Соблюдать имена обязательно для правильной работы модели. И для адекватной анимации.
Завершение и создание ресурс пака для Minecraft Optifine
Можно создавать практически любые модели, но в рамках возможностей редактора, конечно же. К примеру… сделать курицу размером с гиганта или переделать вообще всё полностью с нуля. Для результата главное чтобы совпадали имена групп (то, что с иконкой папки в редакторе). Я решил просто сделать курицу более курицей.

Теперь обсудим текстуру. Вы можете оставить так, но тогда модель будет искать текстуру в той же папке, что и она сама. Т.е. для использования своих текстур их можно просто закинуть в assets\minecraft\optifine\cem. Но тогда ваша текстура не будет реагировать на текстурпаки. Нам это не нужно, так что удаляем текстуру из проекта и через File -> Export -> Export OptiFine Jem делаем экспорт модели в свою cem папку.
Теперь нужно выделить pack.mcmeta, pack.png, папку assets и запаковать в zip архив.
Кидаем это чудо в resourcepacks и активируем в игре. Для примера я использовал вместо иконки своё старое лого, так как под руку попалось именно оно. Но это мелочи, главное чтобы работало.

Результаты
В плоском мире создаём курицу и смотрим, получилось ли:


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

Пингбэк: Добавляем свою версию блока в Minecraft – GeekStand
Пингбэк: Создаём простой датапак "Привет, игрок!" – GeekStand
Пингбэк: Своя модель для блока Minecraft – GeekStand