Compare commits

..

No commits in common. "master" and "v1.0.0" have entirely different histories.

8 changed files with 12 additions and 13 deletions

View File

@ -1,17 +1,12 @@
# <img src="https://git.randomserver.top/murdle/roblox-patcher/raw/branch/master/images/logo.png" width="32" height="32" /> Roblox Legacy Patcher
# Roblox Legacy Patcher
## What is this?
This is a program which automatically downloads the latest version of Roblox Studio and makes it work on Windows 8.1 and below. It uses a wrapper in order to add some missing Windows APIs and trick Roblox into thinking your OS version is supported.
This is an application which automatically downloads the latest version of Roblox Studio and makes it work on Windows 8.1 and below. It uses a wrapper in order to add some missing Windows APIs and trick Roblox into thinking your OS version is supported.
## Download
You can download a prebuilt version of the program <a href="https://git.randomserver.top/murdle/roblox-patcher/releases">here</a>
<img src="https://git.randomserver.top/murdle/roblox-patcher/raw/branch/master/images/preview.png" width="1000" height="800" />
## Notice
Currently, the application only allows you to run Roblox Studio. Because of Roblox's anticheat (aka Hyperion), we have not been able to get the client to work as of right now.
## How to build
- Install Visual Studio 2015 and .NET SDK 8
- Clone the repository
- Run the build.bat script
<br>The built file will be located in the root of directory
## Future plans
Currently, the application only allows you to run Roblox Studio. Because of Roblox's anticheat (aka Hyperion), we have not been able to get the client to work as of right now. If we do get it to work, chances are the client hyperion bypass will be **closed source** to not suffer a similar fate to [Vinegar](https://vinegarhq.org/Home/rol_faq.html).

View File

@ -2,7 +2,7 @@
namespace RobloxLegacy.Utilities;
public static class Registry
public class Registry
{
private static RegistryKey? OpenKey(bool writable = true)
{

View File

@ -10,11 +10,11 @@ public class Resource(string name)
return assembly.GetManifestResourceStream($"RobloxLegacy.Resources.{name}");
}
public byte[] GetBytes()
public byte[]? GetBytes()
{
using var stream = GetStream();
if (stream == null)
throw new Exception($"Failed to get {name} resource");
return null;
using var ms = new MemoryStream();
stream.CopyTo(ms);

View File

@ -7,6 +7,7 @@ namespace RobloxLegacy.Utilities;
// https://stackoverflow.com/a/14632782
public static class Shortcut
{
[ComImport]
[Guid("00021401-0000-0000-C000-000000000046")]
private class ShellLink

View File

@ -58,6 +58,8 @@ public class VersionManager : IDisposable
private void WriteAppSettings()
{
var appSettings = new Resource("AppSettings.xml").GetBytes();
if (appSettings == null)
throw new Exception("Failed to get AppSettings resource");
File.WriteAllBytesAsync(Path.Combine(GetVersionPath(_currentVersion), "AppSettings.xml"), appSettings);
}
@ -71,6 +73,8 @@ public class VersionManager : IDisposable
// now we can write the dll to the folder
var dllContents = new Resource(DllName).GetBytes();
if (dllContents == null)
throw new Exception("Failed to get dll resource");
File.WriteAllBytesAsync(Path.Combine(GetVersionPath(_currentVersion), DllName), dllContents);
}

View File

@ -1 +0,0 @@
// more apis will be added here.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1012 KiB