Z powodu podstawowego modelu klient-serwer silnika Roblox, ważne jest, aby przetestować swoją grę w różnych trybach przed opublikowaniem jej dla publiczności. Wszystkie opcje testowania są dostępne w lewej części mezzaninu.

Testowanie gry
Istnieją trzy powszechne opcje testowania gry. Wybierz pożądaną opcję z menu rozwijanego i kliknij przycisk Graj po prawej stronie, aby rozpocząć testowanie.

| Tryb | Skrót | Opis |
|---|---|---|
| Test | F5 | Rozpoczyna symulację gry, wstawiając twój awatar w SpawnLocation lub w koordynatach około (0, 100, 0). |
| Test Tutaj | Rozpoczyna symulację gry, wstawiając twój awatar przed aktualną pozycją kamery. | |
| Uruchom | F8 | Rozpoczyna symulację gry, ale nie wstawia twojego awatara. Symulacja zaczyna się w aktualnej pozycji kamery, a ty możesz poruszać się za pomocą kontrolek kamery w Studio. |
Gdy test gry jest uruchomiony, dodatkowe opcje stają się dostępne w mezzaninie.

| Akcja | Skrót | Opis |
|---|---|---|
| Pauza / Wznów | Pozwala na wstrzymanie/wznowienie fizyki i animacji. | |
| Zatrzymaj | ShiftF5 | Zatrzymuje symulację gry i resetuje wszystkie obiekty i instancje do stanu sprzed testu. |
| Klient / Serwer | Podczas testowania w trybie "solo" (Test lub Test Tutaj), przełącza między trybem Klient a trybem Serwer. Zobacz przełączanie klient/serwer po szczegóły. |
Przełączanie klient/serwer
Podczas testowania w trybie Test lub Test Tutaj, Studio uruchamia dwie oddzielne symulacje — jedną symulację klienta i jedną symulację serwera — co może zapewnić dokładniejsze wrażenie, jak gra będzie działać w produkcji.
Podczas testowania w trybie solo, możesz przełączać się między trybami Klient i Serwer klikając przycisk przełączania Klient/Serwer. Gdy przełączasz, przycisk zmienia się, aby odzwierciedlić aktualny tryb symulacji.


W zależności od trybu symulacji, kontrola twojej postaci i kamery zmienia się w następujący sposób:

W hierarchii okna Eksploratora, niektóre obiekty istnieją tylko w swoich oczekiwanych kontenerach.


W oknie Wyjścia, wiadomości są oznaczone jako niebieskie (klient) lub zielone (serwer), co wskazuje na ich pochodzenie z klienta lub serwera. Dla wiadomości wyjściowych z ModuleScripts, kolor etykiety jest określany przez to, czy moduł został wywołany z LocalScript po stronie klienta, czy z Script po stronie serwera.

Pauza/wznów
Podczas testowania w trybie solo, przycisk Pauza/Wznów jest przydatny do debugowania efemerycznych scen i mechanizmów, bez wyłączania renderowania.

Domyślnie, wstrzymanie i wznowienie działa na obu, kliencie i serwerze. Jeśli chcesz wstrzymać lub wznowić tylko klienta lub serwer:
- Ustaw przełącznik klient/serwer w zależności od tego, którą symulację chcesz wstrzymać/wznowić.
- Kliknij małą strzałkę na przycisku Pauza/Wznów i wybierz alternatywną opcję Pauza/Wznów Klient lub Pauza/Wznów Serwer. Kliknięcie przycisku wstrzyma lub wznowi tylko tę stronę symulacji.
Gdy symulacja jest wstrzymana, możesz krokować do przodu o 1/60 sekundy (60 Hz) klikając przycisk Krok do przodu. Podobnie jak przycisk Pauza/Wznów po lewej, kliknięcie małej strzałki pozwala wybrać krokowanie tylko dla klienta lub serwera w zależności od przełącznika klient/serwer.

