Guides / Commands & Data

คำสั่ง /give หลังการเปลี่ยนไปใช้ Data Component: อะไรมาแทนที่ NBT Tag

Minecraft 1.20.5 ได้เปลี่ยนจากการใช้ NBT ของไอเทมมาเป็น Data Component และโค้ดคำสั่ง /give ส่วนใหญ่ที่หาได้ทางออนไลน์ยังคงเป็นรูปแบบเก่า บทความนี้จะแสดงการจับคู่จาก NBT Tag ที่คุณคุ้นเคยไปสู่ Data Component ที่ใช้งานได้ในปัจจุบัน

หากคุณวางคำสั่ง /give จากคู่มือเก่าๆ แล้วเกมตอบกลับว่า Unknown item tag หรือเงียบหายไปพร้อมกับเอนชานต์ของคุณ นั่นหมายความว่าคำสั่งนั้นเขียนขึ้นตาม รูปแบบ NBT ก่อนเวอร์ชัน 1.20.5 ข้อมูลไอเทมได้ย้ายไปใช้ Data Component แล้ว และ {display:{Name:...}} แบบเก่าก็ไม่สามารถประมวลผลได้อีกต่อไป

รูปแบบเปลี่ยนไป

old   /give @p diamond_sword{display:{Name:'"Skybreaker"'},Enchantments:[{id:sharpness,lvl:5}]}
new   /give @p diamond_sword[custom_name='"Skybreaker"',enchantments={sharpness:5}]

ใช้เครื่องหมายวงเล็บเหลี่ยม ไม่ใช่วงเล็บปีกกา Component จะเป็นรายการแบบเรียบ คั่นด้วยเครื่องหมายจุลภาคบน ID ของไอเทม

การจับคู่ที่คุณจะใช้งานจริง

NBT แบบเก่าData Component
display:{Name:...}custom_name
display:{Lore:[...]}lore
Enchantments:[{id,lvl}]enchantments={id:level}
Unbreakable:1bunbreakable={}
CustomModelData:3custom_model_data=3
AttributeModifiers:[...]attribute_modifiers
display:{color:...}dyed_color
SkullOwnerprofile

สามข้อควรระวัง

  • การใส่เครื่องหมายคำพูด (Quoting) custom_name ใช้ JSON text component ดังนั้นสตริงธรรมดาจึงยังคงต้องมี

เครื่องหมายคำพูดของตัวเองอยู่ภายในอาร์กิวเมนต์: custom_name='"Skybreaker"'

  • การลบค่าเริ่มต้น ใส่คำนำหน้าด้วย ! เพื่อลบ Component ที่ไอเทมมีตามปกติ —

[!attribute_modifiers] จะให้ดาบที่ไม่มีโบนัสความเสียหายเลย

  • หินดาน (Bedrock) ไม่มีสิ่งนี้ หินดาน /give ยังคงใช้ data-value และ

component model ของตัวเอง สตริง Java component จะไม่สามารถทำงานได้ที่นั่น

/give Generator จะสร้างรูปแบบ component ให้คุณและแสดงผลลัพธ์สำหรับ ทั้งสองเวอร์ชัน เพื่อให้คุณสามารถคัดลอกอันที่ตรงกับเซิร์ฟเวอร์ที่คุณใช้งานอยู่

ตัวสร้างคำสั่ง /give →

More guides

Browse all →

กำลังหาเครื่องมือ Minecraft อื่นอยู่ไหม

ชุดเครื่องมือสร้าง ดู และแปลงไฟล์ที่ทำงานในเบราว์เซอร์ ฟรีทั้งหมด