Mundo de juego abierto
El título admite un mundo de juego abierto que permite las interacciones entre jugadores. Los jugadores pueden agruparse de forma flexible en el mundo de juego abierto para experiencias de jugador contra entorno (PvE). Las experiencias de jugador contra jugador (PvP) son 1:1 y solo se permiten en áreas seleccionadas.Emparejamiento personalizado para secciones de juego con instancias
El título implementa un servicio de emparejamiento personalizado para los jugadores que entran en secciones de juego PvP o PvE con instancias. Este servicio empareja jugadores y equipos de jugadores.Servidores dedicados
Todo el juego del título se ejecuta en servidores dedicados. Todo el tráfico se enruta a través de estos servidores.Chat
El título admite chat de voz y de texto entre jugadores. Todo el tráfico se enruta a través de servidores.Consumibles
El título proporciona una tienda dentro del juego con moneda del juego que se puede comprar (premium). Los jugadores pueden usar esta moneda para comprar artículos cosméticos.Contenido descargable (DLC)
El contenido descargable (DLC) que se puede comprar incluye nuevas regiones del juego que desbloquean nuevas clases de personaje de jugador.Servicios del título
En este ejemplo, el primer servicio del título con el que interactúa un jugador después de iniciar el juego es un servicio de inicio de sesión del título. Para jugar, un jugador tiene que crear una cuenta del título y, a continuación, vincularla a la cuenta de XBOX Live. Puede crear una cuenta desde dentro del título o desde la página web del título. Para la vinculación de cuentas, el XUID del jugador se vincula a una cuenta específica del título. Para realizar la vinculación de cuentas, un jugador inicia sesión una vez en el título con un nombre de usuario y una contraseña de la cuenta del título. El acceso al XUID debe aprobarse antes de su uso y debe tratarse con un administrador de cuentas de desarrollador (DAM). En la página web del título, un jugador que haya iniciado sesión con la cuenta del título también debe iniciar sesión en la cuenta Microsoft para la vinculación de cuentas. La cuenta del título tiene un identificador único (GUID) que permite a todos los servicios del título administrar a los jugadores, independientemente de la red de origen. La cuenta del título también almacena toda la información de estado del jugador, como los personajes del jugador, la progresión, el inventario y todos los metadatos del jugador.Flujo del título
Para un juego MMO, un flujo conforme para la funcionalidad entre redes depende de si el jugador está en el mundo de juego abierto o en un juego con instancias. Los pasos siguientes se aplican en todos los casos.- Validar privilegios Después del inicio de sesión del jugador, un título valida los privilegios de multijugador (254 y 189) y el privilegio entre redes (185) del jugador activo. Si se deniega algún privilegio, el jugador no puede entrar en el título y se muestra un cuadro de diálogo de error. En este punto, un título debe comprobar el privilegio de comunicaciones (252) para el chat de voz y de texto a fin de restringir la funcionalidad adecuadamente.
- Notificación entre redes En el primer inicio, el juego notifica al jugador que la funcionalidad entre redes está presente en el juego. Los pasos siguientes se aplican al mundo de juego abierto.
- Entrar en el mundo de juego abierto. El jugador siempre entra en el mundo de juego abierto al iniciar sesión en el juego y, a continuación, se conecta a un servidor del título.
- Unirse a la sesión del Multiplayer Session Directory (MPSD) del mundo de juego abierto. El servidor del título para el juego del mundo abierto crea sesiones de MPSD que reflejan las regiones de juego del mundo de juego abierto. Una o varias de estas sesiones de MPSD tienen habilitada la funcionalidad de juego. Todos los jugadores de XBOX Live se unen a la sesión del mundo de juego abierto de su región de juego. El servidor mantiene información tanto de los jugadores de XBOX Live como de los jugadores que no usan XBOX Live. La sesión del mundo de juego abierto permite unirse a partidas en curso e invitaciones para los jugadores de XBOX Live y solo se establece como cerrada si el servidor no acepta nuevas conexiones de los clientes.
- Habilitar el juego en el mundo de juego abierto. Las características de juego con otros jugadores están disponibles en función de los privilegios del jugador. El chat de texto global siempre está habilitado para los jugadores que tienen establecido el privilegio de comunicación. Todos los mensajes de chat de texto usan el servicio de validación de cadenas y una lista de bloqueados para filtrar lenguaje y términos ofensivos. La misma validación se usa para los nombres de los jugadores.
Juego PvE o PvP con instancias
Los pasos siguientes se aplican al juego PvE o PvP con instancias.- Sesión de MPSD del grupo. Para los jugadores de XBOX Live, el título crea una sesión de MPSD para realizar el seguimiento de los jugadores de XBOX Live. El seguimiento de los jugadores que no usan XBOX Live se realiza a través del servicio del título.
- Invitaciones de grupo y unión a partidas en curso. En este ejemplo, el diseño del juego limita las uniones o invitaciones a grupos de jugadores. La sesión de MPSD del grupo se usa para admitir la unión a partidas en curso y las invitaciones para los jugadores de XBOX Live. Dentro del juego, las invitaciones entre redes se admiten mediante el servicio del título.
- Emparejamiento de grupos. El título admite el multijugador entre redes para los flujos de emparejamiento de grupos PvP o PvE. En este ejemplo, el jugador usa una interfaz de usuario de emparejamiento para seleccionar una experiencia PvP o PvE y, a continuación, se agrupa con otros jugadores en una experiencia de juego con instancias.
- Crear la sesión de MPSD del juego y unirse a ella. El resultado del emparejamiento de grupos es una sesión de sala de MPSD que crea el servicio de emparejamiento mediante llamadas de servicio a servicio a XBOX Live. Todos los jugadores de XBOX Live se unen a esta sesión de juego y permanecen en ella durante el juego con instancias. El servicio usa propiedades personalizadas para proporcionar además sugerencias sobre los jugadores de la sesión que no usan XBOX Live. Después, la lógica del cliente puede usar estas sugerencias para establecer el estado de la sesión durante el resto del flujo.
- Juego con instancias. Cuando todos los jugadores están listos, comienza el juego con instancias. En este ejemplo, el chat también está habilitado entre jugadores de XBOX Live a través del servidor dedicado. Durante el juego con instancias, una lista de jugadores es visible en la interfaz de usuario del juego. Esta lista es una lista de nombres de personaje del título con la opción de ver los gamertags u otros identificadores de red de los jugadores. Los jugadores de XBOX Live se resaltan de forma exclusiva. La captura de pantalla siguiente muestra un ejemplo de esta interfaz de usuario de grupo.
- Finalización del juego. Cuando finaliza el juego con instancias, los jugadores del equipo vuelven al mundo de juego abierto. Los jugadores abandonan la sesión de juego de MPSD y establecen la sesión de MPSD del mundo de juego abierto como sesión de actividad.
Administración de sesiones
Para cumplir todos los requisitos de XBOX, el título crea dos sesiones de MPSD para los jugadores de XBOX Live.Sesión de juego de la región del mundo de juego abierto
El servicio del título crea una sesión de MPSD grande al inicio. Se crea mediante llamadas de servicio a servicio a XBOX Live para cada instancia de servidor del título. Todos los jugadores de una instancia de servidor del título se unen a la sesión de MPSD correspondiente. En estas sesiones, el servidor establece un identificador de encuentro para los jugadores de XBOX Live que interactúan entre sí a fin de garantizar una representación correcta en la lista de jugadores recientes.Sesión de juego con instancias
Esta sesión la crea el servicio de emparejamiento mediante llamadas de servicio a servicio a XBOX Live. Contiene reservas para todos los jugadores de XBOX Live de una sesión de juego (entre equipos). Se usa para rellenar correctamente la lista de jugadores recientes de los jugadores de XBOX Live.Sesión de grupo
Esta sesión se crea en cuanto un jugador crea un grupo (grupo de 1). Se usa para la sesión de actividad a fin de admitir la unión a partidas en curso y las invitaciones. Por diseño del juego, los jugadores no pueden unirse durante determinados modos de juego. En estos modos, la propiedadclosed se usa para deshabilitar la unión a partidas en curso y las invitaciones.
Los jugadores que no usan XBOX Live no están representados directamente en las sesiones de MPSD como miembros de la sesión. Con fines de seguimiento, el título refleja su presencia en una propiedad de sesión personalizada, como se muestra en el ejemplo de código siguiente.
