Mga loot table: pools, rolls at ang pagkakaiba sa pagitan ng mga entry at function
Ang loot table na walang ibinubagsak ay kadalasang may weights o conditions sa maling layer. Narito ang kinokontrol ng bawat antas ng nesting, at ang mga function na dapat malaman.
Apat na antas ang lalim ng loot table JSON at may iba't ibang kahulugan ang bawat antas. Halos bawat "walang ibinubagsak ang table ko" ay isang condition na nakakabit sa maling antas mula sa dapat nitong kalagyan.
Ang apat na antas
table
└── pools[] how many independent draws
└── entries[] what can come out of this draw
└── functions[] modify the item that came out
rollssa isang pool ay kung ilang beses bubunot ang pool na iyon. Ang isang pool na mayrolls: 3draws
nang tatlong beses mula sa parehong listahan ng entry.
weightsa isang entry ay relatibo sa loob ng pool nito. Hindi kailangang maging kabuuan ng
anuman ang weights; ang isang entry na may weight na 10 laban sa may weight na 90 ay lumalabas nang ikasampung bahagi ng pagkakataon.
conditionsay umiiral sa bawat antas at may iba't ibang kahulugan. Sa isang pool kinokontrol nila
ang buong bunot. Sa isang entry kinokontrol nila ang nag-iisang opsyon na iyon. Sa isang function kinokontrol nila ang pagbabago lamang.
Ang paggarantiya ng drop ay nangangailangan ng sarili nitong pool
Hindi makakagarantiya ng anuman ang weights, dahil eksaktong isang entry bawat roll ang pinipili ng pool. Ang table na dapat laging magbagsak ng mapa kasama ang random na loot ay nangangailangan ng dalawang pool:
"pools": [
{ "rolls": 1, "entries": [ { "type": "minecraft:item", "name": "minecraft:filled_map" } ] },
{ "rolls": { "min": 2, "max": 4 }, "entries": [ … weighted list … ] }
]
May iisang entry ang unang pool, kaya lagi itong naglalabas nito. Ang pangalawang pool ay nagro-roll nang 2–4 na beses mula sa weighted list.
Mga function na dapat malaman
| Function | Ginagawa |
|---|---|
set_count | isang nakapirming numero o isang uniform range |
enchant_randomly | mga random na enchantment, opsyonal na mula sa isang listahan |
enchant_with_levels | tulad ng isang enchanting table sa N antas — kasama ang treasure kung hihilingin |
set_components | custom name, lore, anumang data component |
looting_enchant | bonus bawat antas ng Looting; mga entity table lamang |
set_damage | durability bilang isang fraction, kaya 0.5 is half-worn |
furnace_smelt | ang smelted form kapag namatay ang mob habang nasusunog |
enchant_with_levels and enchant_randomly are not interchangeable. The first mimics an enchanting table and respects level costs; the second picks arbitrarily and can produce combinations the game would never generate.
Mga condition na karaniwang hinahanap ng mga tao
random_chance— a flat probabilityrandom_chance_with_enchanted_bonus— the modern Looting-aware chancekilled_by_player— the reason your rare drop never appears from a fall deathentity_properties— check the victim's type, state or equipmentmatch_tool— check the tool used, for block tables
Pagsubok nang hindi muling binubuo ang mundo
/loot give @s loot my_pack:chests/treasure
direktang ibinubagsak ang table sa iyong inventory. /loot spawn, /loot insert <pos> and /loot replace cover the other placements. This is far faster than placing chests and reloading, and it is the only sane way to check weight distributions.
Gumawa ng mga multi-pool table na may mga function at condition na nakakabit sa tamang antas sa Advanced Loot Table Builder.