ID Blok, Item, dan Entitas: Namespace, Block State, dan Perbedaannya
ID tidak selalu sama dengan nama item, dan ID blok tidak sama dengan ID itemnya. Aturan penamaan, perubahan nama yang membatalkan perintah lama, dan di mana block state berperan.
Setiap perintah yang gagal dengan pesan "Unknown item" atau "Unknown block" adalah masalah ID, dan aturannya lebih rumit daripada sekadar "huruf kecil dengan garis bawah".
Namespace tidak opsional dalam data
minecraft:diamond_sword
my_pack:custom_sword
Perintah memungkinkan Anda menghilangkan minecraft: — /give @s diamond_sword berfungsi. File JSON tidak. Tabel loot atau resep dengan diamond_sword saja akan gagal, terkadang tanpa pemberitahuan. Tulis namespace di mana-mana dan masalahnya akan hilang.
ID blok dan ID item adalah hal yang berbeda
Beberapa blok tidak memiliki item, beberapa item menempatkan blok yang berbeda:
| Item | Blok yang ditempatkan |
|---|---|
minecraft:wheat_seeds | minecraft:wheat |
minecraft:redstone | minecraft:redstone_wire |
minecraft:string | minecraft:tripwire |
minecraft:flower_pot | minecraft:flower_pot, tetapi varian pot adalah blok terpisah |
| — | minecraft:water, minecraft:fire, minecraft:air tidak memiliki item |
/setblock mengambil ID blok. /give mengambil ID item. Menggunakan yang salah adalah sumber paling umum dari "ID itu tidak ada" padahal benda itu jelas ada.
Block state berada dalam kurung siku
/setblock ~ ~ ~ oak_stairs[facing=east,half=top,waterlogged=true]
State adalah properti blok, bukan item — Anda tidak bisa memberikan tangga yang sudah diputar, karena rotasi ditentukan saat penempatan. Properti yang tidak ditentukan akan mengambil nilai defaultnya.
waterlogged sering mengecoh: itu ada pada tangga, slab, pagar, dan banyak lagi, dan mengatur blok tanpanya akan menghilangkan Air yang ada di sana.
Perubahan nama yang membatalkan perintah lama
Beberapa ID berubah dan yang lama sekarang tidak dikenal:
| Lama | Sekarang |
|---|---|
grass | short_grass |
grass_path | dirt_path |
scute | turtle_scute |
sign | oak_sign dan teman-temannya |
grass adalah yang paling menyakitkan, karena grass_block masih ada dan merupakan hal yang berbeda. Perintah lama yang menggunakan grass untuk tanaman sekarang secara diam-diam tidak menargetkan apa pun.
ID Entitas
Sebagian besar dapat diprediksi, dengan pengecualian: minecraft:snow_golem bukan snowman, minecraft:mooshroom bukan mushroom_cow, dan setiap proyektil adalah entitasnya sendiri — minecraft:arrow, minecraft:spectral_arrow, minecraft:trident.
Entitas yang secara teknis adalah entitas blok (block entities) — peti, hopper, papan tanda — tidak muncul dalam daftar entitas dan tidak dapat di/summon. Mereka ditempatkan sebagai blok dan diedit dengan /data.
Tag mengalahkan daftar
#minecraft:planks #minecraft:logs #minecraft:wool
#minecraft:doors #minecraft:beds #minecraft:swords
Di mana pun perintah atau JSON menerima tag, menggunakannya akan tetap berfungsi meskipun Mojang menambahkan jenis kayu baru. Mengkodekan semua delapan ID papan secara manual tidak.
Cari setiap ID blok, item, dan entitas, dengan block state dan tag yang dimilikinya, di Block, Item & Entity ID Browser.