- Home /
 
 
               Question by 
               Ielboys · Apr 01, 2020 at 10:16 AM · 
                multiplayermultiplayer-networkingpun  
              
 
              JoinRandomRoom failed. Client is on GameServer (must be Master Server for matchmaking) and ready. Wait for callback: OnJoinedLobby or OnConnectedToMaster.
I would really appreciate it if you guys could help. I think it has something to do with the callbacks but I am not sure what exactly.
using UnityEngine; using System.Collections; using Photon.Pun; using UnityEngine.UI; using Photon.Realtime; using UnityEngine.SceneManagement;
public class NetworkConnectionManager : MonoBehaviourPunCallbacks {
 public Button BtnConnectMaster;
 public Button BtnConnectRoom;
 public bool TriesToConnectToMaster;
 public bool TriesToConnectToRoom;
 // Use this for initialization
 void Start()
 {
     TriesToConnectToMaster = false;
     TriesToConnectToRoom = false;
 }
 // Update is called once per frame
 void Update()
 {
     BtnConnectMaster.gameObject.SetActive(!PhotonNetwork.IsConnected && !TriesToConnectToMaster);
     BtnConnectRoom.gameObject.SetActive(PhotonNetwork.IsConnected && !TriesToConnectToMaster && !TriesToConnectToRoom);
 }
 public void OnClickConnectToMaster()
 {
     //Settings (all optional and only for tutorial purpose)
     PhotonNetwork.OfflineMode = false;           //true would "fake" an online connection
     PhotonNetwork.NickName = "PlayerName";       //to set a player name
     PhotonNetwork.AutomaticallySyncScene = true; //to call PhotonNetwork.LoadLevel()
     PhotonNetwork.GameVersion = "v1";            //only people with the same game version can play together
     TriesToConnectToMaster = true;
     //PhotonNetwork.ConnectToMaster(ip,port,appid); //manual connection
     PhotonNetwork.ConnectUsingSettings();           //automatic connection based on the config file in Photon/PhotonUnityNetworking/Resources/PhotonServerSettings.asset
 }
 public override void OnConnectedToMaster()
 {
     base.OnConnectedToMaster();
     TriesToConnectToMaster = false;
     Debug.Log("Connected to Master!");
 }
 public override void OnDisconnected(DisconnectCause cause)
 {
     base.OnDisconnected(cause);
     TriesToConnectToMaster = false;
     TriesToConnectToRoom = false;
     Debug.Log(cause);
 }
 public void OnClickConnectToRoom()
 {
     if (!PhotonNetwork.IsConnected)
         return;
     TriesToConnectToRoom = true;
     //PhotonNetwork.CreateRoom("Peter's Game 1"); //Create a specific Room - Error: OnCreateRoomFailed
     //PhotonNetwork.JoinRoom("Peter's Game 1");   //Join a specific Room   - Error: OnJoinRoomFailed  
     PhotonNetwork.JoinRandomRoom();               //Join a random Room     - Error: OnJoinRandomRoomFailed  
 }
 public override void OnJoinRandomFailed(short returnCode, string message)
 {
     base.OnJoinRandomFailed(returnCode, message);
     //no room available
     //create a room (null as a name means "does not matter")
     PhotonNetwork.CreateRoom(null, new RoomOptions { MaxPlayers = 20 });
 }
 public override void OnCreateRoomFailed(short returnCode, string message)
 {
     base.OnCreateRoomFailed(returnCode, message);
     Debug.Log(message);
     base.OnCreateRoomFailed(returnCode, message);
     TriesToConnectToRoom = false;
 }
 public override void OnJoinedRoom()
 {
     base.OnJoinedRoom();
     TriesToConnectToRoom = false;
     Debug.Log("Master: " + PhotonNetwork.IsMasterClient + " | Players In Room: " + PhotonNetwork.CurrentRoom.PlayerCount + " | RoomName: " + PhotonNetwork.CurrentRoom.Name);
     SceneManager.LoadScene("Network");
 }
 
               }
               Comment
              
 
               
              Your answer
 
             Follow this Question
Related Questions
,Unity Multiplayer - Instantiate prefab 0 Answers
Photon RPC is not working in photon? 2 Answers
Callback for DNS entry error using Photon Networking 0 Answers