شناسههای بلوک، آیتم و موجودیت: نیماسپیسها، حالتهای بلوک و موارد متفاوت
یک id همیشه همان نام آیتم نیست، و id بلوک با id آیتم آن یکی نیست. قوانین نامگذاری، تغییر نامهایی که فرمانهای قدیمی را خراب میکنند و جایگاه حالتها.
هر فرمانی که با خطای «Unknown item» یا «Unknown block» ناموفق میشود به خاطر مشکل id است، و قوانین دقیقتر از صرفاً «حروف کوچک همراه با زیرخط» هستند.
نیماسپیس در دادهها اختیاری نیست
minecraft:diamond_sword
my_pack:custom_sword
فرمانها به شما اجازه حذف آن را میدهند minecraft: — /give @s diamond_sword works. اما فایلهای JSON نه. یک loot table یا دستور ساخت با یک diamond_sword fails, sometimes silently. Write the namespace everywhere and the problem disappears.
شناسه بلوک و شناسه آیتم دو چیز متفاوت هستند
برخی بلوکها آیتمی ندارند، برخی آیتمها بلوک متفاوتی قرار میدهند:
| آیتم | بلوک قرارگرفته |
|---|---|
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 بلوک id. /give takes the آیتم id. استفاده از شناسه اشتباه، رایجترین دلیل خطای «that id does not exist» در حالی است که آن مورد کاملاً وجود دارد.
حالتهای بلوک درون کروشه قرار میگیرند
/setblock ~ ~ ~ oak_stairs[facing=east,half=top,waterlogged=true]
حالتها ویژگیهای بلوک هستند، نه آیتم — شما نمیتوانید پلهای بدهید که از قبل چرخیده باشد، زیرا چرخش هنگام قرار دادن تعیین میشود. ویژگیهای نامشخص مقادیر پیشفرض خود را میگیرند.
waterlogged catches people: it exists on stairs, slabs, fences and dozens more, and setting a block without it حذف میکند آبی که در آنجا بود را.
تغییر نامهایی که فرمانهای قدیمی را از کار میاندازند
تعداد انگشتشماری از idها تغییر کردهاند و شناسههای قدیمی اکنون کاملاً ناشناخته هستند:
| قدیمی | فعلی |
|---|---|
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.
شناسههای موجودیت
غالباً قابل پیشبینی، همراه با استثناها: minecraft:snow_golem not snowman, minecraft:mooshroom not mushroom_cow, and every projectile is its own entity — minecraft:arrow, minecraft:spectral_arrow, minecraft:trident.
انتیتیهایی که از نظر فنی block entity هستند — صندوقها، هوپرها، تابلوها — اصلاً در فهرست انتیتیها ظاهر نمیشوند و نمیتوانند /summoned. They are placed as blocks and edited with /data.
برتری تگها نسبت به لیستها
#minecraft:planks #minecraft:logs #minecraft:wool
#minecraft:doors #minecraft:beds #minecraft:swords
هر جا که یک فرمان یا JSON یک تگ را میپذیرد، استفاده از آن با افزودن انواع چوب جدید توسط Mojang سازگار میماند؛ اما هاردکد کردن هر هشت id تخته چوب اینطور نیست.
تمام شناسههای بلوک، آیتم و موجودیت را همراه با حالتهای بلوک و تگهای مربوط به هرکدام جستجو کنید در مرورگر شناسه بلوک، آیتم و موجودیت.