Tiempo de ejecución cliente-servidor

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Servidor

Las experiencias de Roblox son multijugador por defecto y se ejecutan en un aplicación de modeladode cliente-servidor. El servidor de Roblox es la autoridad definitiva para mantener el estado de la experiencia y es responsable de mantener todos los clientes conectados con el servidor.

A server grouping with connections to three client devices.
Servidor con conexiones a tres dispositivos clientes

Cliente

Cuando se ejecuta una experiencia, Roblox copia una versión del modelo de datos "editar" que has construido y publicado desde Studio y la ejecuta en los servidores de Roblox como aplicación de modeladode datos "de tiempo de ejecución".

Los clientes conectados también reciben una copia del modelo de datos de tiempo de ejecución y cualquier inicialización de los jugadores, como inicializar la mochila del jugador (inventario) o la interfaz de usuario local. Cuando un espacio de trabajo tiene Workspace.StreamingEnabled configurado como cierto, el servidor solo envía inicialmente un subconjunto de contenido bajo Workspace que está

A diagram that maps objects between 'edit' and 'runtime' data models.

Replicación

El servidor actualiza constantemente a los clientes conectados, manteniendo todo al día a través de un proceso llamado replicación , que sincroniza el aplicación de modeladode datos, la simulación de física y los mensajes de chat. La lógica de replicación existe tanto en el cliente como en el servidor para garantizar la sincronización.

Datos

Los cambios en el modelo de datos pueden ocurrir en una variedad de casos, como cuando se crea algo en el mundo 3D o una propiedad del mundo 3D cambia. Esto generalmente ocurre cuando un script en el servidor o el cliente hace un cambio que necesita ser reflejado en el otro lado de la frontera del cliente-servidor. Las siguientes figuras muestran escenarios comunes para la replicación de datos.

ClienteServidor >
>

A diagram of one client communicating with the server.

Comunicación desde cualquier cliente al servidor. Por ejemplo, un cliente presiona la tecla P para beber una poción de invisibilidad, y le dice al servidor que haga que el personaje de ese cliente invisible para todos los demás jugadores.

ServidorCliente >
>

A diagram of the server communicating with one client.

Comunicación desde el servidor a un cliente específico. Por ejemplo, un jugador se une a la experiencia y el servidor populariza ese inventario con un conjunto de artículos.

ServidorTodos los clientes >
>

A diagram of the server communicating with all connected clients.

Comunicación entre el servidor y todos los clientes conectados. Por ejemplo, mostrar un temporizador de cuenta regresiva a todos los participantes en una carrera.

Física

Roblox usa un motor de física del cuerpo rígido, que es responsable de calcular el movimiento y las interacciones de las partes en el mundo 3D. Por defecto, todas las partes en Roblox son cuerpos rígidos y participan en la física simulada, a menos que se indique de otra manera. También puedes agrupar múltiples partes juntas en montajes, que el motor de física trata como un solo cuerpo rígido.


A single block part in the shape of a cube that represents a single assembly.
1 montaje; 1 parte
A player character that represents a single assembly of 18 individual parts.
1 montaje; 18 partes
A pirate ship mesh that represents a single assembly of 179 individual parts.
1 montaje; 179 partes

Roblox replica los datos de simulación de física entre el servidor y los clientes cuando sea necesario. Para ayudar con el ejecuciónde la simulación, Roblox puede asignar la propiedad de las asociaciones a un cliente o servidor específico. Esto significa que el cliente o servidor puede ser responsable de simular la física de esa asociación. Los demás clientes reciben actualizaciones sobre la ubicación y el movimiento del servidor del propietario desde el propiet

Propiedad de la parte indicada por líneas de color

chat

Roblox replica los mensajes de chat entre el servidor y el cliente. El servidor es responsable de filtrar los mensajes de chat y decidir qué mensajes replicar a otros clientes. Por ejemplo, el servidor puede filtrar los mensajes que contienen profanidad o son demasiado largos.