When I use CreateRoom, the room is not created or something

Options
Hi,
I'm having trouble creating rooms and display them. I was looking everywhere and debugging I found out that after using the function PhotonNetworking.CreateRoom(nameRoom, roomOps), if I look in PhotonNetworking data the CountOfRooms still in 0.
I check everything and I don't know what to do.
public class NetworkController : MonoBehaviourPunCallbacks
{
       void Start()
       {
		PhotonNetwork.ConnectUsingSettings();
       }
	public override void OnConnectedToMaster() //Cuando te conectas, ejecuta esto
	{
		Debug.Log("Connected. Server: " + PhotonNetwork.CloudRegion);
	}
}

public class LobbyController : MonoBehaviourPunCallbacks
{
	[SerializeField] Text nameRoom;
	[SerializeField] GameObject connecting;
	[SerializeField] GameObject lobby;
	[SerializeField] GameObject setNamePanel;
	[SerializeField] GameObject room;
	[SerializeField] Transform roomsContainer;
	[SerializeField] GameObject roomListingPrefab;
	[SerializeField] GameObject mainMenu;
	[SerializeField] Text textNameInput;
	[SerializeField] Text playersInLobby;


	List<RoomInfo> roomListInfo;

	string roomName;
	int roomSize;

	public override void OnConnectedToMaster()
	{
		PhotonNetwork.AutomaticallySyncScene = true;
		connecting.SetActive(false);
		setNamePanel.SetActive(true);

	}

	public void JoinLobbyOnClick()
	{
		roomListInfo = new List<RoomInfo>();
		PhotonNetwork.JoinLobby();

		PhotonNetwork.NickName = textNameInput.text;
		PlayerPrefs.SetString("NickName", textNameInput.text);

		playersInLobby.text = PhotonNetwork.CountOfPlayers.ToString();
	}



	public override void OnRoomListUpdate(List<RoomInfo> roomList)
	{
		Debug.Log("OnRoomListUpdate Excecuted.");
		int tempIndex;
		foreach (RoomInfo room in roomList)
		{
			Debug.Log("There are rooms.");

			if (roomListInfo != null) tempIndex = roomListInfo.FindIndex(ByName(room.Name));
			else tempIndex = -1; 

			if(tempIndex != -1)
			{
				roomListInfo.RemoveAt(tempIndex);
				Destroy(roomsContainer.GetChild(tempIndex).gameObject);
			}
			if(room.PlayerCount >0)
			{
				roomListInfo.Add(room);
				ListRoom(room);
			}
		}
	}

	static System.Predicate<RoomInfo> ByName(string name)
	{
		return delegate (RoomInfo room)
		{
			return room.Name == name;
		};
	}

	void ListRoom(RoomInfo room)
	{
		if (room.IsOpen && room.IsVisible)
		{
			GameObject tempListing = Instantiate(roomListingPrefab, roomsContainer);
			RoomButton tempButton = tempListing.GetComponent<RoomButton>();
			tempButton.SetRoom(room.Name, room.MaxPlayers, room.PlayerCount);
		}
	}

	public void OnRoomNameChanged(string name)
	{
		roomName = name;
	}
	public void OnRoomSizeChange(string sizeIn)
	{
		roomSize = int.Parse(sizeIn);
	}

	public void CreateRoom()
	{
		RoomOptions roomOps = new RoomOptions() { IsVisible = true, IsOpen = true, MaxPlayers = 6 };
		PhotonNetwork.CreateRoom(nameRoom.text, roomOps);

		PhotonNetwork.CountOfPlayers.ToString();
		lobby.SetActive(false);
		room.SetActive(true);

	}

	public override void OnCreateRoomFailed(short returnCode, string message)
	{
		Debug.Log("Room creation failed. Message: " + message + ". Code: " + returnCode);
		//RoomOptions roomOps = new RoomOptions() { IsVisible = true, IsOpen = true, MaxPlayers = 6 };
		//PhotonNetwork.CreateRoom(nameRoom.text, roomOps);
	}

	public void LeaveRoom()
	{
		PhotonNetwork.LeaveRoom();
		connecting.SetActive(true);
		room.SetActive(false);
	}

	public void LeaveLobby()
	{
		PhotonNetwork.LeaveLobby();

		lobby.GetComponentInParent<GameObject>().SetActive(false);
		mainMenu.SetActive(true);
	}

}

Comments

  • JohnTube
    JohnTube ✭✭✭✭✭
    Options
    Hi @AlejandroCarr,

    Thank you for choosing Photon!

    I think you are successfully joined to a room.
    Make sure to override "OnJoinedRoom" or "OnCreatedRoom" callbacks.

    Otherwise,
    What do you see in the error logs?
    If room creation fails you should see a message starting with "Room creation failed. Message:".

    Maybe the connection fails?
    Do you see "Connected. Server:"?
    Override "OnDisconnected" callback to see if you don't get a connection failure.

    Also, application stats (e.g CountOfRooms) and lobby stats do not work when joined to rooms only when joined to lobbies or connected to master server.