From 3ae40534dfb2f5e0c596dbdfb4011bf87702dfe3 Mon Sep 17 00:00:00 2001 From: IveBeenAlone Date: Sun, 25 Jan 2026 15:34:42 -0500 Subject: [PATCH] I fucking hate microsoft. Added support for handling 24.01.2026, mightve broken older versions, fuck if I know! --- FodyWeavers.xml | 3 ++ Form1.cs | 82 +++++++++++++++++++++++++++++++------- IBAHytaleLauncher.csproj | 68 +++++++++++++++++++++++++++++-- Properties/AssemblyInfo.cs | 4 +- packages.config | 15 +++++++ 5 files changed, 152 insertions(+), 20 deletions(-) create mode 100644 FodyWeavers.xml create mode 100644 packages.config diff --git a/FodyWeavers.xml b/FodyWeavers.xml new file mode 100644 index 0000000..5029e70 --- /dev/null +++ b/FodyWeavers.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/Form1.cs b/Form1.cs index 2085778..b5577de 100644 --- a/Form1.cs +++ b/Form1.cs @@ -11,6 +11,7 @@ using System.Net.Http; using System.Reflection; using System.Security.Cryptography; using System.Text; +using System.Text.Json; using System.Threading.Tasks; using System.Windows.Forms; using static System.Windows.Forms.VisualStyles.VisualStyleElement; @@ -25,6 +26,9 @@ namespace HelloWorld private const string UpdateURL = "https://ibatv.xyz/data/lnch/hy.txt"; + private string SanSessionID; + private string SanTokenID; + public Form1() { InitializeComponent(); @@ -165,10 +169,10 @@ namespace HelloWorld } - private void button1_Click(object sender, EventArgs e){} - private void lblHelloWorld_Click(object sender, EventArgs e){} - private void label2_Click(object sender, EventArgs e){} - private void button2_Click(object sender, EventArgs e) + private void button1_Click(object sender, EventArgs e) { } + private void lblHelloWorld_Click(object sender, EventArgs e) { } + private void label2_Click(object sender, EventArgs e) { } + private async void button2_Click(object sender, EventArgs e) { // All of this shit for username data @@ -267,6 +271,51 @@ namespace HelloWorld + + + + var payload = new + { + uuid = "13371337-1337-1337-1337-1337" + textBoxUUID.Text, + name = textBoxUsername.Text, + scopes = new[] { "hytale:server", "hytale:client" } + }; + + + //textBoxUUID.Text + " --name \"" + textBoxUsername.Text + + string json = JsonSerializer.Serialize(payload); + + using (HttpClient client = new HttpClient()) + { + using (HttpContent content = new StringContent(json, Encoding.UTF8, "application/json")) + { + HttpResponseMessage response = await client.PostAsync( + "https://sessions.sanasol.ws/game-session/child", + content + ); + + response.EnsureSuccessStatusCode(); + + string responseJson = await response.Content.ReadAsStringAsync(); + + // Deserialize response + SessionResponse session = + JsonSerializer.Deserialize(responseJson); + + SanSessionID = session.sessionToken; + SanTokenID = session.identityToken; + + //MessageBox.Show("Session created!"); + Console.WriteLine("Session: " + SanSessionID + "\n\nToken: " + SanTokenID); + + + } + } + + + + // Genuinely FUCK windows and C# and fucking whatever else to make this shit work // I swear to fucking god I spent a solid 3 hours trying to make this thing // OPEN A FUCKING EXE AND PASS ARGS CORRECTLY @@ -282,10 +331,10 @@ namespace HelloWorld string GamePath = "\"" + workingDirectory + "\\" + LaunchVersion + "\\" + relativeExePath + "\""; //hytale.exe string AppPath = "\"" + workingDirectory + "\\" + LaunchVersion + Hytaleappdir + "\""; // game\latest - string UserdataPath = "\"" + baseDirectory + "UserData"+"\""; + string UserdataPath = "\"" + baseDirectory + "UserData" + "\""; string JavaPath = "\"" + workingDirectory + "\\" + LaunchVersion + HytaleJava + "\""; // java - string arguments = " --app-dir " +AppPath+ " --user-dir " + UserdataPath + " --java-exec " + JavaPath + " --auth-mode offline --uuid 13371337-1337-1337-1337-1337" + textBoxUUID.Text + " --name \"" + textBoxUsername.Text + "\""; // Command-line arguments for the VB app + string arguments = " --app-dir " + AppPath + " --user-dir " + UserdataPath + " --java-exec " + JavaPath + " --auth-mode authenticated --uuid 13371337-1337-1337-1337-1337" + textBoxUUID.Text + " --name \"" + textBoxUsername.Text + "\"" + " --identity-token " + SanTokenID + " --session-token " + SanSessionID; // Command-line arguments for the VB app @@ -309,15 +358,15 @@ namespace HelloWorld } } - private void checkBox1_CheckedChanged(object sender, EventArgs e){} - private void textBox2_TextChanged(object sender, EventArgs e){} + private void checkBox1_CheckedChanged(object sender, EventArgs e) { } + private void textBox2_TextChanged(object sender, EventArgs e) { } private void button1_Click_1(object sender, EventArgs e) { Random random = new Random(); int GeneratedUUIDVal = random.Next(10000000, 100000000); textBoxUUID.Text = GeneratedUUIDVal.ToString(); } - private void checkUUID_CheckedChanged(object sender, EventArgs e){} + private void checkUUID_CheckedChanged(object sender, EventArgs e) { } private async void LoadComboBoxItems() @@ -344,7 +393,7 @@ namespace HelloWorld } - private void comboBox1_SelectedIndexChanged(object sender, EventArgs e){} + private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { } private async void btnInstallVersion_Click(object sender, EventArgs e) { @@ -366,7 +415,7 @@ namespace HelloWorld string savePath = Path.Combine(InstallBaseDirectory, fileName); string installDir = Path.Combine(InstallBaseDirectory, "Versions"); - string localListPath = Path.Combine(installDir,"versions.txt"); + string localListPath = Path.Combine(installDir, "versions.txt"); try @@ -503,7 +552,7 @@ namespace HelloWorld Directory.Delete(versionPath, true); // true = recursive delete // Update local list - // string localListPath = Path.Combine(installDir, "downloaded_files.txt"); + // string localListPath = Path.Combine(installDir, "downloaded_files.txt"); if (File.Exists(localListPath)) { var downloadedFiles = File.ReadAllLines(localListPath).ToList(); @@ -582,9 +631,14 @@ namespace HelloWorld await CheckForUpdateAsync(); } - private void labelLauncherVersion_Click(object sender, EventArgs e) - { + private void labelLauncherVersion_Click(object sender, EventArgs e) { } + + + public class SessionResponse + { + public string sessionToken { get; set; } + public string identityToken { get; set; } } } } \ No newline at end of file diff --git a/IBAHytaleLauncher.csproj b/IBAHytaleLauncher.csproj index 5be63da..c1a5828 100644 --- a/IBAHytaleLauncher.csproj +++ b/IBAHytaleLauncher.csproj @@ -1,5 +1,6 @@ + Debug @@ -12,7 +13,11 @@ 512 true true - publish\ + false + + + true + Publish\ true Disk false @@ -22,10 +27,11 @@ false false true - 0 + true + 1 1.0.0.%2a - false false + true true @@ -48,16 +54,56 @@ 4 - false + true hytale.ico + + F2C20D945681822F49095156F092FCAC954EAA94 + + + IBAHytaleLauncher_TemporaryKey.pfx + + + true + + + packages\Costura.Fody.6.0.0\lib\netstandard2.0\Costura.dll + + + packages\Microsoft.Bcl.AsyncInterfaces.10.0.2\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll + + + packages\System.Buffers.4.6.1\lib\net462\System.Buffers.dll + + + packages\System.IO.Pipelines.10.0.2\lib\net462\System.IO.Pipelines.dll + + + packages\System.Memory.4.6.3\lib\net462\System.Memory.dll + + + + packages\System.Numerics.Vectors.4.6.1\lib\net462\System.Numerics.Vectors.dll + + + packages\System.Runtime.CompilerServices.Unsafe.6.1.2\lib\net462\System.Runtime.CompilerServices.Unsafe.dll + + + packages\System.Text.Encodings.Web.10.0.2\lib\net462\System.Text.Encodings.Web.dll + + + packages\System.Text.Json.10.0.2\lib\net462\System.Text.Json.dll + + + packages\System.Threading.Tasks.Extensions.4.6.3\lib\net462\System.Threading.Tasks.Extensions.dll + @@ -85,6 +131,8 @@ Designer Resources.Designer.cs + + SettingsSingleFileGenerator Settings.Designer.cs @@ -122,4 +170,16 @@ + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + + + \ No newline at end of file diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs index 760e8f6..dc2e3e8 100644 --- a/Properties/AssemblyInfo.cs +++ b/Properties/AssemblyInfo.cs @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // Build Number // Revision // -[assembly: AssemblyVersion("3.8.0.0")] -[assembly: AssemblyFileVersion("3.8.0.0")] +[assembly: AssemblyVersion("3.9.0.0")] +[assembly: AssemblyFileVersion("3.9.0.0")] diff --git a/packages.config b/packages.config new file mode 100644 index 0000000..f5173f7 --- /dev/null +++ b/packages.config @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file -- 2.43.0