Compare commits

..

5 Commits

5 changed files with 20 additions and 11 deletions

View File

@@ -11,7 +11,7 @@
<repository type="git" url="https://github.com/PveTeam/Torch" /> <repository type="git" url="https://github.com/PveTeam/Torch" />
<dependencies> <dependencies>
<group targetFramework="net7.0-windows7.0"> <group targetFramework="net7.0-windows7.0">
<dependency id="SpaceEngineersDedicated.ReferenceAssemblies" version="1.202.117" /> <dependency id="SpaceEngineersDedicated.ReferenceAssemblies" version="1.202.120" />
<dependency id="Torch.Server" version="torchVersion" /> <dependency id="Torch.Server" version="torchVersion" />
</group> </group>
</dependencies> </dependencies>

View File

@@ -16,6 +16,7 @@ using Microsoft.Extensions.Configuration;
using NLog; using NLog;
using NLog.Targets; using NLog.Targets;
using Sandbox.Engine.Utils; using Sandbox.Engine.Utils;
using SpaceEngineers.Game;
using Torch.Utils; using Torch.Utils;
using VRage.FileSystem; using VRage.FileSystem;
@@ -103,6 +104,8 @@ namespace Torch.Server
} }
#endif #endif
SpaceEngineersGame.SetupBasicGameInfo();
SpaceEngineersGame.SetupPerGameSettings();
var uiThread = new Thread(() => var uiThread = new Thread(() =>
{ {
var ui = new TorchUI(_server); var ui = new TorchUI(_server);
@@ -115,9 +118,9 @@ namespace Torch.Server
uiThread.SetApartmentState(ApartmentState.STA); uiThread.SetApartmentState(ApartmentState.STA);
uiThread.Start(); uiThread.Start();
_server.Init(); _server.Init();
if (Config.Autostart || Config.TempAutostart) if (Config.Autostart || Config.TempAutostart)
{ {
Config.TempAutostart = false; Config.TempAutostart = false;

View File

@@ -56,9 +56,7 @@ namespace Torch.Server
AddManager(new EntityControlManager(this)); AddManager(new EntityControlManager(this));
AddManager(new RemoteAPIManager(this)); AddManager(new RemoteAPIManager(this));
var sessionManager = Managers.GetManager<ITorchSessionManager>();
sessionManager.AddFactory(x => new MultiplayerManagerDedicated(this));
sessionManager.SessionStateChanged += OnSessionStateChanged;
// Needs to be done at some point after MyVRageWindows.Init // Needs to be done at some point after MyVRageWindows.Init
// where the debug listeners are registered // where the debug listeners are registered
@@ -128,6 +126,10 @@ namespace Torch.Server
{ {
Log.Info("Initializing server"); Log.Info("Initializing server");
base.Init(); base.Init();
var sessionManager = Managers.GetManager<ITorchSessionManager>();
sessionManager.AddFactory(x => new MultiplayerManagerDedicated(this));
sessionManager.SessionStateChanged += OnSessionStateChanged;
GetManager<InstanceManager>().LoadInstance(InstancePath); GetManager<InstanceManager>().LoadInstance(InstancePath);
CanRun = true; CanRun = true;
Initialized?.Invoke(this); Initialized?.Invoke(this);

View File

@@ -113,12 +113,6 @@ namespace Torch
Plugins = new PluginManager(this); Plugins = new PluginManager(this);
#pragma warning restore CS0618 #pragma warning restore CS0618
var sessionManager = new TorchSessionManager(this);
sessionManager.AddFactory((x) => Sync.IsServer ? new ChatManagerServer(this) : new ChatManagerClient(this));
sessionManager.AddFactory((x) => Sync.IsServer ? new CommandManager(this) : null);
sessionManager.AddFactory((x) => new EntityManager(this));
Managers.AddManager(sessionManager);
Managers.AddManager(new PatchManager(this)); Managers.AddManager(new PatchManager(this));
Managers.AddManager(new FilesystemManager(this)); Managers.AddManager(new FilesystemManager(this));
Managers.AddManager(new UpdateManager(this)); Managers.AddManager(new UpdateManager(this));
@@ -286,6 +280,15 @@ namespace Torch
Game = new VRageGame(this, TweakGameSettings, SteamAppName, SteamAppId, InstancePath, RunArgs); Game = new VRageGame(this, TweakGameSettings, SteamAppName, SteamAppId, InstancePath, RunArgs);
if (!Game.WaitFor(VRageGame.GameState.Stopped)) if (!Game.WaitFor(VRageGame.GameState.Stopped))
Log.Warn("Failed to wait for game to be initialized"); Log.Warn("Failed to wait for game to be initialized");
var sessionManager = new TorchSessionManager(this);
sessionManager.AddFactory((x) => Sync.IsServer ? new ChatManagerServer(this) : new ChatManagerClient(this));
sessionManager.AddFactory((x) => Sync.IsServer ? new CommandManager(this) : null);
sessionManager.AddFactory((x) => new EntityManager(this));
Managers.AddManager(sessionManager);
Managers.Attach(); Managers.Attach();
_init = true; _init = true;

View File

@@ -152,6 +152,7 @@ namespace Torch
Environment.SetEnvironmentVariable("SteamAppId", _appSteamId.ToString()); Environment.SetEnvironmentVariable("SteamAppId", _appSteamId.ToString());
MyVRageWindows.Init("SpaceEngineersDedicated", MySandboxGame.Log, null, false); MyVRageWindows.Init("SpaceEngineersDedicated", MySandboxGame.Log, null, false);
SpaceEngineersGame.SetupPerGameSettings(); SpaceEngineersGame.SetupPerGameSettings();
SpaceEngineersGame.SetupBasicGameInfo();
MySessionComponentExtDebug.ForceDisable = true; MySessionComponentExtDebug.ForceDisable = true;
MyPerGameSettings.SendLogToKeen = false; MyPerGameSettings.SendLogToKeen = false;
// SpaceEngineersGame.SetupAnalytics(); // SpaceEngineersGame.SetupAnalytics();