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

# Inicio rápido de torneos y tablas de clasificación

> Inicio rápido para los torneos heredados de PlayFab: cree una estadística HighScore y una tabla de clasificación en Game Manager y, después, envíe las puntuaciones de los jugadores desde el cliente con C#.

# Inicio rápido de torneos y tablas de clasificación

En este inicio rápido se describe cómo tener una estadística que realice un seguimiento de la puntuación más alta de los jugadores y cómo obtener una tabla de clasificación con las puntuaciones más altas. Esto se puede utilizar para una tabla de clasificación global o junto con las [estadísticas restablecibles](/services/playfab/community/leaderboards/tournaments-leaderboards/using-resettable-statistics-and-leaderboards) para restablecerlas para un evento o torneo específico.

## Requisitos previos

El jugador ya ha iniciado sesión en PlayFab.

## Paso 1: Crear una estadística y la tabla de clasificación asociada

En Game Manager:

* Vaya a **Leaderboards** en el menú de la izquierda.
* Seleccione **NEW LEADERBOARD**.
* Agregue una **tabla de clasificación** llamada **HighScore** en el campo **Statistic name**.
* Con el menú desplegable proporcionado, establezca el campo **Reset frequency** en **Manually**.
* Vaya al campo **Aggregation method** y seleccione **Maximum** (usar siempre el valor más alto) en el menú desplegable proporcionado.

## Paso 2: Actualizar la estadística con la puntuación más alta de un jugador

Antes de poder usar [UpdatePlayerStatistics](xref:titleid.playfabapi.com.client.playerdatamanagement.updateplayerstatistics) desde el cliente, debemos habilitarlo en **API Features**.

1. Seleccione **Title settings** en el menú Settings del título.
2. Seleccione la pestaña **API Features**.
3. Marque la casilla **Allow client to post player statistics**.
   NOTA: En general, esta opción no debe usarse en un juego en vivo, ya que otorga al cliente autoridad sobre los valores enviados. Esto solo es válido para los casos en los que no exista preocupación por que los jugadores puedan falsear sus estadísticas. Si las estadísticas deben ser seguras, solo deben actualizarse mediante una operación con autoridad de servidor, como un Cloud Script o un servidor de juego personalizado.
4. Seleccione **SAVE** en la parte inferior de la pantalla.

<img src="https://mintcdn.com/microsoft-4404708b/5IpvKlT-jmAaVkeY/images/playfab/community/leaderboards/tournaments-leaderboards/tutorials/api-features-allow-client-to-post-player-statistics.png?fit=max&auto=format&n=5IpvKlT-jmAaVkeY&q=85&s=71197d724d092da6b5ff0a4093ad843e" alt="Game Manager - Configuración - API Features - Permitir al cliente publicar estadísticas de jugador" width="2079" height="1191" data-path="images/playfab/community/leaderboards/tournaments-leaderboards/tutorials/api-features-allow-client-to-post-player-statistics.png" />

### Ejemplo de código de C#: SubmitScore

En este ejemplo de código tendremos una función `SubmitScore` que se llamaría al final de una partida.

```csharp theme={null}

public void SubmitScore(int playerScore) {
    PlayFabClientAPI.UpdatePlayerStatistics(new UpdatePlayerStatisticsRequest {
        Statistics = new List<StatisticUpdate> {
            new StatisticUpdate {
                StatisticName = "HighScore",
                Value = playerScore
            }
        }
    }, result=> OnStatisticsUpdated(result), FailureCallback);
}

private void OnStatisticsUpdated(UpdatePlayerStatisticsResult updateResult) {
    Debug.Log("Successfully submitted high score");
}

private void FailureCallback(PlayFabError error){
    Debug.LogWarning("Something went wrong with your API call. Here's some debug information:");
    Debug.LogError(error.GenerateErrorReport());
}
```

### Paso 3: Solicitar la tabla de clasificación de la puntuación más alta

Para obtener la tabla de clasificación de las puntuaciones más altas de todos los jugadores que han jugado al juego, realizará una llamada a [GetLeaderboard](xref:titleid.playfabapi.com.client.playerdatamanagement.getleaderboard).

### Ejemplo de código de C#: RequestLeaderboard

En este ejemplo de código tendremos una función `RequestLeaderboard` que se llamaría para obtener la tabla de clasificación y que pasará los resultados a una función `DisplayLeaderboard`, la cual rellenaría la experiencia de su juego que muestra las puntuaciones más altas.

```csharp theme={null}
//Get the players with the top 10 high scores in the game
public void RequestLeaderboard() {
    PlayFabClientAPI.GetLeaderboard(new GetLeaderboardRequest {
            StatisticName = "HighScore",
            StartPosition = 0,
            MaxResultsCount = 10
    }, result=> DisplayLeaderboard(result), FailureCallback);
}

private void FailureCallback(PlayFabError error){
    Debug.LogWarning("Something went wrong with your API call. Here's some debug information:");
    Debug.LogError(error.GenerateErrorReport());
}
```


## Related topics

- [Inicio rápido de tablas de clasificación](/es/services/playfab/community/leaderboards/quickstart-leaderboards.md)
- [Inicio rápido de notificaciones push](/es/services/playfab/live-service-management/game-configuration/title-communications/push-notifications/quickstart.md)
- [Torneos y tablas de clasificación](/es/services/playfab/community/leaderboards/tournaments-leaderboards/index.md)
- [Tablas de clasificación de temporada](/es/services/playfab/community/leaderboards/seasonal-leaderboards.md)
- [Inicio rápido de acciones y reglas](/es/services/playfab/data-analytics/acting-data/action-rules-quickstart.md)
