> ## 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.

# Integración con PlayFab Multiplayer Servers

> Aprenda a configurar una cola de emparejamiento de PlayFab para asignar automáticamente una compilación de Multiplayer Server o un alias de compilación para cada partida completada.

El emparejamiento incluye una opción que puede crear automáticamente un servidor de juego para la partida resultante. El servidor asignado ejecuta una compilación, que se configura en la configuración de la cola. Al iniciarse, el servidor recibe los miembros de la partida como la lista de jugadores iniciales.

Una cola de emparejamiento está vinculada a una única compilación de servidor multijugador o a un alias de compilación.

## Requisitos para usar la integración directa de emparejamiento y servidores

Para asignar un servidor multijugador desde el emparejamiento, primero debe configurar una compilación e implementarla. Opcionalmente, puede crear un alias de compilación y usarlo también. Se prefieren los alias de compilación, ya que ofrecen más flexibilidad para el uso del título. Siga el vínculo que proporcionamos aquí para obtener más información sobre las [compilaciones de Multiplayer Server](/services/playfab/multiplayer/servers/deploying-playfab-multiplayer-server-builds) y los [alias de compilación de Multiplayer Server](/services/playfab/multiplayer/servers/allocating-with-build-alias)

El emparejamiento también necesita que se agregue una regla de selección de región a la cola, de modo que las partidas puedan asignarse en la región óptima para la compilación. Las mediciones de latencia que se pasan a la regla de selección de región deben coincidir con las regiones donde la compilación está activa. Para obtener más información sobre cómo pasar atributos a una regla de selección de región, consulte [Regla de selección de región](/services/playfab/multiplayer/matchmaking/ticket-attributes#region-selection-rule).

## Activación de la asignación de servidores para la cola

Para habilitar la asignación de servidores para una cola, debe activar la casilla **Enable server allocation** en la página de configuración de la cola. Una vez habilitada, elija **Build alias** o **Build Id**. Elija en la lista desplegable el valor correcto que usará la cola. Una vez que habilite la característica, el emparejamiento intenta asignar un servidor para todas las partidas creadas dentro de la cola.

El siguiente ejemplo muestra cómo debería verse la configuración de una cola con integración de servidor multijugador
usando un Build Id.

```json theme={null}
"MatchmakingQueue": {
    "Name": "ServerEnabledQueue",
    "MinMatchSize": 2,
    "MaxMatchSize": 2,
    "ServerAllocationEnabled": true,
    "BuildId": "88b3e315-829c-4b6d-9872-74f427ad5331",
	"RegionSelectionRule": {
		"MaxLatency": 1000,
		"Path": "Latencies",
		"Weight": 1.0,
		"Name": "RegionSelectionRule"
	}
}
```

Este es el mismo ejemplo con un alias de compilación.

```json theme={null}
"MatchmakingQueue": {
    "Name": "ServerEnabledQueue",
    "MinMatchSize": 2,
    "MaxMatchSize": 2,
    "ServerAllocationEnabled": true,
    "BuildAliasParams": {
        "AliasId": "d14e2ac7-ea51-47aa-a7ba-cc427ab74f9s"
    },
	"RegionSelectionRule": {
		"MaxLatency": 1000,
		"Path": "Latencies",
		"Weight": 1.0,
		"Name": "RegionSelectionRule"
	}
}
```

El flujo de llamadas al emparejamiento sigue siendo el mismo con la asignación de servidores habilitada. Una vez que el emparejamiento asigna un servidor para la partida, los detalles del servidor resultante pueden leerse desde el propio objeto Match llamando a
[GetMatch](xref:titleid.playfabapi.com.multiplayer.matchmaking.getmatch).

A continuación se proporciona una respuesta de ejemplo de una llamada a `GetMatch` para una cola con la asignación de servidores
habilitada.

```json theme={null}
{
    "MatchId": "7c36330d-46b5-443f-8d8f-10390bce09d5",
    "Members": [{
        "TeamId": "",
        "Entity": {
            "Id": "67282A13A1A58910",
            "Type": "title_player_account",
            "TypeString": "title_player_account"
        },
        "Attributes": {
            "DataObject": null,
            "EscapedDataObject": "{\"StringEqualityRulePath\":\"0bc42969-76b1-4dcb-871d-d6e19cee741b\"}"
        }
    },
    {
        "TeamId": "",
        "Entity": {
            "Id": "6DB2B17FD21CC230",
            "Type": "title_player_account",
            "TypeString": "title_player_account"
        },
        "Attributes": {
            "DataObject": null,
            "EscapedDataObject": "{\"StringEqualityRulePath\":\"0bc42969-76b1-4dcb-871d-d6e19cee741b\"}"
        }
    }],
    "RegionPreferences": ["WestUs", " EastUs"],
    "ServerDetails": {
        "IPV4Address": "40.76.31.170",
        "Ports": [{
            "Name": "game_port",
            "Num": 30003
        }]
    }
}
```

Los clientes pueden usar la dirección IP y el puerto de la sección de detalles del servidor de la respuesta para conectarse al servidor. Para obtener más información sobre cómo conectar clientes a servidores multijugador, consulte [Conexión de clientes a
servidores](/services/playfab/multiplayer/servers/connecting-clients-to-game-servers)

<Note>
  Cuando una región de la compilación se queda sin capacidad, el emparejamiento no puede asignar partidas para la cola en esa región. El emparejamiento seguirá reintentando la asignación hasta que el ticket expire. Para aumentar la capacidad multijugador, consulte [Acceso a límites de núcleos ampliados y regiones adicionales de Azure](/services/playfab/multiplayer/servers/identifying-and-increasing-core-limits)
</Note>

## Información que se pasa al servidor de juego

Esta es la lista de información que el emparejamiento pasa al servidor.

* **SessionId**: el `SessionId` del servidor es igual al MatchId de la
  partida.
* **InitialPlayers**: este valor se establece en la lista de miembros de la partida. La
  lista de jugadores puede leerse en el juego mediante el
  [GSDK](/services/playfab/multiplayer/servers/integrating-game-servers-with-gsdk).
* **PreferredRegions**: este campo se establece en el campo `RegionPreferences` de la
  partida. El servicio de servidores de juego elige una región adecuada para el
  servidor a partir de esta lista.

El emparejamiento no pasa ningún atributo de ticket al servidor de juego. Si el juego
necesita acceder a algún atributo de ticket en el servidor, puede hacerlo llamando a
[GetMatch](xref:titleid.playfabapi.com.multiplayer.matchmaking.getmatch) con
el encabezado `ReturnMemberAttributes` establecido en `true`.

<Note>
  Recientemente habilitamos el paso del nombre de la cola durante la asignación de servidores. Esta característica está en versión preliminar y puede leer más al respecto [aquí](https://github.com/PlayFab/MpsSamples/blob/main/MatchmakeSample/matchMakingAndMps.md).
</Note>


## Related topics

- [Inicio rápido de Matchmaking](/es/services/playfab/multiplayer/matchmaking/quickstart.md)
- [Integración del GSDK de PlayFab en Unity](/es/services/playfab/multiplayer/servers/mps-unity.md)
- [Depuración local de servidores de juego e integración con PlayFab](/es/services/playfab/multiplayer/servers/locally-debugging-game-servers-and-integration-with-playfab.md)
- [Integración con PlayFab Lobby y Match](/es/services/xbox-services/multiplayer/mpa/concepts/live-mpa-playfab-integration.md)
- [Términos de PlayFab Multiplayer Server](/es/services/playfab/multiplayer/servers/server-terms.md)
