인게임 서버 구조

인게임 서버 구조에 대한 설명입니다.

인게임 서버 접속하기

인게임 서버는 매칭된 유저들 간 실시간으로 메시지를 주고받을 수 있는 기능을 제공해줍니다.
유저는 아래와 같은 순서로 매칭서버 및 게임방에 접속하여 게임을 시작할 수 있습니다.

image

1. 인게임 서버 접속하기

매칭이 성사되었을 때 넘겨받은 인게임 서버 주소와 포트번호를 이용하여 인게임 서버에 접속합니다.

2. 게임방 접속하기

매칭이 성사되었을 때 넘겨받은 게임방 토큰값을 이용하여 게임방에 접속합니다.
이 때 현재 방에 참여하고 있는 유저들의 리스트와 게임방 접속 성공 메시지를 함께 수신받습니다.

3. 게임 시작하기

함께 매칭이 성사된 모든 유저가 게임방에 접속하면 콘솔에서 설정한 게임 시작 대기 시간이 지난 후에 게임시작 메시지가 모든 클라이언트에 송신됩니다.

게임 진행하기

image

1. 바이너리 데이터 / 채팅메시지 송수신하기

게임시작메시지를 받은 이후 바이너리 데이터와 채팅 메시지를 송신할 수 있습니다.
서버로 송신한 데이터는 서버를 거쳐 보낸 유저를 포함하여 게임 방 내 모든 유저에게 브로드캐스팅됩니다.

2. 게임 결과 보내기

게임방 내 모든 유저가 게임결과 메시지를 서버로 보내면 서버에서는 해당 결과 메시지를 바탕으로 결과를 종합하여 DB에 반영합니다.

3. 게임 종료

게임 결과 종합이 완료됨과 동시에 게임이 종료됩니다.
게임이 종료되면 유저는 인게임 서버와 접속이 자동으로 종료됩니다.