SDK 5.x del servidor de Amazon GameLift para C++: tipos de datos - Amazon GameLift

SDK 5.x del servidor de Amazon GameLift para C++: tipos de datos

Utilice la referencia del SDK 5.x del servidor de Amazon GameLift para C++ como ayuda para integrar un juego multijugador para el alojamiento con Amazon GameLift. Para obtener ayuda con el proceso de integración, consulte Adición de Amazon GameLift al servidor de juegos.

nota

En este tema se describe la API de C++ de Amazon GameLift que puede utilizar al realizar la compilación con la biblioteca estándar de C++ (std). En concreto, esta documentación se aplica al código que se compila con la opción -DDGAMELIFT_USE_STD=1.

SDK 5.x del servidor de Amazon GameLift para C++: acciones

LogParameters

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

Propiedades

Descripción
LogPaths

La lista de las rutas de directorio a archivos de registro del servidor de juegos que desea que Amazon GameLift 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: std:vector<std::string>

Obligatorio: no

ProcessParameters

Este tipo de datos contiene el conjunto de parámetros enviado a Amazon GameLift en un 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 copia y almacena los archivos para acceder a ellos en el futuro.

Tipo: Aws::GameLift::Server::LogParameters

Obligatorio: no

OnHealthCheck La función de devolución de llamada que invoca Amazon GameLift para solicitar un informe de estado del proceso de servidor. Amazon GameLift llama a esta función cada 60 segundos y espera 60 segundos para recibir 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 registra el proceso del servidor como en mal estado.

Tipo: std::function<bool()> onHealthCheck

Obligatorio: no

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

Tipo: std::function<void()> onProcessTerminate

Obligatorio: sí

OnRefreshConnection El nombre de la función de devolución de llamada que Amazon GameLift invoca para actualizar la conexión con el servidor de juegos.

Tipo: void OnRefreshConnectionDelegate()

Obligatorio: sí

OnStartGameSession La función de devolución de llamada que Amazon GameLift invoca para activar una nueva sesión de juego. Amazon GameLift llama a esta función como respuesta a la solicitud de cliente CreateGameSession. La función de devolución de llamada pasa un objeto GameSession.

Tipo: const std::function<void(Aws::GameLift::Model::GameSession)> onStartGameSession

Obligatorio: sí

OnUpdateGameSession La función de devolución de llamada que Amazon GameLift invoca para pasar un objeto de sesión de juego actualizado al proceso de servidor. Amazon GameLift llama a esta función cuando se ha procesado una solicitud de reposición de emparejamiento para proporcionar datos actualizados de los emparejadores. Pasa un objeto GameSession, una actualización de estado (updateReason) y el ID del ticket de reposición de emparejamiento.

Tipo: std::function<void(Aws::GameLift::Server::Model::UpdateGameSession)> onUpdateGameSession

Obligatorio: no

Puerto 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: Integer

Obligatorio: sí

UpdateGameSession

Este tipo de datos se actualiza a 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: Aws::GameLift::Server::GameSession

Obligatorio: sí

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

Tipo: Aws::GameLift::Server::UpdateReason

Obligatorio: sí

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

Tipo: std::string

Obligatorio: no

GameSession

Este tipo de datos proporciona detalles de una sesión de juego.

Propiedades Descripción
GameSessionId

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

Tipo: std::string

Obligatorio: no

Nombre

Una etiqueta descriptiva de la sesión de juego.

Tipo: std::string

Obligatorio: no

FleetId

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

Tipo: std::string

Obligatorio: no

MaximumPlayerSessionCount

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

Tipo: int

Obligatorio: no

Puerto

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

Tipo: in

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, una aplicación necesita tanto la dirección IP como el número de puerto.

Tipo: std::string

Obligatorio: no

GameSessionData

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

Tipo: std::string

Obligatorio: no

MatchmakerData

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: std::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: std :: vector < GameProperty >

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.

  • Flotas no habilitadas para TLS: 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: std::string

Obligatorio: no

ServerParameters

