Cómo preparar el juego para portarlo a PC y consola

Los beneficios de los juegos multiplataforma se han discutido durante mucho tiempo en los círculos de los jugadores, pero poca cobertura entre los desarrolladores. No hay muchos artículos sobre las cosas básicas necesarias para crear un juego multiplataforma.

Sin embargo, la plataforma cruzada ahora está en aumento. Hay más y más juegos con esta propiedad. Fortnite, Call of Duty, Street Fighter: son de diferentes géneros, implementados de diferentes maneras, pero en un grado u otro tienen características multiplataforma.

Andersen Horowitz escribió en su blog que los juegos han sido segmentados históricamente por diferentes plataformas, pero ahora con la creciente popularidad de multiplataforma, el número de juegos multijugador también está creciendo cada vez más.

¿Por qué necesitas hacer que el juego sea multiplataforma?

Esto es genial para los jugadores: no tienes que elegir en qué dispositivo ejecutar el juego; puedes jugar libremente con amigos sin preocuparte de si están en la base de datos de jugadores.

Para los desarrolladores de juegos, esto también es excelente, porque la base de usuarios ahora no está segmentada por diferentes plataformas; en cambio, puede organizar un gran grupo de jugadores y crear una experiencia multiusuario más rica con sesiones de juego más completas.



¡Genial, así que vamos a portar nuestro juego a varias plataformas!

Por supuesto que suena genial, por qué no. Eso es solo ...

En El Señor de los Anillos, si recuerdas, los héroes también discutieron por consejo de Elrond, dicen, hagamos lo que deberíamos, a lo que Boromir dijo:



Y todo porque Boromir lo sabe: crear un juego multiplataforma completo no es tan simple.

Entonces surgió la idea de preparar material para aquellos que están considerando crear su propio juego multiplataforma.

Si ya ha publicado juegos anteriormente, significa que se ocupó de su envío a varias plataformas y conoce las capacidades de cada uno de ellos, lo que será una buena base para el material de hoy y, además, ayudará en la etapa inicial de preparación.


9 cosas que debes considerar antes de crear un juego multiplataforma


Consejo n. ° 1: Familiarícese con la terminología Hay

bastantes conceptos diferentes relacionados con multiplataforma, pero primero presentaremos los más necesarios: cross-play, cross-progression y cross-buy.

¿Cuál es la diferencia?

Cross-play (cross-play o cross-play) es justo lo que piensan las personas cuando escuchan sobre un juego multiplataforma: combinar usuarios que juegan en diferentes plataformas en una sola sesión multiusuario. Es decir, cuando los jugadores de Xbox pueden colisionar en un juego con jugadores de PlayStation o Steam.

Progresión cruzada(o Cross-Save, cross-save) se llama la capacidad de comenzar a jugar en una plataforma, guardar su progreso y continuar jugando en otra plataforma. Esto se puede encontrar tanto en juegos para un jugador como para juegos multijugador.

La compra cruzada (o comercio cruzado, compra cruzada) es una compra realizada en una plataforma y luego aparece en su biblioteca en otra. Su pariente cercano es BOPA (Buy Once Play Anywhere: una vez comprado, juega en cualquier lugar), pero hablaremos de esto más adelante.

Consejo # 2: Crea tu propio dominio en línea

Cuando lanzas un juego en diferentes plataformas, los servicios auxiliares especiales de cada plataforma están disponibles para ti, y son realmente convenientes.



Si desea hacer un juego multiplataforma, desafortunadamente, no puede usar la mayoría de estos servicios, porque las estadísticas de Steam, por ejemplo, no coinciden con las estadísticas de Xbox o PlayStation. Debe tener su propio conjunto de servicios: estadísticas, sistemas de identificación, emparejamiento y más, que vincularán los datos de varias plataformas.



Entonces, ¿qué necesitas primero?

  1. Sistema de identificación y cuentas;
  2. Sistema de comercio electrónico (especialmente si va a monetizar su juego usando compras en la aplicación);
  3. Otros servicios requeridos de acuerdo con los requisitos de certificación.

