Compare commits

..

4 Commits
2.0.0 ... 2.0.4

Author SHA1 Message Date
zznty
a426ad9e02 fix steam redist missing on automatic download 2023-04-22 21:22:46 +07:00
zznty
ba75b1583a do not copy dlls in service mode as it can mess up with runtimes 2023-04-22 18:30:02 +07:00
zznty
45068ea932 remove requirement o sta thread in no gui scenarios 2023-04-22 02:51:29 +07:00
zznty
181e9297a1 fix packaging 2023-04-14 11:36:04 +07:00
4 changed files with 40 additions and 30 deletions

View File

@@ -75,6 +75,6 @@ jobs:
- run: dotnet pack -c Release ./Torch.API/Torch.API.csproj -o pack --include-symbols -p:SymbolPackageFormat=snupkg -p:Version="${{ steps.version.outputs.version }}" -p:AssemblyVersion="${{ steps.version.outputs.version }}" --no-build
- run: dotnet pack -c Release ./Torch/Torch.csproj -o pack --include-symbols -p:SymbolPackageFormat=snupkg -p:Version="${{ steps.version.outputs.version }}" -p:AssemblyVersion="${{ steps.version.outputs.version }}" --no-build
- run: dotnet pack -c Release ./Torch.Server/Torch.Server.csproj -o pack --include-symbols -p:SymbolPackageFormat=snupkg -p:Version="${{ steps.version.outputs.version }}" -p:AssemblyVersion="${{ steps.version.outputs.version }}" --no-build
- run: mkdir blank && sed -i 's/torchVersion/${{ steps.version.outputs.version }}/g' Torch.Server.ReferenceAssemblies.net7.nuspec && nuget pack Torch.Server.ReferenceAssemblies.net7.nuspec -BasePath ./blank -p:Version="${{ steps.version.outputs.version }}" -p:AssemblyVersion="${{ steps.version.outputs.version }}" -OutputDirectory pack -NonInteractive -NoPackageAnalysis
- run: mkdir blank && sed -i 's/torchVersion/${{ steps.version.outputs.version }}/g' Torch.Server.ReferenceAssemblies.net7.nuspec && nuget pack Torch.Server.ReferenceAssemblies.net7.nuspec -BasePath ./blank -OutputDirectory pack -NonInteractive -NoPackageAnalysis
- run: dotnet nuget push ./pack/*.nupkg -s github

View File

@@ -30,7 +30,8 @@ namespace Torch.Server
private const string TOOL_DIR = "tool";
private const string TOOL_ZIP = "temp.zip";
private static readonly string TOOL_EXE = "DepotDownloader.exe";
private const string TOOL_ARGS = "-app 298740 -depot 298741 -dir \"{0}\"";
private const string TOOL_ARGS = "-app 298740 -depot {1} -dir \"{0}\"";
private static readonly int[] Depots = { 298741, 1004 };
private TorchServer _server;
internal Persistent<TorchConfig> ConfigPersistent { get; }
@@ -102,8 +103,19 @@ namespace Torch.Server
}
#endif
var gameThread = new Thread(() =>
var uiThread = new Thread(() =>
{
var ui = new TorchUI(_server);
SynchronizationContext.SetSynchronizationContext(
new DispatcherSynchronizationContext(Dispatcher.CurrentDispatcher));
ui.ShowDialog();
});
uiThread.SetApartmentState(ApartmentState.STA);
uiThread.Start();
_server.Init();
if (Config.Autostart || Config.TempAutostart)
@@ -111,16 +123,6 @@ namespace Torch.Server
Config.TempAutostart = false;
_server.Start();
}
});
gameThread.Start();
var ui = new TorchUI(_server);
SynchronizationContext.SetSynchronizationContext(
new DispatcherSynchronizationContext(Dispatcher.CurrentDispatcher));
ui.ShowDialog();
}
}
@@ -159,9 +161,16 @@ namespace Torch.Server
}
log.Info("Checking for DS updates.");
foreach (var depot in Depots)
{
await DownloadDepot(depot);
}
async Task DownloadDepot(int depotId)
{
var steamCmdProc = new ProcessStartInfo(steamCmdExePath)
{
Arguments = string.Format(TOOL_ARGS, configuration.GetValue("gamePath", "../")),
Arguments = string.Format(TOOL_ARGS, configuration.GetValue("gamePath", "../"), depotId),
WorkingDirectory = path,
RedirectStandardOutput = true
};
@@ -175,3 +184,4 @@ namespace Torch.Server
}
}
}
}

View File

@@ -12,7 +12,7 @@ namespace Torch.Server
{
internal static class Program
{
[STAThread]
[MTAThread]
public static void Main(string[] args)
{
var configurationBuilder = new ConfigurationBuilder()

View File

@@ -47,7 +47,7 @@ namespace Torch.Utils
private static void CopyNative()
{
if (ApplicationContext.Current.GameFilesDirectory.Attributes.HasFlag(FileAttributes.ReadOnly))
if (ApplicationContext.Current.IsService || ApplicationContext.Current.GameFilesDirectory.Attributes.HasFlag(FileAttributes.ReadOnly))
{
Log.Warn("Torch directory is readonly. You should copy steam_api64.dll, Havok.dll from bin manually");
return;