MC Toolkit

คู่มือ / คำสั่งและข้อมูล

ข้อความสีแดงเดียวกันพังคนละแบบบน Java และ Bedrock

รหัสสีที่แสดงผลสมบูรณ์แบบในปลั๊กอินหนึ่ง กลับกลายเป็นเครื่องหมายแอมเพอร์แซนด์ตัวอักษรในอีกปลั๊กอินหนึ่ง รูปแบบคือสาเหตุ ไม่ใช่ปลั๊กอิน

รหัส § และแท็ก MiniMessage สามารถอธิบายสีเดียวกันได้ แต่ก็ยังถูกเซิร์ฟเวอร์เดียวกันปฏิเสธ ข้อความสีบนเซิร์ฟเวอร์ไม่ใช่รูปแบบเดียว — มันมีอย่างน้อยห้ารูปแบบ และปลั๊กอินแต่ละตัวก็ไม่เห็นตรงกันว่ายอมรับแบบไหน

ห้าภาษาเฉพาะถิ่น

ภาษาเฉพาะถิ่นหน้าตาเป็นแบบนี้อยู่รอดที่ไหน
Legacy section§cHelloแชทวานิลลา, ปลั๊กอินเก่า
Ampersand legacy&cHelloไฟล์คอนฟิก, ปลั๊กอินหลายตัว
BungeeCord hex&x&f&f&0&0&0&0ปลั๊กอินพร็อกซี, แชทบางตัว
MiniMessage<red>Hello</red>ปลั๊กอิน Paper สมัยใหม่
JSON component{"text":"Hello","color":"red"}คำสั่งวานิลลา, /tellraw

รูปแบบแอมเพอร์แซนด์ไม่ใช่รหัสสีเลยจนกว่าจะมีอะไรบางอย่างแปลมันไป วาง &c ลงในปลั๊กอินที่คาดหวัง MiniMessage แล้วผู้เล่นจะอ่านเห็นตัวอักษรเหล่านั้นตรง ๆ

รหัส Legacy มีสีไม่พอใช้

ระบบเครื่องหมายเซกชันมีชุดตัวอักษรสีตายตัว บวกกับตัวสลับการจัดรูปแบบ ไม่มีทางแสดงสีใด ๆ ก็ได้ในระบบนี้ Hex มาทีหลัง และรูปแบบ BungeeCord เข้ารหัสมันทีละตัวอักษร — &x ตามด้วยเลขฐานสิบหกหกหลักที่นำหน้าด้วย & ซึ่งเป็นเหตุผลว่าทำไมมันถึงดูยาวขนาดนั้น

MiniMessage รับ #ff0000 ได้โดยตรง JSON รับ hex เดียวกันเป็นค่าสตริง

Java และ Bedrock ไม่เห็นตรงกัน

Bedrock ใช้เครื่องหมายเซกชันเช่นกัน แต่ชุดสีและการจัดการรีเซ็ตการจัดรูปแบบต่างจาก Java สตริงที่แสดงผลถูกต้องบนเซิร์ฟเวอร์ Java อาจแสดงตัวอักษรแปลกปลอมบนไคลเอนต์ Bedrock และพร็อกซี cross-play มักแปลระหว่างสองแบบนี้แทนที่จะส่งข้อความผ่านตรง ๆ ถ้าเซิร์ฟเวอร์ของคุณรับผู้เล่น Bedrock ให้ทดสอบผลลัพธ์บนทั้งสองฝั่ง

กับดักการซ้อน

รหัส Legacy มีสถานะ: รหัสสีจะรีเซ็ตการจัดรูปแบบ ดังนั้น §c§lBold คือสีแดงและตัวหนา แต่ §l§cBold เป็นแค่สีแดง — รหัสสีที่ตามหลังตัวหนาจะล้างมันทิ้ง ใส่สีก่อน แล้วค่อยจัดรูปแบบ MiniMessage เป็นโครงสร้างต้นไม้ — <red><bold>text</bold></red> ปิดได้สะอาด การแปลงสตริง MiniMessage ที่ซ้อนกันเป็นรหัส Legacy จะสูญเสียโครงสร้าง เพราะ Legacy ไม่มีแท็กปิด

การหลบอักขระ

MiniMessage มอง < เป็นไวยากรณ์ ผู้เล่นที่ชื่อ <Steve> จะทำให้ปลั๊กอินใดก็ตามที่แยกวิเคราะห์ชื่อของเขาเป็นคอมโพเนนต์พัง รูปแบบ Legacy มีปัญหาเดียวกันกับ & ซึ่งเป็นเหตุผลว่าทำไมปลั๊กอินหลายตัวจึงต้องใช้ && หรือแฟล็กในคอนฟิกเพื่อหลบอักขระ

เขียนข้อความครั้งเดียว เลือกภาษาเฉพาะถิ่นที่ปลั๊กอินของคุณแยกวิเคราะห์จริง ๆ แล้วคัดลอกสตริงที่ตรงเป๊ะจาก Server Text Studio

สตูดิโอข้อความเซิร์ฟเวอร์ →

คู่มือเพิ่มเติม

ดูทั้งหมด →