SDK del servidor de Go para Amazon GameLift Servers: tipos de datos - Amazon GameLift Servers

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

SDK del servidor de Go para Amazon GameLift Servers: tipos de datos

Utilice la referencia del SDK del servidor para integrar su juego multijugador para el alojamiento con Amazon GameLift Servers. Para obtener ayuda con el proceso de integración, consulte Adición de Amazon GameLift Servers al servidor de juegos con el SDK del servidor.

GameLiftServerAPI.go define las acciones del SDK del servidor Go.

SDK del servidor de Go para Amazon GameLift Servers: acciones

LogParameters

Un objeto que identifica los archivos generados durante una sesión de juego que quiere que Amazon GameLift Servers cargue y almacene una vez finalizada la sesión de juego. El servidor de juegos proporciona LogParameters a Amazon GameLift Servers como parte de un objeto ProcessParameters en una llamada a ProcessReady().

Propiedades

Descripción
LogPaths

Lista de las rutas de directorio a archivos de registro del servidor de juegos que desea que Amazon GameLift Servers almacene para futuros accesos. El proceso del servidor genera esos archivos durante una sesión de juego. Defina los nombres y las rutas de los archivos en el servidor de juegos y almacénelos en el directorio raíz de compilación del juego.

Las rutas del registro deben ser absolutas. Por ejemplo, si la compilación del juego almacena los registros de sesión de juego en una ruta del tipo MyGame\sessionLogs\, la ruta sería c:\game\MyGame\sessionLogs en una instancia de Windows.

Tipo: []string

Obligatorio: no

MetricsParameters

Objeto que comunica los parámetros de configuración para inicializar el sistema de métricas. Esta configuración se utiliza para configurar los informes de StatsD, los informes de bloqueo y el comportamiento de procesamiento de las métricas. El servidor de juegos proporciona MetricsParameters a Amazon GameLift Servers como parte de una llamada a InitMetrics().

Propiedades

Descripción
StatsdHost

Host del servidor de StatsD para los informes de métricas (por ejemplo, “localhost”).

Tipo: string

Obligatorio: sí

StatsdPort

Puerto del servidor de StatsD para los informes de métricas (por ejemplo, 8125).

Tipo: int

Obligatorio: sí

CrashReporterHost

Host del servidor que notifica el bloqueo con fines de seguimiento y supervisión de procesos.

Tipo: string

Obligatorio: sí

CrashReporterPort

Puerto que notifica el bloqueo con fines de seguimiento y supervisión de procesos.

Tipo: int

Obligatorio: sí

FlushIntervalMs

Intervalo de vaciado de métricas en milisegundos. Controla la frecuencia con la que se envían las métricas a StatsD.

Tipo: int

Obligatorio: sí

MaxPacketSize

Tamaño máximo de paquete para las métricas, en bytes. Limita el tamaño de los paquetes UDP enviados a StatsD.

Tipo: int

Obligatorio: sí

ProcessParameters

Un objeto que describe la comunicación entre un proceso del servidor y Amazon GameLift Servers. El proceso del servidor proporciona esta información a Amazon GameLift Servers con una llamada a ProcessReady().

Propiedades

Descripción
LogParameters Un objeto con rutas de directorio a los archivos que se generan durante una sesión de juego. Amazon GameLift Servers copia y almacena los archivos para accesos futuros.

Tipo: LogParameters

Obligatorio: no

OnHealthCheck Nombre de la función de devolución de llamada que invoca Amazon GameLift Servers para solicitar un informe de estado del proceso del servidor. Amazon GameLift Servers llama a esta función cada 60 segundos y espera otros 60 segundos para obtener una respuesta. El proceso del servidor devuelve TRUE si está en buen estado y FALSE si no. Si no se devuelve ninguna respuesta, Amazon GameLift Servers registra el proceso del servidor como defectuoso.

Tipo: OnHealthCheck func() bool

Obligatorio: no

