View in English

  • Global Nav Open Menu Global Nav Close Menu
  • Apple Developer
Search
Cancel
  • Apple Developer
  • News
  • Discover
  • Design
  • Develop
  • Distribute
  • Support
  • Account
Only search within “”

Quick Links

5 Quick Links

Videos

Abrir menú Cerrar menú
  • Colecciones
  • Temas
  • Todos los videos
  • Información

Más videos

  • Información
  • Resumen
  • Transcripción
  • Código
  • Empezar a usar Game Center

    Explora las funcionalidades de Game Center y descubre cómo empezar. Te mostraremos las prácticas recomendadas sobre cómo implementar logros, retos, tablas de clasificación y actividades para maximizar la visibilidad de tu juego, atraer nuevos jugadores y aumentar la interacción. Para aprovechar al máximo esta sesión, también recomendamos ver “Involucrar a jugadores con la app Apple Games”.

    Capítulos

    • 0:00 - Introducción
    • 2:41 - Configuración del proyecto
    • 6:51 - Integrar las funcionalidades de Game Center
    • 10:00 - Retos y actividades
    • 23:53 - Prueba tu implementación
    • 26:44 - Publicar en App Store
    • 28:32 - Próximos pasos

    Recursos

    • Apple Unity Plug-Ins on GitHub
    • Creating activities for your game
    • Creating engaging challenges from leaderboards
    • Game Center overview
    • Human Interface Guidelines: Game Center
      • Video HD
      • Video SD

    Videos relacionados

    WWDC25

    • Involucrar a jugadores con la app Apple Games
    • Sube de nivel tus juegos

    WWDC22

    • Plug-in and play: Add Apple frameworks to your Unity game projects
  • Buscar este video…

    Hola, soy Josh Arenson, ingeniero del equipo de estructuras de Game Center. Hoy te mostraré las mejores formas de integrar Game Center en tu juego y por qué te conviene hacerlo. Y yo soy Varokas Panusuwan, ingeniero de servidores de Game Center. Te guiaré por las nuevas funciones de este año y compartiré buenas prácticas para sacarles todo el jugo. Así es. También hablaremos de grandes novedades. Tengas la experiencia que tengas, quédate con nosotros. Por si no conoces Game Center o necesitas un repaso, se trata de un conjunto de funciones para que los jugadores se involucren más en sus juegos y descubran otros nuevos a través de sus amigos. Además, Game Center facilita que los jugadores conecten y compitan con sus contactos, en línea con el compromiso de privacidad de Apple. Game Center ofrece varias funciones: Logros, Clasificaciones, Retos y Actividades. Estas te ayudan a crear experiencias más atractivas. Permiten que los jugadores sigan su progreso, compitan entre ellos e inviten fácilmente a sus amigos a jugar. Si quieres que más jugadores vean tu juego, la nueva app Juegos de Apple, que vendrá preinstalada en macOS, iPadOS y iOS a partir de este otoño, es la opción ideal. Game Center ayuda a maximizar la visibilidad de tu juego en todo el ecosistema de Apple, en especial en la app Juegos. Cada función integrada de Game Center le da al sistema más información para mostrar tu juego en más lugares. Game Center impulsa la participación con sus funciones clave: Clasificaciones, Retos, Actividades y Logros. Estas dan a los jugadores objetivos y oportunidades de conexión social, y los mantiene enganchados al juego. Estas funciones clave ayudan a retener más a los jugadores. Hacen que tu juego sea más divertido y competitivo, y eso logra que la gente quiera seguir jugando. Cuando los jugadores buscan nuevos juegos, muchos empiezan revisando el App Store. La nueva lista de juegos más jugados muestra los títulos que acumulan más tiempo de juego. La nueva app Juegos también incluye esta lista, por lo que Game Center da ventaja a tu juego en ambos lugares. Tanto en el App Store como en la app Juegos encontrarás la sección para ver a qué están jugando tus amigos. Aunque es fantástico ver lo que es popular en general, a veces quieres recomendaciones más a tu medida. Esta sección te muestra lo que están disfrutando tus amigos, una gran forma de descubrir juegos geniales que quizá no veas en los primeros puestos. Game Center fomenta la competencia amistosa. Por ejemplo, envía notificaciones push cuando un amigo te quita el primer lugar en una clasificación. Ahora que ya sabes qué es Game Center y las ventajas que le ofrece a tu juego, pasemos a la práctica. Varokas y yo te mostraremos lo fácil que es agregar Game Center a tu juego, desde la configuración hasta las pruebas y la publicación en el App Store. Solo hay dos pasos para que Game Center funcione en tu juego. Primero, agrega la autorización de Game Center a tu proyecto. Esto permite la comunicación entre tu juego y Game Center. Luego inicializa GameKit, la estructura que usa tu juego para comunicarse con Game Center. Para agregar la autorización en Xcode, abre tu proyecto, ve a la pestaña Signing and Capabilities, haz clic en + Capability, busca y agrega Game Center.

    Si usas Unity, Apple ofrece un módulo que simplifica el proceso de agregar la autorización de Game Center. Descarga el módulo desde GitHub. El repositorio incluye instrucciones para compilarlo e instalarlo. Una vez instalado el módulo, abre Unity Editor, entra al menú Build Profiles y haz clic en Build. Esto generará un proyecto de Xcode que ya trae las autorizaciones correctas. Cuando tengas la autorización, solo necesitas unas líneas de código para inicializar GameKit, la estructura para interactuar con Game Center. La inicialización es sencilla. Registras un administrador que se ejecuta cuando termina el proceso. Cuando el administrador se ejecute, tendrás acceso a GKLocalPlayer, con toda la información necesaria para reportar el progreso del jugador. En este código Swift configuro el administrador de inicialización. Cuando Game Center termine, se llama al administrador y GKLocalPlayer apunta a un jugador válido. Una buena noticia si desarrollas en Unity: todas las API de GameKit ya tienen enlaces en C#. El módulo de Unity de Apple te permite integrar GameKit directamente desde Unity Editor. Aquí tienes el mismo código de inicialización de GameKit, ahora en C#.

    Cuando se ejecuta tu administrador de inicio, Game Center muestra un banner para avisar al jugador que sus funciones están disponibles. Si el jugador nunca usó Game Center, se le pedirá activarlo con su cuenta de Apple. Para maximizar la visibilidad de tu juego, coloca el administrador de inicialización lo más cerca posible del arranque. Esto ayuda a que tu título aparezca en la lista de juegos más jugados y como recomendación a otros jugadores. Por ejemplo, en The Coast, el juego que desarrollo con Varokas y Logan, hacemos que el administrador se active justo cuando aparece la pantalla de título, que es un excelente momento. Una vez configurado el administrador, puedes potenciar aún más tu juego con las funciones de Game Center. Los logros recompensan los hitos de los jugadores y les dan de qué presumir. Las clasificaciones y los retos fomentan la competencia y crean oportunidades multijugador, incluso en juegos de un solo jugador. Las actividades permiten enlazar a los jugadores directamente con contenido específico, por ejemplo, saltar al nivel necesario para obtener un logro. Hay tres formas principales de definir estas funciones de Game Center. La primera, nueva en Xcode 26, es configurar Game Center directamente en Xcode usando un paquete GameKit. Esta opción ofrece varias ventajas, se sincroniza con App Store Connect y es la vía recomendada para el desarrollo.

    Cuando esté todo listo para lanzar tu juego, el sitio de App Store Connect te resultará útil para revisar y verificar la configuración de Game Center. Si quieres automatizar parte del proceso, quizá como parte del flujo de trabajo de integración continua, la API de App Store Connect es la indicada. Los paquetes GameKit aportan grandes ventajas: permiten probar logros, clasificaciones y actividades directamente en Xcode y de forma aislada de la versión en vivo gracias a Game Progress Manager. Al declarar estos datos localmente, la configuración de Game Center se incluye de forma automática en las revisiones de código y en el control de versiones. Anoche, Varokas y yo trabajamos en nuestro juego, The Coast. Él empezó a configurar Game Center en App Store Connect, pero yo prefiero usar un paquete .gamekit para integrar las funciones y agilizar el desarrollo. Para agregar un paquete GameKit a mi proyecto de Xcode, simplemente abro el selector de plantillas.

    En la barra de búsqueda, escribo GameKit.

    ¿Ves la plantilla GameKit Bundle? Selecciónala y toca Next.

    Aquí podría elegir un nombre de archivo, pero el valor predeterminado está bien. Hago clic en la opción de crear, y Xcode agrega el paquete al proyecto.

    Como ya tengo algunas clasificaciones, retos, actividades y logros en App Store Connect, extraeré la información de mi juego desde allí. Hago clic en los puntos suspensivos y elijo Pull from App Store Connect.

    Ahora selecciono mi equipo de desarrollo, busco The Coast y hago clic en Pull para traer la información del juego.

    Una vez terminado, puedo ver todo lo que había creado en App Store Connect.

    Varokas y yo decidimos agregar una clasificación a uno de los niveles, llamado Cape Cod, en The Coast. En este nivel, los jugadores deben tocar rápido los barcos para guiarlos a un lugar seguro y ganar puntos. Pero ¡cuidado! Algunos barcos son, en realidad, langostas furtivas disfrazadas. Si tocas una langosta por error, el nivel termina. Para agregar la clasificación, hago clic en el botón + y selecciono Leaderboard.

    Xcode me pide un nombre de referencia y un identificador. Todo lo que creo en Game Center tiene estos dos campos, y solo los ven los desarrolladores. El identificador es la forma en que referiré la clasificación desde el código de mi juego. Ingreso los valores que Varokas y yo ya acordamos y hago clic en Add.

    Ahora puedo ajustar la clasificación según las necesidades del nivel del juego. Por ahora, los valores predeterminados me sirven. Game Center detecta automáticamente la configuración regional del jugador y muestra la información en su idioma. Por eso es clave preparar nombres, descripciones e imágenes localizadas para cada idioma que admita tu juego.

    Hago clic en + para agregar una localización, ingreso los valores que comentamos con Varokas y hago clic en Add.

    Listo, mi clasificación ya está lista para llamarse desde el código del juego. Basándonos en lo visto, estos mismos conceptos sirven para crear logros, retos y actividades. Ahora que viste cómo configurar tu juego para Game Center e implementar sus funciones, continuará Varokas, que nos compartirá sus conocimientos. Gracias, Josh. Estoy emocionado de mostrarte cómo agregar dos funciones nuevas de Game Center a tu juego: Retos y Actividades. Ambas están diseñadas para crear experiencias multijugador y aumentar la interacción de los jugadores. Los retos convierten al instante un juego de un solo jugador en una experiencia social con amigos. Se integran a cualquier clasificación que ya tengas en tu juego, así que, básicamente, obtienes dos funciones por una. No se necesita ningún código adicional. Con los retos, los jugadores pueden invitar a sus amigos a competir por la puntuación más alta. Verán todas las puntuaciones en tiempo real, sabrán quién gana y hasta podrán pedir revancha desde esa misma pantalla. Todos los retos tienen un límite de tiempo, lo que motiva a los jugadores a entrar antes de que se agote. Los retos se relacionan con las clasificaciones, pero funcionan algo distinto. Una clasificación es una competencia continua con los amigos de Game Center. Un reto, en cambio, ofrece personalización al crearse. Mientras las clasificaciones están siempre activas, un reto tiene una hora de inicio y fin. Quien lo inicia decide cuándo empieza la partida y cuánto durará antes de que se acabe el tiempo. Una clasificación incluye a todos los amigos de Game Center, pero un reto permite elegir quién se une, incluso amigos que aún no están en la lista. También se puede definir cuántos intentos tiene cada jugador y crear una minicompetencia personalizada.

    Mientras que tus jugadores pueden elegir cuánto durará un reto, tú decides qué duraciones pueden elegir, por ejemplo, un día, tres días, una semana o una combinación de estas. ¡Y aquí viene lo mejor! Para habilitar los retos, puede que no tengas que cambiar nada en tu juego. Si tu juego ya incluye una clasificación, seguramente usas la API submitScore() para actualizar las puntuaciones de los jugadores. Ahora, esa misma API envía automáticamente las puntuaciones a todos los retos relacionados. Cape Cod es el primer nivel de The Coast y es muy popular. Es el lugar perfecto para agregar un reto. El primer paso es crear los metadatos del reto en Xcode. Al igual que cualquier función de Game Center, un reto necesita una imagen representativa y un nombre visible acorde. De forma interna también requiere un identificador para usarlo en el código del juego y un nombre de referencia para localizarlo en App Store Connect. Teniendo esto en cuenta, ya tengo preparada la imagen, el nombre visible, el identificador y el nombre de referencia para Cape Cod. En The Coast, ya hay una clasificación configurada. Solo debo verificar que su identificador en submitScore() sea el correcto. Siguiendo el mismo flujo de trabajo que mostró Josh, creo el reto en Xcode usando la ilustración y el nombre visible.

    Para asegurarme, compruebo que la clasificación asociada esté bien asignada a Cape Cod. Aquí mismo puedo definir las duraciones que el jugador podrá elegir. Como The Coast es una partida corta de un minuto, permitiré uno o tres días. Y eso es todo lo necesario para implementar un reto. Verifica que los metadatos estén bien configurados y, si ya usas clasificaciones, no tendrás que hacer cambios en el código del juego. Si tu juego tiene una clasificación recurrente, un reto asociado funcionará de forma algo distinta. Recuerda que, aunque las clasificaciones normales están siempre activas, una recurrente tiene una hora de inicio y fin definida. Aquí vemos, una clasificación diaria que empezó hoy a medianoche y que terminará mañana a medianoche.

    Un reto vinculado a una clasificación recurrente terminará a la misma hora que la instancia actual de la clasificación. Si empiezo ahora mismo un reto con Josh, ambos tendremos hasta la medianoche del miércoles para competir antes de que acabe.

    En este caso, la pantalla de creación del reto mostrará el tiempo restante hasta la medianoche.

    Además, cuando el reto se basa en una clasificación recurrente, puedes marcarlo como no repetible, lo que significa que los jugadores solo tendrán un intento. Esto puede ser útil, por ejemplo, en un juego de rompecabezas. Un reto diario de rompecabezas funciona mejor como reto no repetible. Los jugadores pueden crear y ver retos en muchos lugares de la app Juegos. También puedes crear tu propia interfaz para mostrar todos los retos disponibles y activos dentro de tu juego. Consulta la documentación para obtener más información. Los retos buscan igualar las condiciones y dar a todos una oportunidad justa. Así que asegúrate de enviar las puntuaciones de las clasificaciones y los retos del modo recomendado.

    Por ejemplo, es importante enviar la puntuación nueva al final de cada nivel. Aquí envío la puntuación de los barcos salvados cada vez que el jugador intenta el nivel. No acumules puntuaciones de varios intentos. Evita enviar una puntuación acumulada, como el total de barcos salvados. Se trata de medir la habilidad, no el tiempo que cada quien ha jugado.

    Recuerda que quien crea el reto decide cuántos intentos puede hacer cada jugador. Enviar la puntuación una sola vez al final de cada nivel suele ser lo ideal. Verifica que no estés enviando puntuaciones más veces de lo previsto. Ya configuré mi reto. Realmente quiero que mis jugadores comiencen a participar en este reto fácilmente. Aquí es donde las actividades resultan útiles.

    Las actividades son otra nueva función que podrás usar para agregar enlaces profundos directamente a la acción de tu juego. Una actividad es un destino específico dentro de tu juego. Puedes llevar a los jugadores a ese destino con un enlace profundo. El punto de partida de una actividad se define asociándola con otras funciones del Game Center.

    Por ejemplo, una clasificación que envía puntuaciones al final del nivel 1 puede asociarse con una actividad que tenga vínculos profundos con el comienzo de ese nivel. Cuando los jugadores vean esta clasificación en la app Juegos, podrán tocar Jugar para comenzar el nivel directamente. Todos los retos vinculados a esa clasificación también se asocian con la misma actividad. Así, cuando vean el reto del nivel 1 en la app Juegos, podrán tocar Jugar y comenzar el nivel 1. También puedes usar las actividades para crear vínculos profundos a partes del juego asociadas con logros específicos, como un nivel de combate contra un jefe.

    Otra gran forma de usar las actividades es vincular profundamente a los jugadores con experiencias multijugador en tiempo real. Gracias a los códigos de grupo integrados en Game Center, puedes integrar cualquier sistema multijugador en tiempo real existente con las actividades de Game Center. Como puedes ver, hay muchas formas en las que las actividades pueden ayudar a atraer más jugadores a tu juego. Permíteme mostrarte dos ejemplos con The Coast: uno para el reto de Cape Cod que acabo de crear y otro para una actividad multijugador. Ya les pedí a mis amigos que prueben mi nuevo reto de Cape Cod. Ahora quiero definir una actividad para este reto y que el botón para jugar lleve al jugador directamente al inicio de un nivel cuando lo toque. Comencemos definiendo los metadatos. Para el identificador de la actividad, usaré thecoast.activity. Si quiero, puedo agregar más detalles a la actividad base. Por ejemplo, también puedo indicar que esta actividad es para un modo de juego específico en The Coast. Luego, puedo relacionar cualquier clasificación o logro con una actividad. ¿Pero qué pasa con los retos? Recuerda que los retos amplían las clasificaciones. Eso significa que, cuando asocias una clasificación con una actividad, los retos también quedan asociados automáticamente. Así que enlazaré la clasificación de Cape Cod con mi nueva actividad. El elemento asociado puede tener sus propiedades. En este caso, agregué capeCod como valor level en las propiedades de la clasificación. Cuando esta actividad se inicie a partir del reto de Cape Cod, las propiedades base se combinarán con las de la clasificación. Con todas las propiedades enviadas, puedo comprobar desde el administrador del juego que Cape Cod es el nivel que se debe iniciar. Ahora que tengo todo lo que necesito para una actividad, ingresaré los valores de los metadatos en Xcode. Aquí ya creé una nueva actividad con una imagen y un nombre visible. Ahora puedo configurar las propiedades de la actividad base en esta sección. Para asociar la clasificación de Cape Cod con la nueva actividad, selecciono la clasificación en Xcode y elijo la actividad de Cape Cod en este menú desplegable.

    La clasificación también debe tener las propiedades correctas definidas, lo que puedo hacer dentro de esta sección de propiedades.

    Los metadatos de mi actividad ya están configurados y listos para usarse. Solo falta una pieza: necesito un administrador dentro del juego que envíe al jugador directamente al nivel Cape Cod. En el código del juego, ahora puedo implementar la función de jugador de GKLocalPlayerListener. La instancia de actividad pasada tiene una definición con un identificador que acabo de configurar en Xcode. Una vez encontrado el identificador correcto, reviso el valor de las propiedades, y ahora el jugador puede comenzar en el nivel correcto.

    Con las actividades, también puedes usar esta práctica función setScore para enviar puntuaciones. Después de llamar a activity.start(), cada envío de puntuación se almacena en búfer. En activity.end(), Game Center solo envía la última puntuación del jugador una vez. Esto es útil especialmente para los retos. De esta manera, es poco probable que envíes por error una puntuación varias veces. Los enlaces profundos desde las funciones de Game Center, como Retos, ayudan al jugador a llegar al lugar correcto en el juego. Con las actividades multijugador, los jugadores ahora pueden sumarse al juego junto con sus amigos. En el caso de estas actividades, una actividad estará vinculada a un código de grupo, que podrás integrar con tu sistema multijugador en tiempo real existente.

    Cuando un jugador inicia una nueva actividad multijugador, Game Center genera automáticamente un código de grupo. El jugador ahora puede compartir esta actividad con sus amigos fácilmente a través de iMessage. La actividad y el código de grupo se muestran como una página web en los dispositivos que no tengan la app Juegos instalada. Esta página web también proporciona una etiqueta OpenGraph para garantizar que se vea lo mejor posible al compartirla. No importa cómo los jugadores compartieron la actividad, Game Center le permite a tu juego saber qué código de grupo usa cada jugador para unirse. Luego podrás conectar a todas las personas que tengan el mismo código de grupo dentro de tu sistema multijugador.

    Deberás configurar los metadatos de la actividad como lo hiciste antes. Solo hay una diferencia. Debes marcar la opción Supports Party Code. Todo para el administrador del juego también es igual. Puedes acceder al código de grupo desde la instancia de actividad. Las actividades multijugador también funcionan con la solución de emparejamiento actual de Game Center. Solo pídele a Game Center que busque una coincidencia para esta actividad con la función findMatch() de la instancia de actividad.

    Al crear una actividad, debes tener en cuenta algunas cosas. Para aprovechar al máximo el enlace profundo, omite cualquier pantalla de introducción o selección de juego. En lugar de eso, lleva al jugador directamente al punto de partida correcto. Si en este punto se requiere un pago o una puerta de progresión, incluye un mensaje dentro del juego para que el jugador sepa lo que debe hacer para comenzar a jugar. Muestra con claridad el código de grupo actual en el juego. Esto ayuda a garantizar que el jugador esté en el lugar correcto. También debería haber una opción para que el jugador ingrese el código de grupo manualmente en el juego. Esto ayuda en caso de que el código de grupo se reciba desde un dispositivo o plataforma diferente. Ahora que implementé todas estas funciones en The Coast, es hora de probar y asegurarme de que todo funciona. Le devuelvo la palabra a Josh para que te muestre cómo. Gracias, Varokas. Creo que las actividades y los retos serán una gran adición a nuestro juego, pero primero me gustaría probar la clasificación de Cape Cod que agregué recientemente. Solo como recordatorio, mi clasificación registra la cantidad de barcos que los jugadores llevaron a un lugar seguro. Ahora, puedo usar el nuevo Game Progress Manager para verificar que la lógica de registro de puntuación de esta clasificación funcione bien. Para probar mi nueva clasificación, lo primero que debo hacer es editar el esquema de mi juego y habilitar el modo de depuración de configuración de GameKit. Está en las opciones de ejecución del editor de esquemas.

    Una vez hecho esto, ejecuto mi juego desde Xcode y abro el Game Progress Manager desde el menú Debug.

    Luego, selecciono el dispositivo y el juego que quiero probar. Seleccionaré mi iPhone y The Coast.

    Todos los logros y clasificaciones de mi paquete .gamekit aparecen aquí, y seleccionaré la clasificación que acabo de crear. Desde aquí, puedo enviar cualquier puntuación que quiera haciendo clic en el botón para agregar puntuación. Podría enviar una puntuación en nombre de cualquier jugador, pero enviaré 42 puntos para mí.

    Esto hará que aparezca un banner en mi juego confirmando que se recibieron. Es una función útil que funciona cuando el juego está en modo de depuración. Ahora, si abro la clasificación de Cape Cod, puedo ver la puntuación de prueba que acabo de enviar. Lo que realmente quiero comprobar es si mi juego reporta las puntuaciones debidamente. Borraré la clasificación por ahora haciendo clic en el botón para borrar, confirmaré que esto es lo que realmente quiero hacer y luego jugaré mi juego de verdad y obtendré un puntuación. De regreso en The Coast, guío hacia un lugar seguro tantos barcos como puedo.

    ¡Ups! La langosta me engañó otra vez. Veo de nuevo el banner de depuración y la clasificación de mi juego muestra la puntuación que acabo de obtener. ¡Una buena señal! La puntuación también apareció en Xcode, lo que confirma que la lógica de mi juego es correcta. Vale la pena mencionar que estas puntuaciones residen íntegramente en esta sesión de depuración, no se envían al servidor. Ahora me gustaría probar la actividad que creó Varokas. Dado que está asociado con la clasificación de Cape Cod, puedo ver su vínculo profundo aquí en el Game Progress Manager. Varokas ya configuró el administrador de enlace para iniciar el nivel Cape Cod cuando se hace clic en este enlace. Hago clic en el enlace en Xcode, que tiene el mismo efecto que hacer clic en él en el dispositivo.

    Puedo ver que Cape Cod comienza de nuevo, por lo que el código de administración de enlaces funciona a la perfección. Ahora que estoy seguro de que todo funciona bien, estoy listo para publicar mi paquete .gamekit en App Store Connect. Estoy de nuevo en mi proyecto de Xcode con mi paquete .gamekit seleccionado como antes. Haré clic en los puntos suspensivos, pero esta vez elegiré la opción Push to App Store Connect.

    Nuevamente, seleccionaré The Coast y haré clic en Push.

    Cuando termina, veo todo lo que tenía en mi paquete .gamekit en el sitio web de App Store Connect. ¿Ves cómo todo dice Not Live? Este es un concepto clave en el ciclo de vida de Game Center, y es importante comprender por qué las cosas comienzan en este estado. Demos un paso atrás y observemos todo el proceso, desde la creación hasta publicación, para ver qué implica el estado Not Live. Este diagrama muestra el ciclo de vida de las clasificaciones, los retos, las actividades y los logros de tu juego, desde su creación hasta su publicación. Se divide en tres secciones: Xcode para el desarrollo y la configuración de Game Center, TestFlight para pruebas y App Store Connect para la publicación. Primero, tienes que crear tu juego. Escribe el código y agrega algunas funciones de Game Center con un paquete .gamekit. Luego, prueba exhaustivamente todo lo que creaste con el Game Progress Manager. Cuando estés conforme con tus pruebas, publica tu juego en TestFlight para que tus evaluadores beta puedan probarlo. Una vez que sientas que todo funciona correctamente, envía tu juego a Apple para su revisión. Asegúrate de incluir en tu envío cualquier recurso no activo de Game Center que desees usar. Una vez que Apple haya revisado y aprobado todo, y decidas lanzarlo, tus recursos de Game Center estarán activos y tu juego se publicará en el App Store. ¡Felicitaciones! Este es un momento emocionante para tu juego. Ahora debes agregar a tu juego un paquete .gamekit en Xcode. Ya sea que cuentes con una integración completa a Game Center o que seas principiante, esto hará que desarrollar tu juego sea más fácil. Después de eso, agrega el código para inicializar GameKit. Con solo hacer esto, tu juego tendrá más visibilidad en todo el sistema operativo. Las actividades y los retos son nuevos, y creemos que el tiempo que inviertas en explorarlos valdrá la pena, así que ¡pruébalos! Para asegurarte de que tus juegos se muestren mejor en la app Juegos, mira el video de mi colega Logan, Engage players with the Apple Games app. Los desarrolladores de Unity deben ver el video sobre la integración de las estructuras de Apple en sus proyectos. Esperamos jugar a los divertidos juegos que sabemos que crearás. Muchas gracias por ver nuestra sesión.

    • 4:17 - Initialize GameKit

      GKLocalPlayer.local.authenticateHandler = { _, error in
          print("\(GKLocalPlayer.local.alias) is ready to play!")
      }
    • 4:29 - Initialize GameKit (Unity)

      var player = await GKLocalPlayer.Authenticate();
      Debug.Log($"{player.alias} is ready to play!");
    • 13:07 - Submit score to challenge

      // Submit score
      
      GKLeaderboard.submitScore(points, 
               context: 0, 
               player: GKLocalPlayer.local,
               leaderboardIDs: ["thecoast.lb.capecod"])
    • 20:24 - Activity properties

      // Activity properties 
      
      extension AppDelegate: GKLocalPlayerListener {
      
          func player(_ player: GKPlayer, wantsToPlay activity: GKGameActivity) async -> Bool {
              let activityId = activity.activityDefinition.identifier
              
              if activityId == "thecoast.activity" {
                  let level = activity.properties["level"]
                  
                  if level == "capecod" {
                      startCapeCod(activity)
                  }
              }
              
              return true
          }
      
      }
    • 20:48 - Managing score submission with activity

      // Managing score submission with activity 
      
      class GameplayManager {
          let activity: GKGameActivity
          let leaderboard: GKLeaderboard
          
          init(activity: GKGameActivity, leaderboard: GKLeaderboard) {
              self.activity = activity
              self.leaderboard = leaderboard
              
              activity.start()
          }
          
          func setScore(_ newScore: Int) {
              activity.setScore(on: leaderboard, to: newScore)
          }
      
          deinit {
              activity.end()
          }
      }
    • 22:35 - Access the Party Code

      extension AppDelegate: GKLocalPlayerListener {
          func player(_ player: GKPlayer, wantsToPlay activity: GKGameActivity) async -> Bool {
              let activityId = activity.activityDefinition.identifier
              
              if activityId == "thecoast.multiplayer" {
                  startMultiplayer(partyCode: activity.partyCode)
              }
              
              return true
          }
      }
    • 22:48 - Game Center Matchmaking

      let match = try await activity.findMatch()
    • 0:00 - Introducción
    • Game Center es la red social de juegos de Apple. Ofrece un conjunto de características, incluidos logros, tablas de clasificación, retos y actividades, que mejoran la participación de los jugadores en los juegos. Con solo habilitar Game Center aumenta la visibilidad de tu juego en todo el ecosistema Apple, incluida la nueva Apple Games app, que viene preinstalada en macOS, iPadOS e iOS este otoño. Game Center también fomenta la interacción social a través de notificaciones push, fomentando la competencia amistosa y manteniendo a los jugadores interesados en el juego.

    • 2:41 - Configuración del proyecto
    • Es fácil integrar Game Center en tu juego. Hay dos pasos: Agrega el derecho de Game Center a su proyecto Xcode y agregue dos líneas de código para inicializar GameKit. ¡Eso es todo! Opcionalmente, puedes configurar funciones adicionales de Game Center directamente en Xcode usando paquetes GameKit, una nueva característica en Xcode 26 que se puede sincronizar con App Store Connect.

    • 6:51 - Integrar las funcionalidades de Game Center
    • Usando el ejemplo de un juego llamado The Coast, Josh le muestra exactamente cómo usar un paquete GameKit en Xcode para integrar las funciones de Game Center. Agrega una nueva tabla de clasificación para el nivel Cape Cod, donde los jugadores tocan los barcos para guiarlos a un lugar seguro, evitando las langostas furtivas que finalizan el nivel. Los mismos pasos también se aplican cuando creas otras funciones de Game Center, como logros, retos y actividades.

    • 10:00 - Retos y actividades
    • Game Center tiene dos novedades este año: Retos y Actividades. Los retos se basan en tablas de clasificación existentes y permiten a los jugadores invitar a amigos para competir en partidos en tiempo real y con límite de tiempo. Los jugadores pueden personalizar los retos, eligiendo los participantes, la duración y el número de intentos, haciendo que cada competición sea personalizada. Las actividades proporcionan una forma de establecer vínculos profundos con áreas específicas de tu juego, como el comienzo de un nivel o una pelea contra un jefe. Puedes asociar actividades con tablas de clasificación, retos e incluso experiencias multijugador en tiempo real. Game Center ahora ofrece soporte para códigos de grupo compartibles, que los juegos pueden usar para conectar a los jugadores entre sí en experiencias multijugador.

    • 23:53 - Prueba tu implementación
    • Josh te guía a través de los pasos necesarios para probar una tabla de clasificación y su enlace profundo de actividad asociada en Xcode.

    • 26:44 - Publicar en App Store
    • Vea cómo la creación de un paquete GameKit y la prueba de su implementación con Game Progress Manager se integra perfectamente al proceso de publicación de su juego en la App Store.

    • 28:32 - Próximos pasos
    • Agrega un paquete GameKit a tu juego en Xcode para facilitar el proceso de desarrollo de tu juego. Luego, agrega el código para inicializar GameKit en tu juego. Con solo realizar estos dos pasos, harás que tu juego sea más visible en todo el sistema operativo. Y prueba las nuevas funciones, actividades y retos del Game Center en tu juego. Si eres un desarrollador de Unity, consulta el complemento GameKit en GitHub.

