Skip to content

Commit

Permalink
cleaned debug messages
Browse files Browse the repository at this point in the history
  • Loading branch information
thorwin99 committed Sep 16, 2019
1 parent 38e2d30 commit dbc5109
Show file tree
Hide file tree
Showing 8 changed files with 47 additions and 55 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ public class ProceduralAsteroidsRingModule : ProceduralModule

public ProceduralAsteroidsRingModule(int seed) : base(seed, SUBCELLS * SUBCELL_SIZE)
{
MyLog.Default.WriteLine("Cell Size is " + (SUBCELLS * SUBCELL_SIZE));
}

public override ProceduralCell GenerateCell(ref Vector3I id)
Expand All @@ -51,7 +50,6 @@ public override ProceduralCell GenerateCell(ref Vector3I id)
position *= SUBCELL_SIZE;
position += id * CELL_SIZE;

MyLog.Default.WriteLine("Check if inside world");
if (!MyEntities.IsInsideWorld(position)) continue;

MySystemItem obj = IsInsideRing(position);
Expand All @@ -65,8 +63,6 @@ public override ProceduralCell GenerateCell(ref Vector3I id)
if (obj.Type == SystemObjectType.RING)
minSize = ((MyPlanetRingItem)obj).RoidSize;

MyLog.Default.WriteLine("Generating asteroid object data");