OnProcessTerminate La función de devolución de llamada que invoca Amazon GameLift Servers para forzar el cierre del proceso de servidor. Después de llamar a esta función, Amazon GameLift Servers espera 5 minutos hasta que el proceso del servidor se cierre y responde con una llamada a ProcessEnding() antes de cerrar el proceso del servidor.

Tipo: OnProcessTerminate func()

Obligatorio: sí

OnStartGameSession Nombre de la función de devolución de llamada que invoca Amazon GameLift Servers para proporcionar un objeto de sesión de juego actualizado. Amazon GameLift Servers llama a esta función una vez que se ha procesado una solicitud de reposición de emparejamiento para proporcionar datos actualizados del emparejador. Pasa un objeto GameSession, una actualización de estado (updateReason) y el ID del ticket de reposición de emparejamiento.

Tipo: OnStartGameSession func (model.GameSession )

Obligatorio: sí

OnUpdateGameSession Función de devolución de llamada que invoca Amazon GameLift Servers para pasar la información de sesión de juego actualizada al proceso del servidor. Amazon GameLift Servers llama a esta función una vez que se ha procesado una solicitud de reposición de emparejamiento para proporcionar datos actualizados del emparejador.

Tipo: OnUpdateGameSession func (model.UpdateGameSession)

Obligatorio: no

Port El número de puerto en el que escucha el proceso del servidor para recibir conexiones de jugador nuevas. El valor debe estar en el rango de puertos configurado para cualquier flota que implemente esa compilación de servidor de juegos. Este número de puerto se incluye en los objetos de sesión de juego y de jugador, que las sesiones de juego utilizan a la hora de conectarse a un proceso del servidor.

Tipo: int

Obligatorio: sí

UpdateGameSession

Las actualizaciones en un objeto de sesión de juego, que incluye el motivo por el que se actualizó la sesión de juego y el ID del ticket de reposición correspondiente si la reposición se utiliza para reponer las sesiones de los jugadores en la sesión de juego.

Propiedades Descripción
GameSession Un objeto GameSession. El objeto GameSession contiene propiedades que describen una sesión de juego.

Tipo: GameSession GameSession()

Obligatorio: sí

UpdateReason El motivo por el que se actualiza la sesión de juego.

Tipo: UpdateReason UpdateReason()

Obligatorio: sí

BackfillTicketId El ID de ticket de reposición que intenta actualizar la sesión de juego.

Tipo: String

Obligatorio: no

GameSession

Los detalles de una sesión de juego.

Propiedades Descripción
GameSessionId

Un identificador único de la sesión de juego. Un nombre de recurso de Amazon (ARN) de sesión de juego tiene el siguiente formato: arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>.

Tipo: String

Obligatorio: no

Name

Una etiqueta descriptiva de la sesión de juego.

Tipo: String

Obligatorio: no

FleetId

Un identificador único para la flota en la que se ejecuta la sesión de juego.

Tipo: String

Obligatorio: no

MaximumPlayerSessionCount

El número máximo de conexiones de jugadores a la sesión de juego.

Tipo: Integer

Obligatorio: no

Puerto

El número de puerto de la sesión de juego. Para conectarse a un servidor de juegos de Amazon GameLift Servers, una aplicación necesita tanto la dirección IP como el número de puerto.

Tipo: Integer

Obligatorio: no

IpAddress

La dirección IP del servidor de la sesión de juego. Para conectarse a un servidor de juegos de Amazon GameLift Servers, una aplicación necesita tanto la dirección IP como el número de puerto.

Tipo: String

Obligatorio: no

GameSessionData

Un conjunto de propiedades de sesión de juego personalizadas, formateadas como un valor de una sola cadena.

Tipo: String

Obligatorio: no

MatchmakerData

La información sobre el proceso de emparejamiento que se utilizó para crear la sesión de juego, en sintaxis JSON, con formato como cadena. Además de la configuración de emparejamiento utilizada, contiene datos sobre todos los jugadores asignados al emparejamiento, incluidos los atributos de los jugadores y las asignaciones de los equipos.

Tipo: String

Obligatorio: no

GameProperties

