Rehberler / Komutlar ve Veriler
Veri bileşenlerinden sonra /give komutu: NBT etiketlerinin yerini ne aldı
1.20.5, eşya NBT'sinin yerine veri bileşenlerini getirdi ve internetteki /give kod parçacıklarının çoğu hâlâ eski biçimde yazılıyor. İşte bildiğiniz etiketlerden günümüzde çalışan bileşenlere eşleme.
Eski bir rehberden bir /give komutu yapıştırıp oyun bunu sözdizimi hatasıyla reddediyorsa, komut 1.20.5 öncesi NBT biçimine göre yazılmıştır. Eşya verisi veri bileşenlerine (data components) taşındı ve eski {display:{Name:...}} bloğu artık ayrıştırılmıyor.
Biçim değişti
old /give @p diamond_sword{display:{Name:'"Skybreaker"'},Enchantments:[{id:sharpness,lvl:5}]}
new /give @p diamond_sword[custom_name="Skybreaker",enchantments={sharpness:5}]
Süslü parantez değil, köşeli parantez. Bileşenler eşya kimliği üzerinde düz, virgülle ayrılmış bir listedir.
Gerçekten başvuracağınız eşlemeler
| Eski NBT | Veri bileşeni |
|---|---|
display:{Name:...} | custom_name |
display:{Lore:[...]} | lore |
Enchantments:[{id,lvl}] | enchantments={id:level} |
Unbreakable:1b | unbreakable={} |
CustomModelData:3 | custom_model_data={floats:[3]} |
AttributeModifiers:[...] | attribute_modifiers |
display:{color:...} | dyed_color |
SkullOwner | profile |
Üç tuzak
- Tırnak kullanımı.
custom_name, SNBT olarak yazılmış bir metin bileşeni alır, yani düz bir ad sadececustom_name="Skybreaker"olur. 1.20.5 dönemi rehberlerindeki eskicustom_name='"Skybreaker"'biçimi artık eşyayı tırnak işaretleri görünür şekilde adlandırıyor. - Bir varsayılanı kaldırma. Eşyanın normalde sahip olduğu bir bileşeni sıyırmak için başına
!ekleyin —[!attribute_modifiers]hiç hasar bonusu olmayan bir kılıç verir. - Bedrock'ta bunların hiçbiri yok. Bedrock
/givehâlâ kendi veri değeri ve bileşen modelini kullanır; bir Java bileşen dizesi orada çalışmaz.
/give Generator bileşen biçimini sizin için yazar ve her iki sürüm için çıktıyı gösterir, böylece bulunduğunuz sunucuya uyanı kopyalayabilirsiniz.