Información utilizada por el proceso del servidor de juegos para establecer una conexión con el servicio de Amazon GameLift. Incluya estos parámetros al llamar a InitSDK() solo si la compilación del servidor de juegos se va a implementar en una flota de Anywhere o en una flota de contenedores sin el agente de Amazon GameLift. Para todos los demás escenarios de implementación, llame a InitSDK() sin parámetros.

Propiedades Descripción
webSocketUrl

El GameLiftServerSdkEndpoint que Amazon GameLift devuelve cuando RegisterCompute para un recurso informático de Amazon GameLift Anywhere.

Tipo: std::string

Obligatorio: sí

processId

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

Tipo: std::string

Obligatorio: sí

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

Tipo: std::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: std::string

Obligatorio: sí

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

Tipo: std::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 en una llamada a StartMatchBackfill().

Propiedades Descripción
GameSessionArn

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

Tipo: std::string

Obligatorio: sí

MatchmakingConfigurationArn

Un identificador único, con formato 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. Puede obtener más información sobre los datos del emparejador en Trabajo con datos del emparejador.

Tipo: std::string

Obligatorio: sí

Players

Un conjunto de datos que representa a todos los jugadores que están 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: std::vector<Player>

Obligatorio: sí

TicketId

Un identificador único para un ticket de solicitud de emparejamiento o reposición de emparejamiento. Si no proporciona un valor, Amazon GameLift 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: std::string

Obligatorio: no

Jugador

Este tipo de datos representa a un jugador en el sistema de emparejamiento. Al iniciar una solicitud de emparejamiento, un jugador tiene un ID de jugador, atributos y, posiblemente, datos de latencia. Amazon GameLift añade la información del equipo después de que se realice 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: Dictionary<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 de los jugadores deben emparejarse con los atributos PlayerAttributes utilizados en un conjunto de reglas de emparejamiento.

Para obtener más información sobre los atributos del jugador, consulte AttributeValue.

Tipo: std::map<std::string,AttributeValue>

Obligatorio: no

PlayerId

Un identificador único de un jugador.

Tipo: std::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: std::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.

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

Tipo: std::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: std::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: std::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: std::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: std::string

Obligatorio: no

Límite

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 de Amazon GameLift en una llamada a StopMatchBackfill().

Propiedades Descripción
GameSessionArn

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

Tipo: char[]

Obligatorio: no

MatchmakingConfigurationArn

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

Tipo: char[]

Obligatorio: no

TicketId

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

Tipo: char[]

Obligatorio: no

AttributeValue

Utilice estos valores en pares de clave-valor de atributo Jugador. Este objeto le permite especificar un valor de atributo mediante cualquiera de los tipos de datos válidos: cadena, número, matriz de cadenas o mapa de datos. Cada objeto AttributeValue debe utilizar exactamente una de las propiedades disponibles: S, N, SL o SDM.

Propiedades Descripción
AttrType

Especifica el tipo de valor del atributo. Entre los posibles tipos de valores de atributo se incluyen:

  • NONE

  • STRING

  • DOUBLE

  • STRING_LIST

  • STRING_DOUBLE_MAP

Obligatorio: no

S

Representa un valor de atributo de cadena.

Tipo: std::string

Obligatorio: no

N

Representa un valor de atributo numérico.

Tipo: double

Obligatorio: no

SL

Representa una matriz de valores de atributos de cadena.

Tipo: std::vector<std::string>

Obligatorio: no

SDM

Representa un diccionario de claves de cadena y valores dobles.

Tipo: std::map<std::string, double>

Obligatorio: no

GetFleetRoleCredentialsRequest

Este tipo de datos proporciona al servidor de juegos un acceso limitado a los otros recursos de AWS. Para obtener más información, consulte, Configuración de un rol de servicio de IAM para Amazon GameLift.

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

Tipo: std::string

Obligatorio: no

RoleSessionName El nombre de sesión de rol que puede utilizar para identificar de forma única una sesión AssumerOle de AWS Security Token Service. Este nombre aparece en los registros de auditoría, como los de CloudTrail.

Tipo: std::string

Obligatorio: no

AwsLongOutcome

Este tipo de datos es el resultado de una acción y produce un objeto con las siguientes propiedades:

Propiedades Descripción
Resultado

El resultado de la acción.

Tipo: long

