Esta guía cubre la implementación de PlayFab Game Saves con el GDK de octubre de 2025 (versión 2510). Tanto si es nuevo en Game Saves como si está migrando desde una implementación anterior, este documento proporciona los requisitos esenciales y las instrucciones de configuración, con especial atención a la compatibilidad con Steam Deck.
Información general de los requisitos de implementación
Al implementar PlayFab Game Saves con el GDK de octubre de 2025, necesita comprender cuatro componentes clave:- Nuevo diseño de carpetas del GDK: Estructura de directorios del SDK centrada en la plataforma
- Integración de XGameRuntime: Entorno de ejecución multiplataforma con requisitos de implementación específicos
- SDK unificado de PlayFab: Arquitectura de SDK moderna para todos los componentes de PlayFab
- Otros componentes del SDK unificado: Componentes actualizados de Party y Multiplayer (si se usan)
¿Es nuevo en Game Saves? Comience con la Información general de Game Saves y la Guía de inicio rápido para comprender los conceptos básicos y luego vuelva aquí para conocer los detalles de implementación específicos del GDK de octubre de 2025.
1. Diseño de carpetas del GDK y configuración de rutas
Estructura actual del GDK
El GDK de octubre de 2025 usa una estructura de directorios plana y centrada en la plataforma. Comprender este diseño es esencial para configurar correctamente su sistema de compilación. Diseño del GDK de octubre de 2025:$(GDK)\GRDK\ and $(GDK)\GXDK\) se ha reemplazado. Actualice sus scripts de compilación en consecuencia.
Configuración de su sistema de compilación
Configuración de rutas obligatoria
Configure su sistema de compilación para usar las rutas correctas específicas de la plataforma:Ejemplo de configuración del sistema de compilación
Configuración de CMake:Detalles de compatibilidad de plataformas
- XBOX: Usa las carpetas
xboxpara todas las generaciones recientes de consolas XBOX - Windows: Todas las plataformas Windows (PC, Steam PC, Steam Deck-Proton) usan la carpeta
windows - Steam Deck: A pesar de ejecutar SteamOS, usa la carpeta
windowspor compatibilidad con la emulación de Proton
Pasos de implementación
-
Configure su sistema de compilación
- Configure las rutas de inclusión y de bibliotecas con la nueva estructura del GDK
- Agregue lógica de detección de plataforma si su destino son varias plataformas
- Pruebe la compilación en todas las plataformas de destino
-
Valide la integración de Game Saves
- Asegúrese de que todas las bibliotecas necesarias se vinculan correctamente
- Pruebe la funcionalidad en sus plataformas de destino
- Compruebe la conectividad con el servicio de PlayFab
2. Integración de XGameRuntime
Descripción de XGameRuntime
XGameRuntime proporciona la base para los servicios de XBOX Live y la funcionalidad de Game Saves en todas las plataformas. Esto es lo que necesita saber:Componentes principales
xgameruntime.lib (biblioteca de importación)- Se vincula a su proyecto de juego en tiempo de compilación
- Localiza y carga automáticamente el archivo DLL del entorno de ejecución
- Controla la detección de servicios (local frente al sistema)
- Implementa la funcionalidad de XBOX Live y Game Saves
- Ubicación:
{GDK}\windows\bin\xgameruntime.dll - Fundamental para las compilaciones de Steam: Debe implementarse con su juego
Requisitos de implementación
1. Integración básica
Todas las implementaciones de Game Saves requieren la inicialización de XGameRuntime:2. Requisitos de la plataforma Steam
Esencial para las compilaciones de Steam: Al compilar para Steam, debe incluirxgameruntime.dll en el directorio de su juego. Sin este archivo DLL, al ejecutar en Steam Deck:
- La autenticación de XBOX Live fallará
- La funcionalidad de Game Saves no estará disponible
Las compilaciones de Microsoft Store cargan automáticamente XGameRuntime desde el sistema y no requieren la implementación del archivo DLL.
3. Implementación automatizada de archivos DLL
Configuración de CMake:Comportamiento del entorno de ejecución específico de la plataforma
La compatibilidad con Steam Deck requiere específicamente la implementación del archivo DLL local. El sistema no puede recurrir a los servicios del sistema como en otras plataformas. Además, el motor de sincronización se ejecuta en proceso, lo que significa que los juegos deben asegurarse de que los datos de guardado críticos se sincronizan antes del cierre.
3. Integración del SDK unificado de PlayFab
¿Qué es el SDK unificado de PlayFab?
El SDK unificado de PlayFab es un SDK moderno y cohesivo que reúne todos los componentes de PlayFab bajo una única arquitectura. Game Saves ahora forma parte de este sistema unificado, lo que proporciona: Ventajas para el desarrollo con Game Saves:- Administración de memoria unificada en todos los componentes de PlayFab
- Patrones coherentes de operaciones asincrónicas
- Seguimiento y diagnóstico integrados
- Carga modular de componentes (incluya solo lo que necesita)
Componentes obligatorios del SDK
Las implementaciones de Game Saves necesitan estos componentes del SDK unificado: Componentes esenciales:- libHttpClient: Comunicación HTTP/WebSocket multiplataforma
- PlayFab Core: Autenticación, administración de entidades y configuración
- PlayFab GameSave: Funcionalidad específica de Game Saves
- PlayFab Services: Servicios compartidos para LiveOps, administración de cuentas y otros sistemas de progresión (recomendado si usa otros servicios de PlayFab)
Requisitos de bibliotecas y archivos DLL
Bibliotecas necesarias para la vinculación
Archivos DLL necesarios para la implementación
Configuración del sistema de compilación
Configuración de MSBuild
Configure su proyecto de Visual Studio para vincular el SDK unificado:$(GDK)\GRDK\...\include por la nueva estructura que se muestra arriba.
Configuración de CMake
Para proyectos basados en CMake, configure las dependencias y la implementación:Implementación de código
Encabezados necesarios
Incluya los encabezados necesarios del SDK unificado en su proyecto:Secuencia de inicialización
Siga este orden de inicialización para una configuración correcta de Game Saves:Secuencia de limpieza correcta
Al cerrar la aplicación, limpie los recursos en orden inverso:Use siempre el patrón de limpieza asincrónica para PlayFab Services y Core a fin de garantizar la liberación correcta de los recursos.
4. Otros componentes del SDK unificado de PlayFab
Cambios en las API de Party y Multiplayer
Aunque no son directamente necesarios para la funcionalidad de Game Saves, el GDK de octubre de 2025 también incluye versiones actualizadas de los componentes PlayFab Party y PlayFab Multiplayer como parte del SDK unificado. Estos componentes tienen API nuevas que se integran mejor con el sistema de autenticación unificado.Cambios clave respecto a los SDK independientes
Integración de la autenticación:- Patrón heredado: Anteriormente, los títulos que usaban los SDK independientes de Party/Multiplayer tenían que administrar manualmente
EntityIDyEntityTokende los resultados de inicio de sesión de PlayFab y pasarlos a las API de Party/Multiplayer - Patrón del SDK unificado: Party y Multiplayer ahora aceptan
PFEntityHandledirectamente, lo que elimina la administración manual de tokens
- Party: API nuevas que aceptan
PFEntityHandlepara la autenticación de usuarios - Multiplayer: API nuevas que aceptan
PFEntityHandlepara operaciones de salas y emparejamiento
- Flujo de autenticación simplificado con actualización automática de tokens
- Patrones de control de errores coherentes en todos los componentes de PlayFab
- Administración de memoria unificada y patrones de operaciones asincrónicas
Componentes de Party y Multiplayer: Si su juego usa PlayFab Party o Multiplayer, considere migrar a las nuevas API unificadas que aceptan
PFEntityHandle directamente para mejorar la integración. Sin embargo, esto no es obligatorio para la funcionalidad de Game Saves: puede omitir con seguridad la sección 4 si solo usa Game Saves.5. Implementación en Steam Deck
La compatibilidad de PlayFab Game Saves con Steam Deck requiere una implementación adicional considerable más allá de las compilaciones estándar para PC, incluidos flujos de autenticación personalizados, devoluciones de llamada de interfaz de usuario completas y estrategias de sincronización cuidadosas.Complejidad de la implementación en Steam Deck: La integración con Steam Deck implica flujos de autenticación personalizados, implementación de devoluciones de llamada de interfaz de usuario y diferencias fundamentales en el comportamiento de sincronización. Debido a la complejidad y la extensión de los requisitos de implementación, la implementación en Steam Deck se encuentra en su propia guía dedicada.
Consideraciones clave de Steam Deck
Diferencia crítica en el comportamiento de sincronización:- PC con Windows: Game Saves se ejecuta fuera de proceso y puede seguir sincronizando después del cierre del juego
- Steam Deck: Game Saves se ejecuta solo en proceso y deja de sincronizar cuando el juego se cierra
- Todos los archivos DLL del SDK unificado deben implementarse con su compilación de Steam
- Flujo de autenticación de XUser personalizado con devoluciones de llamada de interfaz de usuario
- Configuración del Registro para pruebas en sandbox no comercial
- Patrones de sincronización frecuente para evitar la pérdida de datos
- Sincronice los datos de guardado con frecuencia (después de cada nivel, punto de control o progreso significativo)
- Sincronice siempre antes de mostrar las confirmaciones de “salir del juego”
- Considere la sincronización en segundo plano durante las transiciones del juego
- Implemente indicadores de progreso de sincronización para garantizar la finalización antes del cierre
Implementación completa en Steam Deck
Para obtener detalles completos de la implementación en Steam Deck, incluidos:- Configuración detallada del flujo de autenticación
- Implementación completa de las devoluciones de llamada de la interfaz de usuario
- Secuencia de inicialización paso a paso
- Guía de solución de problemas
- Referencias de código de ejemplo
6. Lista de comprobación de implementación
Primeros pasos (implementaciones nuevas)
- Configure el GDK de octubre de 2025 y compruebe la instalación
- Configure el sistema de compilación con las rutas del GDK y las referencias de bibliotecas correctas
- Agregue las bibliotecas del SDK unificado a la configuración de vinculación de su proyecto
- Incluya los encabezados necesarios en su código fuente
- Implemente la secuencia de inicialización siguiendo el patrón del SDK unificado
- Configure la implementación de archivos DLL para las compilaciones de Steam (4 DLL obligatorios, 1 opcional)
- Pruebe la funcionalidad básica en sus plataformas de destino
Migración (implementaciones existentes)
- Actualice las rutas del sistema de compilación de la estructura antigua del GDK al nuevo diseño
- Reemplace las bibliotecas independientes por los componentes del SDK unificado
- Actualice las inclusiones de encabezados para usar los nuevos encabezados del SDK unificado
- Modifique la secuencia de inicialización para usar las nuevas API del SDK unificado
- Actualice la secuencia de limpieza con el patrón de limpieza asincrónica correcto
- Agregue los archivos DLL adicionales a la implementación de Steam (1 DLL → 4-5 DLL)
- Compruebe que la funcionalidad permanece intacta después de la migración
Configuración del sistema de compilación
- Rutas de inclusión: Establecidas en
$(GDK)\windows\include(o el equivalente de la plataforma) - Rutas de bibliotecas: Establecidas en
$(GDK)\windows\lib\x64(o el equivalente de la plataforma) - Vinculación de bibliotecas: Agregue los archivos .lib necesarios a las dependencias del enlazador (4 obligatorios, 1 opcional)
- Implementación de archivos DLL: Configure la copia automática para las compilaciones de Steam
- Detección de plataforma: Agregue lógica si compila para varias plataformas
Tareas de implementación de código
- Encabezados: Incluya todos los encabezados necesarios del SDK unificado
- Inicialización: Implemente la secuencia de inicialización correcta de 5 pasos
- Control de errores: Agregue la comprobación de errores adecuada para cada paso de inicialización
- Limpieza: Implemente la limpieza en orden inverso con patrones asincrónicos
- Configuración: Reemplace los valores codificados de forma rígida por su Title ID y punto de conexión de PlayFab
Requisitos de pruebas
- PC con Windows: Compruebe la funcionalidad de Game Saves
- Steam Deck: Complete la implementación con la Guía de implementación en Steam Deck
- Microsoft Store: Confirme que no hay regresiones en la funcionalidad
- Multiplataforma: Pruebe la sincronización de guardados entre todas las plataformas (PC, Steam Deck, XBOX)
7. Recursos y soporte técnico
Vínculos de documentación
Referencias de código de ejemplo
- Ejemplo de Game Saves para Windows: PlayFabGameSaveSample-Windows
GameSaveIntegration.cpp/.h: integración principal de Game SavesSteamIntegration.cpp/.h: implementación específica de Steam Deck (consulte la guía de Steam Deck)GameSaveIntegrationUI.cpp/.h: implementaciones de devoluciones de llamada de interfaz de usuario (consulte la guía de Steam Deck)
