32752 - A server-side plugin (or webhook) failed to execute and reported an error.
Check the OperationResponse.DebugMessage.
웹훅설정해서 그럼
OnJoinRoomFailed에러 모음
public override void OnJoinRoomFailed(short returnCode, string message)
{
switch (returnCode)
{
case ErrorCode.GameFull:
Debug.LogError("풀방임");
break;
}
}
----------------------------------------------------------------------------------------------
NotSupportedException: StartBackgroundCalls() can run a maximum of 255 threads.
포톤챗을 과도하게 연결시도함
SupportClass.StopAllBackgroundCalls()로 기존 연결들을 삭제하면 해결된다
SupportClass.StopAllBackgroundCalls();
chatClient.Connect(PhotonNetwork.PhotonServerSettings.AppSettings.AppIdChat,
PhotonNetwork.AppVersion, new AuthenticationValues(PhotonNetwork.AuthValues.UserId));
----------------------------------------------------------------------------------------------
Can not Instantiate before the client joined/created a room.
방연결 안 됐는데 네트워크 오브젝트 생성하려고 해서 그럼
PhotonNetwork.InstantiateRoomObject(botPrefab.name, pos, rot);
이거를
if(PhotonNetwork.CurrentRoom != null)
{
PhotonNetwork.InstantiateRoomObject(botPrefab.name, pos, rot);
}
이렇게 수정해주자
----------------------------------------------------------------------------------------------
InvalidCastException: Specified cast is not valid.
PhotonPlayerData.OnPhotonSerializeView (Photon.Pun.PhotonStream stream, Photon.Pun.PhotonMessageInfo info)
얼핏 봐서는 캐스트 타입 잘못 지정해서 그런거 같아보이지만 전혀 아니다.
몰론 아~주 가끔 정말로 타입 미스나서 그럴수도 있겠지만
(가끔 구버전이랑 신버전끼리 연결할때도 뜨더라)
해결방법 v1
동일 게임오브젝트에 IPunObservable을 마구 넣은뒤에 인스펙터에서 값 확인하려고 할때 뜬다
해결법은
기존
병합후
IPunObservable 불필요하게 분산시키지 말고 병합시키면 된다
다른 게임오브젝트에 옮기는거도 생각해봤는데 이런경우는 보통 GetComponent로 서로 호출하는게 많아서
서로 연결시키기 귀찮으니 걍 병합함
어차피 GetComponent로 가져오면 되니 수리하는데 드는 작업량도 작다
근데 이렇게 병합하면 아래 오류가 뜰수도 있다
v2
v1을 다 써놓고 보니 어 잠깐 IPunObservable가 갱신 안 되어서 발생하는 문제라면 혹시...
예상이 맞았다. 그냥 PhotonView 플래그 문제였다.
개뻘짓함
리셋후 프리팹 저장해줘라
----------------------------------------------------------------------------------------------
Observed scripts have to implement IPunObservable.
원래 있던 IPunObservable들이 사라져서 생긴거
왜냐하면 쟤내들이 Auto Find All을 할때 플래그를 안 세워서 프리팹에 저장 안 되어있음 (하?)
방법은 두가지
첫번째는 매뉴얼 사용이고
두번째는 Reset사용이다
후자가 더 편하니 후자를 씀
원리는 당연히 플래그를 강제로 세워서 컴포넌트를 저장시키는것
'Unity > Photon' 카테고리의 다른 글
자주 쓰는 유니티 포톤챗 코드 (0) | 2021.12.14 |
---|---|
포톤 친구랑 같이 플레이 (0) | 2021.11.24 |
포톤 메신저 (0) | 2021.11.15 |