MC Toolkit

Rehberler / Komutlar ve Veriler

Ganimet tabloları: havuzlar, çekilişler ve girdiler ile fonksiyonlar arasındaki fark

Hiçbir şey düşürmeyen bir ganimet tablosunun ağırlıkları ya da koşulları genellikle yanlış katmandadır. İşte her iç içe geçme düzeyinin neyi kontrol ettiği ve bilinmeye değer fonksiyonlar.

Ganimet tablosu JSON'u dört düzey derindir ve her düzey farklı bir anlama gelir. Neredeyse her "tablom hiçbir şey düşürmüyor" sorunu, olması gereken yerden bir düzey uzakta duran bir koşuldan kaynaklanır.

Dört düzey

table
└── pools[]          how many independent draws
    └── entries[]    what can come out of this draw
        └── functions[]   modify the item that came out
  • Bir havuzdaki rolls, o havuzun kaç kez çekiliş yaptığıdır. rolls: 3 değerine sahip tek bir havuz, aynı girdi listesinden üç kez çekiliş yapar.
  • Bir girdideki weight, kendi havuzu içinde görelidir. Ağırlıkların toplamının bir şeye eşit olması gerekmez; ağırlığı 10 olan bir girdi, ağırlığı 90 olan bir girdiye karşı zamanın onda birinde çıkar.
  • conditions her düzeyde bulunur ve farklı anlamlara gelir. Bir havuzda tüm çekilişi kapıda tutarlar. Bir girdide yalnızca o seçeneği kapıda tutarlar. Bir fonksiyonda yalnızca değişikliği kapıda tutarlar.

Bir düşüşü garanti etmek kendi havuzunu gerektirir

Ağırlıklar hiçbir şeyi garanti edemez, çünkü bir havuz her çekilişte tam olarak bir girdi seçer. Her zaman bir harita artı rastgele ganimet düşürmesi gereken bir tablo iki havuza ihtiyaç duyar:

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

Birinci havuzun tek bir girdisi vardır, dolayısıyla onu her zaman üretir. İkinci havuz ağırlıklı listeden 2–4 kez çekiliş yapar.

Bilinmeye değer fonksiyonlar

FonksiyonNe yapar
set_countsabit bir sayı ya da bir uniform aralığı
enchant_randomlyrastgele büyüler, isteğe bağlı olarak bir listeden
enchant_with_levelsN düzeyinde bir Büyü Masası gibi — options daraltmadığı sürece herhangi bir büyü
set_componentsözel ad, lore, herhangi bir veri bileşeni
enchanted_count_increasebir büyünün düzeyi başına bonus (Ganimet); yalnızca varlık tabloları
set_damagekesir olarak dayanıklılık, yani 0.5 yarı yıpranmış demektir
furnace_smeltyaratık Ateş üzerinde öldüğünde maden eritilmiş hâli

enchant_with_levels ve enchant_randomly birbirinin yerine kullanılamaz. Birincisi bir Büyü Masası'nı taklit eder ve düzey maliyetlerine uyar; ikincisi keyfî seçim yapar ve oyunun asla üretmeyeceği kombinasyonlar üretebilir.

İnsanların sıkça başvurduğu koşullar

  • random_chance — düz bir olasılık
  • random_chance_with_enchanted_bonus — Ganimet farkındalıklı modern şans
  • killed_by_player — nadir düşüşünüzün bir düşme ölümünden asla çıkmamasının nedeni
  • entity_properties — kurbanın türünü, durumunu veya ekipmanını kontrol eder
  • match_tool — blok tabloları için kullanılan aleti kontrol eder

Dünyayı yeniden oluşturmadan test etme

/loot give @s loot my_pack:chests/treasure

tabloyu doğrudan envanterinize düşürür. /loot spawn, /loot insert <pos> ve /loot replace diğer yerleşimleri kapsar. Bu, sandıkları yerleştirip yeniden yüklemekten çok daha hızlıdır ve ağırlık dağılımlarını kontrol etmenin tek makul yoludur.

Çok havuzlu tabloları, fonksiyonlar ve koşullar doğru düzeyde eklenmiş şekilde Gelişmiş Ganimet Tablosu Oluşturucu ile kurun.

Gelişmiş ganimet tablosu kurucusu →

Daha fazla rehber

Tümünü gör →