ReferenciaGameLift de API de servidor Amazon para Unreal Engine: Acciones - Amazon GameLift

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.

ReferenciaGameLift de API de servidor Amazon para Unreal Engine: Acciones

Esta referencia de la API de AmazonGameLift Server puede ayudarte a preparar tus proyectos de juegos de Unreal Engine para usarlos con AmazonGameLift. Para obtener más información sobre el proceso de integración, consulte Añade Amazon GameLift a tu servidor de juegos.

Esta API se define en GameLiftServerSDK.h y GameLiftServerSDKModels.h.

Para configurar el complemento Unreal Engine y ver ejemplos de código, consulte Añade Amazon GameLift a un proyecto de servidor de juegos de Unreal Engine.

AcceptPlayerSession()

Notifica alGameLift servicio de Amazon que un jugador con el ID de sesión de jugador especificado se ha conectado al proceso del servidor y necesita ser validado. AmazonGameLift comprueba que el ID de sesión del jugador es válido, es decir, que el ID del jugador ha reservado un espacio de jugador en la sesión de juego. Una vez validado, AmazonGameLift cambia el estado del espacio de jugador de RESERVADO a ACTIVO.

Sintaxis

FGameLiftGenericOutcome AcceptPlayerSession(const FString& playerSessionId)

Parámetros

playerSessionId

ID único emitido por elGameLift servicio de Amazon en respuesta a una llamada a la acción de laGameLift API de Amazon delAWS SDK CreatePlayerSession. El cliente del juego hace referencia a este ID cuando se conecta al proceso del servidor.

Tipo: FString

Obligatorio: sí

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.

ActivateGameSession()

Notifica alGameLift servicio de Amazon que el proceso del servidor ha activado una sesión de juego y ahora está listo para recibir las conexiones de los jugadores. Esta acción debe llamarse como parte de la función de devolución de llamada onStartGameSession(), después de completar la inicialización de todas las sesiones de juego.

Sintaxis

FGameLiftGenericOutcome ActivateGameSession()

Parámetros

Esta acción no tiene parámetros.

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.

DescribePlayerSessions()

Recupera datos de sesión de jugador, incluida la configuración, los metadatos de la sesión y los datos de jugador. Utilice esta acción para obtener información para una única sesión de jugador, para todas las sesiones de jugador de una sesión de juego o para todas las sesiones de jugador asociadas a un solo ID de jugador.

Sintaxis

FGameLiftDescribePlayerSessionsOutcome DescribePlayerSessions(const FGameLiftDescribePlayerSessionsRequest &describePlayerSessionsRequest)

Parámetros

describePlayerSessionsSolicitud

Es un objeto FDescribePlayerSessionsRequest que describe las sesiones de jugador a recuperar.

Obligatorio: sí

Valor devuelto

Si funciona correctamente, devuelve un objeto FDescribePlayerSessionsRequest que contiene un conjunto de objetos de sesión de jugador que se ajusta a los parámetros de la solicitud. Los objetos de sesión del jugador tienen una estructura idéntica al tipo de PlayerSessiondatos de laGameLift API de Amazon delAWS SDK.

GetGameSessionId()

Recupera el ID de la sesión de juego alojada actualmente por el proceso del servidor, siempre que esté activo.

Sintaxis

FGameLiftStringOutcome GetGameSessionId()

Parámetros

Esta acción no tiene parámetros.

Valor devuelto

Si funciona correctamente, devuelve el ID de sesión del juego como objeto FGameLiftStringOutcome. Si no funciona, devuelve un mensaje de error.

GetInstanceCertificate()

Recupera la ubicación del archivo de un certificado TLS codificado en PEM que está asociado a la flota y sus instancias. AWS Certificate Managergenera este certificado al crear una flota nueva con la configuración del certificado establecida en GENERATED. Utilice este certificado para establecer una conexión segura con un cliente de juego y para cifrar la comunicación cliente/servidor.

Sintaxis

FGameLiftGetInstanceCertificateOutcome GetInstanceCertificate()

Parámetros

Esta acción no tiene parámetros.

Valor devuelto

