Ketika Anda menerbitkan versi terbaru dari sebuah game ke Roblox, pemain tidak langsung dikeluarkan dari versi lama game tersebut. Sebagai gantinya, Anda dapat memigrasi pemain ke versi terbaru dengan me-restart semua server yang sudah usang.
Jika Anda tidak me-restart server, pemain akan beralih ke versi baru dari game saat server yang menjalankan versi lama akhirnya kosong dan dimatikan. Opsi ini tidak mengganggu, tetapi basis pemain Anda mungkin bermain di versi yang berbeda dari game untuk jangka waktu yang lama; jika format data pemain yang mendasarinya berubah, Anda sebaiknya me-restart server.
Untuk pembaruan yang sensitif terhadap waktu, Anda mungkin lebih suka untuk menerapkan lebih awal, menyembunyikan konten di balik config, dan kemudian mengubah nilai config untuk merilis konten baru Anda.
Me-restart server
Untuk me-restart server untuk pembaruan rilis:
- Pergi ke Kreasi dan pilih game yang ingin Anda restart servernya.
- Di navigasi sebelah kiri, navigasikan ke Konfigurasi > Manajemen server.
- Pilih tempat yang ingin Anda restart.
- Klik Restart Server.
- Di dialog Konfirmasi Restart Server:
- Pilih satu atau kedua opsi restart berikut:
- Restart hanya server dengan versi usang untuk menghindari me-restart server yang menjalankan versi tempat yang terbaru.
- Tunda restart server untuk menunda penutupan server dan memberi pemain waktu yang ditentukan antara 1 hingga 60 menit untuk meninggalkan game sendiri alih-alih terputus sementara. Ini juga dikenal sebagai bleed-off server.
- Klik Restart.
Setelah Anda me-restart server, Roblox:
- Menghentikan semua pencocokan ke server yang ditunjuk untuk dimatikan. Pemain yang bergabung dengan game Anda dengan mengklik tombol Mainkan tidak akan dicocokkan dengan server ini, tetapi mereka masih dapat bergabung dengan server tersebut dengan menerima undangan, teleportasi, atau bergabung dengan pengguna lain dari profil mereka.
- Menunggu waktu tunda yang dikonfigurasi, jika Anda memilih opsi Tunda restart server.
- Secara otomatis mentransfer pemain ke versi terbaru dari game. Semua pemain di server lama yang sama akan dikirim ke server pengganti yang menjalankan versi baru.
Pemberitahuan di server
Ketika Anda meluncurkan restart server yang tertunda, acara DataModel.ServerRestartScheduled akan dipicu di server yang terpengaruh dengan argumen berikut:
- restartTime — Sebuah DateTime. Waktu paling awal server dijadwalkan untuk dimatikan.
- source — Ini akan selalu Enum.CloseReason.DeveloperUpdate untuk pembaruan yang Anda terbitkan.
- attributes — Sebuah objek JSON opsional yang dapat Anda gunakan untuk memberikan informasi kustom tentang restart, seperti alasan pembaruan, urgensi, dll.
Dalam skrip server Anda, Anda dapat berlangganan acara ini untuk memberikan informasi kepada pemain tentang restart yang akan datang. Anda mungkin memilih untuk memberikan timer hitung mundur di UI Anda, meminta pemain untuk menyimpan kemajuan mereka, atau mentransfer mereka ke server yang diperbarui pada waktu yang paling nyaman.
Server juga akan diberitahu ketika Roblox perlu me-restart server untuk alasan pemeliharaan infrastruktur. Acara yang sama DataModel.ServerRestartScheduled dipicu, dengan source sebagai Enum.CloseReason.RobloxMaintenance dan attributes sebagai kamus kosong.