public override void StartServer(string name, string ipAdress, int port, bool bNeedRegistration, NetServerType serverType, int maxPlayers) { ConnectToDatabase(); base.StartServer(name, ipAdress, port, bNeedRegistration, serverType, maxPlayers); m_bIsRunning = true; }
public F3_NetServerInfo() { m_serverName = ""; m_serverType = NetServerType.eTYPE_UNKOWN; m_currentNbPlayers = -1; m_maxPlayers = -1; }
public F3_ServerConfig() { m_appID = "default"; m_ip = NetUtility.Resolve("localhost"); m_port = 7980; m_needRegistration = true; m_serverType = NetServerType.eTYPE_UNKOWN; m_maxplayers = F3_NetCommonConstants.UNLIMITED_PLAYERS; }
public void PopulateFromMsg(NetIncomingMessage msg) { m_serverName = msg.ReadString(); m_serverType = (NetServerType)msg.ReadByte(); m_serverInternalAdress = msg.ReadIPEndPoint(); m_serverExternalAdress = msg.SenderEndPoint; m_currentNbPlayers = msg.ReadInt32(); m_maxPlayers = msg.ReadInt32(); m_NATtoken = msg.ReadString(); m_lastContact = DateTime.Now; }
//FromNetMsg is handled by F3_NetServerInfo. public static void ToNetMsg(long serverUUID, string serverName, NetServerType serverType, IPEndPoint serverAddress, int connectedPlayers, int maxPlayers, string token, ref NetOutgoingMessage netMsg) { netMsg.Write((byte)NetDataType.eDATA_REGISTER_HOST); netMsg.Write(serverUUID); netMsg.Write(serverName); netMsg.Write((byte)serverType); netMsg.Write(serverAddress); netMsg.Write(connectedPlayers); netMsg.Write(maxPlayers); netMsg.Write(token); }
public virtual void StartServer(F3_ServerConfig serverConfig) { m_connectedPlayers = new Dictionary<long, F3_NetPlayerInfo>(); NetPeerConfiguration config = new NetPeerConfiguration(serverConfig.GetAppID()); config.EnableMessageType(NetIncomingMessageType.ConnectionApproval); config.EnableMessageType(NetIncomingMessageType.NatIntroductionSuccess); config.EnableMessageType(NetIncomingMessageType.UnconnectedData); config.EnableMessageType(NetIncomingMessageType.StatusChanged); config.LocalAddress = serverConfig.GetIpAdress(); config.Port = serverConfig.GetPort(); m_server = new NetServer(config); m_server.Start(); m_listener = new F3_ServerListenerThread(serverConfig.GetAppID(), this); m_bNeedRegistration = serverConfig.HasToRegister(); m_serverType = serverConfig.GetServerType(); m_maxPlayers = serverConfig.GetMaxPlayers(); if (m_bNeedRegistration) { RegisterToMasterServer(true); } }
public bool LoadFromXML(string filename) { XmlDocument doc = new XmlDocument(); try { doc.Load(filename); } catch (System.IO.FileNotFoundException) { Console.WriteLine("ServerConfig not found .. using defaults"); return false; } XmlNode serverNode = doc.SelectSingleNode("serverConfig"); if (serverNode != null) { m_appID = serverNode.SelectSingleNode("name").InnerText; m_ip = NetUtility.Resolve(serverNode.SelectSingleNode("ip").InnerText); int.TryParse(serverNode.SelectSingleNode("port").InnerText, out m_port); int register; int.TryParse(serverNode.SelectSingleNode("register").InnerText, out register); m_needRegistration = Convert.ToBoolean(register); int type; int.TryParse(serverNode.SelectSingleNode("serverType").InnerText, out type); m_serverType = (NetServerType)type; int.TryParse(serverNode.SelectSingleNode("maxplayers").InnerText, out m_maxplayers); } return true; }