Skip to main content
Se recomienda encarecidamente que considere el uso de los Multiplayer SDK, ya que incluyen compatibilidad con mensajes en tiempo real que reduce la necesidad de sondeo, lo que mejora la experiencia de emparejamiento y reduce los retrasos. Uso de vales de reposición de servidor - Multiplayer SDK
Los juegos hospedados en un servidor a veces necesitan buscar jugadores adicionales. Lo más habitual es que esto ocurra cuando uno o varios jugadores se desconectan mientras la partida está en curso. Los vales de reposición de servidor permiten a un servidor de juego buscar jugadores adicionales que encajen en la partida que se está jugando actualmente. Los vales de reposición de servidor difieren de los vales de emparejamiento normales de varias maneras:
  1. Coincidencia
    • Los vales de reposición no pueden coincidir entre sí.
    • Los vales de reposición tienen prioridad durante la búsqueda. Esto reduce la fragmentación de la base de jugadores.
  2. Contrato
    • Los vales de reposición se pueden crear con un campo ServerDetails. Esto permite al servidor indicar cómo deben conectarse a él los jugadores emparejados.
    • Los vales de reposición se pueden crear con asignaciones de equipo. Esto permite que los juegos con equipos mantengan su información de equipo.
  3. Propiedades de la cola
  4. Propiedad
    • Los vales de reposición pertenecen a un servidor de juego, no a un usuario. Los usuarios no pueden ver los vales de reposición ni interactuar con ellos de ninguna manera.

Creación de un vale de reposición de servidor

El proceso de reposición comienza de forma similar a la creación de un vale de emparejamiento normal, pero con la llamada CreateServerBackfillTicket en lugar de una llamada CreateServerMatchmakingTicket. El servidor de juego debe proporcionar toda la información de los miembros de la partida que hospeda actualmente. La forma más eficaz de hacerlo es almacenar los atributos devueltos en el resultado de la partida anterior. Estos atributos se pueden recuperar llamando a GetMatch con la marca ReturnMemberAttributes. Como alternativa, el servidor de juego puede consultar a los usuarios para obtener la información de atributos. Además de los miembros, el servidor de juego puede especificar dos datos adicionales.

ServerDetails

Esta estructura es idéntica a la estructura devuelta en una llamada GetMatch, y permite al servidor especificar cualquier información necesaria para conectarse a él. Cuando el vale de reposición coincide, su estructura ServerDetails se devuelve a los jugadores que llamen a GetMatch en la partida resultante. Todos los campos de esta estructura son opcionales. Es posible que los títulos solo necesiten un subconjunto de ellos para proporcionar información suficiente para que los clientes se conecten al servidor de juego.
El campo IPV4Address no se valida y puede usarse para proporcionar información arbitraria de cadena de conexión a los clientes.

Asignaciones de equipo

Si el vale de reposición se envía a una cola con equipos, cada miembro también puede especificarse con un TeamId, que indica el equipo en el que se encuentra actualmente. Esta pertenencia se conserva cuando se devuelve una partida. Si no se especifica un TeamId para un usuario, este puede colocarse en cualquier equipo.

Interacción con un vale de reposición

Una vez creado, un vale de reposición comienza a buscar vales de emparejamiento normales que cumplan los criterios de las reglas. El flujo de los vales de reposición es idéntico al funcionamiento de los vales de emparejamiento normales, pero con API análogas. El servidor de juego puede comprobar el estado de su vale llamando a GetServerBackfillTicket. También puede cancelar el vale llamando a CancelServerBackfillTicket.
Los clientes no pueden cancelar un vale de reposición en el que se encuentren. Supongamos que un cliente estaba en una partida 4 contra 4 y un jugador del equipo contrario abandonó. El cliente podría mantener su ventaja cancelando continuamente los vales de reposición en los que estuviera. Para evitarlo, solo los servidores de juego pueden cancelar vales de reposición.

Límites de pertenencia y recuperación de vales de reposición perdidos

Al igual que con los vales de emparejamiento normales, en cualquier momento un usuario solo puede estar en un vale de reposición por cola. Este límite se registra por separado de los vales normales que controla un cliente. En el caso de que un servidor de juego cree un vale de reposición y luego se bloquee, los usuarios del vale de reposición perdido no podrán enviarse en otro vale de reposición debido al límite de pertenencia. Un servidor de juego lo descubre al recibir el error MatchmakingTicketMembershipLimitExceeded, junto con una lista de usuarios que indica cuáles tienen vales de reposición pendientes en un cuerpo errorDetails.
El servidor de juego puede recuperar a un usuario de esta situación llamando a CancelAllServerBackfillTicketsForPlayer, que quita todos los vales de reposición en los que se encuentra el usuario. También se proporciona ListServerBackfillTicketsForPlayer como método para descubrir en qué vales de reposición puede estar un jugador.

Interacciones con la regla de selección de región

La regla de selección de región normalmente requiere que los vales especifiquen una matriz de mediciones de latencia como atributo. Sin embargo, un vale de reposición representa una partida ya en curso en un centro de datos determinado. En lugar de una matriz de mediciones de latencia, la solicitud creada debe especificar una región en la estructura ServerDetails. Para que los vales coincidan con el vale de reposición, deben tener un tiempo de ping aceptable con respecto a la región especificada por el vale de reposición.

Interacciones con la regla de similitud de tamaño de vale de equipo

La regla de similitud de tamaño de vale de equipo obliga a que los grupos grandes de jugadores se emparejen con otros grupos grandes de jugadores. Sin embargo, los vales de reposición no contienen la información de qué jugadores se unieron a la partida como grupo. Por lo tanto, la regla de similitud de tamaño de vale se omite al emparejar vales de reposición.
Última modificación el 28 de agosto de 2026