diff --git a/src/Tgstation.Server.Host/Components/Byond/WindowsByondInstaller.cs b/src/Tgstation.Server.Host/Components/Byond/WindowsByondInstaller.cs index 263f39eb7c..41ae7207d3 100644 --- a/src/Tgstation.Server.Host/Components/Byond/WindowsByondInstaller.cs +++ b/src/Tgstation.Server.Host/Components/Byond/WindowsByondInstaller.cs @@ -19,9 +19,13 @@ namespace Tgstation.Server.Host.Components.Byond /// const string ByondRevisionsURL = "https://secure.byond.com/download/build/{0}/{0}.{1}_byond.zip"; /// - /// BYOND's DreamDaemon config file in the cfg modification directory + /// Directory to byond installation configuration /// - const string ByondDDConfig = "byond/config/daemon.txt"; + const string ByondConfigDir = "byond/config"; + /// + /// BYOND's DreamDaemon config file + /// + const string ByondDDConfig = "daemon.txt"; /// /// Setting to add to to suppress an invisible user prompt for running a trusted mode .dmb /// @@ -89,7 +93,14 @@ namespace Tgstation.Server.Host.Components.Byond /// public async Task InstallByond(string path, Version version, CancellationToken cancellationToken) { - var setNoPromptTrustedModeTask = ioManager.WriteAllBytes(ioManager.ConcatPath(path, ByondDDConfig), Encoding.UTF8.GetBytes(ByondNoPromptTrustedMode), cancellationToken); + async Task SetNoPromptTrusted() + { + var configPath = ioManager.ConcatPath(path, ByondConfigDir); + await ioManager.CreateDirectory(configPath, cancellationToken).ConfigureAwait(false); + await ioManager.WriteAllBytes(ioManager.ConcatPath(configPath, ByondDDConfig), Encoding.UTF8.GetBytes(ByondNoPromptTrustedMode), cancellationToken).ConfigureAwait(false); + }; + + var setNoPromptTrustedModeTask = SetNoPromptTrusted(); //after this version lummox made DD depend of directx lol if (version.Major >= 512 && version.Minor >= 1427 && Monitor.TryEnter(this))