[뒤끝매치] 재접속 루틴 관련 질의입니다.

  • 뒤끝SDK 버전 : 5.1.1

< 재접속 루틴> : 로그인 완료 후 진행 중인 게임 정보를 받아옴 > 진행 중인 게임이 있을 경우 재접속 루틴 실행
if(IsGameRoomActivate == true)
{
JoinGameServer(serverAddress, serverPort, true, roomToken);
}

<재접속 절차> : 진행중인 게임의 정바를 올바르게 받아오고 방생성, OnSessionJoinInServer 핸들러를 통해 올바르게 접속된 것을 확인할 수 있었습니다.
하지만 간혈적으로 첨부한 사진과 같이 sessionID 값을 받아 올 수 없으며, 핸들러 값을 보면 수시로 게임서버가 종료되었다가 접속되었음을 확인할 수 있습니다.
항상 이런 것은 아니나 10차례 실행 중 1~2차례는 이 오류가 발생합니다.
원인이 궁금합니다!

또한, 재접속 루틴 실행의 경우 OnMatchInGameAccess나 OnGameStart 등 실행되면 안되는 핸들러들이 이벤트를 수신합니다.(간혈적으로…)

아래는 로그 내용입니다.

IsGameRoomActivate statusCode : 200
message : Success
returnValue : {“roomToken”:“292a5d80-48a8-11eb-b509-1322bbf9dc9f”,“serverPort”:50000,“serverPublicHostName”:“ec2-54-180-152-16.ap-northeast-2.compute.amazonaws.com”,“matchModeType”:1,“matchType”:1,“enable_sandbox_mode”:false,“match_card_inDate”:“2020-08-11T04:37:30.107Z”}

JoinGameRoom: Success

Category: Success, Detail: NetworkOnline, SocketError: Success, Reason: Reconnect Success

안녕하세요 개발자님

확인 후 답변 드리도록 하겠습니다.


정상적으로 재접속에 성공했을 때 나타나는 로그는 아래와 같습ㄴ니다.

게임 시작 후 약 10초(?)가 지난 후에는 안정적으로 재접속이 가능한데, 매칭 직후(OnGameStart 핸들러 > 씬 전환 이후) 한 쪽에서 연결을 끊고 재접속을 시도하면 위와 같은 로그가 높은 확률로 나타나는 것 같습니다!
약 10초 후에는 안정적으로 재접속이 가능한 것 같아요,

  • 몇 차례 더 테스트해보니 "매칭 직후 종료 시"가 가장 정확한 원인인 것 같네요…
    두 클라이언트 모두 게임 씬으로 넘어간 직후(OnGameStart 이후) 한 쪽에서 연결을 끊으면 재접속 시도시 재접속 루틴이 아니라 다시 매칭(?) 작업이 이루어지는 것 같습니다,
    상대방 클라이언트에 OnSessionOnline 핸들러가 작동하는 것으로 봐서는 우선 같은 방으로 접속은 되는 것 같습니다,

다만 클라이언트 내부적으로 일반 접속과 재접속을 구분하여 동기화작업을 따로 진행을 하는데, 위와 같이 한쪽에서 매칭 직후 종료 후 재접속을 하게 되면 일반 접속과 재접속 루틴이 둘 다 이루어진다는 것이 문제네요 ㅜㅜ

  • 또한 한 번 위와 같은 절차로 재접속 루틴이 이루어지면, 해당 클라이언트는 다시 재접속을 하더라도 위와 같은 매칭 절차(?)로 재접속이 이루어집니다…
    확인 부탁드립니다 :slight_smile:

안녕하세요 개발자님

자세하게 상황을 남겨주셔서 감사합니다.

상황이 복잡하여 해당 상황을 재현하고 원인점을 찾는 데 시간이 조금 걸릴 것 같습니다.

매칭 직후 종료는 일반적으로 잘 일어나지 않고, 특이한 케이스 이므로

우선은 해당 사항은 무시하시고, 만약 재접속 시 sessionID가 none인 경우 재접속 로직을 취소하고 유저가 새로운 게임을 다시 신청하도록 유도하게 로직을 변경하시는 것을 추천드리겠습니다.

또한 현재 상황에 대해서는 말씀해주신 재현 상황을 바탕으로 확인 후 픽스를 진행하도록 하겠습니다.

다시한번 자세한 상황 설명에 감사드리겠습니다.

또한 이용에 불편을 드려 죄송합니다.

감사합니다.

좋아요 1