Un conjunto de propiedades personalizadas de una sesión de juego, con formato como pares clave-valor. Estas propiedades se pasan a una solicitud de iniciar una nueva sesión de juego.

Tipo: map[string] string

Obligatorio: no

DnsName

El identificador de DNS asignado a la instancia que ejecuta la sesión de juego. Los valores tienen formato siguiente:

  • Flotas habilitadas para TLS: <unique identifier>.<region identifier>.amazongamelift.com.

  • Non-TLS-enabled flotas:ec2-<unique identifier>.compute.amazonaws.com.

Cuando se conecte a una sesión de juego que se ejecute en una flota habilitada de TLS, debe utilizar el nombre de DNS, no la dirección IP.

Tipo: String

Obligatorio: no

ServerParameters

La información utilizada para mantener la conexión entre un servidor de Amazon GameLift Servers Anywhere y el servicio Amazon GameLift Servers. Esta información se utiliza al inicializar nuevos procesos de servidor con InitSDK(). Para los servidores alojados en EC2 instancias Amazon GameLift Servers administradas, usa un objeto vacío.

Propiedades Descripción
WebSocketURL

GameLiftServerSdkEndpoint que devuelve Amazon GameLift Servers cuando se invoca RegisterCompute para un recurso de computación de Amazon GameLift Servers Anywhere.

Tipo: string

Obligatorio: sí

ProcessID

Un identificador único registrado en el proceso del servidor que aloja el juego.

Tipo: string

Obligatorio: sí

HostID

El identificador único del recurso informático que aloja el nuevo proceso del servidor.

El HostID es el ComputeName utilizado cuando registró el recurso informático. Para obtener más información, consulte RegisterCompute.

Tipo: string

Obligatorio: sí

FleetID El identificador único de la flota en la que está registrado el recurso informático. Para obtener más información, consulte RegisterCompute.

Tipo: string

Obligatorio: sí

AuthToken El token de autenticación generado por Amazon GameLift Servers que autentica el servidor en Amazon GameLift Servers. Para obtener más información, consulte GetComputeAuthToken.

Tipo: string

Obligatorio: sí

StartMatchBackfillRequest

Información utilizada para crear una solicitud de reposición de emparejamiento. El servidor de juegos comunica esa información a Amazon GameLift Servers en una llamada a StartMatchBackfill().

Propiedades Descripción
GameSessionArn

El identificador único de la sesión de juego. El GetGameSessionId de la operación de la API devuelve el identificador en formato de ARN.

Tipo: String

Obligatorio: sí

MatchmakingConfigurationArn

El identificador único, en forma de ARN, que el emparejador utiliza para esta solicitud. El ARN del emparejador para la sesión de juego original se encuentra en el objeto de sesión de juego en la propiedad de datos del emparejador. Para obtener más información sobre los datos del emparejador, consulte Trabajo con datos del emparejador.

Tipo: String

Obligatorio: sí

Players

Un conjunto de datos que representa a todos los jugadores que están actualmente en la sesión de juego. El creador de emparejamientos utiliza esta información para buscar nuevos jugadores que son idóneos para los jugadores actuales.

Tipo: []model.Player

Obligatorio: sí

TicketId

El identificador único para un ticket de solicitud de emparejamiento o reposición de emparejamiento. Si no proporciona un valor, Amazon GameLift Servers generará uno. Use este identificador para realizar un seguimiento del estado del ticket de reposición de emparejamiento o cancelar la solicitud si es necesario.

Tipo: String

Obligatorio: no

Jugador

El objeto que representa a un jugador en el emparejamiento. Al iniciar una solicitud de emparejamiento, un jugador tiene un ID de jugador, atributos y, posiblemente, datos de latencia. Amazon GameLift Servers añade la información de los equipos tras realizar un emparejamiento.

Propiedades Descripción
LatencyInMS

Un conjunto de valores expresados en milisegundos que indican la cantidad de latencia que experimenta un jugador cuando se conecta a una ubicación.

