From 727615f3c3e3f623bda30e54218c6fb8f4a813fd Mon Sep 17 00:00:00 2001 From: Starstrider42 Date: Sat, 29 Nov 2025 20:00:26 -0800 Subject: [PATCH 1/3] Fix typo in default instrument atmosphere curve. The curve went from 1.0 to 5.0 before dropping to 0. All the explicit instrument curves had 0.5 instead, and this makes more sense than supposing an atmosphere enhances observation quality. --- Source/SpaceDust/SpaceDustInstrument.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/SpaceDust/SpaceDustInstrument.cs b/Source/SpaceDust/SpaceDustInstrument.cs index ccafe9d..1f53b18 100644 --- a/Source/SpaceDust/SpaceDustInstrument.cs +++ b/Source/SpaceDust/SpaceDustInstrument.cs @@ -47,7 +47,7 @@ public void Load(ConfigNode node) // Configure the default curve AtmosphereEffect = new FloatCurve(); AtmosphereEffect.Add(0f, 1f); - AtmosphereEffect.Add(70000f, 5f); + AtmosphereEffect.Add(70000f, 0.5f); AtmosphereEffect.Add(500000f, 0f); ConfigNode floatCurveNode = new ConfigNode(); if (node.TryGetNode(ATMOSPHERE_PARAMETER_NAME, ref floatCurveNode)) From e0051f1f78a26ea36850df2af3e2e1ba30201d4e Mon Sep 17 00:00:00 2001 From: Starstrider42 Date: Sat, 29 Nov 2025 20:16:31 -0800 Subject: [PATCH 2/3] Fix default value of ScannedResource.LocalThreshold. The original value, 0.01 t/m^3, prevented the included gas analyzer from working at all (it's a partial density of 8.2 Earth atmospheres). Assuming this was meant to be 1% of Earth's atmosphere, I've changed it to 1e-5 t/m^3 (0.8% Earth's sea level density) and documented the non-obvious units. --- Source/SpaceDust/Modules/ScannedResource.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/SpaceDust/Modules/ScannedResource.cs b/Source/SpaceDust/Modules/ScannedResource.cs index 6b2eefc..c9ef8bd 100644 --- a/Source/SpaceDust/Modules/ScannedResource.cs +++ b/Source/SpaceDust/Modules/ScannedResource.cs @@ -21,10 +21,10 @@ public class ScannedResource public string Name = ""; public DiscoverMode DiscoverMode; public DiscoverMode IdentifyMode; - public double LocalThreshold = 0.01; + public double LocalThreshold = 1e-5; // t/m^3 (0.008 atm) public double DiscoverRange = 70000; public double IdentifyRange = 30000; - public double density = 0.05; + public double density = 0.05; // KSP resource mass (t/unit) private const string DISCOVER_MODE_PARAMETER_NAME = "DiscoverMode"; private const string IDENTIFY_MODE_PARAMETER_NAME = "IdentifyMode"; From 49860a2e52b21283b1d09ab236450f138ea25f89 Mon Sep 17 00:00:00 2001 From: Starstrider42 Date: Sat, 29 Nov 2025 21:19:15 -0800 Subject: [PATCH 3/3] Clean up copy-pasted comments. --- Source/SpaceDust/Modules/ModuleSpaceDustHarvester.cs | 9 ++++----- Source/SpaceDust/Modules/ModuleSpaceDustScanner.cs | 4 ++-- Source/SpaceDust/Modules/ModuleSpaceDustTelescope.cs | 6 +++--- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/Source/SpaceDust/Modules/ModuleSpaceDustHarvester.cs b/Source/SpaceDust/Modules/ModuleSpaceDustHarvester.cs index 3922aa8..e4a3d42 100644 --- a/Source/SpaceDust/Modules/ModuleSpaceDustHarvester.cs +++ b/Source/SpaceDust/Modules/ModuleSpaceDustHarvester.cs @@ -18,8 +18,8 @@ public class HarvestedResource public string Name = "undefined"; // The basic efficiency, applied at local V = 0 public float BaseEfficiency; - public double MinHarvestValue = 0.0001d; - public double density = 0.05; + public double MinHarvestValue = 0.0001d; // t/m^3 (0.08 atm) + public double density = 0.05; // KSP resource mass (t/unit) public HarvestedResource() { } @@ -59,12 +59,11 @@ public class ModuleSpaceDustHarvester : PartModule [KSPField(isPersistant = false)] public float IntakeSpeedStatic = 0f; - // The velocity to use when the intake is static + // The effective area of the intake [KSPField(isPersistant = false)] public float IntakeArea = 0f; // Maps how well the intake works as velocity increases. 0 = nothing, 1= baseEfficiency - [KSPField(isPersistant = false)] public FloatCurve IntakeVelocityScale; @@ -114,7 +113,7 @@ public class ModuleSpaceDustHarvester : PartModule [KSPField(isPersistant = false, guiActive = true, guiActiveEditor = false, guiName = "#LOC_SpaceDust_ModuleSpaceDustHarvester_Field_IntakeSpeed")] public string IntakeSpeed = ""; - // UI field for showing sscoop status + // UI field for showing scoop status [KSPField(isPersistant = false, guiActive = true, guiActiveEditor = false, guiName = "#LOC_SpaceDust_ModuleSpaceDustHarvester_Field_Scoop")] public string ScoopUI = ""; diff --git a/Source/SpaceDust/Modules/ModuleSpaceDustScanner.cs b/Source/SpaceDust/Modules/ModuleSpaceDustScanner.cs index 65e6c18..e2527e3 100644 --- a/Source/SpaceDust/Modules/ModuleSpaceDustScanner.cs +++ b/Source/SpaceDust/Modules/ModuleSpaceDustScanner.cs @@ -19,11 +19,11 @@ public class ModuleSpaceDustScanner : PartModule [KSPField(isPersistant = false)] public float minResToLeave = 0.1f; - /// Am i enabled? + /// Does the scanner work in vacuum? [KSPField(isPersistant = false)] public bool ScanInSpace = true; - /// Am i enabled? + /// Does the scanner work in atmosphere? [KSPField(isPersistant = false)] public bool ScanInAtmosphere = true; diff --git a/Source/SpaceDust/Modules/ModuleSpaceDustTelescope.cs b/Source/SpaceDust/Modules/ModuleSpaceDustTelescope.cs index dc326b4..4a2a10f 100644 --- a/Source/SpaceDust/Modules/ModuleSpaceDustTelescope.cs +++ b/Source/SpaceDust/Modules/ModuleSpaceDustTelescope.cs @@ -60,7 +60,7 @@ public class ModuleSpaceDustTelescope : PartModule [KSPField(isPersistant = true)] public float CurrentPowerConsumption = 1f; - // Current cost to run the scanner + // Number of slots the telescope is equipped with [KSPField(isPersistant = true)] public int Slots = 2; @@ -91,9 +91,9 @@ public class ModuleSpaceDustTelescope : PartModule [KSPField(isPersistant = false)] public double ObjectiveDiameter = 1.8d; - // Size of the lens + // Field of view (in radians) [KSPField(isPersistant = false)] - public double FieldOfView = 1.8d; + public double FieldOfView = 0.001d; // 3.4 arcminutes [KSPEvent(guiActive = true, guiActiveEditor = true, guiName = "#LOC_SpaceDust_ModuleSpaceDustTelescope_Event_EnableTelescope", active = true)] public void EnableTelescope()