nightingale

[1.6.x+] Contract Configurator [v1.27.1] [2018-12-28]

Recommended Posts

Can someone tell me if this is a bug or a improper install? It causes bad lag during time warp with all the spam.

snOYq8l.png

Those bits in the log happen every second or so during warp.

Share this post


Link to post
Share on other sites

Is there a way to output a list of all the stock contact parameters for a specific contract group i.e exploreBody to a debug log?

Share this post


Link to post
Share on other sites
On 9/2/2017 at 8:38 PM, Vjrcr said:

Can someone tell me if this is a bug or a improper install? It causes bad lag during time warp with all the spam.

Those bits in the log happen every second or so during warp.

You may want to raise this in the Final Frontier topic since that appears to be the mod causing your problem.  Be prepared to supply a game log.

Share this post


Link to post
Share on other sites
On 12/09/2017 at 8:48 PM, Brigadier said:

You may want to raise this in the Final Frontier topic since that appears to be the mod causing your problem.  Be prepared to supply a game log.

I removed Final Frontier, even started a new game after, it still happens. It has to do with active limit being reached and new contracts being blocked.

Share this post


Link to post
Share on other sites

Hey guys, I just started on RP-0 and it gave me a message that it told me to put on the forums. Here it is... 

Exception occured while loading ScenarioModule 'BiomeTracker':
System.MissingMethodException: Method not found: 'CelestialBody.GetDisplayName'.
  at ContractConfigurator.ConfigNodeUtil+<>c__DisplayClass31_0.<ParseCelestialBodyValue>b__0 (.CelestialBody cb) [0x00000] in <filename unknown>:0 
  at System.Linq.Enumerable+<CreateWhereIterator>c__Iterator1D`1[CelestialBody].MoveNext () [0x00000] in <filename unknown>:0 
  at System.Linq.Enumerable.FirstOrDefault[CelestialBody] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ConfigNodeUtil.ParseCelestialBodyValue (System.String celestialName) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ConfigNodeUtil.ParseSingleValue[CelestialBody] (System.String key, System.String stringValue, Boolean allowExpression) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.ConfigNodeUtil.ParseValue[CelestialBody] (.ConfigNode configNode, System.String key, Boolean allowExpression) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.BiomeTracker.Load () [0x00000] in <filename unknown>:0 
  at ContractConfigurator.BiomeTracker.OnLoad (.ConfigNode node) [0x00000] in <filename unknown>:0 

 

Anybody in the mood for helping? :)

Share this post


Link to post
Share on other sites

@Varunz16, welcome to the forums.

Additionally, you may want to include your log files (most likely called output_log.txt in your KSP directory).  See the topic below for help with that.  Upload your log to DropBox, Google Drive or similar service and post a link to the log here.  This will help diagnose the problem your having.

 

Share this post


Link to post
Share on other sites

Not sure if it is a mod incompatibility, but contract configurator crashes the game just as it finishes loading initially. I need it to be able to remove contracts :\ I am using v1.3.1 prerelease

Share this post


Link to post
Share on other sites
3 hours ago, Munar pilot said:

Not sure if it is a mod incompatibility, but contract configurator crashes the game just as it finishes loading initially. I need it to be able to remove contracts :\ I am using v1.3.1 prerelease

Read the post just above yours.

Since you're using the KSP pre-release and Contract Configurator for 1.3.0, are you surprised?

Share this post


Link to post
Share on other sites
On 02/09/2017 at 7:47 AM, carmenara said:

Just a quick query: does reputation affect the number of trivial, standard and exceptional contract limits? Or is that affected by building upgrades? 

Reputation has a massive effect on contract limits (and that's a stock feature).  Starting at -1k will give only access to trivial contracts (with a few scripted exceptions).

On 30/09/2017 at 8:45 PM, Munar pilot said:

Not sure if it is a mod incompatibility, but contract configurator crashes the game just as it finishes loading initially. I need it to be able to remove contracts :\ I am using v1.3.1 prerelease

Yup, that's known.  It just needs a recompile, will be doing that and a bug fix or two for a release shortly.

Share this post


Link to post
Share on other sites

New release compatible with KSP 1.3.1!  Download here.

Contract Configurator 1.23.3

  • Recompile for KSP 1.3.1
  • Improved display of HasAntenna parameter ratings (thanks Kerbas-ad-astra).
  • Fixed logic for determining contract prestige (thanks sopindm).
  • Fixed previously unlocked parts being re-locked if player tries to buy a science node they don't have sufficient funds for (thanks inigma).
  • Fixed issue using DATA_EXPAND with values that had special characters in them.  Fixes interop issues between CatEye and Other Worlds Planet pack (thanks Chemox).

Share this post


Link to post
Share on other sites
16 hours ago, nightingale said:

New release compatible with KSP 1.3.1!  Download here.

Contract Configurator 1.23.3

  • Recompile for KSP 1.3.1
  • Improved display of HasAntenna parameter ratings (thanks Kerbas-ad-astra).
  • Fixed logic for determining contract prestige (thanks sopindm).
  • Fixed previously unlocked parts being re-locked if player tries to buy a science node they don't have sufficient funds for (thanks inigma).
  • Fixed issue using DATA_EXPAND with values that had special characters in them.  Fixes interop issues between CatEye and Other Worlds Planet pack (thanks Chemox).

Sweet, thank you, I wanted it quite a bit

Share this post


Link to post
Share on other sites

Not to sure where to put this.

Exception occured while loading contract 'unknown':
System.ArgumentException: 'Earth' is not a valid CelestialBody.
  at ContractConfigurator.ConfigNodeUtil.ParseCelestialBodyValue (System.String celestialName) [0x00000] in <filename unknown>:0
  at ContractConfigurator.ConfigNodeUtil.ParseSingleValue[CelestialBody] (System.String key, System.String stringValue, Boolean allowExpression) [0x00000] in <filename unknown>:0
  at ContractConfigurator.ConfigNodeUtil.ParseValue[CelestialBody] (.ConfigNode configNode, System.String key, Boolean allowExpression) [0x00000] in <filename unknown>:0
  at ContractConfigurator.ConfigNodeUtil.ParseValue[CelestialBody] (.ConfigNode configNode, System.String key, .CelestialBody defaultValue) [0x00000] in <filename unknown>:0
  at ContractConfigurator.ConfiguredContract.OnLoad (.ConfigNode node) [0x00000] in <filename unknown>:0

Share this post


Link to post
Share on other sites

I think I'm losing my mind ... I could have swore I once had a contract pack that made use of Dmagic's Orbital Science parts (little brother surveillance etc) ... but I can't seem to find it anywhere

Share this post


Link to post
Share on other sites
3 hours ago, Mordrehl said:

I think I'm losing my mind ... I could have swore I once had a contract pack that made use of Dmagic's Orbital Science parts (little brother surveillance etc) ... but I can't seem to find it anywhere

Dmagic Orbital Science uses it's own contracts which are nothing to do with CC

Share this post


Link to post
Share on other sites
On 10/8/2017 at 6:13 AM, MissMolly said:

System.ArgumentException: 'Earth' is not a valid CelestialBody.

The cause may not be CC - you might want to check the release thread of the planet/realism mod you use that adds a planet called 'Earth'.

One of the changes made in 1.3.1 that affects such mods has to do with the body names, and they may not have updated/recompiled to deal with that change.

Share this post


Link to post
Share on other sites
6 hours ago, severedsolo said:

Dmagic Orbital Science uses it's own contracts which are nothing to do with CC

Ahh ok ... strange haven't had one yet that uses any of his parts which is why I thought I was missing a contract pack :P

Share this post


Link to post
Share on other sites

Could you please update to the latest version in CKAN? Had to disable the latest update of ResearchBodies because it requires this mod to be 1.23.3 and 1.23.2 is the latest available in CKAN, thx.

Share this post


Link to post
Share on other sites
7 hours ago, neder said:

Could you please update to the latest version in CKAN? Had to disable the latest update of ResearchBodies because it requires this mod to be 1.23.3 and 1.23.2 is the latest available in CKAN, thx.

The update is automatic, and worked as far as I'm concerned - the .ckan file got loaded by the NetKAN system:

https://github.com/KSP-CKAN/CKAN-meta/blob/master/ContractConfigurator/ContractConfigurator-1.23.3.ckan

Versions all look correct, so if you're having an issue you'll need to report it to the CKAN folk.

Share this post


Link to post
Share on other sites

@nightingale The buttons for toggling active/offered waypoints and orbits at the top of the Tracking station don't work for me. Clean install, only CC 1.23.3 installed. I can provide a log but there's no warnings or errors in it, the interface loads fine with:

[LOG 19:22:58.316] [AddonLoader]: Instantiating addon 'TrackingStationUI' from assembly 'ContractConfigurator'
[LOG 19:22:58.317] [AddonLoader]: Instantiating addon 'TitleTrackerHelper' from assembly 'ContractConfigurator'

 

Share this post


Link to post
Share on other sites

I have Contract Configurator installed with Strategia and the Field Research contract pack (no others), and I've noticed contracts popping in and out of existence in the Mission Control screen.  Sometimes I'll open Mission Control and see one or two contracts disappear and a new one appear, and then nothing changes after that.  But sometimes there'll be one one contract slot, at the end of the ones from Field Research, that keeps disappearing and reappearing as a different contract each time, for as long as I have Mission Control open.

Someone in the Strategia thread mentioned SCANsat contracts "blinking in and out at a fast pace" — that sounds similar to what I'm seeing, except I don't have SCANsat installed and in my case it's Field Research contracts doing it.

Edit: I've also seen a pair of contracts switching places in the list.  Both stock tourism contracts, adjacent to each other in the list, and sporadically every few seconds they just trade places in the list.

When any of these changes happen (the disappearing/appearing contract offerings, or swapping active contracts), it also un-selects whatever contract I currently have selected.

Edited by Wyzard

Share this post


Link to post
Share on other sites
22 hours ago, Wyzard said:

I have Contract Configurator installed with Strategia and the Field Research contract pack (no others), and I've noticed contracts popping in and out of existence in the Mission Control screen.  Sometimes I'll open Mission Control and see one or two contracts disappear and a new one appear, and then nothing changes after that.  But sometimes there'll be one one contract slot, at the end of the ones from Field Research, that keeps disappearing and reappearing as a different contract each time, for as long as I have Mission Control open.

Someone in the Strategia thread mentioned SCANsat contracts "blinking in and out at a fast pace" — that sounds similar to what I'm seeing, except I don't have SCANsat installed and in my case it's Field Research contracts doing it.

FYI, I see this occasionally as well but not at the frequency mentioned above.  A contract might be available on first entering Mission Control, and then revert to unavailable in a couple of seconds (I've presumed as it reassesses the criteria) but then it's stable.  I really have to look for the behaviour and, for me, it doesn't affect game play at all.  Relevant mods:

KSP: 1.3 (Win64) - Unity: 5.4.0p4 - OS: Windows 10  (10.0.0) 64bit
Contract Configurator - 1.23.2
Contract Pack: Field Research - 1.2.1
Crowd Sourced Science - 4.1
DMagic Orbital Science - 1.3.0.10
CapCom Mission Control On The Go - 1.0.2.7
Contract Parser - 1.0.7
Contracts Window Plus - 1.0.8.1
Progress Parser - 1.0.8
ResearchBodies - 1.9.5
SCANsat - 1.1.8

I'll have to note in which group these contracts reside the next time I see this.

Share this post


Link to post
Share on other sites

How do I set up a contract pack to work with Kopernicus?  As it is I have the Bases and Station contract pack installed and it all works but I don't get any launch space station missions.  It's odd as all the other contracts work so any help for getting it working would be great.

Config in question:

Spoiler

CONTRACT_TYPE
{
    name = StationCore
    group = BasesandStations
    title = Launch the @/targetBody1 Space Station!
    genericTitle = Launch a New Space Station
    description = In order to aid our efforts of exploring @/targetBody1 we'd like you to launch a space station.
    genericDescription = We'd like you to deploy a new space station.
    synopsis = Launch the @/targetBody1 Space Station!
    completedMessage = Station Complete!
    
    // Contract min/max expiry in days.
    minExpiry = 1
    maxExpiry = 7
    // Contract can be cancelled and declined.
    cancellable = true
    declinable = true
    targetBody = @/targetBody1

    // Contract rewards - no science random other rewards.
    rewardScience = 0
    rewardReputation = Random(1.0, 10.0)
    rewardFunds = Random(100000.0, 150000.0)
    failureReputation = Random(1.0, 100.0)
    failureFunds = 50000.0
    advanceFunds = 50000.0

    // Failsafe Data.
    DATA
    {
        type = List<Vessel>
        requiredValue = false
        stations = AllVessels().Where(v => v.VesselType() == Station)
    }
    DATA
    {
        type = CelestialBody
        requiredValue = true
        uniquenessCheck = GROUP_ACTIVE
        targetBody1 = OrbitedBodies().Where(body => @/stations.Where(v => v.CelestialBody() == body).Count() == 0).SelectUnique()
        //targetBody1 = Kerbin
        title = Must have orbited a Celestial Body, but not have any stations deployed.
    }


    //Checks all vessel parameters are correct
    PARAMETER
    {
        name = NewStation
        type = VesselParameterGroup
        title = Launch a new Station Core into the specified orbit around @/targetBody1.
        notes = The station must include 1 Docking Port and support 4 Kerbals.  This can be done in one launch, or multiple launches.

        //Checks station is in orbit
        PARAMETER
        {
            name = LKO
            type = Orbit
          
            targetBody = @/targetBody1
            situation = ORBITING
            maxAltitude = @/targetBody1.IsSun() ? 113549713200 : @/targetBody1 == Gilly ? 16000 : @/targetBody1.SpaceAltitudeThreshold()
        }

        //Check for a Docking Port
        PARAMETER
        {
            name = PartValidation
            type = PartValidation
            
            partModule = ModuleDockingNode
            minCount = 1
        }
        
        //Check for crew capacity
        PARAMETER
        {
            name = HabModuleChild
            type = HasCrewCapacity
            title = Support 4 Kerbals
            
            minCapacity = 4
            
        }
        
        //Checks that vessel can generate power, accepts solar panels or RTGs
        PARAMETER
        {
            name = RTGSolar
            type = Any
            title = Have one of the following power generators

            PARAMETER
            {
                name = PartValidationRTG
                type = PartValidation
                title = 1 or more solar panels
                hideChildren = true

                partModule = ModuleDeployableSolarPanel
                minCount = 1
            }
                
            PARAMETER
            {
                name = PartValidationSolar
                type = PartValidation
                title = 1 or more generators
                hideChildren = true
                
                partModule = ModuleGenerator
                minCount = 1
            }
            
            PARAMETER:NEEDS[NearFutureSolar]
            {
                name = PartValidationNearFutureSolar
                type = PartValidation
                title = 1 or more curved solar panels
                hideChildren = true
                
                partModule = ModuleCurvedSolarPanel
                minCount = 1
            }
            
            PARAMETER:NEEDS[NearFutureElectrical]
            {
                name = PartValidationNearFutureReactors
                type = PartValidation
                title = 1 or more fission reactors
                hideChildren = true
                partModule = FissionReactor
                minCount = 1
            }
            
            PARAMETER:NEEDS[NearFutureElectrical]
            {
                name = PartValidationNearFutureRTGs
                type = PartValidation
                title = 1 or more radioisotope generators
                hideChildren = true
                partModule = ModuleRadioisotopeGenerator
                minCount = 1
            }
            
            PARAMETER:NEEDS[Kopernicus]
            {
                name = PartValidationRTG
                type = PartValidation
                hideChildren = true
                title = 1 or more solar panels
                partModule = KopernicusSolarPanel
                minCount = 1
            }
        }
        //OPTIONAL Checks for cupola
        PARAMETER
        {
            name = PartValidation
            type = PartValidation
            title = Include a cupola (optional)
            optional = true
            hideChildren = true
            
            part = cupola
            minCount = 1
            
        }
        
        //Checks for Supplies (USI Life Support)
        PARAMETER:NEEDS[USILifeSupport]
        {
            name = Supplies
            type = HasResource
            title = Have Supplies on board your vessel
            
            resource = Supplies
            minQuantity = 1
        }
        
        //OPTIONAL Checks for science labs from various mods
        PARAMETER
        {
            name = ScienceModuleValidation
            type = Any
            optional = true
            completeInSequence = true
            
            PARAMETER
            {
                name = ScienceLab
                type = PartValidation
                title = Include a Mobile Processing Lab MPL-LG-2
                rewardFunds = 75000.0
                hideChildren = true
                
                partModule = ModuleScienceLab
            }

            PARAMETER:NEEDS[StationScience]
            {
                name = PartValidation
                type = PartValidation
                title = Include a TH-NKR Research Lab
                rewardFunds = 85000.0
                hideChildren = true
                
                part = StnSciLab
            }
            
            PARAMETER:NEEDS[Kerbalism]
            {
                name = PartValidation
                type = PartValidation
                title = Include a Science Laboratory
                rewardFunds = 75000.0
                hideChildren = true

                partModule = Laboratory
            }
        }
        
        PARAMETER
        {
            name = VesselIsType
            type = VesselIsType
            
            vesselType = Station
        }
    
    }

    //Begins a 2-day countdown. Station must be in orbit for 2 days for contract to complete
    PARAMETER
    {
        name = Duration
        type = Duration
        duration = 2d
        preWaitText = Orbit time required:
        waitingText = Time to completion: 
        completionText = You survived!
        startCriteria = PARAMETER_COMPLETION
        parameter = NewStation
    }
    
    
    REQUIREMENT
    {
        name = PartModuleUnlocked
        type = PartModuleUnlocked

        partModule = ModuleDockingNode
    }

    REQUIREMENT
    {
        name = Any
        type = Any
    
        REQUIREMENT
        {
            name = PartModuleUnlocked
            type = PartModuleUnlocked
            
            partModule = ModuleDeployableSolarPanel
        }
        
        REQUIREMENT:NEEDS[Kopernicus]
        {
            name = PartModuleUnlocked
            type = PartModuleUnlocked
            
            partModule = KopernicusSolarPanel
        }
        
        REQUIREMENT:NEEDS[NearFutureSolar]
        {
            name = PartModuleUnlocked
            type = PartModuleUnlocked
            
            partModule = ModuleCurvedSolarPanel
        }    
    }
    
    // REQUIREMENT
    // {
        // name = CompleteContract
        // type = CompleteContract
        // contractType = StationCore
        // minCount = 0
        // checkOnActiveContract = false
        // cooldownDuration = 5d
        // title = Must not have completed this contract in the last 5 days.
    // }

    REQUIREMENT
    {
        name = PartUnlocked
        type = PartUnlocked
        
        part = crewCabin
    }
    
    REQUIREMENT
    {
        name = SunCheck
        type = Expression
        expression = !@/targetBody1.IsSun()
        title = Target body must not be the Sun
    }
}
    
 

 

Share this post


Link to post
Share on other sites

@captinjoehenry The problem is the line:

20 hours ago, captinjoehenry said:

maxAltitude = @/targetBody1.IsSun() ? 113549713200 : @/targetBody1 == Gilly ? 16000 : @/targetBody1.SpaceAltitudeThreshold()

If you change it to:

Quote

maxAltitude = @/targetBody1.IsSun() ? 113549713200 : @/targetBody1.Name() == "Gilly" ? 16000 : @/targetBody1.SpaceAltitudeThreshold()

then it should work with any planet pack although some of the offered contracts may have maxAltitudes that are too low to be completed if there are bodies similar to Gilly that have surface features that extend above the "in space low" threshold.

 

Share this post


Link to post
Share on other sites

Hey guys.. hows it going?
for the past couple of days I have been working thorough the wiki to try and make a contract pack.. I have been failing miserably..

I have 3 config files in a folder in Gamedata/ContractPacks; one to make an agency, one to make a contract_group, and one for an actual mission. All taken from the massively expansive sample files given from the wiki

Today has been a merry chase with the debug console, seeing what throws an exception, go and edit a cfg file, wait 5 mins for kerbal to load as I have to many mods and reload contracts button is broken.. check console find next exception, read wiki, edit.. etc

Right now it is telling me I do not have the agency set up.. I do not know why, can some one please have a look and enlighten me?

 

Edit: The agent problem was a name typo mismatch thing that I found making the pastebins.. but now the contract_group is not loading and not really telling me why?

Edited by Twitchi

Share this post


Link to post
Share on other sites

@Twitchi I was able to get your example contract to work using the following changes (not sure if all are necessary but when in doubt remove spaces:P)

  • Removed spaces from AGENT/name and added a title with the spaces included
  • Removed spaces from CONTRACT_GROUP/name (displayName already had a spaced variant)
  • Update CONTRACT_GROUP/agent with unspaced name
  • Updated CONTRACT_TYPE/agent and CONTRACT_TYPE/group with unspaced names
  • Commented out the empty CONTRACT_TYPE/DATA node.

 

Edit: Oh and when debugging messages looking inside GameData/ContractConfigurator/logs can be helpful.

Edited by Aelfhe1m

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.