채팅 서비스 정식 OPEN!
개발 Speed Up! 편리한 운영 툴! 지금 바로 사용해보세요
인플루언서 등의 영향으로 유저가 순간적으로 증가하더라도 타 서비스와 달리 자동으로 서버 크기가 확장됩니다.
1:1, 개인전, 팀전같이 다양한 조건에 따라 유저들을 매칭시킬 수
있습니다.
또한 기준없이 매칭시키거나, 점수 혹은 MMR을 기반으로
유저들 간 실력에 맞게 적절히 매칭을 시킬 수 있습니다.
뒤끝매치는 설정된 규칙에 따라 유저 간 매치를 생성해 실시간 게임 환경을 제공하는 서비스입니다.
결과 처리 프로세스, 재접속 기능, 게임 중 채팅 기능 등 다양한 부가 기능을 제공합니다.
뒤끝매치는 게임을 이용하는 유저들을 규칙에 따라 매칭 시켜주는 서비스입니다.
유저가 닉네임을 가지고 있어야 합니다.
콘솔에서 뒤끝매치가 활성화되어 있어야 합니다.
콘솔에서 새 매치를 생성할 수 있습니다.
// 매칭 서버 접속
Backend.Match.JoinMatchMakingServer(out errorInfo);
Backend.Match.OnJoinMatchMakingServer += (args) =>
{
// 매칭서버 접속 성공, 실패 여부 확인
};
매칭을 신청하기 위한 대기방을 생성합니다. 혼자 매칭을 신청하든, 다른 유저와 함께 매칭을 신청하든 대기방을 반드시 생성해야 합니다.
대기방을 생성한 유저가 방장이 됩니다.
// 대기방 생성
Backend.Match.CreateMatchRoom();
Backend.Match.OnMatchMakingRoomCreate += (args) =>
{
// 대기방 생성 성공, 실패 여부 확인
};
// 유저 초대하기
Backend.Match.InviteUser(nickName);
Backend.Match.OnMatchMakingRoomInvite += (args) =>
{
// 유저 초대 성공, 실패 여부 확인
};
// 유저 초대하기
Backend.Match.AcceptInvitation(roomId, roomToken);
Backend.Match.OnMatchMakingRoomInviteResponse += (args) =>
{
// 초대 수락 성공, 실패 여부 확인
};
Backend.Match.OnMatchMakingRoomUserList += (args) =>
{
// 대기방 정보 수신
};
// 매칭 신청
Backend.Match.RequestMatchMaking(matchType, modeType, inDate);
Backend.Match.OnMatchMakingResponse += (args) =>
{
// 매칭 신청 성공, 실패 여부 확인
};
서버에서 조건에 맞는 유저들을 찾으면 매칭을 성사시킵니다. 이후 매칭이 성사된 모든 유저들에게 아래 정보를 송신합니다.
성사된 매칭 정보(매칭 카드 inDate)
샌드박스 매치 유무
접속할 인게임 서버 주소
접속할 게임방 정보
// 매칭 성사
Backend.Match.OnMatchMakingResponse += (args) =>
{
// 매칭 성사 시 해당 이벤트가 성공으로 한번 더 호출됩니다.
// 매칭 성사 시 게임을 진행할 인게임 정보가 해당 이벤트에 포함됩니다.
};
// 인게임 서버 접속
Backend.Match.JoinGameServer(serverAddress, serverPort, false, out errorInfo);
Backend.Match.OnSessionJoinInServer += (args) =>
{
// 인게임 서버 접속 성공, 실패 여부 확인
};
매칭이 성사되었을 때 넘겨받은 게임방 토큰값을 이용하여 게임방에 접속합니다. 이 때 현재 방에 참여하고 있는 유저들의 리스트와 게임방 접속 성공 메시지를 함께 수신받습니다.
개발문서 읽기
// 게임방 접속하기
Backend.Match.JoinGameRoom(roomToken);
Backend.Match.OnSessionListInServer += (args) =>
{
// 게임방 유저 정보 수신
};
Backend.Match.OnMatchInGameAccess += (args) =>
{
// 게임방 유저 입장 메시지 수신
};
함께 매칭이 성사된 모든 유저가 게임방에 접속하면 콘솔에서 설정한 게임 시작 대기 시간이 지난 후에 게임시작 메시지가 모든 클라이언트에 송신됩니다.
개발문서 읽기
// 모든 유저가 게임방에 입장하면 콘솔에서 지정한 시간 후 아래 이벤트가 호출됩니다.
Backend.Match.OnMatchInGameStart = () =>
{
// TODO
};
게임 시작 메시지를 받은 이후 바이너리 데이터와 채팅 메시지를 송신할 수 있습니다. 서버로 송신한 데이터는 서버를 거쳐 보낸 유저를 포함하여 게임 방 내 모든 유저에게 브로드캐스팅됩니다.
개발문서 읽기
// 바이너리 데이터 전송
Backend.Match.SendDataToInGameRoom(data);
// 바이너리 데이터 수신
Backend.Match.OnMatchRelay += (args) =>
{
// 바이너리 데이터 처리
};
// 채팅 메시지 전송
Backend.Match.ChatToGameRoom(matchChatModeType, message);
// 채팅 메시지 수신
Backend.Match.OnMatchChat += (args) =>
{
// 채팅 메시지 처리
};
// 재접속 가능한 게임이 존재하는지 확인
BackendReturnObject bro = Backend.Match.IsGameRoomActivate();
if (bro.IsSuccess())
{
// 재접속 가능한 게임방 확인
}
// 위 함수에서 확인한 게임방 정보를 기반으로 재접속 수행
if (!JoinGameServer(addr, port, true, out errorInfo))
{
// 에러확인
return;
}
게임방 내 모든 유저가 게임결과 메시지를 서버로 보내면 서버에서는 해당 결과 메시지를 바탕으로 결과를 종합하여 DB에 반영합니다.
게임 결과 종합이 완료됨과 동시에 게임이 종료됩니다. 게임이 종료되면 유저는 인게임 서버와 자동으로 접속이 종료됩니다.
개발문서 읽기
// 게임 결과 종합
Backend.Match.MatchEnd(matchGameResult);
Backend.Match.OnMatchResult += (args) =>
{
// 게임 결과 종합 성공, 실패 여부 확인
};