สกินไม่ขึ้นบนเซิร์ฟมายคราฟ เป็น Steve หมด แก้ยังไง
แก้ไขล่าสุด 13 ส.ค. 2569
อาการคือเข้าเซิร์ฟแล้วทุกคนเป็น Steve หมด รวมทั้งตัวเอง ทั้งที่ตั้งสกินไว้แล้ว เกิดกับเซิร์ฟที่ตั้ง online-mode=false ซึ่งเป็นค่าที่ต้องปิดถ้าอยากให้คนที่ใช้ตัวเปิดเกมทางเลือกเข้าได้
สกินมาจากไหน - เข้าใจตรงนี้แล้วจะเข้าใจทุกอย่าง
สกินไม่ได้เก็บไว้ในเครื่องผู้เล่น แต่ เซิร์ฟเป็นคนส่งให้ ตอนใครสักคนเข้าเกม เซิร์ฟจะส่งข้อมูลประจำตัวของเขาไปให้ทุกคนที่อยู่ในเซิร์ฟ ข้างในมีช่องที่ระบุว่าสกินอยู่ที่ไหน
| ค่า online-mode | เกิดอะไรขึ้น | ผลลัพธ์ |
|---|---|---|
| true | เซิร์ฟถาม Mojang ว่าคนนี้ใช้สกินอะไร แล้วส่งต่อให้ทุกคน | เห็นสกินปกติ |
| false | เซิร์ฟไม่ได้ถามใคร ช่องสกินเลยว่างเปล่า | ทุกคนเป็น Steve |
เพราะงั้นปัญหานี้ไม่ใช่บั๊ก แต่เป็นผลตรงไปตรงมาจากการปิดการยืนยันบัญชี และมันไม่เกี่ยวกับว่าเซิร์ฟแรงแค่ไหนหรือตั้งค่าอะไรผิด
ทางแก้ที่ใช้ได้จริง
1. ให้ผู้เล่นลงม็อดในเครื่องตัวเอง (แนะนำ)
ม็อดอย่าง CustomSkinLoader ทำงานโดย สั่งให้เครื่องผู้เล่นเมินสิ่งที่เซิร์ฟส่งมา แล้วไปโหลดสกินเองจากบริการภายนอกโดยอ้างอิงจากชื่อผู้เล่น
จุดที่หลายคนเข้าใจผิด: เพื่อนไม่ต้องลงม็อดด้วย คุณก็เห็นสกินเขาแล้ว เพราะเครื่องคุณเป็นคนไปหาสกินเอง ใครลงก่อนก็ได้ประโยชน์ก่อน ไม่ต้องนัดกันลงพร้อมกัน
บริการที่ม็อดนี้รองรับมาให้เลยโดยไม่ต้องตั้งค่าอะไร
- Mojang (สำหรับคนที่มีเกมแท้)
- TLauncher - ตรงกับที่คนไทยส่วนใหญ่ใช้
- Ely.by, LittleSkin, BlessingSkin, SkinMe
- LocalSkin (ไฟล์ในเครื่อง)
2. เปิด online-mode กลับ
แก้ได้จริงและไม่ต้องลงอะไร แต่ คนที่ไม่ได้ซื้อเกมแท้จะเข้าไม่ได้เลย ถ้าเพื่อนในกลุ่มใช้ตัวเปิดเกมทางเลือกกันหมด ทางนี้ใช้ไม่ได้
แล้วม็อดที่ลงแค่ฝั่งเซิร์ฟล่ะ
มีจริง และเป็นวิธีที่ถูกต้องกว่าด้วย - หลักการคือให้เซิร์ฟ เติมช่องสกินที่ว่างอยู่ให้เอง แล้วเครื่องผู้เล่นที่ไม่ได้ลงอะไรเลยก็เห็นสกินทันที เพราะมันแค่รับสิ่งที่เซิร์ฟส่งมาตามปกติ
| ตัวเลือก | ลงแค่เซิร์ฟได้ | เวอร์ชันที่รองรับ |
|---|---|---|
| Skin Restorer (ม็อด) | ได้ ดึงสกินจาก Mojang/Ely.by อัตโนมัติ | 1.20.6 ขึ้นไป |
| SkinsRestorer (ปลั๊กอิน) | ได้ | เฉพาะเซิร์ฟสาย Bukkit/Paper/Spigot |
| ssskins | ไม่ได้จริง ทั้งที่หน้าเว็บเขียนว่าได้ | 1.10.2 |
ระวัง ssskins - หน้าดาวน์โหลดเขียนว่า "ไม่ต้องแก้อะไรที่ฝั่ง client" แต่พอเปิดซอร์สโค้ดดูจริง โค้ดฝั่งเซิร์ฟมีแค่การส่งที่อยู่ของสกินไปบอกเครื่องผู้เล่น ส่วนตัวที่โหลดสกินจริงอยู่ในโฟลเดอร์ client ถ้าเครื่องผู้เล่นไม่มีม็อดนี้ ข้อความที่เซิร์ฟส่งไปก็ไม่มีใครฟัง
สรุปคือ ถ้าเซิร์ฟคุณเป็น Forge 1.12.2 (เช่น RLCraft) ยังไม่มีทางลงแค่ฝั่งเซิร์ฟ ตัวที่ทำถูกวิธีรองรับแค่เวอร์ชันใหม่ ต้องให้ผู้เล่นลงเองเท่านั้น
วิธีตั้งสกินให้คนอื่นเห็น
จุดสำคัญคือ ชื่อบัญชีบนบริการสกินต้องตรงกับชื่อที่ใช้เข้าเกมเป๊ะ ๆ ไม่งั้นม็อดหาไม่เจอ
- อัปโหลดสกินขึ้นบริการสักเจ้า - ถ้าใช้ TLauncher อยู่แล้วตั้งในโปรแกรมได้เลย ง่ายที่สุด
- ให้แน่ใจว่าชื่อตรงกับชื่อในเกม
- เข้าเกมใหม่ ทุกคนที่ลงม็อดจะเห็นสกินใหม่ทันที
ถ้าเอาไฟล์ไปวางใน LocalSkin จะ มีแค่คุณคนเดียวที่เห็น เหมาะกับใช้ทดสอบว่าม็อดทำงานไหมเท่านั้น
หลักจำง่าย: ม็อดตัวไหนลงที่ไหน
| ม็อดประเภท | ลงที่ไหน |
|---|---|
| เปลี่ยนสิ่งที่ตาเห็น (สกิน, กล่องข้อความ, แผนที่เล็ก, เอฟเฟกต์) | เครื่องผู้เล่น |
| เพิ่มบล็อก ไอเทม หรือมอนใหม่ | ทั้งสองฝั่ง ต้องตรงเวอร์ชันกัน |
| เปลี่ยนกฎของโลก (อัตราเกิด, ดรอป, เศรษฐกิจ) | เซิร์ฟ |
วิธีเช็คเร็วสุดคือดูช่อง Environment บนหน้าดาวน์โหลดว่าเขียนว่า Client, Server หรือ Both แต่อย่าเชื่อคำโฆษณาอย่างเดียวอย่างที่เห็นในกรณี ssskins
ไม่อยากตั้งค่าเอง? เปิดเซิร์ฟ Minecraft (Java) ผ่านหน้าเว็บได้เลย