В этом гайде вы сделаете из рубинов две вещи: рубиновый меч, который бьёт сильнее железного, и рубиновую кирку, которая быстро добывает камень и руды. По пути вы узнаете компоненты, которые использует любое оружие и любой инструмент: урон, прочность, зачарование, починку и копание.
Этот гайд продолжает гайд Ваш первый предмет. Шаги с иконкой, текстурой и названием там точно такие же, поэтому здесь мы сосредоточимся на новом.
Быстрый способ: GodCraft
В GodCraft есть готовые объекты «Меч» и «Инструмент». Вы выбираете числа, а приложение пишет компоненты и теги.
- Откройте Мастерскую и добавьте в аддон Меч или Инструмент.
- Нарисуйте его в пиксельном редакторе (по диагонали, рукоятью в левый нижний угол, как ванильные инструменты).
- Задайте урон, прочность, предметы для починки и зачарования.
- Нажмите Экспорт и испытайте его на ближайшем зомби.
А вот как это выглядит вручную.
Вручную: меч
Мы используем пространство имён myname. Везде замените его на своё.
{
"format_version": "1.26.30",
"minecraft:item": {
"description": {
"identifier": "myname:ruby_sword",
"menu_category": {
"category": "equipment",
"group": "minecraft:itemGroup.name.sword"
}
},
"components": {
"minecraft:icon": {
"textures": {
"default": "myname_ruby_sword"
}
},
"minecraft:display_name": {
"value": "item.myname:ruby_sword.name"
},
"minecraft:max_stack_size": 1,
"minecraft:hand_equipped": true,
"minecraft:damage": 7,
"minecraft:durability": {
"max_durability": 900
},
"minecraft:enchantable": {
"slot": "sword",
"value": 14
},
"minecraft:repairable": {
"repair_items": [
{
"items": ["myname:ruby"],
"repair_amount": "query.max_durability * 0.25"
},
{
"items": ["myname:ruby_sword"],
"repair_amount": "context.other->query.remaining_durability"
}
]
},
"minecraft:tags": {
"tags": ["minecraft:is_sword"]
}
}
}
}Что делает каждая часть
menu_categoryкладёт меч во вкладку Снаряжение (Equipment), в ту же папку, где лежат ванильные мечи.minecraft:max_stack_sizeравен 1, потому что оружие не складывается в стопки.minecraft:hand_equippedзаставляет игрока держать предмет как инструмент, направленным вперёд, а не как плоский предмет.minecraft:damage- сколько урона добавляет предмет при атаке. Чем больше, тем сильнее. Для меча уровня алмазного начните примерно с 7, потом проверьте на нескольких мобах и подправьте.minecraft:durability- сколько износа выдержит предмет, прежде чем сломаться. У железных инструментов 250, у алмазных 1561. Можно также добавитьdamage_chanceс процентамиminиmax, если хотите, чтобы прочность тратилась не каждый раз.minecraft:enchantableрешает, какие зачарования подходят.slot- вид предмета (здесьsword), аvalue- насколько хорошие зачарования выпадают на столе зачарований: у золота очень высокое значение, у камня низкое, 14 - крепкая середина.minecraft:repairableперечисляет, чем можно починить предмет на наковальне. В каждой записи естьitemsиrepair_amount- небольшая формула на Molang. Первая запись возвращает четверть прочности за каждый рубин. Вторая позволяет игрокам объединять два повреждённых меча.minecraft:tagsсminecraft:is_swordсообщает игре и другим аддонам, что это меч.
Текстура и название
Сохраните PNG 16x16 в RP/textures/items/ruby_sword.png, затем добавьте его в item_texture.json (внутрь texture_data), а название - в языковой файл:
"myname_ruby_sword": {
"textures": "textures/items/ruby_sword"
}item.myname:ruby_sword.name=Ruby Sword
item.myname:ruby_pickaxe.name=Ruby PickaxeВручную: кирка
Инструмент - это оружие с ещё одной работой: быстро ломать блоки. За эту работу отвечает minecraft:digger.
{
"format_version": "1.26.30",
"minecraft:item": {
"description": {
"identifier": "myname:ruby_pickaxe",
"menu_category": {
"category": "equipment",
"group": "minecraft:itemGroup.name.pickaxe"
}
},
"components": {
"minecraft:icon": {
"textures": {
"default": "myname_ruby_pickaxe"
}
},
"minecraft:display_name": {
"value": "item.myname:ruby_pickaxe.name"
},
"minecraft:max_stack_size": 1,
"minecraft:hand_equipped": true,
"minecraft:damage": 5,
"minecraft:durability": {
"max_durability": 900
},
"minecraft:enchantable": {
"slot": "pickaxe",
"value": 14
},
"minecraft:repairable": {
"repair_items": [
{
"items": ["myname:ruby"],
"repair_amount": "query.max_durability * 0.25"
}
]
},
"minecraft:digger": {
"use_efficiency": true,
"destroy_speeds": [
{
"block": {
"tags": "query.any_tag('stone', 'metal')"
},
"speed": 7
},
{
"block": "minecraft:obsidian",
"speed": 7
}
]
},
"minecraft:tags": {
"tags": ["minecraft:is_pickaxe", "minecraft:is_tool", "minecraft:diamond_tier"]
}
}
}
}Как работает копание
destroy_speeds- это список. Каждая запись говорит, какие блоки и с какой скоростью.blockможет быть одним ID блока, например"minecraft:obsidian", или объектом сtagsи запросом Molang.query.any_tag('stone', 'metal')подходит к каждому блоку, у которого есть хотя бы один из этих тегов, так что не нужно перечислять сотни блоков.speed- как быстро ломаются эти блоки. Для ориентира: деревянные инструменты - 2, каменные - 4, железные - 6, алмазные - 8, незеритовые - 9, золотые - 12.use_efficiencyсо значениемtrueпозволяет зачарованию «Эффективность» ускорять инструмент ещё больше.
Теги инструментов
Теги говорят Minecraft, что это за инструмент. minecraft:is_pickaxe и minecraft:is_tool означают «это кирка». Тег уровня вроде minecraft:iron_tier или minecraft:diamond_tier говорит, насколько инструмент силён, это те же теги, что у ванильных инструментов. Другие виды инструментов используют minecraft:is_axe, minecraft:is_shovel или minecraft:is_hoe.
Если нужен топор или лопата
Скопируйте кирку и поменяйте три вещи: slot в minecraft:enchantable (axe или shovel), теги блоков в destroy_speeds (например 'wood' для топора, 'dirt', 'sand' и 'gravel' для лопаты) и тег is_.
Проверьте
- Загрузите пакеты в новый мир (см. Экспорт и установка).
- Выдайте себе оба предмета командой /give:
/give @s myname:ruby_sword
/give @s myname:ruby_pickaxe- Ударьте моба, накопайте камня и попробуйте зачаровать оба предмета на столе.
- Немного повредите их, а затем положите один на наковальню вместе с рубином, чтобы проверить починку.
Какие слоты зачарования можно использовать
slot | Зачаровывается как |
|---|---|
sword | Меч |
axe, pickaxe, shovel, hoe | Соответствующий инструмент |
bow, crossbow | Оружие дальнего боя |
g_tool | Любой инструмент |
g_digging | Любой копающий инструмент |
all | Что угодно |
Если что-то пошло не так
| Что вы видите | Скорее всего, причина |
|---|---|
| Предмет держится плоско, как листок бумаги | Нет minecraft:hand_equipped |
| Копает так же медленно, как кулак | Теги блоков в destroy_speeds не совпадают или в запросе Molang опечатка |
| Его нельзя зачаровать | Нет minecraft:enchantable или slot написан с ошибкой |
| Наковальня его не чинит | Неверный ID предмета в repair_items |
Больше решений в разделе Когда что-то сломалось. Чтобы игроки могли скрафтить эти предметы, прочитайте Рецепты крафта и печи, а подходящую броню ищите в гайде Своя броня.