Server
I giochi Roblox sono multiplayer per default e funzionano secondo un modello client-server. Il server di Roblox è l'autorità finale per mantenere lo stato del gioco ed è responsabile di mantenere tutti i client connessi sincronizzati con il server.

Client
Quando un gioco viene eseguito, Roblox copia una versione del modello di dati "edit" che hai costruito e pubblicato da Studio e lo esegue sui server di Roblox come modello di dati "runtime".
I client connessi ricevono anche una copia del modello di dati runtime e ogni inizializzazione del giocatore si verifica, come l'inizializzazione dello zaino (inventario) di un giocatore o dell'interfaccia utente locale. Quando un gioco ha Workspace.StreamingEnabled impostato su true, il server inizialmente invia solo un sottoinsieme di contenuti sotto Workspace che sono più vicini al client. Il client quindi rende il mondo 3D e inizia a eseguire eventuali script applicabili.

Replicazione
Il server aggiorna costantemente i client connessi, mantenendo tutto sincronizzato tra il server e i client attraverso un processo chiamato replicazione, che sincronizza il modello di dati, la simulazione fisica e i messaggi di chat. La logica di replicazione esiste sia sul client che sul server per garantire la sincronizzazione.
Le modifiche al modello di dati possono verificarsi in una varietà di casi, come quando qualcosa nel mondo 3D viene creato o una proprietà del mondo 3D cambia. Questo si verifica tipicamente quando uno script sul server o sul client apporta una modifica che deve essere riflessa dall'altra parte del confine client-server. I seguenti diagrammi mostrano scenari comuni per la replicazione dei dati.