Por ejemplo, la certificación de Xbox requiere que use MPSD (directorio de sesiones de multijugador), incluso si tiene su propio sistema de emparejamiento, porque toda la información que almacena en MPSD, luego la utilizan para habilitar la presencia rica en el tablero de Xbox.

Consejo # 3: Aprende más sobre tus jugadores

Considera un ejemplo.

Digamos que un jugador tiene:

  • Cuenta de Steam;
  • Cuenta de tienda épica
  • Cuenta Xbox
  • Cuenta PlayStation
  • Cambiar cuenta
  • Etc.

¿Cómo sabe el juego que esta es la misma persona?

Aquí es donde el llamado sistema de vinculación de cuentas viene al rescate.

Vincular cuentas le permite vincular su cuenta compartida con cuentas de varias plataformas.

Si juegas a Call of Duty, probablemente sepas que la última parte de la franquicia es multiplataforma. Y si desea encontrar a su amigo en el sistema, necesitará usar Activision ID. Entonces, si juegas en Xbox, no podrás encontrar a tus amigos jugando en PlayStation, porque estas dos bases de jugadores no se superponen, pero al mismo tiempo, los datos de todos los jugadores en ambas plataformas se almacenan en Activision ID.



Este sistema de identificación unificado se convertirá en una parte fundamental no solo para el juego actual, sino para todos sus proyectos futuros. Es ella quien te conecta con otras plataformas.

Aquí hay otro consejo. Preste mucha atención a los requisitos de GDPR y CCPA: sus estándares deben tenerse en cuenta en una etapa temprana para evitar consecuencias desagradables. Además, tarde o temprano, nuevas plataformas comenzarán a aparecer, ¿quieres poder agregarlas a tu juego a medida que estén disponibles?

El siguiente es un ejemplo de cómo implementar el enlace de la cuenta Steam.



Por lo tanto, se necesita un sistema de identificación para intercambiar el token Steam por el suyo. Entonces el jugador puede usar este token para activar los servicios que necesita.

Consejo # 4: Permita que los usuarios jueguen juntos

Ahora que ha identificado con éxito a sus jugadores utilizando el sistema de vinculación de cuentas, el siguiente paso es lograr que los usuarios jueguen juntos.



Entonces, es hora de juego cruzado.

Para que puedas conectar a los jugadores a la misma sesión multijugador con todos sus amigos, debes organizar un sistema de emparejamiento, administrar sesiones de juego y una serie de servicios: la lista completa depende de las necesidades de un juego en particular. Por lo tanto, primero identifica a los usuarios y los reúne independientemente de la plataforma en la que juegan, y luego el emparejamiento los organiza en sesiones de juego.



Algunas notas sobre multijugador y calidad de conexión.

Si elige un motor de juego usted mismo, adopte una compatibilidad multiplataforma: dichos motores ya tienen un mecanismo incorporado para realizar la sincronización cliente-servidor. Si decide crear su propio motor, por supuesto, tiene derecho a hacerlo, pero tenga en cuenta lo siguiente.

Cuando desee que sus usuarios comiencen a conectarse con otros jugadores, es mejor no usar la ruta P2P directa. Teniendo en cuenta que no puede utilizar las bibliotecas de plataforma integradas como Xbox Secure Device Associations, esta tarea se vuelve bastante confusa, especialmente cuando hablamos de conectar la consola a una PC. Consejo: Use un servidor dedicado o un par de retransmisión para crear su grilla.

Y lo último: dado que ahora se trata de plataformas de diferentes capacidades (PC, consolas), permita que sus simulaciones usen una frecuencia fija de 30 cuadros por segundo. Al mismo tiempo, la representación se puede dejar como está.

Consejo # 5: Deje que los jugadores continúen el juego en una plataforma diferente

