/// <summary> /// Start the server instance /// </summary> /// <param name="statusDisplay">Status display object to use (can be null)</param> /// <param name="commandInterface">Command interface to use (can be null)</param> /// <param name="cdKeyValidator">CD key validator to use</param> /// <param name="connectionLogWriter">LogWriter writer to use</param> public static bool Start(IStatusDisplay statusDisplay, ICommandInterface commandInterface) { if (instance == null) { IGameStatsLog gameStats; ICDKeyValidator cdKeyValidator; if (LoadConfiguredModules(out gameStats, out cdKeyValidator)) { log.Clear(); instance = new MasterServer(statusDisplay, commandInterface, cdKeyValidator, gameStats, logWriter); instance.BeginListening(); return(true); } } return(false); }