Skip to content
This repository has been archived by the owner on Dec 9, 2022. It is now read-only.

Concurrent Downloads #22

Merged
merged 80 commits into from
Jan 29, 2018
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
f608fd5
Instancing RxPatcher + Added UpdateServerHandler for URLs
Jan 12, 2018
f2803fa
Should be checking if an object is of a class type, not checking for …
Jan 12, 2018
12812a9
More work towards Friendly Names
Jan 12, 2018
edd9cc9
Added Latency testing for patch mirrors
Jan 15, 2018
e25fd6c
Added a file & console logger project
Jan 16, 2018
cf4d7c0
Added some basic logging, much more to come soon
Jan 16, 2018
6296faf
Oops, was not using append...
Jan 16, 2018
6da4afb
Added more logging, update xdelta to new version
Jan 16, 2018
cb473a0
Included xdelta3.1.0 in project file
Jan 16, 2018
bded0fc
Updated logger to be thread-safe
Jan 17, 2018
219ed39
Applying xdelta stage is now multi-threaded
Jan 17, 2018
3ff7f57
Phase Two progress now shown to user
Jan 17, 2018
345218b
Removed UpdateServerSelector as it's no longer required
Jan 17, 2018
bb28c25
Changed UpdateServerHandler to have async latency testing
Jan 17, 2018
e44db00
Made UpdateServerHandler public
Jan 17, 2018
52ab2cc
Disposing of unused objects
Jan 17, 2018
9a94dc1
Commented out the Close and Pause buttons
Jan 17, 2018
0eab94c
Reverted back to Queue for server selection
Jan 17, 2018
2c172e2
New GitIgnore, this is wonderful
Jan 17, 2018
d5fb9ad
Renamed FriendlyName to Name
Jan 17, 2018
b07d85c
Missed these files for Name rename
Jan 17, 2018
9fd2eb6
Removed old xdelta versions
Jan 17, 2018
f7ca6c3
Added logging to the UpdateServerSelector
Jan 18, 2018
0eec46e
All variable names have been standardised as it's good practice.
Jan 18, 2018
b34295b
First pass of multi-threaded downloading
Jan 18, 2018
c750a6c
Concurrent Downloading actually working
Jan 19, 2018
beda8b9
Updated logging, added a new catch statement
Jan 19, 2018
a697252
Fixes & Added active threads to download window
Jan 19, 2018
f829d55
Fixed download window showing invalid statuses
Jan 20, 2018
a5f1246
Added debug window for downloads
Jan 20, 2018
6783c90
Upped the .NET HTTP Connection limit to 50
Jan 20, 2018
1237fe1
Built libraries again.
Jan 20, 2018
b843860
Downloading Debug shows with --log now
Jan 20, 2018
300ec2a
Work towards the Cancel button actually working & DLL again
Jan 20, 2018
8517eae
Added Installer background back in.
Jan 20, 2018
3181c46
More comments
Jan 20, 2018
27beb75
Fixed index out of array issue when first installing
Jan 20, 2018
da0c8a3
Fixes VisualStudio seeing these files as Components
Jan 20, 2018
f092558
Added variable for MaxDownloadThreads
Jan 24, 2018
b2e3041
Added Logging / Threaded xDelta / Friendly Server Names (#21)
Jan 24, 2018
be43688
Removed binary files that are not wanted here.
Jan 27, 2018
f42d3a3
Instancing RxPatcher + Added UpdateServerHandler for URLs
Jan 12, 2018
954bfcf
Merge Conflicts done
Jan 27, 2018
b6a9944
More work towards Friendly Names
Jan 12, 2018
a821b00
Added Latency testing for patch mirrors
Jan 15, 2018
8391d6f
Added some basic logging, much more to come soon
Jan 16, 2018
392e4f3
Added more logging, update xdelta to new version
Jan 16, 2018
cc38bdb
Included xdelta3.1.0 in project file
Jan 16, 2018
ba9efa8
Applying xdelta stage is now multi-threaded
Jan 17, 2018
3b5cc51
Changed UpdateServerHandler to have async latency testing
Jan 17, 2018
4493e35
Made UpdateServerHandler public
Jan 17, 2018
c5ac6c1
Commented out the Close and Pause buttons
Jan 17, 2018
970e44a
Reverted back to Queue for server selection
Jan 17, 2018
0f76d24
New GitIgnore, this is wonderful
Jan 17, 2018
71ecbf3
Missed these files for Name rename
Jan 17, 2018
aa60638
Removed old xdelta versions
Jan 17, 2018
d1231ff
All variable names have been standardised as it's good practice.
Jan 18, 2018
c1295fc
First pass of multi-threaded downloading
Jan 18, 2018
b673f92
Concurrent Downloading actually working
Jan 19, 2018
7de3ba5
Fixes & Added active threads to download window
Jan 19, 2018
722d4de
Fixed download window showing invalid statuses
Jan 20, 2018
28326b6
Added debug window for downloads
Jan 20, 2018
3a79fb9
Upped the .NET HTTP Connection limit to 50
Jan 20, 2018
7027b1c
Built libraries again.
Jan 20, 2018
6ceaca3
Downloading Debug shows with --log now
Jan 20, 2018
269b42c
Work towards the Cancel button actually working & DLL again
Jan 20, 2018
3f3b079
Added Installer background back in.
Jan 20, 2018
a9671d3
More comments
Jan 20, 2018
57e88d2
Fixed index out of array issue when first installing
Jan 20, 2018
a804d7a
Fixes VisualStudio seeing these files as Components
Jan 20, 2018
71edc8d
Added variable for MaxDownloadThreads
Jan 24, 2018
4a5b81b
Removed binary files that are not wanted here.
Jan 27, 2018
d3a00b4
Merge branch 'concurrent_downloads' of https://github.com/TotemArts/R…
Jan 27, 2018
029dbb8
Deleing the .user file
Jan 27, 2018
28bb3bb
Fixed an incorrect merge - Null exception
Jan 27, 2018
9ba88dd
Fixed Join Game button fading when clicking on a server
Jan 28, 2018
ab4c3da
Updated installer, urls, and fixed a small bug with --log
Jan 28, 2018
9b89d80
Deleted files not needed
Jan 28, 2018
750fef3
Updated release.json URL again...
Jan 28, 2018
8493dce
Version number updating
Jan 28, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Updated installer, urls, and fixed a small bug with --log
also incremented the version number of the launcher ready for patching
  • Loading branch information
AlienXAXS committed Jan 28, 2018
commit ab4c3da635b87593e9b32997d7edc0ee5004b44d
44 changes: 34 additions & 10 deletions Renegade X Installer/Renegade X Installer.wxs
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,12 @@ For blamage or help: Ask for Schmitz.

<!--Define the product information-->
<Product Id="*"
Name="Renegade X"
Name="Renegade X Launcher (Beta)"
Language="1033"
Version="0.5.6.0"
Version="0.8.0.1"
Manufacturer="Totem Arts"
UpgradeCode="{2473E6A8-A59F-434D-B871-E18AE833400C}">




<!--Define package information-->
<Package InstallerVersion="200"
Compressed="yes"
Expand Down Expand Up @@ -63,11 +61,36 @@ For blamage or help: Ask for Schmitz.
<Icon Id="SetupIcon" SourceFile="../Renegade X Launcher/Icon_Silver.ico"/>
<Icon Id="Shortcut.ico" SourceFile="../Renegade X Launcher/Icon_Silver.ico"/>
<Property Id="ARPPRODUCTICON" Value="SetupIcon" />

<!--
ENABLE THIS TO ENABLE THE BETA LAUNCHER MESSAGE
<InstallUISequence>
<Show Dialog="QuestionDlg"
Before="ExecuteAction" />
</InstallUISequence>
-->
</Product>



<!--Fragment that defines the folder structure of the installed product-->
<Fragment>
<!--
ENABLE THIS TO ENABLE THE BETA LAUNCHER MESSAGE
<UI>
<Dialog Id="QuestionDlg" Width="260" Height="85" Title="[ProductName] Setup" NoMinimize="yes">
<Control Id="No" Type="PushButton" X="132" Y="57" Width="56" Height="17"
Default="yes" Cancel="yes" Text="No">
<Publish Event="EndDialog" Value="Exit">1</Publish>
</Control>
<Control Id="Yes" Type="PushButton" X="72" Y="57" Width="56" Height="17" Text="Yes">
<Publish Event="EndDialog" Value="Return">1</Publish>
</Control>
<Control Id="Text" Type="Text" X="48" Y="15" Width="194" Height="30">
<Text>You are installing a beta version of the RenegadeX Installer, this might break things.
Are you sure you want to continue?</Text>
</Control>
</Dialog>
</UI>-->

<!--Defines the folders this installer can use. CAPITOL folders are default Windows paths. Id=Handler to use within this document; Name=the actual name of the folder when created-->
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="DesktopFolder" Name="Desktop"/>
Expand All @@ -92,7 +115,7 @@ For blamage or help: Ask for Schmitz.
<!--Main component group with all essentional files-->
<ComponentGroup Id="ProductComponents" Directory="InstallLocationLauncher">
<!--The productcomponens contains all the main Launcher files-->
<Component Id="ProductComponent" Guid="{D3FAB246-2A53-40A1-BCA4-4E1A087E6CD9}">
<Component Id="ProductComponent" Guid="{14f49604-b3ef-4e23-b345-f2c0b7e37cc8}">
<File Id="LauncherEXE" Name="Renegade X Launcher.exe" Source="../Renegade X Launcher/bin/Release/Renegade X Launcher.exe" DiskId='1' Vital="yes" >
<Shortcut Id='LauncherStartmenu' Directory='DesktopFolder' Name='Renegade X Launcher' WorkingDirectory='InstallLocationLauncher' Advertise='yes' Icon='Shortcut.ico'/>
</File>
Expand All @@ -103,8 +126,9 @@ For blamage or help: Ask for Schmitz.
<File Id="SteamAPIDLL" Name="SteamAPI.dll" Source="../Renegade X Launcher/bin/Release/SteamAPI.dll" DiskId='1' Vital="yes"/>
<File Id="XceedWpfDatagridDLL" Name="Xceed.Wpf.DataGrid.dll" Source="../Renegade X Launcher/bin/Release/Xceed.Wpf.DataGrid.dll" DiskId='1' Vital="yes"/>
<File Id="XceedWpfToolkitDLL" Name="Xceed.Wpf.Toolkit.dll" Source="../Renegade X Launcher/bin/Release/Xceed.Wpf.Toolkit.dll" DiskId='1' Vital="yes"/>
<File Id="xdelta32EXE" Name="xdelta3-3.0.8.x86-32.exe" Source="../Renegade X Launcher/bin/Release/xdelta3-3.0.8.x86-32.exe" DiskId='1' Vital="yes"/>
<File Id="xdelta64EXE" Name="xdelta3-3.0.8.x86-64.exe" Source="../Renegade X Launcher/bin/Release/xdelta3-3.0.8.x86-64.exe" DiskId='1' Vital="yes"/>
<File Id="RxLogger" Name="RxLogger.dll" Source="../Renegade X Launcher/bin/Release/RxLogger.dll" DiskId='1' Vital="yes"/>
<File Id="xdelta32EXE" Name="xdelta3-3.1.0-i686.exe" Source="../Renegade X Launcher/bin/Release/xdelta3-3.1.0-i686.exe" DiskId='1' Vital="yes"/>
<File Id="xdelta64EXE" Name="xdelta3-3.1.0-x86_64.exe" Source="../Renegade X Launcher/bin/Release/xdelta3-3.1.0-x86_64.exe" DiskId='1' Vital="yes"/>

<!--Create the default UDK folders the Launcher can use to install the game-->
<CreateFolder Directory="InstallLocationEngine"/>
Expand Down
1 change: 1 addition & 0 deletions Renegade X Installer/obj/Debug/Renegade X Installer.wixobj

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
obj\Debug\Renegade X Installer.wixobj
2 changes: 1 addition & 1 deletion Renegade X Launcher/App.config
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
<applicationSettings>
<LauncherTwo.Properties.Settings>
<setting name="VersionUrl" serializeAs="String">
<value>https://static.renegade-x.com/launcher_data/version/beta.json</value>
<value>https://renegade-x.com/launcher_data/version/release.json</value>
</setting>
</LauncherTwo.Properties.Settings>
</applicationSettings>
Expand Down
4 changes: 3 additions & 1 deletion Renegade X Launcher/App.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ public void StartupApp(object sender, StartupEventArgs e)
{
//Determine if the permissionChange is succesfull after launcher update
bool isGoodUpdate = false;
bool isLogging = false;

Logger.Instance.Write("Application starting up...");

Expand All @@ -28,6 +29,7 @@ public void StartupApp(object sender, StartupEventArgs e)
if (a.Equals("--log", StringComparison.OrdinalIgnoreCase))
{
Logger.Instance.StartLogConsole();
isLogging = true;
}
if (a.StartsWith("--patch-result="))
{
Expand Down Expand Up @@ -101,7 +103,7 @@ public void StartupApp(object sender, StartupEventArgs e)
}
*/
//If no args are present, or a permissionChange update was executed -> normally start the launcher
if (e.Args.Length == 0 || isGoodUpdate)
if (e.Args.Length == 0 || isGoodUpdate || isLogging)
{
if (InstanceHandler.IsAnotherInstanceRunning() && !isGoodUpdate)
{
Expand Down
2 changes: 1 addition & 1 deletion Renegade X Launcher/Properties/Settings.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Renegade X Launcher/Properties/Settings.settings
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="VersionUrl" Type="System.String" Scope="Application">
<Value Profile="(Default)">https://static.renegade-x.com/launcher_data/version/beta.json</Value>
<Value Profile="(Default)">https://renegade-x.com/launcher_data/version/release.json</Value>
</Setting>
<Setting Name="Installed" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
Expand Down
6 changes: 3 additions & 3 deletions Renegade X Launcher/VersionCheck.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ static VersionCheck()
{
_launcherVersion = new Version
{
Name = "0.77-dev",
Number = 077
Name = "0.8.0.1",
Number = 0801
};
}

Expand Down Expand Up @@ -149,7 +149,7 @@ public static async Task UpdateLatestVersions()

// Server URL's list & Friendly Names
foreach (var x in versionData["game"]["server_urls"].ToObject<dynamic>())
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since it might not be exclusively urls in the future, maybe we should change this to just mirrors at some point

RxPatcher.Instance.AddNewUpdateServer(x["url"].ToString(), x["friendly_name"].ToString());
RxPatcher.Instance.AddNewUpdateServer(x["url"].ToString(), x["name"].ToString());
}
catch(Exception ex)
{
Expand Down