Si se utiliza esta propiedad, el jugador solo se empareja con las ubicaciones que aparecen. Si un creador de emparejamientos tiene una regla que evalúa la latencia de los jugadores, estos deben informar de la latencia para ser emparejados.

Tipo: map[string] int

Obligatorio: no

PlayerAttributes

Una colección de pares de clave-valor que contienen información del jugador para su uso en el emparejamiento. Las claves de atributos del jugador deben coincidir con las PlayerAttributes utilizadas en un conjunto de reglas de emparejamiento.

Para obtener más información sobre los atributos de los jugadores, consulte AttributeValue.

Tipo: map[string] AttributeValue

Obligatorio: no

PlayerId

Un identificador único de un jugador.

Tipo: String

Obligatorio: no

Equipo

El nombre del equipo al que está asignado el jugador en un emparejamiento. Defina el nombre del equipo se define en el conjunto de reglas de emparejamiento.

Tipo: String

Obligatorio: no

DescribePlayerSessionsRequest

Un objeto que especifica las sesiones de jugador que recuperar. El proceso del servidor proporciona esta información con una llamada DescribePlayerSessions() a Amazon GameLift Servers.

Propiedades Descripción
GameSessionID

Un identificador único de la sesión de juegos. Use este parámetro para solicitar todas las sesiones de jugador de la sesión de juego especificada.

El formato de ID de sesión de juego es arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>. El GameSessionID es una cadena de ID personalizada o una cadena generada.

Tipo: String

Obligatorio: no

PlayerSessionID

El identificador único de una sesión de jugador. Utilice este parámetro para solicitar una sesión de jugador específica.

Tipo: String

Obligatorio: no

PlayerID

El identificador único de un jugador. Utilice este parámetro para solicitar todas las sesiones de jugador para un jugador específico. Consulte Generación de ID de jugador.

Tipo: String

Obligatorio: no

PlayerSessionStatusFilter

El estado de la sesión de jugador para filtrar los resultados. Los posibles estados de sesión de jugador son los siguientes:

  • RESERVADO: se ha recibido la solicitud de sesión de jugador, pero el jugador aún no se ha conectado al proceso del servidor o aún no se ha validado.

  • ACTIVO: el proceso del servidor ha validado el jugador y está conectado.

  • COMPLETO: la conexión del jugador se ha caído.

  • TIEMPO DE ESPERA AGOTADO: se ha recibido una solicitud de sesión de jugador, pero el jugador no se ha conectado y/o no se ha validado en el plazo de tiempo de espera (60 segundos).

Tipo: String

Obligatorio: no

NextToken

El token que indica el inicio de la siguiente página de resultados. Para especificar el inicio del conjunto de resultados, no indique ningún valor. Si se especifica un ID de sesión de jugador, este parámetro se ignora.

Tipo: String

Obligatorio: no

Limit

El número máximo de resultados que devolver. Si se especifica un ID de sesión de jugador, este parámetro se ignora.

Tipo: int

Obligatorio: no

StopMatchBackfillRequest

Información utilizada para cancelar una solicitud de reposición de emparejamiento. El servidor de juegos comunica esa información al servicio Amazon GameLift Servers en una llamada a StopMatchBackfill().

Propiedades Descripción
GameSessionArn

El identificador único de sesión de juego de la solicitud que se va a cancelar.

Tipo: string

Obligatorio: no

MatchmakingConfigurationArn

El identificador único del emparejador al que se envió esta solicitud.

Tipo: string

Obligatorio: no

TicketId

El identificador único del ticket de solicitud de reposición que se va a cancelar.

Tipo: string

Obligatorio: no

GetFleetRoleCredentialsRequest

Las credenciales de rol que amplían el acceso limitado a tus AWS recursos al servidor del juego. Para obtener más información, consulte, Configuración de un rol de servicio de IAM para Amazon GameLift Servers.

Propiedades Descripción
RoleArn El ARN del rol de servicio que amplía el acceso limitado a sus recursos de AWS .

Tipo: string

Obligatorio: sí

RoleSessionName El nombre de la sesión que describe el uso de las credenciales del rol.

Tipo: string

Obligatorio: sí