Si tiene éxito, devuelve unGetInstanceCertificateOutcome objeto que contiene la ubicación del archivo de certificado TLS y la cadena de certificados de la flota, que están almacenados en la instancia. En la instancia también se almacena un archivo de certificado raíz, extraído de la cadena de certificados. Si no funciona, devuelve un mensaje de error.

Para obtener más información sobre el certificado y los datos de la cadena de certificados, consulte Elementos deGetCertificate respuesta en la referenciaAWS Certificate Manager de la API.

GetSdkVersion()

Devuelve el número de versión actual del SDK integrado en el proceso del servidor.

Sintaxis

FGameLiftStringOutcome GetSdkVersion();

Parámetros

Esta acción no tiene parámetros.

Valor devuelto

Si funciona correctamente, devuelve la versión del SDK actual como objeto FGameLiftStringOutcome. La cadena devuelta incluye solo el número de versión (por ejemplo, «3.1.5"). Si no funciona, devuelve un mensaje de error.

Ejemplo

Aws::GameLift::AwsStringOutcome SdkVersionOutcome = Aws::GameLift::Server::GetSdkVersion();

InitSDK()

Inicializa elGameLift SDK de Amazon. Este método debe invocarse en el momento del lanzamiento, antes de que se produzca cualquier otra inicializaciónGameLift relacionada con Amazon.

Sintaxis

FGameLiftGenericOutcome InitSDK()

Parámetros

Esta acción no tiene parámetros.

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.

ProcessEnding()

Notifica alGameLift servicio de Amazon que el proceso del servidor se está cerrando. Este método debe llamarse después de realizar las demás tareas de limpieza, incluido el cierre de todas las sesiones de juego activas. Se debe salir de este método con un código de salida de 0; un código de salida que no sea 0 provoca un mensaje de evento que afirma que no se ha salido del proceso correctamente.

Sintaxis

FGameLiftGenericOutcome ProcessEnding()

Parámetros

Esta acción no tiene parámetros.

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.

ProcessReady()

Notifica alGameLift servicio de Amazon que el proceso del servidor está listo para albergar sesiones de juego. Ejecute este método después de invocarInitSDK() y completar correctamente las tareas de configuración necesarias antes de que el proceso del servidor pueda albergar una sesión de juego. Este método debe invocarse solo una vez por proceso.

Sintaxis

FGameLiftGenericOutcome ProcessReady(FProcessParameters &processParameters)

Parámetros

FProcessParameters

Es un objeto FProcessParameters que comunica la siguiente información acerca del proceso del servidor:

  • Nombres de los métodos de devolución de llamada, implementados en el código del servidor del juego, que elGameLift servicio de Amazon invoca para comunicarse con el proceso del servidor.

  • Número de puerto de escucha del servidor de proceso.

  • Ruta a cualquier archivo específico de la sesión de juego que quierasGameLift que Amazon capture y almacene.

Obligatorio: sí

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.

Ejemplo

Consulte el código de ejemplo en Using the Unreal Engine Plugin.

RemovePlayerSession()

Notifica alGameLift servicio de Amazon que un jugador con el ID de sesión de jugador especificado se ha desconectado del proceso del servidor. En respuesta, AmazonGameLift cambia el espacio del jugador a disponible, lo que permite asignarlo a un nuevo jugador.

Sintaxis

FGameLiftGenericOutcome RemovePlayerSession(const FString& playerSessionId)

Parámetros

playerSessionId

ID único emitido por elGameLift servicio de Amazon en respuesta a una llamada a la acción de laGameLift API de Amazon delAWS SDK CreatePlayerSession. El cliente del juego hace referencia a este ID cuando se conecta al proceso del servidor.

Tipo: FString

Obligatorio: sí

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.

StartMatchBackfill()

Envía una solicitud para encontrar nuevos jugadores para ranuras abiertas en una sesión de juego creada con FlexMatch. Consulte también la acción delAWS SDK StartMatchBackfill(). Con esta acción, un proceso del servidor de juegos que aloja la sesión de juego puede iniciar solicitudes de reposición de emparejamiento. Más información sobre la función deFlexMatch relleno.

Esta acción es asíncrona. Si los nuevos jugadores se emparejan correctamente, elGameLift servicio de Amazon proporciona datos de emparejamiento actualizados mediante la función de devolución de llamadasOnUpdateGameSession().

Un proceso del servidor solo puede tener una solicitud de reposición de emparejamiento activa a la vez. Para enviar una nueva solicitud, en primer lugar llame a StopMatchBackfill() para cancelar la solicitud original.

Sintaxis

FGameLiftStringOutcome StartMatchBackfill (FStartMatchBackfillRequest &startBackfillRequest);

Parámetros

FStartMatchBackfillRequest

Un objeto FStartMatchBackfillRequest que comunica la siguiente información:

  • Un ID de ticket que se asignará a la solicitud de reposición. Esta información es opcional; si no se proporciona ningún identificador, AmazonGameLift generará uno automáticamente.

  • El creador de emparejamientos al que se enviará la solicitud. El ARN de configuración completo es obligatorio. Este valor se puede obtener de los datos del creador de emparejamientos de la sesión de juego.

  • El ID de la sesión de juego que está en fase de reposición.

  • Datos de emparejamiento disponibles para los jugadores actuales de la sesión de juego.

Obligatorio: sí

Valor devuelto

Si funciona correctamente, devuelve el ticket de reposición de emparejamiento como un objeto FGameLiftStringOutcome. Si no funciona, devuelve un mensaje de error. El estado del ticket se puede rastrear mediante la acción delAWS SDK DescribeMatchmaking().

StopMatchBackfill()

Cancela una solicitud de reposición de emparejamiento activa que se creó con StartMatchBackfill(). Consulte también la acción delAWS SDK StopMatchmaking(). Más información sobre la función deFlexMatch relleno.

Sintaxis

FGameLiftGenericOutcome StopMatchBackfill (FStopMatchBackfillRequest &stopBackfillRequest);

Parámetros

StopMatchBackfillRequest

Un objeto FStopMatchBackfillRequest que identifica el ticket de emparejamiento que se va a cancelar:

  • ID del ticket asignado a la solicitud de reposición que se va a cancelar

  • el creador de emparejamientos al que se envió la solicitud de reposición

  • sesión de juego asociada a la solicitud de reposición

Obligatorio: sí

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.

TerminateGameSession()

Este método está en desuso en la versión 4.0.1. En su lugar, el proceso del servidor deberíaProcessEnding() ejecutarse una vez finalizada la sesión de juego.

Notifica alGameLift servicio de Amazon que el proceso del servidor ha finalizado la sesión de juego actual. Esta acción se activa cuando el proceso del servidor permanece activo y listo para alojar una nueva sesión de juego. Solo debe invocarse después de completar el procedimiento de finalización de la sesión de juego, ya que indica a AmazonGameLift que el proceso del servidor está disponible inmediatamente para albergar una nueva sesión de juego.

Esta acción no se ejecuta si el proceso del servidor se interrumpe una vez finalizada la sesión del juego. En su lugar, llamaProcessEnding() para indicar que tanto la sesión del juego como el proceso del servidor están finalizando.

Sintaxis

FGameLiftGenericOutcome TerminateGameSession()

Parámetros

Esta acción no tiene parámetros.

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.

UpdatePlayerSessionCreationPolicy()

Actualiza la capacidad de la sesión de juego actual para aceptar sesiones de jugador nuevas. Una sesión de juego se puede configurar para que acepte o deniegue todas las sesiones nuevas de los jugadores. (Consulte también la UpdateGameSession()acción en la referencia de la APIGameLift de Amazon Service).

Sintaxis

FGameLiftGenericOutcome UpdatePlayerSessionCreationPolicy(EPlayerSessionCreationPolicy policy)

Parámetros

Política

Valor que indica si la sesión de juego acepta jugadores nuevos.

Tipo: EPlayerSessionCreationPolicy enum. 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.

Obligatorio: sí

Valor devuelto

Devuelve un resultado genérico que consiste en el éxito o el fracaso con un mensaje de error.