Como muchos otros, el autor pasó cientos de horas en The Witcher 3: primero jugó en PlayStation, luego decidió cambiar a Switch, por lo que tuve que comenzar de nuevo, porque en The Witcher "no hay forma de continuar el juego en otra plataforma. Con el tiempo, los desarrolladores aún organizaron un guardado cruzado entre Steam y Switch. Es cierto que se trataba de PlayStation 4. Sin embargo, es probable que tarde o temprano el CD Projekt RED establezca una plataforma cruzada y entre ellos; lo principal es que ya se ha establecido la dirección correcta.

La forma de almacenar datos es completamente su elección: puede almacenarlos en la nube como blobs, puede como estadísticas, puede como una cadena en los atributos del perfil. Lo principal es lograr el objetivo de determinar que sigues siendo tú, independientemente de si juegas en Switch, PlayStation o PC.

Además, hablando de multiplataforma, uno no puede evitar mencionar SPOP y MPOP.

SPOP(punto de presencia único) significa un punto de presencia único cuando permite solo una conexión a una cuenta en un momento dado, y entrar a un juego en una plataforma significa cerrar sesión automáticamente en otra. Por lo tanto, SPOP puede protegerlo de aparecer simultáneamente en el mismo lugar desde diferentes plataformas. Este es el método de implementación más fácil y seguro que evita el estancamiento de datos.

MPOP(múltiples puntos de presencia) es una forma de comportamiento completamente diferente. Le permite tener múltiples conexiones que apuntan lógicamente a la misma cuenta. Organizarlo puede ser muy difícil, ya que MPOP debería crear una cuenta de invitado cuando los usuarios inicien sesión en la misma cuenta al mismo tiempo, lo que puede causar problemas para garantizar que el progreso se guarde correctamente.

Y aunque en la mayoría de las situaciones resulta más conveniente usar SPOP, usted mismo debe considerar cuidadosamente las ventajas y desventajas de un método particular para su juego.

Consejo # 6: Unifique su comercio

Hablemos de la diferencia entre las tiendas principales y auxiliares.



La tienda principal es una tienda que debe configurar desde el lado de la plataforma donde tienen lugar las operaciones con dinero real, mientras que la tienda auxiliar es la que usted controla en el juego.

La tienda principal primero debe configurarse en cada plataforma individual, y luego moverse a diferentes regiones, lo que ya es una tarea bastante difícil, especialmente porque el juego multiplataforma no tiene ninguna API para hacer esto. Este es un proceso manual minucioso que debe realizar para cada plataforma individual. Por lo tanto, es mejor organizar la tienda principal de la manera más simple posible y equipar la tienda del juego de la manera que desee.



Lo anterior es un ejemplo de cómo funciona el sistema, donde los jugadores pueden realizar compras en Steam, y la seguridad de estas compras está garantizada por un único sistema de comercio electrónico.

El siguiente es un diagrama de flujo de compra de Steam.



Consejo # 7: Tenga cuidado con los requisitos de certificación adicionales para sistemas multiplataforma.

Tres cosas están garantizadas en su vida:

  1. Muerte;
  2. Impuestos
  3. La certificación falló en una de las plataformas al lanzar el parche.

Si ya ha aprobado la certificación anteriormente, sabe que puede ser bastante difícil. Incluye muchos aspectos, y esta lista varía de una plataforma a otra. Al crear un juego multiplataforma, debes tener en cuenta que para este caso hay requisitos de certificación adicionales.

Recomendación: cree una bolsa de aire para usted mismo a fin de comprender lo que necesitará para aprobar con éxito la certificación y tomar las medidas adecuadas.

Consejo # 8: separe el lanzamiento y el lanzamiento

Fortnite tiene un evento temporal que lleva a los héroes de la primera temporada a la segunda: según la trama, el mundo entero de repente comenzó a colapsar y absorberse en un agujero negro.

