Перейти к основному содержимому

Клиентские ресурсы (Assets)

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

assets

Для начала создай новую папку в директории мода (hollowengine) с названием assets, и в ней же создай новую с любым названием (допускаются только английские буквы нижнего регистра, цифры, нижнее подчёркивание и символ /).

hollowengine
\- assets
\- <📁 modid> <- например: hollowengine, my_mod, custom, botania и т.д.

Эта последняя папка означает namespace. (именное пространство) Каждый мод имеет своё именное пространство, благодаря этому Вы можете заменять его ресурсы через ресурспаки или систему ресурсов из HollowEngine. В этой папке вы можете создавать свои ресурсы, о которых расписано ниже.


Модели

Хранить модели вы можете где и как хотите. Но рекомендуем хранить в этих папках:

  • hollowengine/assets/<modid>/models/entity/* - Модели,

Поддерживаемые форматы моделей:

  • glTF - .gltf. Для некоторых моделей может потребовать файла <name>.bin рядом с <name>.gltf.
  • glb - .glb.

Текстуры

Текстуры обычно хранятся в папке textures:

  • hollowengine/assets/<modid>/textures/*.

Звуки

Звуки рекомендуем хранить строго в hollowengine/assets/hollowengine/sounds/*. Иначе вам придётся для каждого звука самому создавать sounds.json, а занимать это будет очень много времени.


Эффекты (Work In Progress)

Все эффекты созданные через Effekseer должны храниться в папке с именем effeks а файлы должны иметь тип .efkefc. Все текстуры к вашему эффекту обычно указываются относительно папки куда экспортирован сам эффект, поэтому лучше сохранять эффект рядом с папкой его текстур, а потом уже переносить всё в ресурсы мода. То-есть по пути hollowengine/assets/<modid>/effeks/*

Другие ресурсы

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


ResourceLocation (Путь к ресурсу в скрипте)

Чтобы указать путь к ресурсу в скрипте вам необходимо указать путь относительно namespace, чтобы в результате получилось namespace:path. Вот несколько примеров как можно указать путь:

ResourceLocation (в скрипте)Путь к ресурсу (в проводнике)
"botania:models/entity/my_botanic_npc.gltf"<GAME_PATH>/hollowengine/assets/botania/models/entity/my_botanic_npc.gltf
"story_mod:vitalik_model.gltf"<GAME_PATH>/hollowengine/assets/story_mod/vitalik_model.gltf
"hollowengine:models/player_entity.gltf"<GAME_PATH>/hollowengine/assets/hollowengine/models/player_entity.gltf

Серверные ресурсы (WIP)

А вы не знали? Существуют еще северные ресурсы, называемые 'data'. Кратко пройдемся про них

Loot Tables

Думаю, все знают, что с блока падает предмет? Не знали? Поиграйте в Minecraft, тогда и узнаете. Так вот. Именно они сделаны через LootTables.

Также, еще существует спавн предметов в сундуках.

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

Recipes

Без комментариев