> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Uso del GDK con GameMaker

> Prepare un juego de GameMaker Studio 2 para publicarlo en Microsoft Store con la extensión GMEXT-GDK, Visual Studio 2022, CMake y la versión de junio de 2024 del GDK.

Este artículo describe cómo preparar su juego de GameMaker para publicarlo en Microsoft Store.

* [Instalación del software necesario](#install-the-required-software)
* [Descarga e instalación de GameMaker Studio 2](#download-and-install-gamemaker-studio-2)
* [GameMaker Studio 2 - Extensión de Microsoft Game Development Kit (GDK)](#set-up-gamemaker-studio-2-gdk-extension)
* [Compilación de la extensión del GDK](#build-the-gdk-extension)
* [Creación de un producto en Microsoft Partner Center](#create-a-product-in-microsoft-partner-center)
* [Prueba de la extensión del GDK](#test-the-gdk-extension)
* [Actualización de MicrosoftGame.config](#update-microsoftgame-config)
* [Integración de la extensión del GDK en su propio proyecto](#integrate-the-gdk-extension-into-your-project)
* [Prueba de los servicios de XBOX en su juego](#test-xbox-services-in-your-game)
* [Publicación](#publish-your-game)

## Instalación del software necesario

Para usar GameMaker Studio 2 con el Microsoft Game Development Kit (GDK), descargue el siguiente software:

* [Visual Studio 2022](https://visualstudio.microsoft.com/downloads/)
* [GDK de junio de 2024](https://github.com/microsoft/GDK/releases/tag/June_2024_Update_2) o posterior
* [CMake](https://cmake.org/download/)
  * Asegúrese de que el instalador de CMake actualice las rutas del sistema. De lo contrario, el proyecto de la extensión no podrá encontrar CMake.

## Actualización de Gaming Runtime Services (GRTS) y PC Bootstrapper

PC Bootstrapper forma parte de la experiencia de inicio de juegos en PC y se introdujo en la versión de GRTS de mayo de 2022. PC Bootstrapper depende de GRTS y necesita GRTS para funcionar correctamente. Si GRTS está desactualizado en su PC de desarrollo, los intentos de inicio de sesión pueden fallar y devolver un error `E_FAIL`.

Para obtener orientación detallada sobre PC Bootstrapper, incluido su papel en el proceso de inicio del juego y cómo interactúa con GRTS, consulte [Información general de PC Bootstrapper](/build/gdk-and-engines/guides/pc-bootstrapper).

## Descarga e instalación de GameMaker Studio 2

Si no tiene GameMaker Studio 2 instalado, descárguelo desde [https://www.yoyogames.com](https://www.yoyogames.com/) y, después, instálelo.

## Configuración de la extensión del GDK de GameMaker Studio 2

La extensión del GDK de GameMaker Studio 2 es necesaria para usar el GDK con GameMaker Studio 2. Para obtener el código fuente de la extensión y las instrucciones de configuración, consulte [https://github.com/YoYoGames/GMEXT-GDK](https://github.com/YoYoGames/GMEXT-GDK).

Use los pasos del archivo README que está en la raíz del repositorio. Estos pasos le permiten configurar y compilar la extensión del GDK de GameMaker Studio 2, lo que habilita la integración de los servicios y las características de XBOX en los proyectos de GameMaker.

Al clonar el repositorio GDKExtension, use el modificador `--recurse-submodules` para incluir los submódulos. De lo contrario, faltarán archivos necesarios al compilar la solución.

Para obtener información sobre la extensión, consulte [https://github.com/YoYoGames/GMEXT-GDK/wiki](https://github.com/YoYoGames/GMEXT-GDK/wiki).

## Compilación de la extensión del GDK

Compile la extensión en Visual Studio 2022 con las instrucciones del archivo README que está en la raíz del repositorio. Se requiere el archivo GDKExtension.sln (\<project\_root>/source/GDKExtension\_gml/extensions/GDKExtension/gdkextension\_windows/GDKExtension.sln). Para obtener instrucciones detalladas de compilación, consulte los pasos de compilación en el archivo README de la raíz del repositorio.

## Creación de un producto en Microsoft Partner Center

Para crear su producto habilitado para los servicios de XBOX en Partner Center, consulte [Configuración de una aplicación o un juego en Partner Center, para asociados administrados](/services/xbox-services/fundamentals/portal-config/live-setup-partner-center-partners). Después de crear su producto, puede probar los servicios de XBOX o publicar un juego en Microsoft Store.

## Prueba de la extensión del GDK

El repositorio de la extensión del GDK incluye un proyecto de ejemplo que muestra cómo integrar el complemento del GDK con un proyecto de GameMaker Studio 2. El archivo del proyecto de ejemplo se encuentra en `source/GDKExtension_gml/GDKExtension.yyp`.

Al compilar el proyecto de ejemplo en GameMaker (**Build**>**Create Executable**), seleccione **Package as Zip** para generar el paquete MSIXVC necesario para instalar la aplicación. Si selecciona **Package as Installer**, la compilación no produce un paquete MSIXVC. La aplicación no puede acceder a los servicios de XBOX.

Cuando finaliza la compilación, se abre una ventana del Explorador de archivos que muestra el archivo .zip creado y su subdirectorio. El subdirectorio tiene el mismo nombre que el paquete y contiene el archivo MSIXVC.

Además, la ventana de salida de GameMaker Studio 2 muestra una línea de código con la ruta de salida completa del paquete MSIXVC, como se muestra en el ejemplo siguiente.

`C:\Users\your-user-name\XboxDeveloperExperienceTe.GamePassSampleGame_1.0.0.0_x64__pmsd8ndztetqc-pkg`

Para ejecutar el proyecto de ejemplo de modo que tenga acceso a los servicios de XBOX, instale el paquete con `wdapp install` y el nombre de su paquete, como se muestra en el ejemplo siguiente.

`wdapp install XboxDeveloperExperienceTe.GamePassSampleGame_1.0.0.0_x64__pmsd8ndztetqc.msixvc`

Después de instalar el paquete, inícielo con el botón **Inicio**.

## Actualización de MicrosoftGame.config

El proyecto de ejemplo usa un archivo MicrosoftGame.config predeterminado. Para probar el ejemplo o su propio proyecto de GameMaker Studio 2 con la información de configuración de su proyecto de Partner Center, actualice el archivo MicrosoftGame.config.

El archivo .config del ejemplo está en source/GDKExtension\_gml/datafiles/MicrosoftGame.config.

Para usar la funcionalidad de los servicios de XBOX, actualice el MicrosoftGame.config de su proyecto con los detalles de identidad de su proyecto de Partner Center mediante los pasos siguientes.

1. Vaya al [panel de Partner Center](https://partner.microsoft.com/dashboard/windows/overview).
2. Seleccione su juego en la lista de productos.
3. Seleccione la pestaña **Game setup** y, después, seleccione **Identity details**.
4. Seleccione **Show Details** para expandir la sección **Identity details**.
5. Use los siguientes valores de la tabla de la sección **Identity details**. Copie esos valores de Partner Center en el elemento y el campo correspondientes de MicrosoftGame.config.

| Nombre en Partner Center                 | MicrosoftGame.config |
| ---------------------------------------- | -------------------- |
| XBOX Title ID                            | TitleId              |
| Package/Identity/Name                    | Identity->Name       |
| Package/Identity/Publisher               | Identity->Publisher  |
| XBOX services > XBOX Settings > MSAAppId | MSAAppId             |

Los detalles de identidad de Partner Center determinan el contenido de su archivo MicrosoftGame.config, como se muestra en el ejemplo siguiente.

| Nombre en Partner Center                 | Valor de ejemplo                        |
| ---------------------------------------- | --------------------------------------- |
| XBOX Title ID                            | 64353034                                |
| Package/Identity/Name                    | 41336MicrosoftATG.Achievements2017Redux |
| Package/Identity/Publisher               | CN=A4954634-DF4B-47C7-AB70-D3215D246AF1 |
| XBOX services > XBOX Settings > MSAAppId | 0000000000000000                        |

### Extracto de un archivo MicrosoftGame.config de ejemplo

```xml theme={null}
<?xml version="1.0" encoding="utf-8"?>
<Game configVersion="1">

  <Identity Name='41336MicrosoftATG.Achievements2017Redux' Version="1.1.0.0" Publisher='CN=A4954634-DF4B-47C7-AB70-D3215D246AF1' />


  <TitleId>64353034</TitleId>
  <MSAAppId>0000000000000000</MSAAppId>

  <ExecutableList>
    <Executable Name="Achievements2017_desktop.exe"
                TargetDeviceFamily="PC"
                Id="Game"/>
  </ExecutableList>

  <ShellVisuals DefaultDisplayName="Achievements2017 Desktop Sample"
                PublisherDisplayName="Xbox Advanced Technology Group"
                StoreLogo="Assets\StoreLogo.png"
                Square150x150Logo="Assets\Logo.png"
                Square44x44Logo="Assets\SmallLogo.png"
                Square480x480Logo="Assets\LargeLogo.png"
                Description="Achievements2017"
                ForegroundText="dark"
                BackgroundColor="#000000"
                SplashScreenImage="Assets\SplashScreen.png"/>
</Game>
```

Para obtener información general sobre MicrosoftGame.config e información sobre sus valores, consulte [Información general de MicrosoftGame.config](/build/core-features/common/game-config/MicrosoftGameConfig-Overview).

## Integración de la extensión del GDK en su proyecto

Como mínimo, su proyecto debe llamar a las siguientes funciones para integrarse con el GDK.

* Llame a `gdk_init` para inicializar el GDK. Debe llamar a `gdk_init` antes de usar cualquier otra funcionalidad del GDK.
* Llame a `gdk_update` una vez por fotograma mientras el GDK esté activo.
* Llame a `gdk_quit` para limpiar el GDK cuando su proyecto finalice y ya no necesite ninguna funcionalidad del GDK.

Además, la extensión del GDK tiene los siguientes módulos que proporcionan acceso a la funcionalidad del GDK.

* **Base Module:** proporciona un conjunto de funciones que controlan la selección de usuario/cuenta para el jugador.
* **Storage Module:** proporciona un conjunto de funciones que controlan la carga y el guardado de datos asociados a un usuario.
* **XBOX services Module:** proporciona funciones para usar características de los servicios de XBOX, incluidas estadísticas, tablas de clasificación, logros y presencia enriquecida.
* **In-App Purchases Module:** proporciona funciones que integran los proyectos de GameMaker con los sistemas de comercio de Microsoft Store a través del GDK.

La guía incluida en el repositorio GDKExtension proporciona documentación de las funciones del GDK en la sección GDK Extension APIs. La guía, como archivo .pdf, está en source/GDKExtension\_gml/datafiles/GDK\_Extension\_Documentation.pdf.

## Prueba de los servicios de XBOX en su juego

Para probar la funcionalidad de los servicios de XBOX (por ejemplo, los logros) en su juego, use un sandbox y cuentas de prueba que tengan acceso a ese sandbox.

### Creación de una cuenta de prueba

Para probar cualquier característica de los servicios de XBOX en su juego, cree cuentas de prueba que tengan acceso a su sandbox de desarrollo. Para obtener instrucciones, consulte [Creación de cuentas de prueba](/services/xbox-services/develop/test-accounts/live-setup-testaccounts).

### Cambio de sandbox

1. Vaya a [Partner Center](https://partner.microsoft.com/dashboard/windows/overview).
2. Para encontrar su identificador de sandbox, seleccione **XBOX services** y, después, seleccione **Gameplay settings**.
   <Note>
     Su identificador de sandbox aparece en la primera pestaña de la página **Gameplay settings**. Usa un nombre similar a "ABCDEF.0".
   </Note>
3. Seleccione el botón **Inicio**.
4. Escriba **Microsoft GDK Command Prompts** y, después, seleccione **Entrar**.
5. Abra el primer símbolo del sistema y, después, escriba **XblPCSandbox.exe \<su identificador de sandbox>**.
6. Después de que el símbolo del sistema inicie varias aplicaciones, inicie sesión en la aplicación XBOX con su cuenta de prueba.

Si puede iniciar sesión correctamente, puede comenzar las pruebas en su sandbox.

Para obtener más información sobre los sandboxes, consulte [Información general de los sandboxes de los servicios de XBOX](/services/xbox-services/fundamentals/sandboxes/live-setup-sandbox).

## Publicación de su juego

Para prepararse para publicar su juego, asegúrese de lo siguiente:

* Crear un paquete MSIXVC con **Package as Zip** en GameMaker Studio 2.
* Actualizar su archivo MicrosoftGame.config con los valores correctos del proyecto que creó en Partner Center.
* Integrar la extensión del GDK en su juego.

Después de completar los pasos de este artículo, estará listo para publicar su juego. Para enviarlo, vaya a [Partner Center](https://partner.microsoft.com/dashboard/windows/overview) y siga las instrucciones de la interfaz de usuario.


## Related topics

- [Uso del GDK con Unity, Unreal y otros motores](/es/build/gdk-and-engines/gdk-and-engines.md)
- [Uso del GDK con Unity](/es/build/gdk-and-engines/unity/unity.md)
- [Uso del GDK con Godot](/es/build/gdk-and-engines/godot.md)
- [Uso del GDK con Unreal Engine](/es/build/gdk-and-engines/unreal/unreal.md)
- [Información general de Godot y motores de la comunidad](/es/paths/community-engines/overview.md)
