แบบแผนเนมสเปช (**
)
เกี่ยวกับ
แบบแผนนี้มีจุดมุ่งหมายเพื่อป้องกันการชนกันภายในระบบเมื่อมีการทำงานด้วย scoreboards, functions, storages และอื่นๆของคุณ โดยใช้ "คำนำหน้าเนมสเปช"
การใช้งาน
คำนำหน้าเนมสเปขต้องใช้เมื่อใดก็ตามที่เป็นไปได้ สิ่งนี้รวมไปถึงแท็ก (datapack), tags (/tag
), nbts, scoreboards, functions, advancements, loot tables, structures, world generation settings, recipes, data storage.
ไม่มีกฎตายตัวว่าคุณต้องออกแบบคำนำหน้ายังไง แต่นี่คือตัวอย่างบางส่วน:
scoreboard objectives add ee.var dummy
ในตัวอย่าง ee
คือเนมสเปชที่ย่อมาจาก estearth
เนื่องจากข้อจำกัดความยาวแค่ 16 ตัวอักษรของ scoreboard เลยต้องทำให้เนมสเปชมันสั้นและใช้ .
เป็นตัวคั่นเพื่อระบุเนมสเปชได้อย่างรวดเร็ว
tag @s add estearth.foo.bar
ในตัวอย่างฉันใช้เนมสเปช estearth
แบบเต็ม เพราะแท็กไม่ได้มีข้อจำกัดเรื่องความยาวตัวอักษร
data merge storage estearth:foo/bar {}
ในตัวอย่าง data storage รองรับการใช้สเนมสเปช จึงสามารถใช้ประโยชน์จากสิ่งนี้ได้เลย
give @s diamond{estearth: {custom_data: 123}}
ในตัวอย่างฉันรวมเอา custom_data
nbt ไว้ในเนมสเปชของฉันเพื่อป้องกันการชนกันที่อาจเกิดขึ้นนอกแท็ก
ตัวอย่างทั้งหมดนี้คือสไตล์ที่ฉันใช้ซึ่งมันมีอีกมากที่คุณสามารถใช้ได้เช่นกัน อาทิ namespace_foo
, NAMESPACEfoo
, namespace.foo
, namespace:foo
, namespace/foo
.
หมายเหตุ
การใช้เนมสเปช minecraft
เพื่อแก้ไขบางอย่างของตัวเกมต้นฉบับนั้นต้องเป็นกรณีพิเศษและมีเหตุผลในสถานการณ์นั้นๆ
อย่างไรก็ตามการตั้งค่า "replace"
เป็น true
ใน tick.json
ฟังก์ชั่นแท็กนั้นไม่สมเหตุผลเพราะมันจะทำให้ดาต้าแพ็คอื่นๆไม่ทำงาน