OnMatchInGameAccess 호출이 문서의 설명과 다릅니다.

문의를 남기실 경우 다음 항목을 작성해 주시면 빠른 답변 처리에 도움이 됩니다.

  • 프로젝트명 :
  • 뒤끝SDK 버전 : 4.6.0
  • 에러 코드 :

개발자 문서에 따르면 A가 입장한 상태에서
이후 B가 방에 입장하면 A, B는 각각 A, B의 매칭 기록이 들어있는 OnMatchInGameAccess 이벤트 핸들러를 호출받는다고 되어있습니다.

하지만, 실제로 테스트해보면 A만 A, B의 매칭 기록을 모두 호출받고, 뒤에 입장한 B의 경우에는 B 자신의 ‘MatchInGameSessionEventArgs’ 데이터만 한 번 전달받습니다.

뭔가 옵션이 있는 것도 아니고 지금 계속 테스트를 해봐도 동일합니다.
확인 부탁드립니다.(테스트 환경 : 랜덤 1:1 매치)

안녕하세요

확인해보니 해당 개발자문서에 sdk 4.6.0 이전 버전의 정보로 잘못된 정보가 적혀있습니다.

개발자님이 받으신 플로우대로

  • A, B, C, D의 유저가 있을 때 방에 A만 접속해 있고, B가 접속했을 경우 A와 B는 각각 B의 매칭 기록이 들어있는 OnMatchInGameAccess 이벤트 핸들러를 호출받습니다.
  • 이후 C가 방에 입장하면 A, B, C는 각각 C의 매칭 기록이 들어있는 OnMatchInGameAccess 이벤트 핸들러를 호출받습니다.
  • D가 방에 접속하지 않은 시점에서 A, B, C 유저는 D의 매칭기록을 알 수 없습니다.

이렇게 메시지를 수신받는 것이 정상적인 상황입니다.

또한 B, C 입장에서 각각 자기보다 먼저 들어온 유저의 정보는

OnSessionListInServer

이벤트 핸들어의 GameRecords 정보로 알 수 있습니다.
GameRecords에는 현재 접속한 모든 세션들의 정보가 들어 있습니다.

단 이 세션 정보에는 현재 방에 접속하지 않은 유저의 정보는 들어있지 않습니다.

위의 경우를 예로 들면

  • 최초 A가 입장하였을 때 A의 정보만 GameRecords에 들어있고,
  • B가 입장한 경우 A와 B의 정보가 GameRecords에 들어있고,
  • C가 입장한 경우 A,B,C의 정보가 GameRecords에 들어있고…

이런 식으로 GameRecords에 정보가 누적되어 들어옵니다.

위 사항도 참고부탁드리겠습니다.

개발하시는 데 혼란을 드려 죄송합니다.