Obligatorio: no

ResultWithOwnership

El resultado de la acción, expresado como un valor r, para que el código de llamada pueda tomar posesión del objeto.

Tipo: long&&

Obligatorio: no

Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

AwsStringOutcome

Este tipo de datos es el resultado de una acción y produce un objeto con las siguientes propiedades:

Propiedades Descripción
Resultado

El resultado de la acción.

Tipo: std::string

Obligatorio: no

ResultWithOwnership

El resultado de la acción, expresado como un valor r, para que el código de llamada pueda tomar posesión del objeto.

Tipo: long&&

Obligatorio: no

Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

DescribePlayerSessionsOutcome

Este tipo de datos es el resultado de una acción y produce un objeto con las siguientes propiedades:

Propiedades Descripción
Resultado

El resultado de la acción.

Tipo: DescribePlayerSessionsResult

Obligatorio: no

ResultWithOwnership

El resultado de la acción, expresado como un valor r, para que el código de llamada pueda tomar posesión del objeto.

Tipo: Aws::GameLift::Server::Model::DescribePlayerSessionsResult&&

Obligatorio: no

Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

DescribePlayerSessionsResult

Una colección de objetos que contiene propiedades para cada sesión de jugador que se empareja con la solicitud.

Propiedades Descripción
NextToken

Un token que indica el inicio de la siguiente página de resultados secuencial. Utilice el token devuelto con una llamada anterior a esta operación. Para especificar el inicio del conjunto de resultados, no especifique ningún valor. Si se especifica un ID de sesión de jugador, este parámetro se ignora.

Tipo: std::string

Obligatorio: sí

PlayerSessions

Tipo: IList<PlayerSession>

Obligatorio:

ResultWithOwnership

El resultado de la acción, expresado como un valor r, para que el código de llamada pueda tomar posesión del objeto.

Tipo: std::string&&

Obligatorio: no

Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

GenericOutcome

Este tipo de datos es el resultado de una acción y produce un objeto con las siguientes propiedades:

Propiedades Descripción
Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

GenericOutcomeCallable

Este tipo de datos es un resultado genérico asíncrono. Tiene las siguientes propiedades:

Propiedades Descripción
Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

PlayerSession

Este tipo de datos representa la sesión de un jugador que Amazon GameLift transfiere al servidor de juegos. Para obtener más información, consulte PlayerSession.

Propiedades Descripción
CreationTime

Tipo: long

Obligatorio: no

FleetId

Tipo: std::string

Obligatorio: no

GameSessionId

Tipo: std::string

Obligatorio: no

IpAddress

Tipo: std::string

Obligatorio: no

PlayerData

Tipo: std::string

Obligatorio: no

PlayerId

Tipo: std::string

Obligatorio: no

PlayerSessionId

Tipo: std::string

Obligatorio: no

Puerto

Tipo: int

Obligatorio: no

Status

Estado de la sesión de juego para filtrar los resultados. Cuando se proporciona un PlayerSessionID o PlayerID, el PlayerSessionStatusFilter no tiene ningún efecto en la respuesta.

Tipo: una enumeración de PlayerSessionStatus. Entre los valores posibles se incluyen:

  • ACTIVO

  • COMPLETED

  • NOT_SET

  • RESERVED

  • TIEMPO DE ESPERA AGOTADO

Obligatorio: no

TerminationTime

Tipo: long

Obligatorio: no

DnsName

Tipo: std::string

Obligatorio: no

StartMatchBackfillOutcome

Este tipo de datos es el resultado de una acción y produce un objeto con las siguientes propiedades:

Propiedades Descripción
Resultado

El resultado de la acción.

Tipo: StartMatchBackfillResult

Obligatorio: no

ResultWithOwnership

El resultado de la acción, expresado como un valor r, para que el código de llamada pueda tomar posesión del objeto.

Tipo: StartMatchBackfillResult&&

Obligatorio: no

Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

StartMatchBackfillResult

Este tipo de datos es el resultado de una acción y produce un objeto con las siguientes propiedades:

Propiedades Descripción
TicketId