var cellObject = new CellObject(cell, position, MyRandom.Instance.Next(Math.Min(OBJECT_SIZE_MAX, minSize), OBJECT_SIZE_MAX));
cellObject.Params.Type = MyObjectSeedType.Asteroid;
cellObject.Params.Seed = MyRandom.Instance.Next();
Expand All @@ -85,7 +81,6 @@ public override void GenerateObjects(List<CellObject> objects, HashSet<MyObjectS

foreach(var obj in objects)
{
MyLog.Default.WriteLine("Generated: " + obj.Params.Generated);
if (obj.Params.Generated) continue;

obj.Params.Generated = true;
Expand All @@ -107,7 +102,6 @@ public override void GenerateObjects(List<CellObject> objects, HashSet<MyObjectS
if (!existingObjectSeeds.Contains(obj.Params))
existingObjectSeeds.Add(obj.Params);
exists = true;
MyLog.Default.WriteLine("Already exists roid");
break;
}
}
Expand All @@ -123,13 +117,10 @@ public override void GenerateObjects(List<CellObject> objects, HashSet<MyObjectS

MyWorldGenerator.AddVoxelMap(storageName, storage, pos, GetAsteroidEntityId(storageName));

MyLog.Default.WriteLine("Generated roid");

voxelMap.Save = false;
MyVoxelBase.StorageChanged OnStorageRangeChanged = null;
OnStorageRangeChanged = delegate (MyVoxelBase voxel, Vector3I minVoxelChanged, Vector3I maxVoxelChanged, MyStorageDataTypeFlags changedData)
{
MyLog.Default.WriteLine("Saving roid now");
voxelMap.Save = true;
voxelMap.RangeChanged -= OnStorageRangeChanged;
};
Expand Down Expand Up @@ -183,7 +174,6 @@ public override void UnloadCells()
{
if (obj.Params.Generated)
{
MyLog.Default.WriteLine("unloading roid");
UnloadAsteroid(obj);
}
}
Expand All @@ -207,7 +197,6 @@ private void UnloadAsteroid(CellObject obj)
{
if (!map.Save)
{
MyLog.Default.WriteLine("Closing roid");
map.Close();
map.OnClose += delegate
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,14 @@ public class ProceduralGenerator : MySessionComponentBase

public override void LoadData()
{
MyLog.Default.WriteLine("Loading World Generator");
Static = this;

m_seed = MySession.Static.Settings.ProceduralSeed;

planetModule = new ProceduralPlanetModule(m_seed);

if (!MySettings.Static.Settings.Enable) return;

//Currently so that the original Procedural world generator still works
if (MySession.Static.Settings.ProceduralDensity != 0) return;

Expand All @@ -55,7 +56,7 @@ public override void UpdateBeforeSimulation()
if (!Enabled)
return;

if (!Sync.IsServer) return;
if (!Sync.IsServer || !MySettings.Static.Settings.Enable) return;

foreach(var entity in m_toTrackedEntities)
{
Expand Down Expand Up @@ -148,7 +149,7 @@ public void TrackEntityRanged(MyEntity entity, double range)

public override void Init(MyObjectBuilder_SessionComponent sessionComponent)
{
if (!Sync.IsServer) return;
if (!Sync.IsServer || !MySettings.Static.Settings.Enable) return;

base.Init(sessionComponent);

Expand Down
3 changes: 0 additions & 3 deletions SEWorldGenPlugin/Generator/ProceduralGen/ProceduralModule.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,18 +31,15 @@ protected ProceduralModule(int seed, double cellSize)

public void MarkToUnloadCells(BoundingSphereD toUnload, BoundingSphereD? toExclude = null)
{
MyLog.Default.WriteLine("marking cells to unload");
Vector3I cellId = Vector3I.Floor((toUnload.Center - toUnload.Radius) / CELL_SIZE);
for (var iter = GetCellsIterator(toUnload); iter.IsValid(); iter.GetNext(out cellId))
{

ProceduralCell cell;
if (m_cells.TryGetValue(cellId, out cell))
{
MyLog.Default.WriteLine("Got cell to unload");
if (toExclude == null || !toExclude.HasValue || toExclude.Value.Contains(cell.BoundingVolume) == ContainmentType.Disjoint)
{
MyLog.Default.WriteLine("Cell is valid to unlaod");
m_toUnloadCells.Add(cell);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ namespace SEWorldGenPlugin.Generator.ProceduralGen
{
public class ProceduralPlanetModule
{
private const int GENERATOR_DISTANCE = 100000000;
private int m_seed;

public ProceduralPlanetModule(int seed)
Expand All @@ -42,8 +41,6 @@ public void GeneratePlanets(MyEntity e)

public void GeneratePlanets()
{
MyLog.Default.WriteLine("Generating Planets" + SystemGenerator.Static.m_objects.Count);

foreach(var obj in SystemGenerator.Static.m_objects)
{
if (obj.Type != SystemObjectType.PLANET) continue;
Expand Down Expand Up @@ -125,7 +122,6 @@ private MyPlanet CreatePlanet(Vector3D? position, float? size, ref MyPlanetGener
var random = MyRandom.Instance;
using (random.PushSeed(random.CreateRandomSeed()))
{
MyLog.Default.WriteLine("Generating world planet");
MyPlanetStorageProvider provider = new MyPlanetStorageProvider();
provider.Init(m_seed, generatorDef, size.Value / 2f);

Expand Down
44 changes: 23 additions & 21 deletions SEWorldGenPlugin/Generator/SystemGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,6 @@ namespace SEWorldGenPlugin.Generator
[MySessionComponentDescriptor(MyUpdateOrder.NoUpdate, 600)]
public class SystemGenerator : MySessionComponentBase
{
private const int MAX_PLANETS_COUNT = 25;
private const int MIN_PLANETS_COUNT = 5;
private const int MIN_PLANET_DISTANCE = 4000000;
private const int MAX_PLANET_DISTANCE = 10000000;
private const int MAX_PLANET_SIZE = 1200000;
private const int MIN_RING_WIDTH = 10000;
private const int MAX_RING_WIDTH = 100000;
private const int MIN_RING_HEIGHT = 1000;
private string[] greek_letters = new string[10] {"Alpha", "Beta", "Gamma", "Delta", "Epsilon", "Zeta", "Eta", "Theta", "Iota", "Kappa"};

private const string STORAGE_FILE = "SystemData.xml";
Expand All @@ -45,18 +37,21 @@ public List<MyPlanetGeneratorDefinition> m_planetDefinitions
}

private int m_seed;
private GeneratorSettings settings;

public static SystemGenerator Static;

public override void Init(MyObjectBuilder_SessionComponent sessionComponent)
{
if (!Sync.IsServer) return;
if (!Sync.IsServer || !MySettings.Static.Settings.Enable) return;

MyObjectBuilder_StarSystem b = GetConfig();
m_objects = b.SystemObjects;

m_seed = MySession.Static.Settings.ProceduralSeed + MyRandom.Instance.CreateRandomSeed();

settings = MySettings.Static.Settings.GeneratorSettings;

if (b == null || m_objects == null || m_objects.Count == 0)
{
GenerateSystem();
Expand All @@ -71,18 +66,23 @@ public override void Init(MyObjectBuilder_SessionComponent sessionComponent)
public override void LoadData()
{
if (!Sync.IsServer) return;

Static = this;

m_planetDefinitions = MyDefinitionManager.Static.GetPlanetsGeneratorsDefinitions().ToList();
FilterDefinitions();

if(MySettings.Static == null)
{
var s = new MySettings();
s.LoadSettings();
}
if (!MySettings.Static.Settings.Enable) return;

MySession.Static.Settings.ProceduralDensity = 0;
}

public override void SaveData()
{
if (!Sync.IsServer) return;
if (!Sync.IsServer || !MySettings.Static.Settings.Enable) return;

SaveConfig();
}
Expand All @@ -98,16 +98,16 @@ private void GenerateSystem()

using (MyRandom.Instance.PushSeed(m_seed))
{
int numberPlanets = MyRandom.Instance.Next(MIN_PLANETS_COUNT, MAX_PLANETS_COUNT);
int numberPlanets = MyRandom.Instance.Next(settings.MinObjectsInSystem, settings.MaxObjectsInSystem);
long tmp_distance = 0;
int totalBelts = 0;

for (int i = 0; i < numberPlanets; i++)
{
int distToPrev = MyRandom.Instance.Next(MIN_PLANET_DISTANCE, MAX_PLANET_DISTANCE);
int distToPrev = MyRandom.Instance.Next(settings.MinOrbitDistance, settings.MaxOrbitDistance);
tmp_distance += distToPrev;

if(MyRandom.Instance.NextDouble() * ((i % 6) * (i & 6) / 12.5) < 0.5){
if(MyRandom.Instance.NextDouble() * ((i % 6) * (i % 6) / 12.5) < 1 - settings.BeltSettings.BeltProbability){
GeneratePlanet(i, tmp_distance, numberPlanets);
}
else
Expand All @@ -124,7 +124,7 @@ private void GenerateBelt(long distance, ref int beltIndex)

belt.DisplayName = "Belt " + greek_letters[beltIndex++];
belt.Type = SystemObjectType.BELT;
belt.Height = MyRandom.Instance.Next(4000, 40000);
belt.Height = MyRandom.Instance.Next(settings.BeltSettings.MinBeltHeight, settings.BeltSettings.MaxBeltHeight);
belt.Radius = distance;
belt.Width = MyRandom.Instance.Next(belt.Height * 10, belt.Height * 100);
belt.RoidSize = MyRandom.Instance.Next(256, 512);
Expand All @@ -136,7 +136,7 @@ private void GeneratePlanet(int index, long distance, int totalObjects)
{
MyPlanetItem planet = new MyPlanetItem();

var def = GetPlanetDefinition((int)(MAX_PLANET_SIZE * Math.Sin(index * Math.PI / totalObjects)));
var def = GetPlanetDefinition((int)(settings.PlanetSettings.PlanetSizeCap * Math.Sin(index * Math.PI / totalObjects)));

var angle = MyRandom.Instance.GetRandomFloat(0, (float)(2 * Math.PI));
var height = MyRandom.Instance.GetRandomFloat((float)Math.PI / 180 * -5, (float)Math.PI / 180 * 5);
Expand All @@ -157,6 +157,8 @@ private void GeneratePlanet(int index, long distance, int totalObjects)

private MyPlanetMoonItem[] GenerateMoons(float planetSize, float surfaceGravity, string planetName)
{
if (MyRandom.Instance.NextFloat() > settings.PlanetSettings.MoonProbability) return new MyPlanetMoonItem[0];

int numMoons = MyRandom.Instance.Next(0, GetMaxMoonCount(surfaceGravity));
MyPlanetMoonItem[] moons = new MyPlanetMoonItem[numMoons];

Expand Down Expand Up @@ -186,8 +188,8 @@ private MyPlanetRingItem GenerateRing(float surfaceGravity, float planetSize)

ring.Type = SystemObjectType.RING;
ring.RoidSize = MyRandom.Instance.Next(64, Math.Min((int)(Math.Max(surfaceGravity * 0.5 * 128, 64)), 512));
ring.Width = MyRandom.Instance.Next(MIN_RING_WIDTH, MAX_RING_WIDTH);
ring.Height = MyRandom.Instance.Next(MIN_RING_HEIGHT, ring.Width / 10);
ring.Width = MyRandom.Instance.Next(settings.PlanetSettings.RingSettings.MinPlanetRingWidth, settings.PlanetSettings.RingSettings.MaxPlanetRingWidth);
ring.Height = MyRandom.Instance.Next(settings.PlanetSettings.RingSettings.MinPlanetRingWidth / 10, ring.Width / 10);
ring.AngleDegrees = MyRandom.Instance.Next(-180, 180);
ring.Radius = MyRandom.Instance.Next((int)(planetSize * 0.5 * 0.75), (int)(planetSize));
ring.DisplayName = "";
Expand All @@ -214,12 +216,12 @@ private MyPlanetGeneratorDefinition GetPlanetDefinition(float maximumSize)

private int SizeByGravity(float gravity)
{
return (int)Math.Min(Math.Sqrt(gravity * 240000 * 240000), MAX_PLANET_SIZE);
return (int)Math.Min(Math.Sqrt(gravity * 120000 * 120000 * settings.PlanetSettings.SizeMultiplier * settings.PlanetSettings.SizeMultiplier), settings.PlanetSettings.PlanetSizeCap);
}

private int GetMaxMoonCount(float gravity)
{
return (int)Math.Floor(gravity * 5);
return (int)Math.Floor(gravity * 5 * MyRandom.Instance.NextFloat());
}

private void FilterDefinitions()
Expand Down
12 changes: 7 additions & 5 deletions SEWorldGenPlugin/MySettings.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ namespace SEWorldGenPlugin
{
public class MySettings
{
private const string FILENAME = "SEWorldGenPlugin.xml";

public static MySettings Static
{
get;
Expand All @@ -27,11 +29,11 @@ public MySettings()

public void LoadSettings()
{
if (FileUtils.FileExistsInGlobalStorage("SEWorldGenPlugin.cfg"))
if (FileUtils.FileExistsInGlobalStorage(FILENAME))
{
try
{
using (var reader = FileUtils.ReadFileInGlobalStorage("SEWorldGenPlugin.cfg"))
using (var reader = FileUtils.ReadFileInGlobalStorage(FILENAME))
{
MyObjectBuilder_PluginSettings saveFile = FileUtils.SerializeFromXml<MyObjectBuilder_PluginSettings>(reader.ReadToEnd());
if (saveFile != null)
Expand All @@ -42,7 +44,7 @@ public void LoadSettings()
{
MyLog.Default.Error("Couldnt load Plugin config file.");
MyLog.Default.Error(e.Message + "\n" + e.StackTrace);
FileUtils.DeleteFileInGlobalStorage("SEWorldGenPlugin.cfg");
FileUtils.DeleteFileInGlobalStorage(FILENAME);
Settings = new MyObjectBuilder_PluginSettings();
}
}
Expand All @@ -55,11 +57,11 @@ public void LoadSettings()

public void SaveSettings()
{
FileUtils.DeleteFileInGlobalStorage("SEWorldGenPlugin.cfg");
FileUtils.DeleteFileInGlobalStorage(FILENAME);

string xml = FileUtils.SerializeToXml(Settings);

using (var writer = FileUtils.WriteFileInGlobalStorage("SEWorldGenPlugin.cfg"))
using (var writer = FileUtils.WriteFileInGlobalStorage(FILENAME))
{
writer.Write(xml);
writer.Close();
Expand Down
19 changes: 11 additions & 8 deletions SEWorldGenPlugin/ObjectBuilders/MyObjectBuilder_PluginSettings.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,17 @@ namespace SEWorldGenPlugin.ObjectBuilders
[ProtoContract]
public class MyObjectBuilder_PluginSettings
{
public MyObjectBuilder_PluginSettings()
{
Enable = true;
GeneratorSettings = new GeneratorSettings();
}

[ProtoMember(1)]
[DefaultValue(true)]
public bool Enable = true;
public bool Enable;

[ProtoMember(2)]
[DefaultValue(true)]
public GeneratorSettings GeneratorSettings = new GeneratorSettings();
public GeneratorSettings GeneratorSettings;

public void Verify()
{
Expand All @@ -22,7 +26,6 @@ public void Verify()
}

[ProtoContract]

public class GeneratorSettings
{
[ProtoMember(1)]
Expand All @@ -35,11 +38,11 @@ public class GeneratorSettings

[ProtoMember(3)]
[DefaultValue(true)]
public int MinOrbitDistance = 40000;
public int MinOrbitDistance = 4000000;

[ProtoMember(4)]
[DefaultValue(true)]
public int MaxOrbitDistance = 100000;
public int MaxOrbitDistance = 10000000;

[ProtoMember(5)]
[DefaultValue(true)]
Expand Down Expand Up @@ -70,7 +73,7 @@ public class PlanetSettings

[ProtoMember(2)]
[DefaultValue(true)]
public double PlanetSizeCap = 120000;
public double PlanetSizeCap = 1200000;

[ProtoMember(3)]
[DefaultValue(true)]
Expand Down
2 changes: 2 additions & 0 deletions SEWorldGenPlugin/Session/PlayerTracker.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ public class PlayerTracker : MySessionComponentBase
{
public override void UpdateBeforeSimulation()
{
if (!MySettings.Static.Settings.Enable) return;

foreach(var player in MySession.Static.Players.GetAllPlayers())
{
var p = player;
Expand Down

0 comments on commit dbc5109

Please sign in to comment.