[Production]서버 - Rooms 관련 버그잡기!!
Closed this issue · 11 comments
목적
Production을 위해 room이동 관련 모든 버그들을 다 한 곳에서 논의 할 수 있는 이슈!
룸과 관련 발견된 버그들 모두모두모두 모음.
- Alice와 Bob이 lobby에 있을때,
- Bob이 포탈에 가서 room을 만든 후,
- Alice가 포탈에 가면 Bob이 생성한 room이 안보임.
(둘 다 포탈에 접속해 있는 상황에서는 보임!)
-> cause: Room listing 하는 캔버스가 disable 되어있는 동안은 RoomListUpdate를 받지 못함. 따라서,
Bob이 room을 만들어도 포탈에 없는 Alice는 roomListUpdate를 받지 못하고,
room의 생성과 소멸은 phot에 버퍼되지 않고 생성 및 소멸시에만 콜백으로 알려주기에,
Alice가 포탈에 닿아서 JoinOrCreateRoomCanvas가 enable되었을 때에는 이미 그 콜백은 놓친 상태임.
룸들의 스케일이 달라서 문제가 되는 부분
-> instantiate시 mainroom에선 걷는게 충분히 빠른데, gameScene에서는 너무 느림!
List to check
- Non-master leaves room properly.
- Master leaves room properly.
- Rejoin after leave
- Proper destruction of room when all players leave.
Non - master leaves room somewhat properly
- 나간 사람은 lobby 로 이동, main scene load. (ok)
- 안나간 사람들의 CurrentRoomCanvas PlayerListing에서 나간 사람들은 삭제됨 (ok)
- 나간 사람이 같은 방에 다시 접속 시도 -> 이상해.. 안돼! (not ok) (아래 사진 Alice가 Bb에 재접 시도 참고)
Master leaves room properly
- 나간 사람은 lobby로 이동, main scene load. (ok)
- 안나간 사람중 ActorNr 가 가장 작은 사람이 Master가 되고, room은 유지 (ok)
- 안나간 사람들의 CurrentRoomCanvas PlayerListing에서 나간 사람들은 삭제됨 (ok)
재접속
예: Alice가 Bob(Master)이 만든 룸에서 빠져나옴 -> 포탈에 여전히 그 룸 정보가 있음.
그 룸도 잘 살아있는 거 확인 (Bob은 그 룸에서 여전히 잘 플레이중)
Alice가 다시 그 룸에 접속하려고 JoinRoom 때리는데 OnJoinedRoom 콜백이 호출안됨! (not ok)
첫 comment에 달려있는 roomlist update받지 못하는 건은 해결했습니다.
재접속 관련된 건은 어떤 사항인지 잘 이해가 가지 않고 제 로컬에서는 잘 돌아가는 것 같아서 한준님 만나서 같이 해결해보면 좋을 것 같습니다.
위에 오류가 발생하네요.
GameScene에 들어갔다가 RoomOptions를 눌러서 CurrentRoomCanvas를 띄우고 거기서 LeaveRoom을 눌렀을 때 해당 오류가 발생하는데 이유를 모르겠네요
확인하겠습니다
@AliceOfSNU @brainini @Abecid 이 오류 계속 나와서 해결해야합니다!!
확인해보겠습니다