Zauważ następujące szczegóły techniczne związane z pauzą/wznawianiem:
- Chociaż Animations nie są oparte na fizyce, te przyciski na pasku narzędzi również wstrzymują/wznawiają animacje.
- Wstrzymanie lub wznowienie nie ma wpływu na działające skrypty.
- Tylko wywołania zwrotne RunService PreAnimation, PreSimulation, PostSimulation i Stepped wstrzymują lub wznawiają przez te przyciski na pasku narzędzi. Inne wywołania zwrotne (PreRender, Heartbeat i RenderStepped) nadal są wywoływane, utrzymując normalną funkcjonalność skryptów kamery, renderowanych wizualizacji i wtyczek.
Symulacja wielu klientów
Opcja Serwer i Klienci w menu rozwijanym pozwala na uruchomienie wielu sesji Studio, z jedną działającą jako serwer i każdą inną jako klient. Ten tryb testowania jest cennym narzędziem do porównania, jak klient "widzi" innych klientów w grze.
Z wybraną opcją Serwer i Klienci w menu rozwijanym, wybierz liczbę sesji klientów do przetestowania. Zazwyczaj 1–2 klientów jest wystarczające, chociaż możesz symulować do ośmiu.

Naciśnij przycisk Graj lub F7, aby rozpocząć symulację klient-serwer.
Gdy skończysz testowanie, naciśnij przycisk Zakończ sesję z dowolnej z sesji symulacyjnych, aby zamknąć wszystkich symulowanych klientów i symulowany serwer.

Symulacja party
Symulator party pozwala na testowanie i debugowanie gier, które używają powiązanych z party API bezpośrednio w Studio, bez potrzeby publikowania i koordynowania wielu urządzeń. To narzędzie pozwala na konfigurowanie i emulowanie party dla graczy testowych w twoich testach Serwer i Klienci.
Podczas testowania gry, Symulator party automatycznie przypisuje wszystkich graczy testowych do skonfigurowanych symulowanych party.

Jeśli Symulator party jest włączony:
- Każda właściwość Player.PartyId odzwierciedla przypisania Symulatora party.
- SocialService:GetPartyAsync() zwraca symulowaną tabelę danych party.
- SocialService:GetPlayersByPartyId() zwraca listę instancji Player przypisanych do podanego Player.PartyId.
Możesz dostosować liczbę lokalnych graczy testowych w dowolnym momencie, używając ustawienia Studio Serwer i Klienci. Gdy liczba graczy testowych się zmienia, emulator automatycznie aktualizuje się, aby dodać lub usunąć graczy w konfiguracji.
Testowanie współpracy
Jeśli pracujesz nad grą z innymi w trybie współpracy, możesz testować z innymi współpracownikami w następujący sposób:
Wybierz Test zespołowy w menu rozwijanym i naciśnij przycisk Graj, aby otworzyć nową sesję Studio z twoją postacią wstawioną.

Inni współpracownicy mogą dołączyć, naciskając przycisk Graj z mezzaniny w swojej sesji Studio.
Emulacja urządzeń
Emulator Urządzeń, dostępny z menu Test w Studio, umożliwia emulację różnych urządzeń bezpośrednio w Studio, dając wgląd w to, jak działają kontrolki na urządzeniach mobilnych, konsolach oraz zestawach VR, a także jak elementy interfejsu użytkownika na ekranie wyświetlają się na różnych rozdzielczościach ekranu i proporcjach.
W trybie emulacji możesz wybierać urządzenia z rozwijanego menu wybór urządzenia powyżej widoku 3D, aby emulować mniej wydajne urządzenia i testować gry z włączonym streamowaniem, w których zawartość 3D dynamicznie ładowana i usuwana jest w zależności od dostępnej pamięci. Możesz także dostosować rozmiar widoku i zmienić orientację między trybami krajobrazu i portretu.

