언리얼 엔진 - 게임 프로젝트/AWS GameLift를 활용한 데디케이트 FPS 프로젝트

GameLift Anywhere 플릿 - 6) GameSession 생성

monstro 2026. 4. 27. 14:31
728x90
반응형

- 개요

GameSession AWS GameLift에서 호스팅되는 리소스로, 

특정 GameInstance의 상태를 관리하며, 플레이어들이 게임에 접속하고 유지될 수 있도록 추적하는 관리 단위이다

 

- 절차

aws gamelift create-game-session ^
--fleet-id "Fleet ID" ^
--name "생성할 GameSession의 이름" ^
--maximum-player-session-count "게임에 참여할 최대 플레이어 수" ^
--region "프로필의 Region" ^
--location "Fleet의 Location"

 

AWS CLI를 사용하여 프로필에 로그인하고 인증 토큰을 부여받아 서버를 AWS GameLift와 통신시킨다

이후 위와 같이 커맨드 명령어를 입력하여 GameSession을 생성한다

사용한 커맨드 인자는 다음과 같다

  • --fleet-id : 대상 Fleet의 고유 ID
  • --name : 생성한 GameSession 식별용 이름
  • --maximum-player-session-count : 해당 세션에 접속 가능한 최대 플레이어 수
  • --region : 명시하지 않으면 프로필 기본 리전을 사용 + 타 리전 작업 반드시 설정
  • --location : Fleet이 배포된 AWS 리전의 상세 위치 + Custom Location 사용

 

{
    "GameSession": {
        "GameSessionId": "GameSession ID",
        "Name": "생성한 GameSession 이름",
        "FleetId": "해당 GameSession이 실행중인 Fleet의 ID",
        "FleetArn": "해당 GameSession이 실행중인 Fleet의 리소스 이름",
        "CreationTime": "게임 세션이 생성된 시각",
        "CurrentPlayerSessionCount": "현재 세션에 접속해 있는 플레이어 수",
        "MaximumPlayerSessionCount": "이 세션에 허용된 최대 플레이어 수",
        "Status": "세션의 현재 상태",
        "GameProperties": "세션 생성 시 전달한 사용자 정의 게임 속성 리스트",
        "IpAddress": "게임 서버가 실행 중인 서버의 IP 주소",
        "Port": "클라이언트가 서버에 접속하기 위해 사용하는 포트 번호",
        "PlayerSessionCreationPolicy": "새로운 플레이어의 접속 허용 정책",
        "Location": "세션이 위치한 Region 또는 Custom Location의 이름",
        "ComputeName": "GameSession을 호스팅하는 컴퓨팅 자원의 이름",
        "PlayerGatewayStatus": "플레이어 게이트웨이 활성 상태"
    }
}

 

GameSession이 문제없이 생성되면 위와 같이 GameSession과 관련된 JSON 파일이 반환된다

 

 

이후 AWS Console - Amazon GameLift Servers - 플릿게임 세션에서 생성된 게임 세션을 확인할 수 있다

728x90
반응형