기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
C++용 Amazon GameLift Server SDK 4.x: 데이터 유형
Amazon GameLift C++ 서버 SDK 참조를 사용하여 호스팅을 위한 멀티플레이어 게임을 Amazon 와 통합합니다 GameLift. 통합 프로세스에 대한 지침은 섹션을 참조하세요 GameLift 게임 서버에 Amazon 추가.
참고
이 참조는 이전 버전의 Amazon GameLift 서버 에 대한 것입니다SDK. 최신 버전은 C++용 Amazon GameLift Server SDK 5.x: 데이터 유형를 참조하십시오.
이는 GameLiftServerAPI.h
, 및 에 정의API되어 LogParameters.h
있습니다ProcessParameters.h
.
C++용 Amazon GameLift 서버 SDK 4.x: 작업
DescribePlayerSessionsRequest
이 데이터 형식은 검색할 플레이어 세션을 지정하는 데 사용됩니다. 다음과 같이 사용할 수 있습니다.
-
PlayerSessionId 를 제공하여 특정 플레이어 세션을 요청합니다.
-
지정된 게임 세션의 모든 플레이어 세션을 요청 GameSessionId 하려면 를 제공합니다.
-
지정된 플레이어에 대한 모든 플레이어 세션을 요청 PlayerId 하려면 를 제공합니다.
플레이어 세션이 대량일 경우 페이지 매김 파라미터를 사용하여 결과를 순차 블록으로 검색합니다.
내용
- GameSessionId
-
고유한 게임 세션 식별자입니다. 지정한 게임 세션의 모든 플레이어 세션을 요청하려면 이 파라미터를 사용합니다. 게임 세션 ID 형식은 다음과 같습니다.
arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>
. <ID string> 값은 사용자 지정 ID 문자열(게임 세션을 만들 때 지정한 경우) 또는 생성 문자열입니다.유형: 문자열
필수 항목 여부: 아니요
- Limit
-
반환할 최대 결과 수입니다. 이 파라미터를 와 함께 사용하여 결과를 순차적 페이지 세트로 NextToken 가져옵니다. 플레이어 세션 ID가 지정된 경우 이 파라미터가 무시됩니다.
유형: 정수
필수 항목 여부: 아니요
- NextToken
-
결과의 다음 순차 페이지의 시작을 나타내는 토큰입니다. 반환된 토큰을 이 작업에 대한 이전 호출과 함께 사용합니다. 결과 집합의 시작을 지정하려면 값을 지정하지 마십시오. 플레이어 세션 ID가 지정된 경우 이 파라미터가 무시됩니다.
유형: 문자열
필수 항목 여부: 아니요
- PlayerId
-
사용자의 고유 식별자입니다. 플레이어IDs는 개발자가 정의합니다. 플레이어 ID 생성을 참조하세요.
유형: 문자열
필수 항목 여부: 아니요
- PlayerSessionId
-
플레이어 세션의 고유 식별자입니다.
유형: 문자열
필수 항목 여부: 아니요
- PlayerSessionStatusFilter
-
결과를 필터링하는 기준이 되는 플레이어 세션 상태입니다. 다음과 같은 플레이어 세션 상태가 가능합니다.
-
RESERVED - 플레이어 세션 요청이 수신되었지만 플레이어가 아직 서버 프로세스에 연결되지 않았거나 검증되지 않았습니다.
-
ACTIVE - 플레이어가 서버 프로세스에 의해 검증되었으며 현재 연결되어 있습니다.
-
COMPLETED - 플레이어 연결이 끊어졌습니다.
-
TIMEDOUT - 플레이어 세션 요청이 수신되었지만 플레이어가 연결되지 않았거나 제한 시간(60초) 내에 검증되지 않았습니다.
유형: 문자열
필수 항목 여부: 아니요
-
LogParameters
이 데이터 유형은 게임 세션이 끝나면 Amazon이 GameLift 업로드하고 저장할 게임 세션 중에 생성된 파일을 식별하는 데 사용됩니다. 이 정보는 ProcessReady() 통화로 Amazon GameLift 서비스에 전달됩니다.
내용
- logPaths
-
Amazon이 향후 액세스를 위해 GameLift 저장할 게임 서버 로그 파일의 디렉터리 경로입니다. 이러한 파일은 각 게임 세션 중에 생성됩니다. 파일 경로와 이름은 게임 서버에서 정의되고 루트 게임 빌드 디렉터리에 저장됩니다. 로그 경로는 절대값이어야 합니다. 예를 들어, 게임 빌드가
MyGame\sessionlogs\
와 같은 경로에 게임 세션 로그를 저장할 경우 로그 경로는c:\game\MyGame\sessionLogs
(Windows 인스턴스) 또는/local/game/MyGame/sessionLogs
(Linux 인스턴스)가 됩니다.형식: std:vector<std::string>
필수 여부: 아니요
ProcessParameters
이 데이터 유형에는 ProcessReady() 통화 시 Amazon GameLift 서비스로 전송되는 파라미터 세트가 포함됩니다.
내용
- 포트
-
서버 프로세스가 새 플레이어 연결을 수신 대기하는 포트 번호입니다. 이 값은 이 게임 서버 빌드를 전개하는 플릿에 대해 구성된 포트 범위에 속해야 합니다. 이 포트 번호는 게임 세션 및 플레이어 세션 객체에 포함되며, 게임 세션이 서버 프로세스에 연결할 때 이 포트 번호를 사용합니다.
유형: 정수
필수 여부: 예
- logParameters
-
게임 세션 로그 파일의 디렉터리 경로 목록을 포함하는 객체입니다.
유형: Aws::GameLift::Server::LogParameters
필수 여부: 아니요
- onStartGame세션
-
Amazon GameLift 서비스가 새 게임 세션을 활성화하기 위해 호출하는 콜백 함수의 이름입니다. Amazon은 클라이언트 요청 에 대한 응답으로 이 함수를 GameLift 호출합니다CreateGameSession. 콜백 함수는 GameSession 객체(Amazon GameLift Service API 참조 에 정의됨)를 전달합니다.
유형:
const std::function<void(Aws::GameLift::Model::GameSession)> onStartGameSession
필수 항목 여부: 예
- onProcessTerminate
-
Amazon GameLift 서비스가 서버 프로세스를 강제로 종료하기 위해 호출하는 콜백 함수의 이름입니다. 이 함수를 호출한 후 Amazon은 서버 프로세스가 종료되고 ProcessEnding() 호출로 응답할 때까지 5분 동안 GameLift 기다립니다. 응답이 수신되지 않으면 서버 프로세스를 종료합니다.
유형:
std::function<void()> onProcessTerminate
필수 항목 여부: 아니요
- onHealthCheck
-
Amazon GameLift 서비스가 서버 프로세스에서 상태 보고서를 요청하기 위해 호출하는 콜백 함수의 이름입니다. Amazon은 60초마다 이 함수를 GameLift 호출합니다. 이 함수를 호출한 후 Amazon은 응답을 60초 동안 GameLift 기다린 후 아무것도 수신되지 않으면 서버 프로세스를 비정상으로 기록합니다. 는 서버 프로세스를 비정상으로 기록합니다.
유형:
std::function<bool()> onHealthCheck
필수 항목 여부: 아니요
- onUpdateGame세션
-
Amazon GameLift 서비스가 업데이트된 게임 세션 객체를 서버 프로세스에 전달하기 위해 호출하는 콜백 함수의 이름입니다. Amazon은 업데이트된 매치메이커 데이터를 제공하기 위해 매치 채우기 요청이 처리되면 이 함수를 GameLift 호출합니다. GameSession 객체, 상태 업데이트(
updateReason
) 및 매치 채우기 티켓 ID를 전달합니다.유형:
std::function<void(Aws::GameLift::Server::Model::UpdateGameSession)> onUpdateGameSession
필수 항목 여부: 아니요
StartMatchBackfillRequest
이 데이터 형식은 매치메이킹 채우기 요청을 보내는 데 사용됩니다. 이 정보는 StartMatchBackfill() 통화로 Amazon GameLift 서비스에 전달됩니다.
내용
- GameSessionArn
-
고유한 게임 세션 식별자입니다. API 작업은 식별자를 ARN 형식으로 GetGameSessionId() 반환합니다.
유형: 문자열
필수 항목 여부: 예
- MatchmakingConfigurationArn
-
매치메ARN이커가 이 요청에 사용할 의 형식인 고유 식별자입니다. 원본 게임 세션을 만드는 데 사용된 매치메이커를 찾으려면 게임 세션 객체에서 매치메이커 데이터 속성을 확인합니다. 매치메이커 데이터에 대한 자세한 내용은 매치메이커 데이터를 사용하는 작업을 참조하세요.
유형: 문자열
필수 항목 여부: 예
- Players
-
현재 게임 세션에 있는 모든 플레이어를 나타내는 데이터 세트입니다. 매치메이커는 이 정보를 사용하여 현재 플레이어와 적절하게 일치하는 새로운 플레이어를 검색합니다. 플레이어 객체 형식에 대한 설명은 Amazon GameLift API 참조 가이드를 참조하세요. 플레이어 속성, IDs및 팀 할당을 찾으려면 매치메이커 데이터 속성의 게임 세션 객체를 확인하세요. 매치메이커에서 지연 시간을 사용하는 경우 현재 리전에 대한 업데이트 지연 시간을 수집하여 각 플레이어의 데이터에 포함합니다.
유형: std:vector<player>
필수 여부: 예
- TicketId
-
매치메이킹 또는 매치 채우기 요청 티켓의 고유 식별자입니다. 여기에 값이 제공되지 않으면 Amazon GameLift 은 의 형태로 값을 생성합니다UUID. 이 식별자를 사용하여 매치 채우기 티켓 상태를 추적하거나 필요한 경우 요청을 취소합니다.
유형: 문자열
필수 항목 여부: 아니요
StopMatchBackfillRequest
이 데이터 형식은 매치메이킹 채우기 요청을 취소하는 데 사용됩니다. 이 정보는 StopMatchBackfill() 통화로 Amazon GameLift 서비스에 전달됩니다.
내용
- GameSessionArn
-
취소 중인 요청과 연결된 고유한 게임 세션 식별자입니다.
유형: 문자열
필수 항목 여부: 예
- MatchmakingConfigurationArn
-
이 요청을 보낸 매치메이커의 고유 식별자입니다.
유형: 문자열
필수 항목 여부: 예
- TicketId
-
취소할 채우기 요청 티켓의 고유 식별자입니다.
유형: 문자열
필수 항목 여부: 예