Symulacja dotyku
Symulacja dotyku jest automatycznie włączona, gdy wybrane jest urządzenie mobilne w Emulatorze urządzeń. Gesty jedno- i dwupunktowe mogą być symulowane poprzez kliknięcie i przeciąganie myszką podczas testowania. Domyślnie interakcje myszką będą symulować gesty jedno-dotykowe.
Studio obsługuje następujące skróty do symulacji gestów dwupunktowych. Skróty można również dostosować za pomocą menu Dostosowywanie skrótów w Studio.
| Windows | Mac | Akcja |
|---|---|---|
| Alt | ⌥ | Trzymając w dół podczas przeciągania myszki, symuluje ściskanie i obracanie. |
| AltShift | ⌥Shift | Trzymając w dół podczas przeciągania myszki, symuluje przesuwanie dwudotykowe. |
Gdy aktywowany jest skrót dwudotykowy, pojawią się dwa okręgi, wskazujące, gdzie umiejscowione są symulowane dotknięcia.

Symulacja kontrolera
Emulator kontrolera, dostępny z menu Test w Studio, pozwala dokładnie emulować wejście z gamepada bezpośrednio w Studio. Domyślny kontroler to ogólny gamepad, ale możesz wybierać alternatywy z menu wyboru w lewym górnym rogu.

Podczas testowania gry możesz kontrolować grę za pomocą wirtualnego kontrolera przy użyciu myszy.
Możesz także kliknąć Edytuj mapowania w prawym górnym rogu, aby zobaczyć i edytować mapowania klawiszy dla wirtualnego kontrolera, na przykład E do ButtonL2 lub 9 do ButtonA. Te mapowania są zapisywane jak inne ustawienia w Studio (per kontroler, per użytkownik, per komputer) i są tłumaczone na zdarzenia gamepada zarówno w oknie emulatora, jak i w widoku 3D.
Symulacja sieci
Symulacja sieci, dostępna z zakładki Sieć w Ustawieniach Studio (AltS na Windows; ⌥S na Mac), pozwala na symulowanie rzeczywistych warunków sieciowych, takich jak opóźnienie, utrata pakietów i jitter, aby testować połączenia. Jest to szczególnie przydatne do testowania gier, które używają Autorytetu Serwera, ponieważ mechanizmy przewidywania, wycofywania i ponownej symulacji są wrażliwe na warunki sieciowe. Jest to również przydatne do testowania UnreliableRemoteEvents, które mogą zostać utracone lub przybyć w niewłaściwej kolejności.
Ustawienia symulacji sieci są stosowane do wszystkich połączeń testowych, w tym Test, Serwer & Klienci i Test Zespołowy. Zauważ, że dla Testu Zespołowego, liczby opóźnienia i utraty są dodatkowe do wszelkich opóźnień i utraty pakietów z twojego komputera do serwerów Roblox. Na przykład, jeśli twoje opóźnienie sieciowe w teście zespołowym wynosi normalnie 20 milisekund, a w ustawieniach Studio skonfigurujesz 50 milisekund opóźnienia, zobaczysz opóźnienie wynoszące 70 milisekund.
| Ustawienie Studio | Właściwość | Opis |
|---|---|---|
| Minimalne opóźnienie przychodzące | InboundNetworkMinDelayMs | Dodaje opóźnienie do połączeń testowych w kierunku serwer‑do‑klienta. |
| Minimalne opóźnienie wychodzące | OutboundNetworkMinDelayMs | Dodaje opóźnienie do połączeń testowych w kierunku klient‑do‑serwera. |
| Jitter przychodzący | InboundNetworkJitterMs | Dodaje jitter do połączeń testowych w kierunku serwer‑do‑klienta. |
| Jitter wychodzący | OutboundNetworkJitterMs | Dodaje jitter do połączeń testowych w kierunku klient‑do‑serwera. |
| Utrata pakietów przychodzących | InboundNetworkLossPercent | Ustala prawdopodobieństwo, że pakiety na połączeniach testowych z serwera do klienta są tracone. |
| Utrata pakietów wychodzących | OutboundNetworkLossPercent | Ustala prawdopodobieństwo, że pakiety na połączeniach testowych z klienta do serwera są tracone. |
W każdej z powyższych ustawień stosują się następujące koncepcje:
- Przychodzące odnosi się do ruchu z serwera do klienta. Wychodzące to ruch z klienta do serwera.
- Opóźnienie — Ping sieciowy jest mierzony jako czas w obie strony. Aby zasymulować ping sieciowy wynoszący 20 milisekund, ustaw zarówno Minimalne opóźnienie przychodzące, jak i Minimalne opóźnienie wychodzące na 10 milisekund.
- Jitter — Jitter jest dodawany na szczyt dowolnego skonfigurowanego minimalnego opóźnienia. Jitter może spowodować, że niektóre pakiety, takie jak UnreliableRemoteEvents, przybędą w niewłaściwej kolejności.
- Precyzja — Opóźnienie na pakiet jest próbkowane z opóźnienia i jittera, zaokrąglane do 1 milisekundy.
- Utrata pakietów — Każdy pakiet może być losowo tracony na podstawie skonfigurowanego prawdopodobieństwa.
Testowanie skryptowe
Oprócz interaktywnych narzędzi testowych powyżej, Studio udostępnia usługi, które pozwalają na programowe prowadzenie testów z poziomu wtyczki lub pipeline'u budowy. Wszystkie trzy usługi są dostępne tylko w Studio i nic nie robią, gdy są uruchamiane w opublikowanym doświadczeniu.
| Usługa | Cel |
|---|---|
| StudioDeviceSimulatorService | Skryptowalna emulacja urządzeń. Przeglądaj predefiniowane urządzenia, przełączaj aktywne urządzenie, nadpisuj rozdzielczość i DPI, kontroluj orientację i skalowanie oraz twórz niestandardowe profile urządzeń, które są zapisywane na dysku. |
| StudioTestService | Programowa symulacja wielu klientów. Uruchom serwer z maksymalnie 8 symulowanymi klientami, dodawaj graczy w trakcie sesji, przekazuj argumenty do testu, wywołuj rozłączenia klientów i kończ testy z poziomu serwera. |
| VirtualInput | Symulowane zdarzenia myszy, klawiatury i wskaźnika, które są przetwarzane dokładnie jak rzeczywiste wejście sprzętowe. Uzyskaj instancję z UserInputService:CreateVirtualInput(). |
Te usługi umożliwiają testowanie wieloosobowe między różnymi urządzeniami (przechodzenie przez profile urządzeń i uruchamianie testu wieloosobowego na każdym z nich), testowanie obciążenia przy dołączaniu/opuszczaniu graczy, testowanie regresji orientacji oraz automatyzację przepływu UI od końca do końca.
Zestawy VR
Jeśli chcesz wspierać zestawy VR w swojej grze, upewnij się, że przetestujesz lub emulujesz VR w Studio.
Emulacja VR
Emulacja VR pozwala na testowanie gier VR w Studio bez fizycznego zestawu słuchawkowego. Tak jak w przypadku emulacji każdego innego urządzenia, użyj menu wyboru urządzenia, aby wybrać Meta Quest 2 lub Meta Quest 3. Emulator kontrolera automatycznie wybiera odpowiedni kontroler dla zestawu słuchawkowego.


