diff --git a/MinecraftClient/Protocol/ProtocolHandler.cs b/MinecraftClient/Protocol/ProtocolHandler.cs index 3c46b119..7e10e7a4 100644 --- a/MinecraftClient/Protocol/ProtocolHandler.cs +++ b/MinecraftClient/Protocol/ProtocolHandler.cs @@ -83,7 +83,7 @@ namespace MinecraftClient.Protocol { ConsoleIO.WriteLineFormatted(String.Format("ยง8{0}: {1}", e.GetType().FullName, e.Message)); } - }, TimeSpan.FromSeconds(30))) + }, TimeSpan.FromSeconds(Settings.ResolveSrvRecordsShortTimeout ? 5 : 30))) { protocolversion = protocolversionTmp; forgeInfo = forgeInfoTmp; diff --git a/MinecraftClient/Settings.cs b/MinecraftClient/Settings.cs index 2c4d943c..1b715559 100644 --- a/MinecraftClient/Settings.cs +++ b/MinecraftClient/Settings.cs @@ -94,6 +94,7 @@ namespace MinecraftClient public static CacheType SessionCaching = CacheType.None; public static bool DebugMessages = false; public static bool ResolveSrvRecords = true; + public static bool ResolveSrvRecordsShortTimeout = true; //AntiAFK Settings public static bool AntiAFK_Enabled = false; @@ -227,7 +228,6 @@ namespace MinecraftClient case "privatemsgscmdname": PrivateMsgsCmdName = argValue.ToLower().Trim(); break; case "botmessagedelay": botMessageDelay = TimeSpan.FromSeconds(str2int(argValue)); break; case "debugmessages": DebugMessages = str2bool(argValue); break; - case "resolvesrvrecords": ResolveSrvRecords = str2bool(argValue); break; case "botowners": Bots_Owners.Clear(); @@ -308,6 +308,19 @@ namespace MinecraftClient default: BrandInfo = null; break; } break; + + case "resolvesrvrecords": + if (argValue.Trim().ToLower() == "fast") + { + ResolveSrvRecords = true; + ResolveSrvRecordsShortTimeout = true; + } + else + { + ResolveSrvRecords = str2bool(argValue); + ResolveSrvRecordsShortTimeout = false; + } + break; } break; @@ -527,7 +540,7 @@ namespace MinecraftClient + "showchatlinks=true # Show links embedded in chat messages\r\n" + "terrainandmovements=false # Uses more ram, cpu, bandwidth\r\n" + "sessioncache=memory # Use 'none', 'memory' or 'disk' (disk is experimental)\r\n" - + "resolvesrvrecords=true # Resolve SRV DNS record (required for joining some servers)\r\n" + + "resolvesrvrecords=fast # Use 'false', 'fast' (5s timeout), or 'true'. Required for joining some servers.\r\n" + "accountlist=accounts.txt\r\n" + "serverlist=servers.txt\r\n" + "playerheadicon=true\r\n"