Developer Footer

  • Videos
  • WWDC25
  • Empezar a usar Game Center
  • Open Menu Close Menu
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    Open Menu Close Menu
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • Icon Composer
    • SF Symbols
    Open Menu Close Menu
    • Accessibility
    • Accessories
    • App Store
    • Audio & Video
    • Augmented Reality
    • Business
    • Design
    • Distribution
    • Education
    • Fonts
    • Games
    • Health & Fitness
    • In-App Purchase
    • Localization
    • Maps & Location
    • Machine Learning & AI
    • Open Source
    • Security
    • Safari & Web
    Open Menu Close Menu
    • Documentation
    • Sample Code
    • Tutorials
    • Downloads
    • Forums
    • Videos
    Open Menu Close Menu
    • Support Articles
    • Contact Us
    • Bug Reporting
    • System Status
    Open Menu Close Menu
    • Apple Developer
    • App Store Connect
    • Certificates, IDs, & Profiles
    • Feedback Assistant
    Open Menu Close Menu
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program
    • News Partner Program
    • Video Partner Program
    • Security Bounty Program
    • Security Research Device Program
    Open Menu Close Menu
    • Meet with Apple
    • Apple Developer Centers
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Academies
    • WWDC
    Get the Apple Developer app.
    Copyright © 2025 Apple Inc. All rights reserved.
    Terms of Use Privacy Policy Agreements and Guidelines