public static void SetLobbyData(LobbyData lobbyData) { if (BoltNetwork.IsRunning && BoltNetwork.IsServer) { BoltNetwork.RegisterTokenClass <LobbyToken>(); LobbyToken token = new LobbyToken().BuildData(lobbyData); BoltNetwork.SetServerInfo(lobbyData.ServerName, token); Debug.Log("Lobby data set."); } else { Debug.LogWarning("Can't set data if Bolt is not running."); } }
public static void UpdateLobbyData(LobbyData lobbyData) { if (BoltNetwork.IsRunning && BoltNetwork.IsServer) { BoltNetwork.RegisterTokenClass <LobbyToken>(); LobbyToken token = new LobbyToken().BuildData(lobbyData); BoltMatchmaking.UpdateSession(token); Debug.Log("Lobby data updated."); } else { Debug.LogWarning("Can't update data if Bolt is not running."); } }
public static void BoltStartDone() { //BoltNetwork.EnableUPnP(); BoltNetwork.EnableLanBroadcast(); Debug.Log("Enabled Lan Broadcasting"); if (BoltNetwork.isServer) { //BoltNetwork.UdpSocket.masterClient = new UdpSocket.MasterClient(BoltNetwork.UdpSocket, new UdpKit.Protocol.ProtocolClient(BoltNetwork.UdpSocket.platformSocket, BoltNetwork.UdpSocket.GameId, BoltNetwork.UdpSocket.PeerId)); LobbyToken lobbyToken = new LobbyToken { Description = PlayerProfileManager.PlayerProfile.tag + "s Server", Gametype = (!GameManager.TeamGame) ? 0 : 1, ID = "ID", Map = GameParameters.Instance.maps[i01.UI.Manager.Instance.SelectedMapIndex].sceneName, PlayerCount = BoltNetwork.connections.Count() }; BoltNetwork.SetHostInfo("game", lobbyToken); //BoltNetwork.OpenPortUPnP(BoltNetwork.server.RemoteEndPoint.Port); //Debug.Log("Bolt server started! Woo!"); //if (File.Exists(Directory.GetParent(Application.dataPath).FullName + "\\" + "Session.dat")) //{ // FileStream fs2 = new FileStream(Directory.GetParent(Application.dataPath).FullName + "\\" + "Session.dat", FileMode.Open); // BinaryFormatter formatter2 = new BinaryFormatter(); // Debug.Log((formatter2.Deserialize(fs2) as UdpSession).WanEndPoint.Address.Byte0.ToString() + "." + (formatter2.Deserialize(fs2) as UdpSession).WanEndPoint.Address.Byte1.ToString() + "." + (formatter2.Deserialize(fs2) as UdpSession).WanEndPoint.Address.Byte2.ToString() + "." + (formatter2.Deserialize(fs2) as UdpSession).WanEndPoint.Address.Byte3.ToString() + ":" + (formatter2.Deserialize(fs2) as UdpSession).WanEndPoint.Port.ToString()); //} //FileStream fs = new FileStream(Directory.GetParent(Application.dataPath).FullName + "\\" + "Session.dat", FileMode.Create); //BinaryFormatter formatter = new BinaryFormatter(); //formatter.Serialize(fs, BoltNetwork.UdpSocket.sessionManager.GetLocalSession()); //Debug.Log(JsonUtility.ToJson(BoltNetwork.UdpSocket.sessionManager.GetLocalSession())); //Debug.Log(BoltNetwork.UdpSocket.sessionManager.GetLocalSession()._hostData[0]); } if (!BoltNetwork.isServer) { Debug.Log("Bolt client started! Woo!"); //BoltNetwork.Connect(UdpEndPoint.Parse("10.48.173.2:51368"), global::NetworkManager.playerToken); } }