private void PrepareBaseSession(MyObjectBuilder_Checkpoint checkpoint, MyObjectBuilder_Sector sector) { ScriptManager.Init(checkpoint.ScriptManagerData); MyDefinitionManager.Static.LoadData(checkpoint.Mods); LoadGameDefinition(checkpoint); var fonts = MyDefinitionManager.Static.GetFontDefinitions(); foreach (var font in fonts) { if (!MyGuiManager.FontExists(font.Id.SubtypeId.String)) { VRageRender.MyRenderProxy.CreateFont((int)font.Id.SubtypeId, font.Path, false); } } MyDefinitionManager.Static.TryGetDefinition <MyScenarioDefinition>(checkpoint.Scenario, out Scenario); WorldBoundaries = checkpoint.WorldBoundaries; FixIncorrectSettings(Settings); // Use whatever setting is in scenario if there was nothing in the file (0 min and max). // SE scenarios have nothing while ME scenarios have size defined. if (!WorldBoundaries.HasValue && Scenario != null) { WorldBoundaries = Scenario.WorldBoundaries; } MySector.InitEnvironmentSettings(sector.Environment); LoadDataComponents(); LoadObjectBuildersComponents(checkpoint.SessionComponents); }