Este artículo se aplica solo a la consola XBOX, no a otras plataformas, como PC.
Funcionamiento normal en línea
En general, las consolas XBOX funcionan en un estado totalmente conectado, en el que el usuario tiene una conexión a Internet estable y acceso completo a la red de XBOX (también conocida como XBOX Live) y a servicios de terceros. Este estado conectado permite que los servicios de XBOX validen periódicamente el estado de la consola, proporcionen actualizaciones y realicen otros servicios en segundo plano que benefician a su juego y a los usuarios. Se recomienda asumir que los usuarios tienen conectividad en línea la mayor parte del tiempo.Principios del juego sin conexión
Hay casos en los que una conexión en línea no está disponible. Para el juego sin conexión, XBOX está diseñado teniendo en cuenta los siguientes principios:- Lo más importante: mantenga a los usuarios jugando a pesar de los problemas de conectividad.
- Mantenga a los usuarios jugando incluso si no tienen ninguna conexión.
- Haga que el juego sin conexión sea simple y predecible para los usuarios, manteniendo al mismo tiempo el espíritu de una experiencia siempre conectada.
Modos sin conexión
Hay dos escenarios de alto nivel de pérdida de conectividad:- Pérdida completa del servicio de Internet
- Pérdida de uno o varios servicios en línea
Escenario sin conexión: sin servicio de Internet al iniciar el juego
Los juegos pueden declararse como uno de tres tipos:- Red de XBOX requerida: todos los modos de juego requieren conectividad a Internet.
- XBOX Live Gold requerido: todos los modos de juego requieren conectividad a Internet y una suscripción a XBOX Live Gold.
- Red de XBOX no requerida: el juego tiene al menos un modo de juego que no requiere conectividad a Internet. Técnicamente, este tipo no se declara explícitamente en el manifiesto de la aplicación. Una aplicación que no se declara como uno de los dos primeros tipos se considera “red de XBOX no requerida” o compatible con el modo sin conexión.
Escenario sin conexión: pérdida de conectividad durante el juego
Si un juego ya se está ejecutando cuando se pierde la conectividad, el sistema notificará al título. Si el juego no está usando servicios en línea, continúe la sesión sin interrupción. Si el juego está usando activamente servicios en línea, cambie a un modo en el que esos servicios ya no sean necesarios o informe al jugador de que la sesión de juego finaliza debido al estado sin conexión. Los títulos declarados como “red de XBOX requerida” o “XBOX Live Gold requerido” serán suspendidos automáticamente por el sistema cuando la consola pierda toda la conectividad de red durante un período de tiempo, y el sistema proporcionará automáticamente un mensaje de error al usuario. Como en cualquier otro escenario que implique la suspensión del juego, debe guardar el estado para que el usuario no pierda datos y pueda volver rápidamente a ese estado después de recuperar la conectividad.Escenario sin conexión: cuando un único servicio de XBOX está inactivo
Hay otras situaciones en las que servicios en línea específicos pueden no estar disponibles aunque la conectividad a Internet funcione correctamente. Por ejemplo, un único servicio de XBOX podría estar sin conexión durante un breve período de tiempo. En este caso, la llamada al servicio específico agotará el tiempo de espera o notificará un error al juego. Debe controlar correctamente los estados de servicio sin conexión igual que controlaría esas situaciones en XBOX 360 o en Windows. Como mínimo, el juego no debe bloquearse ni dejar de responder. Si el juego no puede continuar sin el servicio, notifique la situación al usuario y permítale continuar en otra área del juego donde el servicio no sea necesario. En el mejor de los casos, continúe el juego y almacene en caché los datos para enviarlos más adelante (si el juego estaba escribiendo en el servicio) o realice suposiciones razonables sobre los datos (si el juego estaba leyendo del servicio).Escenario sin conexión: cuando un servicio de terceros está inactivo
Si su juego depende de un servicio en línea de terceros, entonces su juego también debe ser resistente si ese servicio falla. Si el servicio falla, su juego no debe bloquearse ni dejar de responder. Puede notificar el error del servicio al usuario si el juego no puede continuar. Idealmente, el juego debería continuar o debería permitir al usuario continuar en un área del juego que no requiera el servicio en línea.Escenario sin conexión: cuando su servicio en la nube está inactivo
Una de las características destacadas de XBOX es la potencia de la nube. Algunos juegos pueden depender completamente de un servicio siempre conectado, como Azure PlayFab Multiplayer Servers, que permite acceder a capacidades de proceso adicionales o a servidores de juego siempre disponibles. Este modo siempre conectado está permitido y se recomienda cuando mejora la experiencia de los jugadores. Si su juego usa este modo, se recomienda que sea resistente a las interrupciones del servicio (de varios segundos y hasta un minuto) que se deban a la pérdida total de conectividad a Internet o a la pérdida de un servicio en la nube concreto. Sin embargo, el juego no está obligado a tener un modo sin conexión. Si el juego realmente necesita conectividad y esta no está disponible, informe al usuario y finalice la sesión de juego.Requisitos de XBOX
El requisito más importante al tratar los escenarios sin conexión es la estabilidad del juego. Ya sea una pérdida completa de conectividad o simplemente la pérdida de un servicio en línea específico, su juego no debe dejar de responder, bloquearse ni hacer que el usuario pierda el estado. Su juego debe tener un sistema sólido para controlar los escenarios de tiempo de espera de red y para controlar los errores devueltos por cualquier API que acceda a un servicio en línea. Los juegos no están obligados a admitir el juego sin conexión. Si su juego simplemente no puede continuar debido a una pérdida de conectividad del servicio, notifique al usuario, finalice la sesión de juego y vuelva al menú principal o al estado interactivo inicial.Procedimientos recomendados
Estos son los procedimientos recomendados para tratar las situaciones sin conexión:- Diseñe los juegos asumiendo que los usuarios tienen conectividad en línea la mayor parte del tiempo.
- Si tiene sentido para el diseño de su juego, considere diseñar modos de juego que permitan al usuario disfrutar de una experiencia agradable incluso si la consola está en estado sin conexión.
- Los servicios pueden dejar de estar disponibles. Las conexiones pueden fallar. Cree un control de errores sólido para las API que pueden agotar el tiempo de espera, o notifique las condiciones de error cuando un servicio en línea esté inactivo o cuando se pierda la conectividad a Internet. Siempre que sea posible, mantenga a los usuarios jugando a pesar de estos problemas.
- Cumpla los requisitos de XBOX (XR). No deje de responder ni se bloquee.
- Al recibir una notificación de suspensión de título de PLM, guarde el estado para que el usuario no pierda datos y pueda volver rápidamente a ese estado al reanudar el juego.
- Marque su título adecuadamente en el manifiesto de la aplicación. Marque su título como “red de XBOX requerida” solo si todos los modos de juego requieren conectividad.
- Los juegos de XBOX pueden usar y depender de servicios en línea en todos los modos de juego. Si el juego simplemente no puede continuar debido a una pérdida de conectividad del servicio, notifique al usuario, finalice la sesión de juego y vuelva al menú principal o al estado interactivo inicial.
- No dependa del servicio de Ayuda de XBOX para los mensajes de error y la ayuda relacionados con los estados sin conexión. El servicio de Ayuda de XBOX requiere una conexión a los servicios de XBOX.