Un identificador único de un ticket de emparejamiento Si no se especifica ningún ID de ticket aquí, Amazon GameLift generará uno en forma de UUID. Utilice este identificador para realizar un seguimiento del estado del ticket de relleno del emparejamiento y recuperar los resultados del emparejamiento.

Tipo: std::string

Obligatorio: no

GetComputeCertificateOutcome

Este tipo de datos es el resultado de una acción y produce un objeto con las siguientes propiedades:

Propiedades Descripción
Resultado

El resultado de la acción.

Tipo: GetComputeCertificateResult

Obligatorio: no

ResultWithOwnership

El resultado de la acción, expresado como un valor r, para que el código de llamada pueda tomar posesión del objeto.

Tipo: Aws::GameLift::Server::Model::GetComputeCertificateResult&&

Obligatorio: no

Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

GetComputeCertificateResult

La ruta al certificado TLS de su recurso informático y el nombre de host del equipo.

Propiedades Descripción
CertificatePath

La ruta al certificado TLS de su recurso informático. Cuando se utiliza una flota administrada por Amazon GameLift, la ruta contiene los siguientes elementos:

  • certificate.pem: el certificado del usuario final. La cadena de certificados completa es la combinación del certificateChain.pem adjunto a este certificado.

  • certificateChain.pem: la cadena de certificados que contiene el certificado raíz y los certificados intermedios.

  • rootCertificate.pem: el certificado raíz.

  • privateKey.pem: la clave privada del certificado del usuario final.

Tipo: std::string

Obligatorio: no

ComputeName

El nombre del recurso informático.

Tipo: std::string

Obligatorio: no

GetFleetRoleCredentialsOutcome

Este tipo de datos es el resultado de una acción y produce un objeto con las siguientes propiedades:

Propiedades Descripción
Resultado

El resultado de la acción.

Tipo: GetFleetRoleCredentialsResult

Obligatorio: no

ResultWithOwnership

El resultado de la acción, expresado como un valor r, para que el código de llamada pueda tomar posesión del objeto.

Tipo: Aws::GameLift::Server::Model::GetFleetRoleCredentialsResult

Obligatorio: no

Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

GetFleetRoleCredentialsResult

Propiedades Descripción
AccessKeyId

El ID de la clave de acceso para autenticar y proporcionar acceso a los recursos de AWS.

Tipo: string

Obligatorio: no

AssumedRoleId

El ID del usuario al que pertenece el rol de servicio.

Tipo: string

Obligatorio: no

AssumedRoleUserArn

El nombre de recurso de Amazon (ARN) del usuario al que pertenece el rol de servicio.

Tipo: string

Obligatorio: no

Expiration

El tiempo que queda hasta que caduquen las credenciales de la sesión.

Tipo: DateTime

Obligatorio: no

SecretAccessKey

El ID de clave de acceso secreta para la autenticación.

Tipo: string

Obligatorio: no

SessionToken

Un token para identificar la sesión activa actual que interactúa con los recursos de AWS.

Tipo: string

Obligatorio: no

Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

InitSDKOutcome

nota

InitSDKOutcome se devuelve solo cuando compila el SDK con la marca std. Si realiza la compilación con la marca nostd, se devuelve GenericOutcome en su lugar.

Propiedades Descripción
Success

Si la acción se realizó correctamente o no.

Tipo: bool

Obligatorio: sí

Error

El error que se genera si la acción no se ha realizado correctamente.

Tipo: GameLiftError

Obligatorio: no

GameLiftError

Propiedades Descripción
ErrorType

Tipo de error.

Tipo: una enumeración de GameLiftErrorType.

Obligatorio: no

ErrorName

El nombre del error.

Tipo: std::string

Obligatorio: no

ErrorMessage

Mensaje de error.

Tipo: std::string

Obligatorio: no

Enums

Las enumeraciones definidas para el SDK del servidor de Amazon GameLift (C++) se definen de la siguiente manera:

GameLiftErrorType

