using System; using System.Threading; using Engine.Core; using Engine.Core.Debug; using Engine.Systems.Network; Universe universe = new(); FileLogger fileLogger = new($"Logs/{DateTime.UtcNow:yyyy-MM-dd_HH-mm-ss-ffffff}.log"); universe.InstantiateUniverseObject().SetUniverseObject("Logger").BehaviourController .AddBehaviour().Logger = ILogger.Shared = new LoggerWrapper(fileLogger, new ConsoleLogger()); LiteNetLibServer server = universe.InstantiateUniverseObject().SetUniverseObject("Server").BehaviourController.AddBehaviour(); server.BehaviourController.AddBehaviour(); universe.OnPreUpdate.AddOneTimeListener((_, _) => server.Start(8888, 2)); MyUniverse.Shared.UniverseSource.ApplyUniverse(universe); DateTime lastRun = DateTime.UtcNow; TimeSpan interval = new(0, 0, 0, 0, 16); TimeSpan timeSinceStart = new(0); universe.Initialize(); while (true) { if (lastRun + interval <= DateTime.UtcNow) { lastRun += interval; timeSinceStart += interval; universe.Update(new(timeSinceStart, interval)); } Thread.Sleep(1); }