Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
a426ad9e02 | ||
![]() |
ba75b1583a | ||
![]() |
45068ea932 | ||
![]() |
181e9297a1 |
2
.github/workflows/release.yaml
vendored
2
.github/workflows/release.yaml
vendored
@@ -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.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/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: 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
|
- run: dotnet nuget push ./pack/*.nupkg -s github
|
||||||
|
@@ -30,7 +30,8 @@ namespace Torch.Server
|
|||||||
private const string TOOL_DIR = "tool";
|
private const string TOOL_DIR = "tool";
|
||||||
private const string TOOL_ZIP = "temp.zip";
|
private const string TOOL_ZIP = "temp.zip";
|
||||||
private static readonly string TOOL_EXE = "DepotDownloader.exe";
|
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;
|
private TorchServer _server;
|
||||||
|
|
||||||
internal Persistent<TorchConfig> ConfigPersistent { get; }
|
internal Persistent<TorchConfig> ConfigPersistent { get; }
|
||||||
@@ -102,25 +103,26 @@ namespace Torch.Server
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
var gameThread = new Thread(() =>
|
var uiThread = new Thread(() =>
|
||||||
{
|
{
|
||||||
_server.Init();
|
var ui = new TorchUI(_server);
|
||||||
|
|
||||||
if (Config.Autostart || Config.TempAutostart)
|
SynchronizationContext.SetSynchronizationContext(
|
||||||
{
|
new DispatcherSynchronizationContext(Dispatcher.CurrentDispatcher));
|
||||||
Config.TempAutostart = false;
|
|
||||||
_server.Start();
|
ui.ShowDialog();
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
gameThread.Start();
|
uiThread.SetApartmentState(ApartmentState.STA);
|
||||||
|
uiThread.Start();
|
||||||
var ui = new TorchUI(_server);
|
|
||||||
|
_server.Init();
|
||||||
SynchronizationContext.SetSynchronizationContext(
|
|
||||||
new DispatcherSynchronizationContext(Dispatcher.CurrentDispatcher));
|
if (Config.Autostart || Config.TempAutostart)
|
||||||
|
{
|
||||||
ui.ShowDialog();
|
Config.TempAutostart = false;
|
||||||
|
_server.Start();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -159,18 +161,26 @@ namespace Torch.Server
|
|||||||
}
|
}
|
||||||
|
|
||||||
log.Info("Checking for DS updates.");
|
log.Info("Checking for DS updates.");
|
||||||
var steamCmdProc = new ProcessStartInfo(steamCmdExePath)
|
foreach (var depot in Depots)
|
||||||
{
|
{
|
||||||
Arguments = string.Format(TOOL_ARGS, configuration.GetValue("gamePath", "../")),
|
await DownloadDepot(depot);
|
||||||
WorkingDirectory = path,
|
}
|
||||||
RedirectStandardOutput = true
|
|
||||||
};
|
async Task DownloadDepot(int depotId)
|
||||||
var cmd = Process.Start(steamCmdProc)!;
|
{
|
||||||
|
var steamCmdProc = new ProcessStartInfo(steamCmdExePath)
|
||||||
|
{
|
||||||
|
Arguments = string.Format(TOOL_ARGS, configuration.GetValue("gamePath", "../"), depotId),
|
||||||
|
WorkingDirectory = path,
|
||||||
|
RedirectStandardOutput = true
|
||||||
|
};
|
||||||
|
var cmd = Process.Start(steamCmdProc)!;
|
||||||
|
|
||||||
while (!cmd.HasExited)
|
while (!cmd.HasExited)
|
||||||
{
|
{
|
||||||
if (await cmd.StandardOutput.ReadLineAsync() is { } line)
|
if (await cmd.StandardOutput.ReadLineAsync() is { } line)
|
||||||
log.Info(line);
|
log.Info(line);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -12,7 +12,7 @@ namespace Torch.Server
|
|||||||
{
|
{
|
||||||
internal static class Program
|
internal static class Program
|
||||||
{
|
{
|
||||||
[STAThread]
|
[MTAThread]
|
||||||
public static void Main(string[] args)
|
public static void Main(string[] args)
|
||||||
{
|
{
|
||||||
var configurationBuilder = new ConfigurationBuilder()
|
var configurationBuilder = new ConfigurationBuilder()
|
||||||
|
@@ -47,7 +47,7 @@ namespace Torch.Utils
|
|||||||
|
|
||||||
private static void CopyNative()
|
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");
|
Log.Warn("Torch directory is readonly. You should copy steam_api64.dll, Havok.dll from bin manually");
|
||||||
return;
|
return;
|
||||||
|
Reference in New Issue
Block a user