Firstly, thankyou for this awesome mod. I really enjoy making stations and bases and this mod gives them more life, making them even more fun.
My modded game includes scansat with the stock orbital survey disabled, so the bases part of the mod kept giving me scan contracts for bodies even though I had completed scanning those bodies. They would complete straight away if I accepted them again. The contract code is checking if stock survey is complete before offering the contract, but requires a scansat scan to complete the contract.
I made two small tweaks to do different checks depending on whether Scansat was installed or not.
BaseScan.cfg
DATA:NEEDS[!SCANsat]
{
type = CelestialBody
requiredValue = true
uniquenessCheck = GROUP_ACTIVE
targetBody1 = OrbitedBodies().Where(b => b.IsOrbitalSurveyComplete() == false && b.HasSurface()).Random()
}
DATA:NEEDS[SCANsat]
{
type = CelestialBody
requiredValue = true
uniquenessCheck = GROUP_ACTIVE
targetBody1 = OrbitedBodies().Where(b => b.SCANsatCoverage("FuzzyResources") < 80 && b.HasSurface()).Random()
}
PARAMETER:NEEDS[!SCANsat]
{
name = PerformOrbitalSurvey
type = PerformOrbitalSurvey
targetBody = @/targetBody1
}
PARAMETER:NEEDS[SCANsat]
{
name = SCANsatCoverage
type = SCANsatCoverage
targetBody = @/targetBody1
coverage = Random(80, 95)
scanType = FuzzyResources
}
BaseRover.cfg
DATA:NEEDS[!SCANsat]
{
type = CelestialBody
requiredValue = true
uniquenessCheck = GROUP_ACTIVE
targetBody1 = LandedBodies().Where(b => b.IsOrbitalSurveyComplete() == true && b.HasSurface()).Random()
}
DATA:NEEDS[SCANsat]
{
type = CelestialBody
requiredValue = true
uniquenessCheck = GROUP_ACTIVE
targetBody1 = LandedBodies().Where(b => b.SCANsatCoverage("FuzzyResources") >= 80 && b.HasSurface()).Random()
}
Thanks again, brilliant mod