Serveur
Les jeux Roblox sont multijoueurs par défaut et fonctionnent selon un modèle client-serveur. Le serveur Roblox est la dernière autorité pour maintenir l'état du jeu et est responsable de garder tous les clients connectés synchronisés avec le serveur.

Client
Lorsqu'un jeu est en cours d'exécution, Roblox copie une version du modèle de données "édition" que vous avez construit et publié depuis Studio et l'exécute sur les serveurs Roblox en tant que modèle de données "runtime".
Les clients connectés reçoivent également une copie du modèle de données runtime et toute initialisation du joueur a lieu, par exemple l'initialisation du sac à dos d'un joueur (inventaire) ou de l'interface utilisateur locale. Lorsque un jeu a Workspace.StreamingEnabled défini sur vrai, le serveur envoie initialement seulement un sous-ensemble de contenu sous Workspace qui est le plus proche du client. Le client rend ensuite le monde 3D et commence à exécuter tous les scripts applicables.

Réplication
Le serveur met constamment à jour les clients connectés, gardant tout synchronisé entre le serveur et les clients grâce à un processus appelé réplication, qui synchronise le modèle de données, la simulation physique et les messages de chat. La logique de réplication existe à la fois sur le client et le serveur pour garantir la synchronisation.
Les modifications du modèle de données peuvent se produire dans une variété de cas, par exemple lorsqu'un élément dans le monde 3D est créé ou qu'une propriété du monde 3D change. Cela se produit généralement lorsqu'un script sur le serveur ou le client effectue un changement qui doit être reflété de l'autre côté de la frontière client-serveur. Les diagrammes suivants montrent des scénarios courants de réplication de données.


