Mga id ng block, item, at entity: mga namespace, block state, at ang mga magkakaiba
Ang id ay hindi laging kung ano ang tawag sa item, at ang block id ay hindi katulad ng item id nito. Ang mga panuntunan sa pagpapangalan, mga pagpapalit ng pangalan na sumisira sa mga lumang command, at kung saan nababagay ang mga state.
Bawat command na nabigo nang may "Unknown item" o "Unknown block" ay problema sa id, at ang mga patakaran ay mas maselan kaysa sa "maliit na titik na may mga underscore".
Hindi opsyonal ang namespace sa data
minecraft:diamond_sword
my_pack:custom_sword
Hinahayaan ka ng mga command na laktawan ang minecraft: — /give @s diamond_sword works. Hindi ito pwede sa mga JSON file. Ang loot table o recipe na may hubad na diamond_sword fails, sometimes silently. Write the namespace everywhere and the problem disappears.
Magkaibang bagay ang block id at item id
Ang ilang block ay walang item, ang ilang item ay naglalagay ng ibang block:
| Item | Nailagay na block |
|---|---|
minecraft:wheat_seeds | minecraft:wheat |
minecraft:redstone | minecraft:redstone_wire |
minecraft:string | minecraft:tripwire |
minecraft:flower_pot | minecraft:flower_pot, but potted variants are separate blocks |
| — | minecraft:water, minecraft:fire, minecraft:air have no item |
/setblock takes the block id. /give takes the item id. Ang paggamit ng maling id ang pinakakaraniwang dahilan ng "that id does not exist" kahit na talagang umiiral ang bagay.
Nasa loob ng mga square bracket ang mga block state
/setblock ~ ~ ~ oak_stairs[facing=east,half=top,waterlogged=true]
Ang mga state ay katangian ng block, hindi ng item — hindi ka maaaring magbigay ng stair na nakaikot na, dahil ang pag-ikot ay napagpapasyahan sa paglalagay. Ang mga hindi tinukoy na katangian ay kumukuha ng kanilang mga default.
waterlogged catches people: it exists on stairs, slabs, fences and dozens more, and setting a block without it nagtatanggal ng tubig na naroon.
Mga pagpapalit ng pangalan na sumisira sa mga lumang command
Ilang mga id ang nagbago at ang mga luma ay sadyang hindi na kilala ngayon:
| Luma | Kasalukuyan |
|---|---|
grass | short_grass |
grass_path | dirt_path |
scute | turtle_scute |
sign | oak_sign and friends |
grass is the painful one, because grass_block still exists and is a different thing. Old commands using grass for the plant now silently target nothing.
Mga entity id
Kadalasan ay mahuhulaan, na may mga eksepsiyon: minecraft:snow_golem not snowman, minecraft:mooshroom not mushroom_cow, and every projectile is its own entity — minecraft:arrow, minecraft:spectral_arrow, minecraft:trident.
Ang mga entity na teknikal na mga block entity — chests, hoppers, signs — ay hindi lumalabas sa listahan ng entity at hindi maaaring /summoned. They are placed as blocks and edited with /data.
Mas mainam ang mga tag kaysa sa mga listahan
#minecraft:planks #minecraft:logs #minecraft:wool
#minecraft:doors #minecraft:beds #minecraft:swords
Saanman tumatanggap ang isang command o JSON ng tag, ang paggamit nito ay mananatiling gumagana kahit magdagdag ang Mojang ng mga bagong uri ng kahoy. Ang pag-hardcode sa lahat ng walong plank id ay hindi.
Hanapin ang bawat block, item, at entity id, kasama ang mga block state at ang mga tag na kinabibilangan ng bawat isa, sa Browser ng Block, Item at Entity ID.