Skip to content
This repository has been archived by the owner on Aug 24, 2023. It is now read-only.

Commit

Permalink
PATCH v3.2.1 (Fixed a bug of not using Player pref when WS failed)
Browse files Browse the repository at this point in the history
  • Loading branch information
Haruki1707 committed May 15, 2022
1 parent 258d917 commit 1b1fce6
Show file tree
Hide file tree
Showing 6 changed files with 57 additions and 25 deletions.
4 changes: 4 additions & 0 deletions ValorantCC/MainWindow.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -354,7 +354,11 @@ private async void spinner_Loaded(object sender, RoutedEventArgs e)
try
{
if (Directory.Exists(Path.GetTempPath() + $"EZ_Updater0"))
{
if (Directory.Exists(Path.GetTempPath() + $"EZ_Updater0{System.Reflection.Assembly.GetExecutingAssembly().GetName().Name}"))
Directory.Delete(Path.GetTempPath() + $"EZ_Updater0{System.Reflection.Assembly.GetExecutingAssembly().GetName().Name}", true);
Directory.Move(Path.GetTempPath() + $"EZ_Updater0", Path.GetTempPath() + $"EZ_Updater0{System.Reflection.Assembly.GetExecutingAssembly().GetName().Name}");
}
Updater.CustomLogger = Utilities.Utils.Log;
Updater.LogInterfix = " | ";
if (await Updater.CheckUpdateAsync("weedeej", "ValorantCC"))
Expand Down
2 changes: 1 addition & 1 deletion ValorantCC/ValorantCC.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
<AssemblyVersion></AssemblyVersion>
<FileVersion></FileVersion>
<Version>3.2.0</Version>
<Version>3.2.1</Version>
<SignAssembly>true</SignAssembly>
<AssemblyName>$(MSBuildProjectName)</AssemblyName>
</PropertyGroup>
Expand Down
2 changes: 1 addition & 1 deletion ValorantCC/src/Auth.cs
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ private async Task<AuthTokens> ObtainAuthTokens()

private async static Task<String> GetVersion()
{
string ver = "release-04.04-shipping-15-678808";
string ver = "release-04.04-shipping-16-679250";
Utilities.Utils.Log("Obtaining Client Version info");
RestRequest request = new RestRequest("https://vtools-next.vercel.app/api/skinslist/version", Method.Get);

Expand Down
13 changes: 13 additions & 0 deletions ValorantCC/src/BackgroundAuth.cs
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,19 @@ public async void LoopCheck()

public async Task<bool> LoginFlagExists()
{
DirectoryInfo LogDir = new DirectoryInfo(Environment.GetEnvironmentVariable("LocalAppData") + "\\Riot Games\\Riot Client\\Logs\\Riot Client Logs");
var log = LogDir.GetFiles().OrderByDescending(f => f.LastWriteTime).First();

string content;
using (FileStream fileStream = File.Open(log.FullName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
using (StreamReader sr = new StreamReader(fileStream))
content = (String)sr.ReadToEnd().Clone();

if (content.Contains("riot-messaging-service: State is now Connected"))
return true;

await Task.Delay(1);

if (_lockfileData == null) return false;
RestClient wsClient = new RestClient(new RestClientOptions() { RemoteCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => true });
wsClient.Authenticator = new RestSharp.Authenticators.HttpBasicAuthenticator("riot",_lockfileData.Key);
Expand Down
56 changes: 33 additions & 23 deletions ValorantCC/src/Processor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ private async Task<Data> FetchUserSettings()
{
Utilities.Utils.Log("Obtaining User Settings using WS");
RestRequest request = new RestRequest($"{AuthResponse.LockfileData.Protocol}://127.0.0.1:{AuthResponse.LockfileData.Port}/player-preferences/v1/data-json/Ares.PlayerSettings", Method.Get);

RestResponse resp = await client.ExecuteAsync(request);
FetchResponseData response;
if (!resp.IsSuccessful)
Expand All @@ -146,23 +146,24 @@ private async Task<Data> FetchUserSettings()
} catch (NullReferenceException ex)
{
Utilities.Utils.Log("WS Failed to fetch settings error: " + ex.StackTrace.ToString());
request = new RestRequest("https://playerpreferences.riotgames.com/playerPref/v3/getPreference/Ares.PlayerSettings", Method.Get);
request.AddHeaders(_headers);
resp = await (new RestClient().ExecuteAsync(request));
if (!resp.IsSuccessful) return new Data();
var responseData = JsonConvert.DeserializeObject<Dictionary<string, object>>(resp.Content);
Data settings;
try
{
settings = Utilities.Utils.Decompress(Convert.ToString(responseData["data"]));
}catch (KeyNotFoundException)
{
Utilities.Utils.Log("Player pref failed to fetch settings");
return new Data();
}
return settings;
}

request = new RestRequest("https://playerpreferences.riotgames.com/playerPref/v3/getPreference/Ares.PlayerSettings", Method.Get);
request.AddHeaders(_headers);
resp = await (new RestClient().ExecuteAsync(request));
if (!resp.IsSuccessful) return new Data();
var responseData = JsonConvert.DeserializeObject<Dictionary<string, object>>(resp.Content);
Data settings;
try
{
settings = Utilities.Utils.Decompress(Convert.ToString(responseData["data"]));
}
catch (KeyNotFoundException)
{
Utilities.Utils.Log("Player pref failed to fetch settings");
return new Data();
}
return settings;
}
string responseContent = resp.Content;
try
Expand All @@ -189,18 +190,27 @@ private async Task<bool> putUserSettings(Data newData)
try
{
Utilities.Utils.Log("savePreference Unsuccessfull: " + response.Content.ToString());
return false;
} catch (NullReferenceException)
} catch (NullReferenceException ex)
{
request = new RestRequest("https://playerpreferences.riotgames.com/playerPref/v3/savePreference", Method.Put);
request.AddJsonBody(new { type = "Ares.PlayerSettings", data = Utilities.Utils.Compress(newData) });
request.AddHeaders(_headers);
response = await (new RestClient().ExecuteAsync(request));
if (!response.IsSuccessful)
Utilities.Utils.Log("WS savePreference Unsuccessfull: " + ex.StackTrace.ToString());
}

request = new RestRequest("https://playerpreferences.riotgames.com/playerPref/v3/savePreference", Method.Put);
request.AddJsonBody(new { type = "Ares.PlayerSettings", data = Utilities.Utils.Compress(newData) });
request.AddHeaders(_headers);
response = await (new RestClient().ExecuteAsync(request));

if (!response.IsSuccessful)
{
try
{
Utilities.Utils.Log("savePreference Unsuccessfull: " + response.Content.ToString());
return false;
}
catch (NullReferenceException ex)
{
Utilities.Utils.Log("Player pref savePreference Unsuccessfull: " + ex.StackTrace.ToString());
}
}
}

Expand Down
5 changes: 5 additions & 0 deletions global.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"sdk": {
"version": "6.0.101"
}
}

0 comments on commit 1b1fce6

Please sign in to comment.