Połączenie zestawu słuchawkowego i wielu kontrolerów, z każdym z śledzeniem ruchu, sprawia, że emulacja VR jest bardziej skomplikowana:
Aby emulować śledzenie ruchu, naciśnij Alt1 (⌥1), aby zablokować mysz w widoku i odblokować mysz z widoku.
Użyj Shift← lub Shift→, aby przełączać się między typowymi kombinacjami zestawu słuchawkowego, lewego kontrolera i prawego kontrolera. Na przykład, możesz użyć opcji Zestaw słuchawkowy, aby rozglądać się, gdy idziesz do przodu przyciskiem lewego kontrolera, ale następnie przełączyć się na Prawy kontroler, gdy musisz użyć kontroli ruchu, aby celować w cel.
Konfiguracja zestawu słuchawkowego
Studio wspiera testowanie dla wszystkich zestawów VR, które są zgodne z OpenXR, otwartym standardem branżowym zapewniającym dostęp do VR.
Aby włączyć testowanie w Studio w VR, musisz podłączyć swój zestaw słuchawkowy do komputera i skonfigurować runtime OpenXR przed uruchomieniem Studio. Jeśli już uruchomiłeś Studio, zamknij je i najpierw wykonaj kroki konfiguracyjne.
Jeśli masz tylko jeden zestaw słuchawkowy VR, zainstalowanie odpowiedniej aplikacji VR automatycznie konfiguruje runtime za Ciebie. Jeśli masz wiele zestawów słuchawkowych, musisz ręcznie skonfigurować runtime i upewnić się, że tylko ten, który chcesz używać do testowania, jest skonfigurowany.
Poniższe kroki dotyczą dwóch najpopularniejszych aplikacji VR:
- SteamVR dla zestawów słuchawkowych takich jak HTC Vive i Valve Index.
- Oculus dla zestawów słuchawkowych takich jak Meta Quest i Oculus Rift.
- Zainstaluj i otwórz aplikację SteamVR na swoim komputerze.
- W ustawieniach SteamVR, wybierz zakładkę Deweloper. Następnie wybierz Pokaż zaawansowane ustawienia.
- Ustaw SteamVR jako runtime OpenXR.
- Włącz kontrolery, naciskając przycisk System, aż usłyszysz dźwięk sygnalizujący.
- Aby wyłączyć kontroler, naciśnij i przytrzymaj przycisk System, aż usłyszysz ten sam dźwięk sygnalizujący.
Jeśli wykonasz kroki poprawnie, ikony statusu w aplikacji SteamVR i lampki statusu na sprzęcie powinny być wszystkie zielone, co wskazuje, że konfiguracja została zakończona.
Aplikacja Roblox Quest
Możesz testować swoją grę w aplikacji Roblox na Quest bez łączenia zestawu słuchawkowego z komputerem. Użyj następujących kroków, aby uzyskać dostęp do swojej gry na zestawie słuchawkowym w tym trybie:
- W Studio, opublikuj grę i ustaw ją jako prywatną.
- Używając swojego Panelu twórcy lub linku w Studio, otwórz stronę gry w przeglądarce internetowej.
- Na stronie gry, dodaj grę do ulubionych, klikając ikonę Ulubione.
- Używając zestawu słuchawkowego, otwórz samodzielną aplikację Roblox.
- Przewiń w dół do sekcji Ulubione na stronie głównej i uruchom swoją grę.
Tryb VR w Studio
Po skonfigurowaniu swojego zestawu słuchawkowego, możesz włączyć tryb testowania VR w Studio, wykonując następujące kroki:
- W menu Plik, wybierz Ustawienia Studio.
- Wybierz Renderowanie.
- W ustawieniach Ogólne, włącz Włącz tryb VR.
Teraz możesz testować swoją grę używając zestawu słuchawkowego VR, korzystając z dowolnej z dostępnych opcji testowania. Podczas sesji testowej VR, jeśli kabel zestawu słuchawkowego się odłączy lub zamkniesz aplikację Roblox Studio Beta na zestawie słuchawkowym, będziesz musiał ponownie uruchomić Studio, aby wznowić testowanie.
Emulacja gracza
Aby szczegółowo emulować lokalizację gry i polityki treści, możesz testować za pomocą Emulatora gracza, dostępnego z menu Test w Studio.
Gdy okno emulatora jest otwarte, włącz Włącz profil testowy. Emulacja pozostanie włączona (włączona lub wyłączona), nawet jeśli zamkniesz okno.
Niżej w oknie, powszechnie używane opcje obejmują:
| Opcja | Opis |
|---|---|
| Lokalizacja | Pozwala na emulację zlokalizowanego języka podczas testowania. |
| Pseudolokalizacja | Wymienia znaki na podobne, ale nieco inne znaki, aby łatwo zidentyfikować, które ciągi przechodzą przez system tłumaczenia. Włączenie tego pomaga zidentyfikować niezlokalizowany tekst bez konieczności zmiany języka emulacji. Na przykład:
|
| Wydłuż | Wydłuża ciągi tekstowe o współczynnik określony za pomocą suwaka. Na przykład:
|
| Region | Pozwala na emulację kraju/regionu gracza podczas testowania; ten wybór może wpływać na inne przełączniki i pola wyboru w oknie, jak opisano w GetPolicyInfoForPlayerAsync(). |