├── LICENSE
├── README.md
└── unreact.ps1
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 antigravities
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## Archived
2 | While this script probably still works, I will not continue to support it. If you really must, use the [-no-browser +open steam://open/minigameslist](https://www.howtogeek.com/694531/how-to-reduce-steams-ram-usage-from-400-mb-to-60-mb/) trick instead.
3 |
4 | # unreact
5 |
6 | This script will download and install the last stable version of Steam before the Library update on 10-30-19 [from the Steam CDN](https://github.com/antigravities/unreact/blob/master/unreact.ps1#L73), and write a file to prevent the bootstrapper from attempting an update.
7 |
8 | Before you start, close Steam. You can also (optionally) clear out *all* of the files in your Steam directory except for steamapps and userdata.
9 |
10 | **This is intended as a temporary fix1.** Newer games, especially those that use the new Origin integration (i.e. Star Wars Jedi: The Fallen Order) may not work! More importantly, running old versions of Steam may be fine for a while... until an exploit is discovered. Be careful.
11 |
12 | ## Run this
13 | **This script runs on Windows 7 x64, Windows 8.1 x64, and Windows 10 x64.** The downloaded items will cause undefined behavior on other operating systems.
14 |
15 | ### The lazy way
16 | Open PowerShell (windows key + X -> PowerShell), and then
17 | ```powershell
18 | Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/antigravities/unreact/master/unreact.ps1'))
19 | ```
20 | ### The better way
21 | Download [unreact.ps1](https://raw.githubusercontent.com/antigravities/unreact/master/unreact.ps1). Then, type `Set-ExecutionPolicy Bypass -Scope Process -Force` into PowerShell, and press ENTER. After that, drag unreact.ps1 into PowerShell, and press ENTER.
22 |
23 |
24 |
--------------------------------------------------------------------------------
/unreact.ps1:
--------------------------------------------------------------------------------
1 | # https://stackoverflow.com/a/50114992/11910041
2 | function Unzip($zipfile, $outdir) {
3 | $shell = New-Object -COM Shell.Application;
4 | $zip = $shell.NameSpace($zipfile);
5 | foreach($item in $zip.Items()) {
6 | $shell.Namespace($outdir).CopyHere($item, 0x14);
7 | }
8 | }
9 |
10 | [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
11 |
12 | echo "
13 | ###########
14 | # Unreact #
15 | ###########
16 |
17 | This script will download and install the last stable version of Steam before the Library update on 10-30-19, and write a file to prevent the bootstrapper from attempting an update.
18 |
19 | Before you start, close Steam. You can also (optionally) clear out *all* of the files in your Steam directory except for steamapps and userdata.
20 |
21 | !! Please consider the implications of what you are doing and inspect this file. Running old versions of Steam may be fine for a while... until an exploit is discovered and Valve only updates the version with the new library. Be careful.
22 | ";
23 | $Steamloc = Read-Host -Prompt "Please enter the location of your Steam installation; the process will begin when you hit ENTER";
24 |
25 | echo "";
26 |
27 | # From SteamDB
28 | $files = @(
29 | "tenfoot_misc_all.zip.1ca83d76835b4613170f5cead778b176b11f2b0c",
30 | "tenfoot_dicts_all.zip.33245b7d523f68418283e93b0572508fa127ee8f",
31 | "tenfoot_fonts_all.zip.12f7f1fa582860ea27358593f7082b3db603e444",
32 | "tenfoot_ambientsounds_all.zip.89b80bcfdd11b2b99257ddbbdc374e2df54e2738",
33 | "tenfoot_sounds_all.zip.3a8510744842725073c4f7cad1a82a872f09ff18",
34 | "tenfoot_images_all.zip.f44393217929454515a70c08d6e2f30c45493c47",
35 | "tenfoot_all.zip.6c0e23d5476376203ab20bef7632a824ffe8c722",
36 | "friendsui_all.zip.adf82354011e034c120d86282543b5b3f96a15ec",
37 | "resources_misc_all.zip.1d3b2d3671195d082d51d08924cc5ce87680a9be",
38 | "resources_music_all.zip.e2fb4ee342851d5dc753ebd6e51663309e7ff05f",
39 | "resources_hidpi_all.zip.bdba56fccb79cf9d11a0bb239be20a01c2b6e7cd",
40 | "resources_all.zip.c49ec9913ac8c38561a57a19b4bb13b15d92844c",
41 | "strings_en_all.zip.64109d45c64ba5377d5e84218cfd163cafd19851",
42 | "strings_all.zip.743b81270cd71b878bc52ad0a1824613ebb15c66",
43 | "public_all.zip.ba3fcf2d5bb8e5a7f76186ac07936adddfb3b19a",
44 | "bins_codecs_win32.zip.1ec234add481cd896911517bb8512a54f12269af",
45 | "bins_misc_win32.zip.cd82537c07e0d9862c038b434f0a45d0e9e2a4c3",
46 | "bins_win32.zip.913c4bd92bc9222e4119d9e9d5b15a3231cc04f5",
47 | "steam_win32.zip.2c3168e67424598dcf7898d33ce107840760f8af"
48 | );
49 |
50 | $files = New-Object System.Collections.ArrayList(,$files)
51 |
52 | if( [System.Environment]::OSVersion.Version.Major -eq 10 ){ # 10
53 | $files.Add("bins_cef_win32_win10-64.zip.6daf644756292d14c891642988a1f7933e86bf8f") | Out-Null;
54 | $files.Add("bins_webhelpers_win32_win10-64.zip.189fc0a76d01f6346aec8483cb4375ddc8520124") | Out-Null;
55 | } elseif( ([System.Environment]::OSVersion.Version.Major -eq 6) -and ([System.Environment]::OSVersion.Version.Minor -eq 3) ){ # 8
56 | $files.Add("bins_cef_win32_win8-64.zip.0a308f1b87a5bff5ded7cea636354cd0252e5db5") | Out-Null;
57 | $files.Add("bins_webhelpers_win32_win8-64.zip.f552fabc287dd648b7b9cc76b89b49f3dac9daaa") | Out-Null;
58 | } else { # 7
59 | $files.Add("bins_webhelpers_win32_win7-64.zip.189fc0a76d01f6346aec8483cb4375ddc8520124") | Out-Null;
60 | $files.Add("bins_cef_win32_win7-64.zip.6daf644756292d14c891642988a1f7933e86bf8f") | Out-Null;
61 | }
62 |
63 | $cwd = pwd;
64 |
65 | foreach( $i in $files ){
66 | $out = New-Object System.Collections.ArrayList(,$i.Split("."));
67 | $out.RemoveAt($out.Count - 1);
68 | $out = $out -Join ".";
69 |
70 | echo "Preparing and extracting $out";
71 |
72 | # Yes, I did try WebClient.DownloadFile
73 | Add-Content -Path $out -Value (New-Object System.Net.WebClient).DownloadString("https://steamcdn-a.akamaihd.net/client/$i");
74 |
75 | Unzip -ZipFile ($cwd.Path + "\" + $out) -OutDir $Steamloc;
76 | Remove-Item -Path $out;
77 | }
78 |
79 | [IO.File]::WriteAllLines("$Steamloc\steam.cfg", @("BootStrapperInhibitAll=enable", "BootStrapperForceSelfUpdate=disable"));
80 |
81 | echo "Done...";
82 |
--------------------------------------------------------------------------------