พื้นฐานคำสั่ง Minecraft
ถ้าเพิ่งเริ่มใช้คำสั่งครั้งแรก อ่านหน้านี้ก่อนได้เลย จะอธิบายตั้งแต่การเปิด cheats ไปจนถึงตัวเลือกเป้าหมายและพิกัด ซึ่งเป็นสิ่งที่ใช้ร่วมกันในเกือบทุกคำสั่ง
1. ต้องเปิด cheats ก่อน
คำสั่งส่วนใหญ่จะใช้ไม่ได้เลยถ้าโลกนั้นยังไม่ได้เปิด cheats
- Java Edition — โลกใหม่: ตอนสร้างโลก กด "More World Options" แล้วตั้ง
Allow Cheats: ON - Java Edition — โลกที่เล่นอยู่แล้ว: กด Esc แล้วเลือก "Open to LAN" ตั้ง
Allow Cheats: ONแล้วกด "Start LAN World" (วิธีนี้จะเปิดชั่วคราวจนกว่าจะออกจากโลก ถ้าเข้าใหม่ต้องทำซ้ำ) - Bedrock Edition: เข้า Settings → Game → เปิด
Activate Cheats
บน Bedrock การเปิด cheats จะทำให้โลกนั้นไม่ได้รับ achievement อีกต่อไป ถ้ายังอยากเก็บ achievement แนะนำให้ทดลองคำสั่งในโลกแยกต่างหาก
2. พิมพ์คำสั่งที่ไหน
- ช่องแชท — กด
Tเพื่อเปิดแชท (หรือกด/เพื่อเปิดแชทพร้อมเครื่องหมาย/ให้เลย) แล้วพิมพ์คำสั่ง - Command Block — บล็อกที่รันคำสั่งอัตโนมัติ เอาไว้ทำแผนที่หรือระบบในเกม ต้องใช้คำสั่ง
/giveเพื่อเอามาก่อน เพราะหาในช่องสร้างของไม่ได้ - ไฟล์ function — สำหรับ datapack/behavior pack ที่รันคำสั่งหลายบรรทัดพร้อมกัน
คำสั่งในแชทต้องมี / นำหน้าเสมอ แต่ถ้าพิมพ์ใน command block จะใส่หรือไม่ใส่ก็ได้ คำสั่งที่เครื่องมือของเราสร้างให้จะมี / มาให้แล้ว
3. ตัวเลือกเป้าหมาย (Target Selector)
แทนที่จะพิมพ์ชื่อผู้เล่นตรงๆ เราใช้ตัวย่อขึ้นต้นด้วย @ เพื่อเลือกเป้าหมายได้ยืดหยุ่นกว่า ตัวเลือกทั้ง 5 ตัวนี้ใช้ได้ทั้ง Java และ Bedrock
| ตัวเลือก | หมายถึง | ตัวอย่างการใช้ |
|---|---|---|
@p | ผู้เล่นที่ใกล้ที่สุด | ให้ของกับคนที่ยืนใกล้ command block |
@a | ผู้เล่นทุกคน | ประกาศข้อความให้ทั้งเซิร์ฟเวอร์ |
@s | ตัวเอง (ผู้ที่รันคำสั่ง) | เปลี่ยนโหมดของตัวเอง |
@r | ผู้เล่นแบบสุ่ม 1 คน | สุ่มแจกรางวัล |
@e | เอนทิตีทุกตัว (รวมม็อบ ไม่ใช่แค่ผู้เล่น) | กำจัดม็อบทั้งหมด |
ใส่เงื่อนไขเพิ่มในวงเล็บเหลี่ยมได้ เช่น @e[type=zombie] คือ "ซอมบี้ทุกตัว" หรือ @a[distance=..10] คือ "ผู้เล่นทุกคนในระยะ 10 บล็อก"
ตัวย่อ @p @a @s @r @e เหมือนกันทั้งสองเอดิชัน แต่เงื่อนไขในวงเล็บเหลี่ยมเขียนต่างกันระหว่าง Java กับ Bedrock (ตัวอย่างข้างบนเป็นรูปแบบของ Java) ถ้าใช้บน Bedrock แล้วไม่ผ่าน ให้ตรวจสอบรูปแบบเงื่อนไขอีกครั้ง
4. พิกัด (Coordinates)
พิกัดในเกมมี 3 ค่าเรียงกันคือ X Y Z โดย Y คือความสูง เขียนได้ 3 แบบ
| แบบ | ความหมาย | ตัวอย่าง |
|---|---|---|
| ตัวเลขล้วน | พิกัดสัมบูรณ์ ตำแหน่งตายตัวในโลก ไม่ว่าจะรันคำสั่งจากตรงไหน | 100 64 -200 |
~ (tilde) |
พิกัดสัมพัทธ์ นับจากตำแหน่งที่รันคำสั่ง | ~ ~1 ~ = จุดเดิมแต่สูงขึ้น 1 บล็อก |
^ (caret) |
พิกัดตามทิศที่หันหน้าอยู่ เรียงเป็น ซ้าย/ขึ้น/หน้า | ^ ^ ^3 = ข้างหน้าตัวเรา 3 บล็อก |
ใช้ ~ ~ ~ เฉยๆ หมายถึง "ตรงตำแหน่งที่รันคำสั่งพอดี" — เป็นค่าเริ่มต้นที่เครื่องมือของเราใส่ให้
5. Java กับ Bedrock ต่างกันอย่างไร
สองเอดิชันนี้ใช้ไวยากรณ์คำสั่งไม่เหมือนกัน คำสั่งที่ก็อปมาจากคลิปหรือเว็บที่ทำสำหรับ Java มักใช้บน Bedrock ไม่ได้ และกลับกันด้วย
- Java Edition — เวอร์ชันคอมพิวเตอร์ (Windows/Mac/Linux) ที่ซื้อแยก รองรับคำสั่งซับซ้อนกว่า เช่น ตั้งชื่อไอเทม ใส่ Lore ใส่มนตร์ผ่านคำสั่งเดียว
- Bedrock Edition — เวอร์ชันมือถือ, Console, Windows (จาก Microsoft Store) ไวยากรณ์บางคำสั่งต่างออกไปและรองรับตัวเลือกน้อยกว่า
เครื่องมือของเราจะให้เลือกเอดิชันและเวอร์ชันก่อนเสมอ แล้วปรับไวยากรณ์กับซ่อนตัวเลือกที่เอดิชันนั้นไม่รองรับให้อัตโนมัติ จึงไม่ต้องกังวลว่าจะเผลอเอาไวยากรณ์ของคนละฝั่งมาปนกัน
6. ปัญหาที่พบบ่อย
| อาการ | สาเหตุที่พบบ่อย |
|---|---|
| ขึ้นว่าไม่มีสิทธิ์ใช้คำสั่ง | ยังไม่ได้เปิด cheats (ดูข้อ 1) หรือบนเซิร์ฟเวอร์ยังไม่ได้เป็น operator |
| คำสั่งขึ้นสีแดงตอนพิมพ์ | สะกดรหัสไอเทม/ม็อบผิด หรือใช้ไวยากรณ์ของคนละเอดิชัน |
| ก็อปจากยูทูปมาแล้วใช้ไม่ได้ | คลิปนั้นอาจทำสำหรับคนละเอดิชันหรือคนละเวอร์ชัน — ไวยากรณ์คำสั่งเปลี่ยนตามเวอร์ชันได้ |
| รันได้แต่ไม่มีอะไรเกิดขึ้น | ตัวเลือกเป้าหมายไม่ตรงกับใครเลย เช่นใช้ @e[type=zombie] ตอนที่ไม่มีซอมบี้อยู่ใกล้ๆ |
พร้อมแล้ว ลองสร้างคำสั่งเลย
เลือกเครื่องมือที่ต้องการ กรอกฟอร์ม แล้วคัดลอกคำสั่งไปใช้ได้ทันที
คู่มืออื่นที่น่าอ่านต่อ
- ตัวเลือกเป้าหมายแบบละเอียด — เจาะลึกเงื่อนไขในวงเล็บเหลี่ยม ตั้งแต่ type และ distance ไปจนถึง limit กับ sort และวิธีเช็คว่าทำไมคำสั่งไม่โดนใครเลย
- พิกัด: ตัวเลข, ~ และ ^ — ทำไม ~ กับ ^ ถึงผสมกันไม่ได้ ทำไมบล็อกไปโผล่ผิดที่ และวิธีเลือกใช้พิกัดแต่ละแบบให้ถูกงาน
- คอมมานด์บล็อก — เอาคำสั่งที่สร้างไว้ไปรันอัตโนมัติ ทั้งแบบกดครั้งเดียว แบบวนซ้ำ และแบบต่อกันเป็นลูกโซ่
- ทำไมคำสั่ง give ของเวอร์ชันเก่าใช้ไม่ได้ — NBT แบบเก่า, component แบบ 1.20.5 และ component แบบ 1.21.5 ต่างกันตรงไหน เทียบให้ดูจากคำสั่งที่สร้างจริง
- ระบบคะแนน scoreboard เบื้องต้น — สร้าง objective ให้เกมนับคะแนนเอง หรือนับเองจากคอมมานด์บล็อก แล้วเอาคะแนนไปใช้เป็นเงื่อนไขของคำสั่งอื่น
- คำสั่ง execute — คำสั่งที่ทรงพลังที่สุดใน Minecraft อธิบายทีละส่วน ว่า as กับ at ต่างกันยังไง และทำไมสลับลำดับแล้วผลเปลี่ยน
- คำสั่งไม่ทำงาน แก้ยังไง — ไล่หาสาเหตุทีละขั้นจากข้อความ error ที่เกมขึ้นให้ พร้อมสาเหตุที่เจอบ่อยของแต่ละแบบ