Przewodnik po poleceniach Minecraft: Jak korzystać z komponentu attribute_modifiers
Czy kiedykolwiek chciałeś mieć miecz, który sprawia, że jesteś szybszy, buty, które zwiększają twoje zdrowie, lub kij, który zamienia cię w olbrzyma, gdy go trzymasz? attribute_modifiers elementem Minecrafta jest sposób, w jaki to robisz. Prawdziwa sztuczka polega na prawidłowym napisaniu formatu SNBT, aby gra go zaakceptowała - tu właśnie pojawia się ten przewodnik.

Co to jest attribute_modifiers składnik
Ten komponent pozwala na zastosowanie zmian atrybutów przedmiotu do gracza, gdy jest wyposażony lub trzymany. Pomyśl o tym jak o wbudowanych zaklęciach, ale w pełni konfigurowalnych i potężniejszych. Tag attribute_modifiers to lista związków modyfikatorów, a każdy z nich wpływa na określony atrybut, taki jak prędkość ruchu, obrażenia od ataku lub maksymalne zdrowie. Efekty te mają zastosowanie tylko wtedy, gdy przedmiot znajduje się w prawidłowym miejscu, takim jak ręka główna, druga ręka lub zbroja. Przedmioty znajdujące się w ekwipunku nie będą działać.
Jak napisać format SNBT
Musisz zdefiniować ten znacznik jako listę związków NBT. Każdy związek ma następujące klucze:
type — jest to atrybut, który modyfikujesz, np. Minecraft:attack_damage
slot - miejsce, w którym musi znajdować się przedmiot, aby zastosować efekt, np. Mainhand, Offhand, Armor itp.
id - unikalny identyfikator ciągu znaków (po prostu spraw, aby coś było czytelne)
amount - jak bardzo zmienia się atrybut
operation - jak nakładana jest kwota, a ta część ma duże znaczenie

Oto podstawowa struktura:
/give @p diamond_sword[minecraft:attribute_modifiers=[{type:"minecraft:attack_damage",amount:6,operation:"add_value",slot:"mainhand",id:"custom:power"}]]
Ta komenda daje diamentowy miecz, który zwiększa obrażenia od ataku o +6 tylko wtedy, gdy jest trzymany w głównej ręce. Wartość musi być zapisana jako liczba, a nie ciąg. Ciągi są w cudzysłowie, liczby nie.

Zwiększa prędkość, gdy trzymasz lekki sztylet.
Opis typów operacji
Istnieją trzy typy operacji, które określają, w jaki sposób kwota wpływa na wartość końcową:
add_value - wystarczy dodać numer bezpośrednio
add_multiplied_base - mnoży kwotę przez wartość bazową i dodaje ją
add_multiplied_total - mnoży kwotę przez całkowitą wartość końcową i dodaje ją
Na przykład dodanie 0,2 z add_multiplied_base do prędkości (podstawa 0,1) daje 0,1 + (0,2 0,1) = 0,12. To samo 0,2 z add_multiplied_total zostanie zastosowane po dodaniu wszystkich innych efektów. Jeśli dopiero zaczynasz, trzymaj się add_value - najłatwiej jest to kontrolować.
Wartości slotów i kiedy mają zastosowanie modyfikatory
Klucz gniazda decyduje, gdzie musi znajdować się przedmiot. Prawidłowe wartości to:
mainhand, offhand - dla narzędzi, broni i trzymanych przedmiotów
head, chest, legs, feet- do zbroi
armor - Dla dowolnego elementu zbroi
hand - na dowolną rękę
body - Przedmioty na całe ciało
any - działa w każdym z tych slotów
Jeśli pominiesz gniazda, domyślnie zostanie ustawiony na dowolny, ale dobrą praktyką jest bycie konkretnym. Jeśli przedmiot nie znajduje się w jednym z tych miejsc, modyfikator nic nie zrobi. Tak więc kij w twoim ekwipunku nie wpłynie na twoje statystyki, ale jeśli trzymasz go w ręku - bum, rośniesz.

Skacz wyżej, trzymając piórko
To polecenie daje ci pióro, które znacznie zwiększa twoją siłę skoku:
/give @s minecraft:feather[attribute_modifiers=[{type:"minecraft:jump_strength",slot:"hand",id:"example:jump",amount:4,operation:"add_multiplied_base"}]]
Po prostu trzymaj go w obu rękach, a twoje skoki wystrzelą cię znacznie wyżej w powietrze. Idealny do wyzwań parkour, magicznych przedmiotów lub przeklętych narzędzi, które przeszkadzają w ruchu. Możesz precyzyjnie dostroić ilość, aby kontrolować, jak potężne jest przyspieszenie skoku.

Korzystanie z identyfikatorów UUID i sprawdzonych metod
Klucz id powinien być unikalny - może to być czytelna nazwa, taka jak "boost:speed" lub ciąg UUID. Nie używaj ponownie identyfikatorów na tym samym przedmiocie, ponieważ gra może je dziwnie połączyć. Staraj się również unikać używania więcej niż jednego modyfikatora w tej samej kombinacji typu+slot+operacja, chyba że naprawdę wiesz, co robisz, ponieważ mogą się nawzajem zastępować.
Używanie attribute_modifiers w niestandardowych zadaniach
Załóżmy, że projektujesz walkę z bossem, w której gracz musi założyć przeklęty hełm, aby wejść na arenę. Hełm zmniejsza ich maksymalne zdrowie o połowę za pomocą modyfikatora atrybutu minecraft:max_health z kwotą taką jak -10, a operacja add_value. Teraz gracz czuje się bezbronny, a stawka jest wyższa.
Później nagradzasz ich specjalnym jabłkiem – rodzajem odmładzającego owocu, jak bajkowe "jabłko młodości" – które znacznie zwiększa ich maksymalne zdrowie. Stosuje pozytywny modyfikator atrybutów w minecraft:max_health, dzięki czemu gracz czuje się silniejszy i ożywiony. Możesz także dać im buty, które zwiększają prędkość ruchu lub rękawice, które zwiększają obrażenia od ataku. Modyfikatory atrybutów pozwalają kontrolować postępy, skalowanie mocy i mechaniczne nagrody. Możesz nawet powiązać je z wydarzeniami związanymi z zadaniami — odblokuj amulet, który zapewnia odporność na odrzucenie po pokonaniu określonego moba, zamieniając eksplorację w znaczący postęp.

Dzięki attribute_modifiers nie tylko dajesz graczom fajny sprzęt, ale także zmieniasz zasady dotyczące tego, co może zrobić sprzęt. Od premii do statystyk po dziwne transformacje, ten komponent jest twoim zestawem narzędzi do tworzenia epickiego wyposażenia i niezapomnianej rozgrywki. Po prostu opanuj ten format SNBT, a Twoje niestandardowe przedmioty będą nie do zatrzymania.
