Создание предметов
Создание Кастомных предметов
Что такое Кастомные предметы?
Кастомные предметы — это предметы, определённые EliteMobs через конфигурационные файлы. Вы можете настраивать несколько аспектов этих предметов, таких как уровень предмета, зачарования, имя, лор, текстура и многое другое!
Webapp
Вы можете легко и быстро создавать Кастомную добычу здесь!
Прежде чем начать
Куда помещаются Кастомные предметы?
Файлы кастомных предметов помещаются в конфигурационную папку ~/plugins/EliteMobs/customitems
Можно создавать подпапки, такие как ~/plugins/EliteMobs/customitems/myitems. Это рекомендуется для поддержания порядка.
Файлы хранятся в формате файлов .yml, и Notepad++ — рекомендуемое ПО для редактирования файлов при работе с конфигурацией. Один файл определяет одного босса, хотя можно спавнить одного и того же босса несколько раз и даже задавать несколько мест спавна для одного файла босса.
Можно использовать webapp, чтобы быстро и легко создавать кастомных боссов и многое другое.
Минимально возможная конфигурация
Обратите внимание, что минимально возможный конфигурационный файл для Кастомного предмета:
Обратите внимание, что это просто пустой файл. По умолчанию это будет деревянный меч под названием «Default name». Всё на этой странице необязательно!
Пример предмета
Давайте посмотрим на пример того, как выглядит файл предмета.
Пример
isEnabled: true
material: WOODEN_AXE
name: '&4Test item'
lore:
- This is a cool item
- It has cool lore
enchantments:
- DAMAGE_ALL,4
- FLAMETHROWER,1
potionEffects:
- FAST_DIGGING,0,self,onHit
- POISON,0,target,onHit
- GLOWING,0,self,continuous
dropWeight: dynamic
scalability: scalable
itemType: custom
Настройки Кастомного предмета
Ниже приведён список всего, что вы можете настроить для кастомных предметов:
isEnabled
Задаёт, включён ли предмет. Не влияет на уже сгенерированные предметы.
| Key | Values | Default |
|---|---|---|
isEnabled | true / false | true |
Пример
isEnabled: true
material
Задаёт материал предмета.
| Key | Values | Default |
|---|---|---|
material | Выберите из этого списка! | WOODEN_SWORD |
Пример
material: DIAMOND_SWORD
level
Задаёт уровень предмета.
| Key | Values | Default |
|---|---|---|
level | Integer | 0 |
Учтите, что эта настройка не релевантна, если вы задаёте scalability предмета равной scalable. Если вы зададите её равной limited, это будет наивысший возможный уровень предмета.
Также у материалов есть минимальный уровень. Железные материалы — 6 уровня, алмазные материалы — 7 уровня. Вы не можете принудительно сделать предметы более низкого уровня, чем уровень материала.
Пример
level: 100
name
Задаёт отображаемое имя предмета.
| Key | Values | Default |
|---|---|---|
name | String с цветовыми кодами | "Default name" |
Пример
name: "&2Cool item"
lore
Задаёт лор предмета.
| Key | Values | Default |
|---|---|---|
lore | List с цветовыми кодами | none |
Пример
lore:
- "&2This is the coolest sword"
- "&2of all time!"

enchantments
Задаёт зачарования на предмете.
| Key | Values | Default |
|---|---|---|
enchantments | List с зачарованиями Minecraft или Кастомными зачарованиями EliteMobs | none |
Учтите, что эти записи следуют формату enchantmentName:enchantmentLevel. Смотрите пример ниже!
Пример
enchantments:
- "DAMAGE_UNDEAD,8"
- "DURABILITY,4"
- "DAMAGE_ALL,7"
- "LOUD_STRIKES,3"

Также учтите, что зачарования вроде остроты (sharpness) по умолчанию становятся элитной остротой, если уровень начинает превышать лимиты ванильного Minecraft.
potionEffects
Задаёт эффекты зелий, которые будет иметь предмет. Они могут применяться к игроку или к сущности, получившей урон от игрока.
| Key | Values | Default |
|---|---|---|
potionEffects | List с эффектами зелий Minecraft | none |
Кроме того, эффекты зелий используют особый формат, который позволяет администраторам выбирать, на кого и когда влияет эффект:
| Setting | Description | Values | Default |
|---|---|---|---|
| Уровень эффекта зелья | Задаёт уровень эффекта зелья. Эффекты зелий начинаются с уровня 0! | Integer | none |
| Затрагиваемая сущность | Задаёт, на кого влияет эффект зелья. | self (игрок) / target (сущность, по которой ударили) | none |
| Метод применения | Задаёт, когда применяется эффект зелья. | onHit / continuous (постоянно применяется заново) | none |
Формат для эффектов зелий — potionEffectName,potionEffectLevel,affectedEntity,applicationMethod. Последние два параметра (affectedEntity и applicationMethod) необязательны и по умолчанию равны self и continuous, если не указаны. Смотрите пример ниже!
Длительность эффектов зелий:
- Постоянные эффекты обновляются каждую секунду, пока предмет держится или надет (каждое применение длится 2 секунды, поэтому эффект никогда не прерывается)
- Ночное зрение получает особую длительность 15 секунд
- Эффекты при ударе используют длительности на основе конфигурации сервера
При осмотре предмета с эффектами зелий вы увидите значки, указывающие, как применяется эффект:
- ☠️ Череп — нацелен на врагов.
- 🛡️ Щит — нацелен на пользователя/игрока.
- ⚔️ Мечи — активируется при ударе.
- 🔄 Повторяющийся круг — применяется постоянно, пока предмет надет или держится.
EliteMobs также включает кастомные предметы, функционирующие как обереги. Эти предметы не делают ничего другого, кроме как дают игроку эффекты зелий, пока предмет держится или экипирован в слоте.
ПРЕДУПРЕЖДЕНИЕ: использование эффекта зелья INSTANT_DAMAGE будет исцелять мобов-нежить при попадании, поскольку это стандартная механика в ванильном Minecraft.
Пример
potionEffects:
- "POISON,0,target,onHit"
- "HEAL,1,self,onHit"
- "NIGHT_VISION,0,self,continuous"

