Guides / Commands & Data

Özel tarifler: şekilli, şekilsiz ve her ahşap türünü listelemek yerine etiket kullanma

Genellikle üretilemeyen şekilli bir tarifin anahtarı yanlış veya deseni doldurulmuş olabilir. İşte JSON, sekiz tarifi bire indiren etiket hilesi ve nasıl test edileceği.

Tarifler, veri paketleri (datapack) arasında yazması en kolay dosyalardan biridir, ancak aynı zamanda ince hatalar yapması da kolaydır, çünkü bozuk bir tarif sessizce başarısız olur; üretim ızgarası (crafting grid) hiçbir şey yapmaz.

Şekilli (Shaped)

{
  "type": "minecraft:crafting_shaped",
  "pattern": [ "SSS", "S S", "SSS" ],
  "key": { "S": "minecraft:stone" },
  "result": { "id": "minecraft:furnace", "count": 1 }
}

Çoğu hataya neden olan üç kural:

  • pattern içindeki her karakter, boşluk hariç, key içinde var olmalıdır. Boşluk, boş anlamına gelir.
  • Desen görecelidir, mutlak değildir. 2×2'lik bir tarif, iki satır iki öğe olarak yazılmalı, boşluklarla 3×3'e doldurulmamalıdır. Doldurma, tarifi yalnızca ızgaranın o belirli köşesinde üretilebilir hale getirir.
  • Tüm satırlar aynı uzunlukta olmalıdır. ["SS", "S"] geçersizdir.

Şekilsiz (Shapeless)

{
  "type": "minecraft:crafting_shapeless",
  "ingredients": ["minecraft:stone", "minecraft:coal"],
  "result": { "id": "minecraft:torch", "count": 4 }
}

Sıra önemsizdir. Kopyalar her biri bir kez listelenmelidir; iki Kömür, iki giriş anlamına gelir.

Etiketler bir aileyi tek bir tarifte birleştirir

Sekiz farklı tahta türü için sekiz tarif yerine:

"key": { "P": "#minecraft:planks" }

# bir öğe etiketini (item tag) işaretler. #minecraft:planks, #minecraft:logs, #minecraft:wool, #minecraft:stone_crafting_materials ve düzinelercesi zaten mevcuttur. Kendi etiketlerinizi tanımlamak tek bir dosya gerektirir:

data/<namespace>/tags/item/my_metals.json
{ "values": ["minecraft:iron_ingot", "minecraft:gold_ingot"] }

tags/item/'e dikkat edin — tekil item, çoğul tags. Bu tutarsızlık gerçektir.

Bileşenlerle sonuç

"result": {
  "id": "minecraft:diamond_sword",
  "count": 1,
  "components": { "minecraft:custom_name": "\"Excalibur\"", "minecraft:enchantments": { "sharpness": 5 } }
}

Özel bir öğenin (custom item) mod olmadan nasıl üretilebilir hale geldiği budur.

Diğer tarif türleri

crafting_shaped ve crafting_shapeless birçok türden ikisidir. Ayrıca şunlar da mevcuttur: smelting, blasting, smoking, campfire_cooking, stonecutting, smithing_transform ve smithing_trim. Pişirme türleri cookingtime ve experience alır; taş kesme (stonecutting) tek bir malzeme ve bir miktar alır.

Test etme

/reload sonra ızgarayı deneyin. Eğer hiçbir şey olmazsa:

  1. Yeniden yüklemede sohbeti kontrol edin — hatalı biçimlendirilmiş JSON orada rapor edilir.
  2. /recipe give @s <namespace>:<recipe> — eğer tarif kimliği (recipe id) yanlışsa, bu bir hataya neden olur, bu da

dosyanın hiç okunmadığını gösterir.

  1. Tarif kilidini açma (recipe unlocking) tarifin var olmasından ayrıdır. Bir tarif, Kitap'ta hiç görünmese bile ızgarada çalışır.

Anahtarları ve etiketleri kontrol edilmiş tarif, yüklem (predicate) ve kit JSON'larını Datapack JSON Oluşturucuları ile oluşturun.

Veri paketi JSON kurucuları →

More guides

Browse all →

Başka Minecraft aracı mı arıyorsunuz?

Tarayıcıda çalışan üreteç, görüntüleyici ve dönüştürücü seti — hepsi ücretsiz.