diff --git a/Dalamud/Plugin/PluginDefinition.cs b/Dalamud/Plugin/PluginDefinition.cs
index 8fdba6af3..7adbcba78 100644
--- a/Dalamud/Plugin/PluginDefinition.cs
+++ b/Dalamud/Plugin/PluginDefinition.cs
@@ -82,5 +82,20 @@ namespace Dalamud.Plugin
/// Domain of the origin repo
///
public string FromRepo { get; set; }
+
+ ///
+ /// Download link used to install the plugin.
+ ///
+ public string DownloadLinkInstall { get; set; }
+
+ ///
+ /// Download link used to update the plugin.
+ ///
+ public string DownloadLinkUpdate { get; set; }
+
+ ///
+ /// Download link used to get testing versions of the plugin.
+ ///
+ public string DownloadLinkTesting { get; set; }
}
}
diff --git a/Dalamud/Plugin/PluginRepository.cs b/Dalamud/Plugin/PluginRepository.cs
index 0ecb070ba..abad9bb27 100644
--- a/Dalamud/Plugin/PluginRepository.cs
+++ b/Dalamud/Plugin/PluginRepository.cs
@@ -13,8 +13,7 @@ using Serilog;
namespace Dalamud.Plugin
{
- internal class PluginRepository {
- private string PluginFunctionBaseUrl => "https://us-central1-xl-functions.cloudfunctions.net/download-plugin/?plugin={0}&isUpdate={1}&isTesting={2}";
+ internal class PluginRepository {
private string PluginMasterUrl => "https://goatcorp.github.io/DalamudPlugins/pluginmaster.json";
private readonly Dalamud dalamud;
@@ -117,8 +116,12 @@ namespace Dalamud.Plugin
&& fromTesting) {
doTestingDownload = testingAssemblyVer > Version.Parse(definition.AssemblyVersion) || definition.IsTestingExclusive;
}
-
- var url = string.Format(PluginFunctionBaseUrl, definition.InternalName, isUpdate, doTestingDownload);
+
+ var url = definition.DownloadLinkInstall;
+ if (doTestingDownload)
+ url = definition.DownloadLinkTesting;
+ else if (isUpdate)
+ url = definition.DownloadLinkUpdate;
Log.Information("Downloading plugin to {0} from {1} doTestingDownload:{2} isTestingExclusive:{3}", path, url, doTestingDownload, definition.IsTestingExclusive);