From 3597c8f138453bb4e31be0b59f1ac89c679338bb Mon Sep 17 00:00:00 2001 From: JustArchi Date: Sat, 19 Mar 2016 11:33:39 +0100 Subject: [PATCH] Make it possible to run steam client with UDP --- ArchiSteamFarm/Bot.cs | 2 +- ArchiSteamFarm/GlobalConfig.cs | 15 +++++++++++++++ ArchiSteamFarm/config/ASF.json | 1 + 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/ArchiSteamFarm/Bot.cs b/ArchiSteamFarm/Bot.cs index 6cca3df03..0498220fa 100755 --- a/ArchiSteamFarm/Bot.cs +++ b/ArchiSteamFarm/Bot.cs @@ -186,7 +186,7 @@ namespace ArchiSteamFarm { } // Initialize - SteamClient = new SteamClient(); + SteamClient = new SteamClient(Program.GlobalConfig.SteamProtocol); if (Program.GlobalConfig.Debug && !Debugging.NetHookAlreadyInitialized && Directory.Exists(Program.DebugDirectory)) { try { diff --git a/ArchiSteamFarm/GlobalConfig.cs b/ArchiSteamFarm/GlobalConfig.cs index 356d79786..b4415cde9 100644 --- a/ArchiSteamFarm/GlobalConfig.cs +++ b/ArchiSteamFarm/GlobalConfig.cs @@ -26,6 +26,7 @@ using Newtonsoft.Json; using System; using System.Collections.Generic; using System.IO; +using System.Net.Sockets; namespace ArchiSteamFarm { internal sealed class GlobalConfig { @@ -47,6 +48,9 @@ namespace ArchiSteamFarm { [JsonProperty(Required = Required.DisallowNull)] internal EUpdateChannel UpdateChannel { get; private set; } = EUpdateChannel.Stable; + [JsonProperty(Required = Required.DisallowNull)] + internal ProtocolType SteamProtocol { get; private set; } = ProtocolType.Tcp; + [JsonProperty(Required = Required.DisallowNull)] internal ulong SteamOwnerID { get; private set; } = 0; @@ -107,6 +111,17 @@ namespace ArchiSteamFarm { return null; } + // SK2 supports only TCP and UDP steam protocols + // Make sure that user can't screw this up + switch (globalConfig.SteamProtocol) { + case ProtocolType.Tcp: + case ProtocolType.Udp: + break; + default: + globalConfig.SteamProtocol = ProtocolType.Tcp; + break; + } + return globalConfig; } diff --git a/ArchiSteamFarm/config/ASF.json b/ArchiSteamFarm/config/ASF.json index f6d2998ed..5f4251bac 100644 --- a/ArchiSteamFarm/config/ASF.json +++ b/ArchiSteamFarm/config/ASF.json @@ -2,6 +2,7 @@ "Debug": false, "AutoUpdates": true, "UpdateChannel": 1, + "SteamProtocol": 6, "SteamOwnerID": 0, "MaxFarmingTime": 10, "IdleFarmingPeriod": 3,