Serwer
Doświadczenia Roblox są domyślnie wieloosobowe i uruchamiane w modelu klient-serwer.Serwer Roblox jest ostateczną władzą do utrzymywania stanu doświadczenia i jest odpowiedzialny za utrzymywanie wszystkich połączonych klientów w zgodności z serwerem.

Klienci
Kiedy doświadczenie jest uruchamiane, Roblox kopiuje wersję modelu danych „edytuj”, który stworzyłeś i opublikowałeś z Studio i uruchamia ją na serwerach Roblox jako model danych „czasu wykonania”.
Połączone klienty otrzymują również kopię modelu danych wykonawczych i każda inicjalizacja gracza (wyposażenie) lub lokalnego interfejsu użytkownika występuje, tak jak inicjalizacja plecaka gracza (inwentarz) lub lokalnego interfejsu użytkownika.Kiedy doświadczenie ma ustawione na prawdę Workspace.StreamingEnabled, serwer początkowo wysyła tylko podzbiór treści pod Workspace, który jest najbliższy klientowi.Klient następnie renderuje świat 3D i zaczyna uruchamiać odpowiednie skrypty.

Replikacja
Serwer stale aktualizuje połączone klienty, utrzymując wszystko w zgodności na całym serwerze i klientach za pomocą procesu o nazwie replikacja , który synchronizuje model danych, symulację fizyczną i wiadomości czatu.Logika replikacji istnieje zarówno na klientzie, jak i na serwerze, aby zapewnić synchronizację.
Dane
Zmiany modelu danych mogą wystąpić w różnych przypadkach, takich jak gdy coś w świecie 3D zostanie utworzone lub zmieni się właściwość świata 3D.Zazwyczaj zdarza się to, gdy skrypt na serwerze lub klientzie dokonuje zmiany, która musi być odzwierciedlona po drugiej stronie granicy klienta-serwera.Poniższe diagramy pokazują powszechne scenariusze replikacji danych.

Komunikacja z dowolnego klienta do serwera.Na przykład klient naciska klawisz P , aby wypić miksturę niewidzialności i powiedzieć serwerowi, aby postać tego gracza stała się niewidzialna dla wszystkich innych graczy.

Komunikacja z serwera do jednego konkretnego klienta.Na przykład gracz dołącza do doświadczenia, a serwer wypełnia ekwipunek tego gracza zestawem przedmiotów.

Komunikacja między serwerem a wszystkimi połączonymi klientami.Na przykład wyświetlanie timera odliczania dla wszystkich uczestników w wyścigu.
Fizyka
Roblox wykorzystuje silnik fizyki ciała sztywnego, który jest odpowiedzialny za obliczanie ruchu i interakcji części w świecie 3D.Domyślnie wszystkie części w Roblox są sztywnymi ciałami i biorą udział w symulowanej fizyce, chyba że inaczej zaznaczono.Możesz również połączyć wiele części w zespoły, które silnik fizyczny traktuje jako pojedyncze sztywne ciało.



Roblox replikuje dane symulacji fizyki między serwerem a klientami, gdy jest to konieczne.Aby pomóc w poprawie wydajności wykonywanie, Roblox może przypisać własność zespołów do określonego klienta lub serwera.Oznacza to, że klient lub serwer może być odpowiedzialny za symulację fizyki tej konstrukcji.Inne klienty otrzymują aktualizacje o pozycji i ruchu zbiórki od właścicielskiego klienta lub serwera.Własność zwykle zdarza się automatycznie, ale możesz przypisać ją bezpośrednio dla dostosowanej reakcji.
Czat
Roblox replikuje wiadomości czatu między serwerem a klientem.Serwer jest odpowiedzialny za filtrowanie wiadomości czatu i decydowanie, które wiadomości należy powielić do innych klientów.Na przykład serwer może wyfiltrować wiadomości zawierające wulgaryzmy lub są zbyt długie.