Как изменить урон от атаки предмета?

Я делаю ролевую игру в minecraft с некоторыми друзьями, но мы не знаем, как изменить урон от меча с помощью команд, мы уже пробовали эту команду …

/give @p minecraft: diamond_sword {AttributeModifiers: [{AttributeName: "generic.attackDamage", имя: "generic.attackDamage", количество: 10, операция: 0, UUIDLeast: 724099, UUIDMost: 439684, слот: "mainhand"}], Unbreakable: 1}

… но это не сработало. Если возможно, покажите нам, как это сделать в 1.16. 1 .


Прежде всего, в 1.16 были переименованы модификаторы атрибутов. Следовательно, generic.attackDamage теперь generic.attack_damage .

Затем вы должны получить правильный UUID. UUID теперь хранится как TAG_Int_Array вместо двух TAG_Long . Поэтому вместо:

  UUIDLeast: 1234, UUIDMost: 5678 -> UUID: [I; 12,34,56,78]  

Следовательно, вот замена для вашего UUID:

  UUIDLeast: 724099, UUIDMost: 439684 -> UUID: [  I; 439,684,724,099]  

Но в системе есть еще одна странность. По-видимому, TAG_String не нужно заключать в кавычки, если они не содержат пробелов и специальных символов. Это означает, что вы можете создать строковый тег следующим образом:

  MyString: HelloWorld  

Но это также означает, что любые элементы, которые не Недопустимые числа обрабатываются как строки, и числа с префиксными нулями считаются недопустимыми и обрабатываются как строки . Итак, 99 — это TAG_Integer , но 099 — это TAG_String , , даже если вокруг него нет кавычек .

Фиксированная команда:

 /give @p netherite_sword {Нерушимый:  1b, AttributeModifiers: [{AttributeName: "generic.attack_damage", имя: "generic.attack_damage", количество: 10, операция: 0, UUID: [I; 439 684 724,99]}]} 1  

Оцените статью
Gamicon.ru
Добавить комментарий