เมื่อคุณเผยแพร่เวอร์ชันที่อัปเดตของเกมไปยัง Roblox ผู้เล่นจะไม่ได้ถูกลบออกจากเวอร์ชันเก่าของเกมทันที แทนที่คุณสามารถโยกย้ายผู้เล่นไปยังเวอร์ชันที่อัปเดตได้โดยการรีสตาร์ทเซิร์ฟเวอร์ที่ล้าสมัยทั้งหมดของคุณ
หากคุณไม่รีสตาร์ทเซิร์ฟเวอร์ ผู้เล่นจะเปลี่ยนไปใช้เวอร์ชันใหม่ของเกมเมื่อเซิร์ฟเวอร์ที่รันเวอร์ชันเก่าในที่สุดจะว่างและปิดตัวลง ตัวเลือกนี้ไม่รบกวน แต่ฐานผู้เล่นของคุณอาจกำลังเล่นเวอร์ชันต่าง ๆ ของเกมเป็นระยะเวลานาน; หากรูปแบบข้อมูลผู้เล่นพื้นฐานของคุณมีการเปลี่ยนแปลง คุณควรรีสตาร์ทเซิร์ฟเวอร์
สำหรับการอัปเดตที่มีความ sensitive เกี่ยวกับเวลา คุณอาจต้องการปล่อยการอัปเดตก่อนซ่อนเนื้อหาภายใต้ config และจากนั้นเปลี่ยนค่า config เพื่อปล่อยเนื้อหาใหม่ของคุณ
รีสตาร์ทเซิร์ฟเวอร์
เพื่อรีสตาร์ทเซิร์ฟเวอร์สำหรับการอัปเดต:
- ไปที่ Creations และเลือกเกมที่คุณต้องการรีสตาร์ทเซิร์ฟเวอร์
- ไปที่ Configure ⟩ Server Management
- เลือกสถานที่ที่คุณต้องการรีสตาร์ท
- คลิกที่ Restart Servers
- ในกล่องโต้ตอบ Confirm Server Restart:
- เลือกหนึ่งหรือทั้งสองตัวเลือกสำหรับการรีสตาร์ทดังต่อไปนี้:
- Restart only servers with outdated versions เพื่อหลีกเลี่ยงการรีสตาร์ทเซิร์ฟเวอร์ที่กำลังรันเวอร์ชันล่าสุดที่เผยแพร่
- Delay server restart เพื่อเลื่อนการปิดเซิร์ฟเวอร์และอนุญาตให้ผู้เล่นมีเวลาที่กำหนดระหว่าง 1 ถึง 60 นาทีในการออกจากเกมด้วยตนเองแทนที่จะถูกตัดการเชื่อมต่อชั่วคราว นี่เรียกว่าการรั่วไหลของเซิร์ฟเวอร์
- คลิกที่ Restart
หลังจากที่คุณรีสตาร์ทเซิร์ฟเวอร์ Roblox:
- หยุดการจับคู่ทั้งหมดไปยังเซิร์ฟเวอร์ที่กำหนดให้ปิด ตัวผู้เล่นที่เข้าร่วมเกมของคุณโดยการคลิกที่ปุ่ม Play จะไม่ได้รับการจับคู่กับเซิร์ฟเวอร์เหล่านี้ แต่พวกเขายังคงเข้าร่วมได้โดยการตอบรับคำเชิญ การโทรพวกเขา หรือเข้าร่วมผู้ใช้คนอื่นจากโปรไฟล์ของพวกเขา
- รอเวลาหน่วงที่กำหนด หากคุณเลือกตัวเลือก Delay server restart
- ย้ายผู้เล่นไปยังเวอร์ชันที่อัปเดตของเกมโดยอัตโนมัติ ผู้เล่นทั้งหมดที่อยู่ในเซิร์ฟเวอร์เก่าเดียวกันจะถูกส่งไปยังเซิร์ฟเวอร์ทดแทนเดียวกันที่รันเวอร์ชันใหม่
การแจ้งเตือนบนเซิร์ฟเวอร์
เมื่อคุณเริ่มการรีสตาร์ทเซิร์ฟเวอร์ที่หน่วง DataModel.ServerRestartScheduled จะถูกเรียกในเซิร์ฟเวอร์ที่ได้รับผลกระทบด้วยอาร์กิวเมนต์ต่อไปนี้:
- restartTime — ชนิดข้อมูล DateTime เวลาที่เร็วที่สุดที่เซิร์ฟเวอร์ถูกกำหนดให้ปิด
- source — จะเป็น Enum.CloseReason.DeveloperUpdate สำหรับการอัปเดตที่คุณเผยแพร่เสมอ
- attributes — วัตถุ JSON แบบเลือกได้ที่คุณสามารถใช้เพื่อให้ข้อมูลที่กำหนดเองเกี่ยวกับการรีสตาร์ท เช่น สาเหตุของการอัปเดต ความเร่งด่วน เป็นต้น
ในสคริปต์เซิร์ฟเวอร์ของคุณ คุณสามารถสมัครรับข้อมูลจากเหตุการณ์นี้เพื่อให้ข้อมูลผู้เล่นเกี่ยวกับการรีสตาร์ทที่กำลังจะมาถึง คุณอาจเลือกที่จะ提供ตัวนับเวลาถอยหลังใน UI ของคุณ กระตุ้นให้ผู้เล่นบันทึกความก้าวหน้าของพวกเขา หรือโทรไปยังเซิร์ฟเวอร์ที่อัปเดตในเวลาที่สะดวกที่สุด