Guides / Commands & Data

Tabele łupów: pule, losowania i różnice między wpisami a funkcjami

Tabela łupów, która nic nie upuszcza, zazwyczaj ma źle ustawione wagi lub warunki. Oto, co kontroluje każdy poziom zagnieżdżenia, oraz funkcje, które warto znać.

JSON tabeli łupów ma cztery poziomy głębokości, a każdy poziom oznacza coś innego. Prawie każde „moja tabela nic nie upuszcza” to warunek dołączony o jeden poziom dalej, niż powinien.

Cztery poziomy

table
└── pools[]          how many independent draws
    └── entries[]    what can come out of this draw
        └── functions[]   modify the item that came out
  • rolls w puli określa, ile razy ta pula losuje. Jedna pula z rolls: 3 losuje trzy razy z tej samej listy wpisów.
  • weight we wpisie jest względne w ramach jego puli. Wagi nie muszą sumować się do żadnej konkretnej wartości; wpis z wagą 10 w stosunku do wpisu z wagą 90 pojawi się dziesięć razy rzadziej.
  • conditions istnieją na każdym poziomie i oznaczają różne rzeczy. W puli kontrolują całe losowanie. We wpisie kontrolują tę jedną opcję. W funkcji kontrolują tylko modyfikację.

Zagwarantowanie upuszczenia wymaga własnej puli

Wagi nie mogą niczego zagwarantować, ponieważ pula wybiera dokładnie jeden wpis na losowanie. Tabela, która zawsze musi upuścić Mapę plus losowy łup, potrzebuje dwóch pul:

"pools": [
  { "rolls": 1, "entries": [ { "type": "minecraft:item", "name": "minecraft:filled_map" } ] },
  { "rolls": { "min": 2, "max": 4 }, "entries": [ … weighted list … ] }
]

Pula pierwsza ma jeden wpis, więc zawsze go generuje. Pula druga losuje 2–4 razy z ważonej listy.

Funkcje, które warto znać

FunkcjaDziałanie
set_countstała liczba lub zakres uniform
enchant_randomlylosowe zaklinania, opcjonalnie z listy
enchant_with_levelsjak Stół do zaklinania na N poziomach — zawiera skarby, jeśli zażądano
set_componentsniestandardowa nazwa, lore, dowolny komponent danych
looting_enchantbonus za poziom Grabieży (Looting); tylko dla tabel bytów
set_damagetrwałość jako ułamek, więc 0.5 to połowa zużycia
furnace_smeltforma przetopiona, gdy mob ginie w Ogniu

enchant_with_levels i enchant_randomly nie są zamienne. Pierwsza naśladuje Stół do zaklinania i uwzględnia koszty poziomów; druga wybiera arbitralnie i może generować kombinacje, których gra nigdy by nie stworzyła.

Warunki, po które ludzie sięgają

  • random_chance — stałe prawdopodobieństwo
  • random_chance_with_enchanted_bonus — nowoczesna szansa uwzględniająca Grabież (Looting)
  • killed_by_player — powód, dla którego rzadki przedmiot nigdy nie pojawia się po śmierci od upadku
  • entity_properties — sprawdź typ, stan lub wyposażenie ofiary
  • match_tool — sprawdź użyte narzędzie, dla tabel bloków

Testowanie bez przebudowy świata

/loot give @s loot my_pack:chests/treasure

upuszcza tabelę bezpośrednio do twojego ekwipunku. /loot spawn, /loot insert <pos> i /loot replace obejmują inne miejsca docelowe. Jest to znacznie szybsze niż umieszczanie skrzyń i ponowne ładowanie, i jest to jedyny rozsądny sposób na sprawdzenie rozkładu wag.

Buduj tabele wielopulowe z funkcjami i warunkami dołączonymi na odpowiednim poziomie w Zaawansowanym Kreatorze Tabel Łupów.

Zaawansowany kreator tabel łupów →

More guides

Browse all →

Szukasz innych narzędzi do Minecrafta?

Zestaw generatorów, podglądów i konwerterów działających w przeglądarce — wszystkie za darmo.