[ГАЙД][1.9+]Как создать кастомные предметы с помощью NBT tag'ов
У вас есть RPG\PvP сервер? Или может быть вы хотите создать качественную карту? Тогда вам обязательно надо научиться создавать свое, кастомное оружие, броню и артефакты. Писать гайд буду не по пунктам, а сплошным текстом с картиночками и без спойлеров, так как все написанное в гайде необходимо прочитать. Будет подробное описание процесса создания предметов, а не самих NBT тегов
Итак, для начала вам потребуется следующее:
1. а) Версия Minecraft 1.9+ и NBTExplorer или
б) Minecraft 1.9+ с установленным Forge и In-Game NBTedit;
2. Минимальные знания английского языка (необязательно);
3. Прямые руки (можно из задницы).
ВНИМАНИЕ!!!
Процесс создания предмета с помощью NBTExplorer практически ничем не отличается от In-Game NBTedit, разве что для NBTExplorer предмет должен находится в инвентаре, а для In-Game NBTedit он должен находится в сундуке. Я буду писать гайд с помощью In-Game NBTedit, так как он в разы удобнее и не требует перезапуска карты каждый раз, чтобы проверить предмет.
Приступим! Создаем карту (желательно в творческом режиме), берем необходимый вам предмет (в нашем случае это алмазный меч) кладем его в сундук и прописываем команду /nbtedit. Если вы делаете через NBTExplorer, то вам надо положить предмет в инвентарь, открыть в NBTExplorer файл Player.dat, который находится в папке вашего сейва. Открывается следующее окно:
Раскрываем дерево "Items" и кликаем на TagCompound. У нас появляются сверху кнопки. Каждая кнопка отвечает за 1 из 11-ти NBT тегов: 1 - Byte; 2 - Short; 3 - Int; 4 - Long; 5 - Float; 6 - Double; 7 - Byte[]; 8 - String; 9 - List; 10 - Compound; 11 - Int[].
Создаем Compound с помощью 10-ой кнопки:
Кликнув на созданный Compound, над кнопками создания NBT появляются кнопки редактирования NBT. Кликаем на Edit и переименовываем данный Compound в "tag".
ВНИМАНИЕ!!!
Регистр букв соблюдать обязательно!!!
После в "tag" создаем List и в нем-же создаем еще один Compound. List переименовываем в "AttributeModifiers", а Compound в "display".
После создаем в AttributeModifiers Int, Long (2 шт.), Float и String (3 шт.). В display создаем String и List.
Переименовываем следующим образом:
Теперь за что отвечает каждый NBT.. В AttributeModifiers:
● Operation - Это модификатор операции. Имеет 3 значения: 0, 1 и 2:
- Если Operation 0 - то значение Amount будет приплюсовываться к базовому значению. Например: простая атака персонажа - 1 единица. Если в Amount мы указали 3, то атака предметом будет равна 4;
- Если Operation 1 - то значение Amount будет умножаться на сумму значений всех модификаторов. Например: у нас есть 2 предмета, один из которых дает +2 к атаке, а второй +4 к атаке. Базовое значение атаки у нас равно 1. Тогда при наличии предмета со значением Amount 3, атака будет равна 21 (3 * (1 + 2 + 4) = 21);
- Если Operation 2 - то значение атаки (например) будет равно сумме произведений значения Amount на каждый из модификаторов атаки. Например: у нас есть 2 предмета, один из которых дает +2 к атаке, а второй +4 к атаке. Базовое значение атаки у нас равно 1. Тогда при наличии предмета со значением Amount 3, атака будет равна 45 (3 * (1 + 2) * (1 + 4) = 45);
● UUIDLeast и UUIDMost - это конечное и начальное значение UUID. За что оно отвечает я, если честно, не знаю, поэтому всегда ставлю одно и тоже значение: 8000 для UUIDLeast и 4000 для UUIDMost;
● Amount - значение модификатора;
● AttributeName - Имя модификатора. Список доступных атрибутов: Кликабельно (на английском языке);
● Name - Уникальное название модификатора. Можно использовать совершенно любое сочетание букв;
● Slot - В каком слоте должен находится предмет, чтобы модификаторы работали. Доступные значения: mainhand (ведущая (правая) рука), offhand (не ведущая (левая) рука), head (шлем), chest (нагрудник), legs (штаны за 40 гривен) и feet (ботинки).
В display:
● Name - название предмета;
● Lore - описание предмета.
Теперь, когда мы обладаем информацией, заполняем данные:
ВНИМАНИЕ!!!
Чтобы сделать цветной текст, необходимо нажать на знак параграфа в окне редактирования NBT и поставить ID цветового кода
Если вы хотите добавить еще один модификатор, то в AttributeModifiers добавляем еще один Compound и в нем создаем те же самые NBT с теми же самыми названиями, но со своим значением:
Примечание:
Чтобы уменьшить скорость атаки, то ставим отрицательное значение, если хотите увеличить, то положительное. Со скоростью атаки поэкспериментируйте, делая не только целые значения, но и дробные, тем самым добившись идеального значения.
Если вы хотите добавить зачарование, то в tag добавляем List с названием ench, следом Compound. В Compound создаем Short (2 шт.). Один из них называем id (это ID зачарования), а второй - lvl (это уровень зачарования (макс. 32767)).
Если вы хотите добавить еще одно зачарование, то поступайте точно также, как и с модификаторами:
Вот что получилось в итоге:
Полезная ссылка с полезной информацией на английском языке: Кликабельно.
На сегодня у меня все. Думаю данный гайд будет полезен для креативных людей. Ставьте пятые мемосы, пишите комментарии по поводу оформления. Может вам что то не нравится, может наоборот. Буду рад любой адекватной критике. С вами был EnziAuer, всем печенек, сладкого хлеба и 2D-няшек!