Gdy publikujesz zaktualizowaną wersję gry na Roblox, gracze nie są natychmiast usuwani z dawnych wersji gry. Zamiast tego możesz przenieść graczy do zaktualizowanej wersji, uruchamiając ponownie wszystkie swoje przestarzałe serwery.
Jeśli nie uruchomisz ponownie serwerów, gracze przechodzą do nowej wersji gry, gdy serwery działające na starych wersjach ostatecznie się opróżniają i wyłączają. Ta opcja jest bezinwazyjna, ale Twoja baza graczy może grać w różne wersje gry przez dłuższy czas; jeśli zmienia się format danych graczy, powinieneś prawdopodobnie uruchomić serwery ponownie.
W przypadku aktualizacji wrażliwych czasowo możesz woleć wprowadzić aktualizację wcześniej, ukryć zawartość za pomocą config, a następnie zmienić wartość konfiguracji, aby wydobyć nową zawartość.
Uruchamianie serwerów ponownie
Aby uruchomić serwery ponownie w celu wydania aktualizacji:
- Przejdź do Tworzenia i wybierz grę, dla której chcesz uruchomić serwery ponownie.
- Przejdź do Konfiguracja ⟩ Zarządzanie serwerami.
- Wybierz miejsca, które chcesz uruchomić ponownie.
- Kliknij Uruchom ponownie serwery.
- W oknie dialogowym Potwierdź ponowne uruchomienie serwera:
- Wybierz jedną lub obie z następujących opcji ponownego uruchomienia:
- Uruchom ponownie tylko serwery z przestarzałymi wersjami, aby uniknąć ponownego uruchamiania serwerów, które działają na najnowszej opublikowanej wersji miejsca.
- Opóźnienie ponownego uruchomienia serwera, aby opóźnić wyłączenie serwerów i umożliwić graczom określony czas od 1 do 60 minut na opuszczenie gry na własną rękę, zamiast być tymczasowo rozłączonym. Jest to również znane jako bleed-off serwera.
- Kliknij Uruchom ponownie.
Po ponownym uruchomieniu serwerów Roblox:
- Zatrzymuje całe matchmaking do serwerów przeznaczonych do wyłączenia. Gracze, którzy dołączają do Twojej gry, klikając przycisk Graj, nie będą dopasowywani do tych serwerów, ale wciąż mogą do nich dołączyć, akceptując zaproszenia, teleportując się lub dołączając do innego użytkownika z ich profilu.
- Czeka na skonfigurowany czas opóźnienia, jeśli wybrałeś opcję Opóźnienie ponownego uruchomienia serwera.
- Automatycznie teleportuje graczy do zaktualizowanej wersji gry. Wszyscy gracze na tym samym starym serwerze są wysyłani do tego samego zastępczego serwera działającego na nowej wersji.
Powiadomienia na serwerach
Gdy uruchomisz opóźnione ponowne uruchomienie serwera, zdarzenie DataModel.ServerRestartScheduled zostanie uruchomione na dotkniętych serwerach z następującymi argumentami:
- restartTime — DateTime. Najwcześniejszy czas, w którym serwer jest zaplanowany do wyłączenia.
- source — To zawsze będzie Enum.CloseReason.DeveloperUpdate dla Twoich opublikowanych aktualizacji.
- attributes — Opcjonalny obiekt JSON, którego możesz użyć do podania niestandardowych informacji o ponownym uruchomieniu, takich jak powód aktualizacji, pilność itp.
W swoich skryptach serwerowych możesz subskrybować to zdarzenie, aby przekazywać graczom informacje o nadchodzącym ponownym uruchomieniu. Możesz zdecydować się na udostępnienie zegara odliczającego w UI, zachęcenie graczy do zapisania postępów lub teleportowanie ich do zaktualizowanych serwerów w najdogodniejszym czasie.