如何使用 Photon 对接会?
How To use Matchmaking with Photon?
我使用此代码加入光子中的房间:
TypedLobby sqlLobby = new TypedLobby(GAME_LOBBY_NAME, LobbyType.SqlLobby);
string sqlLobbyFilter = string.Format("L = {0}" , 8);
PhotonNetwork.JoinRandomRoom(null, 2, MatchmakingMode.FillRoom, sqlLobby, sqlLobbyFilter);
并使用此代码创建房间:
RoomOptions newRoomOptions = new RoomOptions();
newRoomOptions.isOpen = true;
newRoomOptions.isVisible = true;
newRoomOptions.maxPlayers = 2;
// L is League
newRoomOptions.customRoomPropertiesForLobby = new string[] { "L" };
newRoomOptions.customRoomProperties = new ExitGames.Client.Photon.Hashtable() { { "L", 8 } };
TypedLobby sqlLobby = new TypedLobby(GAME_LOBBY_NAME, LobbyType.SqlLobby);
PhotonNetwork.CreateRoom(null, newRoomOptions, sqlLobby);
我从 Photon 文档中获取此代码 https://doc.photonengine.com/en/pun/current/tutorials/matchmaking-and-lobby
但这会引发异常:
Operation failed: OperationResponse 225: ReturnCode: -2 (SQL logic error or missing database
no such column: L). Parameters: {} Server: MasterServer
谢谢。
使用 C0..C9 属性代替 L。
来自文档:
在内部,SQL-lobbies 在 SQLite table 中列出最多 10 个特殊房间 "filtering-properties"。目前,它们的命名固定为:"C0"、"C1" 到 "C9"。
我使用此代码加入光子中的房间:
TypedLobby sqlLobby = new TypedLobby(GAME_LOBBY_NAME, LobbyType.SqlLobby);
string sqlLobbyFilter = string.Format("L = {0}" , 8);
PhotonNetwork.JoinRandomRoom(null, 2, MatchmakingMode.FillRoom, sqlLobby, sqlLobbyFilter);
并使用此代码创建房间:
RoomOptions newRoomOptions = new RoomOptions();
newRoomOptions.isOpen = true;
newRoomOptions.isVisible = true;
newRoomOptions.maxPlayers = 2;
// L is League
newRoomOptions.customRoomPropertiesForLobby = new string[] { "L" };
newRoomOptions.customRoomProperties = new ExitGames.Client.Photon.Hashtable() { { "L", 8 } };
TypedLobby sqlLobby = new TypedLobby(GAME_LOBBY_NAME, LobbyType.SqlLobby);
PhotonNetwork.CreateRoom(null, newRoomOptions, sqlLobby);
我从 Photon 文档中获取此代码 https://doc.photonengine.com/en/pun/current/tutorials/matchmaking-and-lobby 但这会引发异常:
Operation failed: OperationResponse 225: ReturnCode: -2 (SQL logic error or missing database
no such column: L). Parameters: {} Server: MasterServer
谢谢。
使用 C0..C9 属性代替 L。
来自文档: 在内部,SQL-lobbies 在 SQLite table 中列出最多 10 个特殊房间 "filtering-properties"。目前,它们的命名固定为:"C0"、"C1" 到 "C9"。