Adopción del GDK
Cada GDK solo se admite durante un año. Aunque los juegos existentes pueden seguir publicándose con un GDK retirado, esto puede ser problemático para los juegos que se publican como servicio. Los juegos que introducen nuevas características después de que se haya retirado un GDK pueden encontrar errores o problemas de integración que no se vieron en casos de uso anteriores del GDK. Del mismo modo, el juego puede querer aprovechar características que solo se encuentran en los GDK más recientes que se van publicando. Un juego debe compilarse con un único GDK. Los juegos no pueden mezclar componentes de un GDK con otro. En la consola, el juego solo incluye un único Game OS y las distintas bibliotecas del GDK pueden tener dependencias de ese sistema operativo subyacente. En PC, solo se carga una versión del entorno de ejecución de juegos en el proceso del juego, lo que crea un entorno de “versión única” similar al que se ve en la consola. Se recomienda que los títulos GaaS se actualicen periódicamente a un GDK publicado más recientemente que aún esté en soporte.Entrega inteligente
Los títulos GaaS pueden crecer cada vez más a lo largo de los años con la introducción de nuevo contenido. Los jugadores pueden tener cantidades limitadas de espacio de almacenamiento. Esto podría afectar a su capacidad para instalar la actualización más reciente del juego. Si bien es cierto que los jugadores tienen la capacidad de administrar sus propios espacios de almacenamiento, los juegos creados con Entrega inteligente dan al jugador más flexibilidad y opciones en cuanto a cómo usar su espacio de almacenamiento, más allá de desinstalar juegos completos, y permiten a los jugadores mantener más juegos instalados en sus dispositivos durante mucho más tiempo. Con la Entrega inteligente, los juegos pueden aprovechar características y recetas, eligiendo qué se instala de forma predeterminada y dando a los juegos la capacidad de administrar qué partes del juego quieren mantener instaladas y qué partes pueden querer quitar porque ya no las usan. Los títulos GaaS podrían optar por colocar su nuevo contenido en características independientes para habilitar este tipo de administración. La idea es que el nuevo contenido sea un artículo duradero. Esta es una sugerencia que facilitaría esta administración:- En el archivo de diseño del juego, haga que cada artículo duradero corresponda a una Feature.
- La Feature declarará una o varias Tags que se pueden usar para indicar cuáles de los fragmentos del archivo de diseño deben instalarse si el jugador tiene una licencia para ese contenido.
- Asegúrese de que el archivo de diseño incluye una Recipe que tenga un elemento secundario de identificador de la Store. Esta receta
debe hacer referencia a una única característica que corresponda al mismo identificador de la Store. Agregar la receta
garantizará que, si el jugador ya ha comprado este contenido anteriormente, se instale automáticamente.
[!NOTE] Puede haber otras características y recetas que no tengan nada que ver con los artículos duraderos.
- Llamar a XPackageEnumerateFeatures para enumerar las características.
- Usar el identificador de la Store devuelto que está en XPackageFeature para comprobar la licencia, consultar más detalles o invocar los flujos de compra de la Store.
Contenido descargable
En lugar de evolucionar continuamente su paquete base, algunos títulos GaaS pueden optar por evolucionar a lo largo de los años mediante contenido descargable (DLC). Los juegos pueden optar por colocar recursos o código ejecutable en ese DLC. Con el código ejecutable hay dos rutas posibles: DLL y EXE. Si el juego coloca archivos DLL en su DLC, puede:- Montar ese DLC mediante XPackageMountWithUiAsync.
- Usar LoadLibraryEx.
- Todo el DLC montado anteriormente permanece montado.
- Montar ese DLC mediante XPackageMountWithUiAsync.
- Llamar a XLaunchNewGames usando la ruta de acceso del DLC montado.
- El proceso del juego existente se terminará.
- Todo el DLC excepto el destino de XLaunchNewGames se desmontará.
- La unidad G: seguirá apuntando a la raíz del paquete base y no al EXE recién iniciado.
Documentación de referencia de las API
- XPackage (contenido de la API)
- Funciones
- Estructuras
- xgame (contenido de la API)
- Funciones