Curiosamente, este evento no tiene nada que ver con la activación de la actualización. Cuando lanzas una actualización del juego, no puedes sincronizarlo con los cambios de configuración en todas las plataformas, este es un proceso que lleva mucho tiempo: debes contactar a tu gerente de cuenta, pasar por el proceso de certificación y hacer muchas otras cosas.

Pero esta no es la única manera con la que puedes hacer cambios en el juego.

Los cambios en el juego generalmente se realizan a través de:

  1. Actualizaciones de juegos;
  2. Parche para reemplazo de datos;
  3. Interruptores del lado del servidor (Conmutación del lado del servidor).

Los conmutadores del lado del servidor son variables del servidor que primero define en el servidor y luego obliga a los clientes y servidores del juego a responder a los cambios en estas variables. Pueden ser útiles para programar eventos del juego, equilibrar el juego, activar el Kill-Switch y las banderas de funciones.

Ejemplos de uso:

  • Activar / desactivar funciones en ciertas plataformas;
  • Restringir el acceso a ciertas funciones del juego para el control de calidad.



El diagrama anterior muestra cómo puede organizar un sistema para responder a los clientes y servidores del juego a las variables cambiantes en un servidor. Las notificaciones automáticas en este caso son bastante convenientes, pero no son obligatorias, en lugar de ellas, solo puede usar los grupos.

Consejo # 9: Una vez comprado, juega en cualquier lugar (BOPA)

Advertencia: este es un territorio inexplorado, y el autor no puede garantizar la precisión absoluta de los datos.

BOPA (Buy Once Play Anywhere) permite a los usuarios comprar un juego en una plataforma para que luego aparezca en sus compras en cualquier otra plataforma.

¿Por qué es importante?



Los jugadores ya no necesitan preocuparse por qué plataformas comprar, solo pueden comprar el juego. Para los desarrolladores de juegos, el beneficio es que pueden reunir a sus jugadores en una base, expandir su marca y atraer tráfico a su tienda.

Enumeramos tres elementos requeridos por BOPA:

  1. Sistema de identificación unificado;
  2. Sistema unificado para otorgar derechos de acceso con la capacidad de rastrearlos;
  3. Otorgar derechos de acceso en su tienda multiplataforma sin la necesidad de ingresar una clave: la capacidad de llamar a la API de otra plataforma para proporcionar derechos a la actual.

Vale la pena señalar que la última opción no está ampliamente disponible, solo algunas plataformas lo admiten.

Aquí hay algunos ejemplos de implementación de BOPA.

Escenario 1: después de una compra en su tienda, el juego aparece en la biblioteca de Steam.



Nota: la API utilizada aquí no está disponible públicamente, por lo que debe hablar con su administrador de cuentas.

Escenario 2: al comprar en Steam, el juego aparece en tu tienda.



En este caso, no podrá realizar un seguimiento del proceso de compra en Steam, por lo que debe confiar en el jugador.

Puntos clave

Multiplataforma es ideal para juegos con un plan de soporte de proyectos a largo plazo. Como probablemente ya haya entendido, la creación de tales juegos es muy no trivial: necesitará un equipo grande, mucho tiempo y dinero para tener la infraestructura adecuada para soportarlo.

¿Donde empezar?

Al igual que en el caso de los motores de juegos, hay varias soluciones que puede usar para implementar multiplataforma, por lo que no es necesario crearlas desde cero, por supuesto, si no lo desea usted mismo. Algunos de ellos: GameSparks, Photon, AccelByte, PlayFab.

Cada uno tiene sus pros y sus contras, depende de lo que necesite. Pueden variar según:

  1. Costo;
  2. Mantenimiento de varias plataformas;
  3. Opciones de personalización y extensibilidad
  4. Calidad SDK;
  5. Fiabilidad;
  6. Escalabilidad.

Este artículo analiza los problemas más básicos que puede encontrar al crear un juego multiplataforma. Para seguir estudiando este aspecto, puede unirse, por ejemplo, al tema Online Gamedev [BaaS] en Discord.

All Articles