Valor de cadena que indica el tipo de error. Los valores válidos son:

  • BAD_REQUEST_EXCEPTION

  • GAMESESSION_ID_NOT_SET: no se ha establecido el ID de sesión de juego.

  • INTERNAL_SERVICE_EXCEPTION

  • LOCAL_CONNECTION_FAILED: se ha producido un error en la conexión local a Amazon GameLift.

  • NETWORK_NOT_INITIALIZED: la red no se ha inicializado.

  • SERVICE_CALL_FAILED: se ha producido un error en la llamada a un servicio de AWS.

  • WEBSOCKET_CONNECT_FAILURE

  • WEBSOCKET_CONNECT_FAILURE_FORBIDDEN

  • WEBSOCKET_CONNECT_FAILURE_INVALID_URL

  • WEBSOCKET_CONNECT_FAILURE_TIMEOUT

  • ALREADY_INITIALIZED: el servidor o cliente de Amazon GameLift ya se inicializó con Inicializar().

  • FLEET_MISMATCH: la flota de destino no coincide con la flota de gameSession o playerSession.

  • GAMELIFT_CLIENT_NOT_INITIALIZED: el cliente de Amazon GameLift no se ha inicializado.

  • GAMELIFT_SERVER_NOT_INITIALIZED: el servidor de Amazon GameLift no se ha inicializado.

  • GAME_SESSION_ENDED_FAILED: el SDK del servidor de Amazon GameLift no pudo ponerse en contacto con el servicio para informar de que la sesión de juego había finalizado.

  • GAME_SESSION_NOT_READY: no se activó la sesión de juego del servidor de Amazon GameLift.

  • GAME_SESSION_READY_FAILED: el SDK del servidor de Amazon GameLift no pudo ponerse en contacto con el servicio para informar de que la sesión de juego estaba lista.

  • INITIALIZATION_MISMATCH: se llamó a un método de cliente después de Server::Initialize() o viceversa.

  • NOT_INITIALIZED: el servidor o cliente de Amazon GameLift no se ha iniciado con Inicializar().

  • NO_TARGET_ALIASID_SET: no se ha establecido un aliasId de destino.

  • NO_TARGET_FLEET_SET: no se ha establecido una flota de destino.

  • PROCESS_ENDING_FAILED: el SDK del servidor de Amazon GameLift no pudo contactar con el servicio para informar de que el proceso está finalizando.

  • PROCESS_NOT_ACTIVE: el proceso de servidor aún no está activo, no está vinculado a una GameSession y no puede aceptar ni procesar PlayerSessions.

  • PROCESS_NOT_READY: el proceso de servidor aún no está listo para activarse.

  • PROCESS_READY_FAILED: el SDK del servidor de Amazon GameLift no pudo contactar con el servicio para informar de que el proceso está listo.

  • SDK_VERSION_DETECTION_FAILED: no se pudo detectar la versión del SDK.

  • STX_CALL_FAILED: no se pudo realizar una llamada al componente de backend del servidor xSTx.

  • STX_INITIALIZATION_FAILED: no se pudo inicializar el componente de backend del servidor xSTx.

  • UNEXPECTED_PLAYER_SESSION: el servidor ha detectado una sesión de jugador no registrada.

  • WEBSOCKET_CONNECT_FAILURE

  • WEBSOCKET_CONNECT_FAILURE_FORBIDDEN

  • WEBSOCKET_CONNECT_FAILURE_INVALID_URL

  • WEBSOCKET_CONNECT_FAILURE_TIMEOUT

  • WEBSOCKET_RETRIABLE_SEND_MESSAGE_FAILURE: error al enviar un mensaje al WebSocket del servicio de GameLift.

  • WEBSOCKET_SEND_MESSAGE_FAILURE: error al enviar un mensaje al WebSocket del servicio de GameLift.

  • MATCH_BACKFILL_REQUEST_VALIDATION: se ha producido un error en la validación de la solicitud.

  • PLAYER_SESSION_REQUEST_VALIDATION: se ha producido un error en la validación de la solicitud.

PlayerSessionCreationPolicy

Valor de cadena que indica si la sesión de juego acepta jugadores nuevos. Los valores válidos son:

  • ACCEPT_ALL: se aceptan todas las sesiones de jugador nuevas.

  • DENY_ALL: se rechazan todas las sesiones de jugador nuevas.

  • NOT_SET: la sesión de juego no está configurada para aceptar o denegar sesiones de nuevos jugadores.