С этим набором эффектов зелий будет происходить следующее:
При ударе эффект зелья яда (уровень 1) будет применён к сущности, по которой ударил игрок. Кроме того, игрок будет затронут эффектом мгновенного исцеления 2-го уровня.
Постоянно игрок будет получать ночное зрение. Это означает, что у игрока будет ночное зрение до тех пор, пока он носит или держит предмет.
scalability
Задаёт, как уровень предмета растёт с уровнем босса, который его роняет.
| Key | Values | Default |
|---|---|---|
scalability | fixed, limited или scalable. Смотрите ниже! | scalable |
Изучите этот список, чтобы понять, что делают разные варианты!
| Setting | Description |
|---|---|
fixed | Уровень предмета всегда будет равен уровню, заданному в конфигурационном файле. |
limited | Максимальный уровень предмета будет ограничен заданным в конфигурационном файле или уровнем босса, в зависимости от того, что меньше. |
scalable | Уровень предмета будет полностью основан на уровне босса, который его роняет. |
Учтите, что у предметов с dropWeight всегда будет fixed scalability.
Пример
scalability: "scalable"
itemType
Задаёт, откуда вы можете получить предмет.
| Key | Values | Default |
|---|---|---|
itemType | custom, unique или droppable. Смотрите ниже! | custom |
Есть три типа предметов:
| Setting | Description |
|---|---|
custom | Предмет сможет выпадать с любого моба EliteMobs, способного ронять добычу, и будет в кастомном магазине. |
unique | Предмет не будет ронять ни один босс, и его не будет в кастомном магазине. Единственный способ получить его — настроить Кастомного босса на его дроп через его uniqueLootList! |
droppable | Предмет попадает в пул случайного элитного дропа так же, как custom, но исключается из магазинов — игроки могут найти его как обычный элитный дроп, но никогда не могут просто купить. Полезно для предметов, которые должны ощущаться заработанными, но не обязаны быть привязаны к конкретному боссу. |
Пример
itemType: "unique"
dropWeight
Задаёт таблицу добычи, в которую попадёт предмет.
| Key | Values | Default |
|---|---|---|
dropWeight | dynamic или значение Double. | dynamic |
В EliteMobs есть 5 разных таблиц добычи для кастомных предметов, не считая тех, что настраиваются напрямую, как uniqueLootList на Кастомных боссах.
Они таковы:
| Loot table | Description | Default weight |
|---|---|---|
| Процедурно сгенерированные предметы | Предметы, генерируемые случайно на основе конфигурационных файлов сервера | 90.0 |
| Взвешенные предметы | Предметы, у которых вес отличается от dynamic | 1.0 |
| Фиксированные предметы | Предметы с фиксированной (fixed) scalability | 10.0 |
| Ограниченные предметы | Предметы с ограниченной (limited) scalability | 3.0 |
| Масштабируемые предметы | Предметы, которые масштабируемы (scalable) | 6.0 |
Когда босс умирает, один предмет из этих таблиц выбирается на основе конфигурационного файла ItemSettings.yml. Значения по умолчанию для весов указаны выше в Default weight. Чем выше вес, тем вероятнее, что предмет выпадет.
У Взвешенных предметов маленький Default weight, то есть они будут выпадать не очень часто. Предметы с dropWeight, отличным от dynamic, задуманы редкими и используются только в значениях по умолчанию для оберегов, которые роняют боссы, — предметов, используемых не для прямого боя, а скорее для усиления игроков эффектами зелий.
dropWeight, который вы здесь задаёте, задаёт шанс выпадения конкретного Взвешенного предмета из списка Взвешенных предметов. Он не увеличивает шанс выпадения Взвешенных предметов.
Если вы запутались и просто хотите делать оружие и броню, пропустите эту настройку, так как она корректно по умолчанию равна dynamic.
Взвешенные предметы обычно имеют вес 1.0.
Пример
dropWeight: "dynamic"
customModelID
Примечание: эта настройка была удалена. Она больше не читается из конфигурационных файлов. Используйте customModelV2 вместо неё — это единственная настройка ID модели, распознаваемая начиная с Minecraft 1.21.4+ (EliteMobs 9.1.13+). Любые существующие записи customModelID в ваших конфигурационных файлах будут проигнорированы.
Задаёт текстуру предмета. Требует использования валидной текстуры из ресурс-пака!
| Key | Values | Default |
|---|---|---|
customModelID |
Пример (больше не работает)
material: DIAMOND_SWORD
customModelID: 1
Эта настройка больше не работает. Перейдите на customModelV2 вместо неё.
customModelV2
Начиная с версии Minecraft 1.21.4 (EM 9.1.13), это новая обязательная настройка для конфигурации ID кастомных моделей предметов. Задаёт текстуру предмета. Требует использования валидной текстуры из ресурс-пака!
| Key | Values | Default |
|---|---|---|
customModelV2 | String | none |
Пример
customModelV2: elitemobs:equipment/magmaguys_toothpick
Эта настройка назначает предмету конкретную текстуру. Вот как это работает:
elitemobs:— основной каталог в папкеassetsресурс-пака.equipment— подкаталог внутриassets/elitemobs/models.magmaguys_toothpick— файл модели, расположенный вassets/elitemobs/models/equipmentв ресурс-паке.
Полный путь к файлу модели в этом примере был бы:
\.minecraft\resourcepacks\elitemobs_resource_pack\assets\elitemobs\models\equipment\magmaguys_toothpick.json
Это будет использовать кастомную текстуру magmaguys_toothpick из ресурс-пака EliteMobs, который использует игрок. Рекомендуется настроить сервер на выдачу игрокам ресурс-паков при входе, если вы хотите использовать эту функцию правильно.
equipmentModelID
Задаёт отдельную модель для предмета, когда он экипирован или надет. Требует использования валидной текстуры из ресурс-пака!
| Key | Values | Default |
|---|---|---|
equipmentModelID | String | none |
Пример
equipmentModelID: elitemobs:equipment/helmet_texture
Это задаёт конкретную текстуру, появляющуюся, когда предмет надет, отдельно от вида предмета в инвентаре.
scriptedItem
Связывает предмет со скриптовым предметом FreeMinecraftModels. Когда задано, предмет получает 3D-модель FMM и поведение Lua-скрипта, сохраняя при этом все системы имени, лора, зачарований, уровня и привязки к душе из EliteMobs.
Это требует установленного на сервере FreeMinecraftModels. Если FMM не установлен, эта настройка молча игнорируется, и предмет функционирует нормально без модели или скрипта.
Значение — это ID предмета FMM, то есть имя файла YML-конфигурации модели в папке models FMM, без расширения .yml. Например, если у FMM есть конфигурация модели в plugins/FreeMinecraftModels/models/flame_blade.yml с material: IRON_SWORD и scripts: [flame_blade.lua], вы бы сослались на неё как на flame_blade.
Когда задано scriptedItem, оно имеет приоритет над customModelV2 и equipmentModelID — EliteMobs пропустит свою собственную систему моделей и использует модель FMM вместо неё.
| Key | Values | Default |
|---|---|---|
scriptedItem | String (ID предмета FMM) | none |
Пример
material: IRON_SWORD
name: "&cFlame Blade"
lore:
- "&7Burns with eternal fire"
enchantments:
- "FIRE_ASPECT,2"
- "DAMAGE_ALL,5"
scalability: scalable
scriptedItem: flame_blade
В этом примере:
- EliteMobs контролирует имя предмета, лор, зачарования, масштабирование уровня и поведение привязки к душе
- FMM предоставляет 3D-модель предмета и выполняет скрипт
flame_blade.lua(например, эффекты частиц при экипировке, кастомное поведение атаки) material: IRON_SWORDиспользуется EliteMobs как базовый тип предмета
showSource
Задаёт, отображает ли предмет информацию о своём источнике или происхождении в лоре.
| Key | Values | Default |
|---|---|---|
showSource | Boolean | true |
Пример
showSource: false
Когда это установлено в false, предмет не будет отображать, откуда он был получен.
permission
Задаёт право, необходимое для получения предмета.
| Key | Values | Default |
|---|---|---|
permission | String | none |
Вам понадобится плагин управления правами, чтобы выдавать игрокам права. Это будет работать корректно, только если вы не отключили зачарование привязки к душе.
Пример
permission: "elitemobs.cool.permission"
С этой настройкой только игроки с правом elitemobs.cool.permission смогут получить этот предмет.
soulbound
Задаёт, должен ли предмет быть привязан к душе при дропе.
| Key | Values | Default |
|---|---|---|
soulbound | Boolean | true |
Пример
soulbound: true
