nightingale

[1.8.x+] Contract Configurator [v1.28.0] [2019-10-17]

Recommended Posts

Release time!  Download here.

Contract Configurator 1.11.0

  • Performance fixes and improved caching of biome data.
  • Duration values can now be used in arithmetic and comparisons in expressions.
  • Added Duration.ToDouble() and Duration().
  • Added Vessel.MET().
  • Fixed issue with vessel re-assignment on undock (thanks chrisl).
  • Improved contract window text when tracking vessels in a VesselParameterGroup.
  • Improved API for requirement saving/loading.
  • Add proper error handling to PartModuleTypeUnlocked.
  • Added ReachSpecificOrbit.displayNotes back in (thanks severedsolo).
  • Fixed so orbits for offered contract show up in the tracking station and NOT in flight.
  • Minor bug fixes.

Share this post


Link to post
Share on other sites

Contract Configurator 1.11.1 for KSP 1.1.1.  All the ones!  No real change from 1.11.0, except I decided to compile against the dev RemoteTech since it seems everybody says the release version is too broken.  Download here.

Contract Configurator 1.11.1

  • Update to KSP 1.1.1 (release to make CKAN happy).
  • Compile to latest *dev* RemoteTech.

Share this post


Link to post
Share on other sites

I seem to be getting an NRE upon loading and/or starting a new game on my very modded install. Relevant section (I think) is:

Quote

NullReferenceException: Object reference not set to an instance of an object
  at ContractConfigurator.PartModuleUnlockedRequirement.RequirementMet (ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0
  at ContractConfigurator.ContractRequirement.CheckRequirement (ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0
  at ContractConfigurator.ContractRequirement.RequirementsMet (ContractConfigurator.ConfiguredContract contract, ContractConfigurator.ContractType contractType, IEnumerable`1 contractRequirements) [0x00000] in <filename unknown>:0 
Rethrow as Exception: ContractConfigurator: Exception checking requirements!

UnityEngine.Debug:Internal_LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
ContractConfigurator.LoggingUtil:LogException(Exception)
ContractConfigurator.ContractRequirement:RequirementsMet(ConfiguredContract, ContractType, IEnumerable`1)
ContractConfigurator.ContractType:MeetExtendedRequirements(ConfiguredContract, ContractType)
ContractConfigurator.<ContractGenerator>d__27:MoveNext()
ContractConfigurator.<ContractGenerator>d__26:MoveNext()
ContractConfigurator.ContractPreLoader:Update()
 
(Filename:  Line: -1)

Log file: https://dl.dropboxusercontent.com/u/59567837/output_log_CC_nre.txt

This is on an install with many many mods, and it does not appear to occur with stock only. I am assuming this is caused by one or more of the contract packs I have installed, which are:

1. Field Research (Not updated for 1.1.1 I think)

2. GAP (Also not 1.1.1 yet...?)

3. Kerbin Space Station (Yes 1.1.1)

4. Tourism Plus (Don't think 1.1.1)

 

Anyway, I'm posting this just in case CC for some reason shouldn't be generating an NRE even if one of those contract packs is actually to blame.

 

EDIT: Also, FYI, the version file in the 1.11.1 download says it's actually 1.11.0 and points to the 1.11.0 changenotes and such.

Edited by AccidentalDisassembly

Share this post


Link to post
Share on other sites
4 hours ago, AccidentalDisassembly said:

I seem to be getting an NRE upon loading and/or starting a new game on my very modded install. Relevant section (I think) is:

Log file: https://dl.dropboxusercontent.com/u/59567837/output_log_CC_nre.txt

This is on an install with many many mods, and it does not appear to occur with stock only. I am assuming this is caused by one or more of the contract packs I have installed, which are:

1. Field Research (Not updated for 1.1.1 I think)

2. GAP (Also not 1.1.1 yet...?)

3. Kerbin Space Station (Yes 1.1.1)

4. Tourism Plus (Don't think 1.1.1)

Anyway, I'm posting this just in case CC for some reason shouldn't be generating an NRE even if one of those contract packs is actually to blame.

EDIT: Also, FYI, the version file in the 1.11.1 download says it's actually 1.11.0 and points to the 1.11.0 changenotes and such.

I haven't been able to track this one down, can you turn Contract Configurator debug on and get me one more log file (instructions here).

Also, this is scary and you may want to re-install KSP first (or validate if using steam):

The file 'C:/Games/KSP_win/KSP_x64_Data/sharedassets0.assets' is corrupted! Remove it and launch unity again!
[Position out of bounds!]

 

Share this post


Link to post
Share on other sites

OK, hopefully got the logging right. Before I tried this, I did reinstall KSP from a ZIP (overwrote patched 1.1 version).

Loaded up KSP, started new game, upon entering KSC scene exceptions were thrown at regular intervals. But there seem to be quite a lot of problems happening with many mods, so I'm not even sure if it's CC...

 

Log: https://dl.dropboxusercontent.com/u/59567837/output_log_CConfig2.txt

Share this post


Link to post
Share on other sites
41 minutes ago, AccidentalDisassembly said:

OK, hopefully got the logging right. Before I tried this, I did reinstall KSP from a ZIP (overwrote patched 1.1 version).

Loaded up KSP, started new game, upon entering KSC scene exceptions were thrown at regular intervals. But there seem to be quite a lot of problems happening with many mods, so I'm not even sure if it's CC...

 

Log: https://dl.dropboxusercontent.com/u/59567837/output_log_CConfig2.txt

Well, those major errors are gone, but there's a lot of weird stuff in that log.  I think I found the exception in Contract Configurator, but if I guessed right then the cause is a really messed up parts list (there's a null entry that got in there somehow).  You can test out the dev version here and let me know if at least the Contract Configurator issues goes away.

Share this post


Link to post
Share on other sites

Made one more change (updated file).  But the check is for something that is insane and shouldn't happen - so if it fixes your Contract Configurator problem it only means you have bigger problems. :)

Share this post


Link to post
Share on other sites

I accept the contract after updating, and launch a new vessel with all required parts, then reach required orbit. none of objects were ticked when the requirements were meet.
The ion scan does not work as well. I haven't check other contract pack. but stock contract looks fine, I did one that required transmit data from space.

Spoiler

?interpolation=lanczos-none&output-forma

I'm not sure if it is MCE's problem. Just let you know.

https://github.com/malkuth1974/MissionController2/files/243469/KSP.log.txt

Share this post


Link to post
Share on other sites

I am having a problem with the new 1.11.1 version with the RT missions but the error looks like the other one you were working on in here.

Screen shot of the CC Debug Window: http://imgur.com/pKRYJcE

KSP Logs: https://www.dropbox.com/s/lxrjvpqcrq7kno0/KSP.log?dl=0

I also did try with the 2 other files you linked in your posts nightingale

 

Edited by KnotaiG

Share this post


Link to post
Share on other sites

@nightingale Just installed 1.1.2 with the updated version of MM (2.6.24) and Exception Detector generating massive amounts of faults, claiming it to be ContractConfigurator. KSP.log file is showing me this:

[EXC 10:11:24.646] MissingMethodException: Method not found: 'PopupDialog.SpawnPopupDialog'.
	UnityEngine.GUILayout+LayoutedWindow.DoWindow (Int32 windowID)
	UnityEngine.GUI.CallWindowDelegate (UnityEngine.WindowFunction func, Int32 id, UnityEngine.GUISkin _skin, Int32 forceRect, Single width, Single height, UnityEngine.GUIStyle style)

 

xXJK0ie.png

Edited by thunder175

Share this post


Link to post
Share on other sites

Exception occured while loading contract 'ScanKerbinLoRes':
System.ArgumentException: 'Kerbin' 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.ContractRequirement.Load (.ConfigNode configNode) [0x00000] in <filename unknown>:0
  at ContractConfigurator.ContractRequirement.LoadRequirement (.ConfigNode configNode) [0x00000] in <filename unknown>:0
  at ContractConfigurator.ConfiguredContract.OnLoad (.ConfigNode node) [0x00000] in <filename unknown>:0

 

 

 

 

Exception occured while saving contract parameter 'SCANsatCoverage1' in contract 'ScanKerbinLoRes':
System.NullReferenceException: Object reference not set to an instance of an object
  at ContractConfigurator.SCANsatCoverage.OnParameterSave (.ConfigNode node) [0x00000] in <filename unknown>:0
  at ContractConfigurator.Parameters.ContractConfiguratorParameter.OnSave (.ConfigNode node) [0x00000] in <filename unknown>:0

Share this post


Link to post
Share on other sites

Contract Configurator 1.11.1 does not work on KSP 1.1.2.

I'll get a new release out as soon as possible, and sort out the above bug reports (although anything that's on KSP 1.1.2 I'm ignoring, because it's clearly broken).

@AccidentalDisassembly  - I threw in a few more checks, try the 1.11.2 release (below) on KSP 1.1.2.

@wqt0806 - MCE and Contract Configurator have nothing to do with each other. :)

@QiJian - I need more info.  There used to be a conflict with Kopernicus and Scatterer that would cause that error.  Or you have RSS and a contract pack that doesn't support it.  Won't be able to say much more without logs.

Share this post


Link to post
Share on other sites

And release for KSP 1.1.2 is out.  Download here.

Contract Configurator 1.11.2

  • Recompile against KSP 1.1.2.
  • Possible fix to PartModuleUnlockedRequirement (thanks AccidentalDisassembly).
  • Fixed exception when generating autoAccept contracts.
Edited by nightingale

Share this post


Link to post
Share on other sites
9 minutes ago, nightingale said:

And release for KSP 1.1.2 is out.  Download here.

Contract Configurator 1.11.2

  • Recompile against KSP 1.1.2.
  • Possible fix to PartModuleUnlockedRequirement (thanks AccidentalDisassembly).
  • Fixed exception when generating autoAccept contracts.

      Still the same for me. LOG https://drive.google.com/file/d/0B_JwtUgADPooVjJMbzhmeURneDQ/view?usp=sharing

Share this post


Link to post
Share on other sites

@nightingale Following up on my previous post since it may be a non-issue for you. I uninstalled CC 1.11.1 and was still getting the UnityGUI exceptions although they were labeled 'unknown' now. Apparently they are being generated by the dev version of KCT: http://forum.kerbalspaceprogram.com/index.php?/topic/83342-105-kerbal-construction-time-132-mar-7-2016-unrapid-planned-assembly/&do=findComment&comment=2550508

Share this post


Link to post
Share on other sites

@QiJian - You have RSS and a bunch of contract packs that don't support RSS.  The historic missions one has two variants (one for RSS), and there are many SCANsat contract packs (the one that comes with SCANsat does work with RSS).

@KnotaiG - Reproduced, think it's something to do with 1.1.2, but not sure.  Raised #504.

Share this post


Link to post
Share on other sites

@nightingale - I can got the same error with CC 1.11.1 & KSP 1.1.1 so this is not a 1.1.2 error. I did not have this issue with CC 1.10.4 (Compiled it myself) with 1.1.1

I'm going to try and compile 1.10.4 against 1.1.2 and see if I get the error. But looking at the code nothing major really has changed on GitHub.

 

Yes I can compile against 1.1.2 with CC 1.10.4 and contracts for RT show up no errors.

Edited by KnotaiG
update

Share this post


Link to post
Share on other sites
Exception occured while loading contract parameter 'ReachSpecificOrbit' in contract 'CleverSat.CleverSatCore':
System.ArgumentOutOfRangeException: Argument is out of range.
Parameter name: index
  at System.Collections.Generic.List`1[Contracts.ContractParameter].get_Item (Int32 index) [0x00000] in <filename unknown>:0 
  at Contracts.ContractParameter.GetParameter (Int32 index) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.Parameters.VesselParameterDelegator.GetParamFromPath (System.String path) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.Parameters.VesselParameterDelegator.OnParameterLoad (.ConfigNode node) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.Parameters.ContractConfiguratorParameter.OnLoad (.ConfigNode node) [0x00000] in <filename unknown>:0 

Getting this now with the new KSP 1.1.2 and Contract Configurator 1.11.2

Share this post


Link to post
Share on other sites

OK, with 1.1.2 and new CConfigurator, the error I had before still occurred - UNTIL I removed GAP, which is what I think the problem was, but may have also been related to a part from UKS that was throwing an exception when loading and possibly wrecking everything.

Share this post


Link to post
Share on other sites
1 hour ago, Tossy64 said:

Exception occured while loading contract parameter 'ReachSpecificOrbit' in contract 'CleverSat.CleverSatCore':
System.ArgumentOutOfRangeException: Argument is out of range.
Parameter name: index
  at System.Collections.Generic.List`1[Contracts.ContractParameter].get_Item (Int32 index) [0x00000] in <filename unknown>:0 
  at Contracts.ContractParameter.GetParameter (Int32 index) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.Parameters.VesselParameterDelegator.GetParamFromPath (System.String path) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.Parameters.VesselParameterDelegator.OnParameterLoad (.ConfigNode node) [0x00000] in <filename unknown>:0 
  at ContractConfigurator.Parameters.ContractConfiguratorParameter.OnLoad (.ConfigNode node) [0x00000] in <filename unknown>:0 

Getting this now with the new KSP 1.1.2 and Contract Configurator 1.11.2

Oh bums. I was going to work on CleverSats tonight. Ah well, at least I know there is no point updating the version file just yet.

Share this post


Link to post
Share on other sites

Hello, I believe your new release was suppose to fix PartModuleTypeUnlocked error but it looks like the issue persists. Please let me know if you need more details.

 

ArgumentException: No PartModules found for type 'Antenna'.
  at ContractConfigurator.Validation.ValidatePartModuleType (System.String name) [0x00000] in <filename unknown>:0 

  at System.Linq.Enumerable.All[String] (IEnumerable`1 source, System.Func`2 predicate) [0x00000] in <filename unknown>:0 

  at ContractConfigurator.PartModuleTypeUnlockedRequirement+<>c.<LoadFromConfig>b__1_1 (System.Collections.Generic.List`1 l) [0x00000] in <filename unknown>:0 

  at ContractConfigurator.ConfigNodeUtil.ParseValue[List`1] (.ConfigNode configNode, System.String key, System.Action`1 setter, IContractConfiguratorFactory obj, System.Collections.Generic.List`1 defaultValue, System.Func`2 validation) [0x00000] in <filename unknown>:0 
UnityEngine.Debug:Internal_LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
ContractConfigurator.LoggingUtil:LogException(Exception)
ContractConfigurator.ConfigNodeUtil:ParseValue(ConfigNode, String, Action`1, IContractConfiguratorFactory, List`1, Func`2)
ContractConfigurator.ConfigNodeUtil:ParseValue(ConfigNode, String, Action`1, IContractConfiguratorFactory, Func`2)
ContractConfigurator.PartModuleTypeUnlockedRequirement:LoadFromConfig(ConfigNode)
ContractConfigurator.ContractRequirement:GenerateRequirement(ConfigNode, ContractType, ContractRequirement&, IContractConfiguratorFactory)
ContractConfigurator.ContractType:Load(ConfigNode)
ContractConfigurator.<LoadContractConfig>d__26:MoveNext()
ContractConfigurator.ContractConfigurator:Update()

Thanks

Share this post


Link to post
Share on other sites

I think this CC update causes an issue in the "Mission Control" building. It throws an exception when I try to exit the building

[EXC 20:20:13.291] NullReferenceException: Object reference not set to an instance of an object
	Contracts.Parameters.PartTest.OnSave (.ConfigNode node)
	Contracts.ContractParameter.Save (.ConfigNode node)
	Contracts.Contract.Save (.ConfigNode node)
	Contracts.ContractSystem.OnSave (.ConfigNode gameNode)
	ScenarioModule.Save (.ConfigNode node)
	ProtoScenarioModule..ctor (.ScenarioModule module)
	ScenarioRunner.GetUpdatedProtoModules ()
	Game.Updated ()
	GamePersistence.SaveGame (System.String saveFileName, System.String saveFolder, SaveMode saveMode)
	MCSceneSpawner.OnMCDespawn ()
	EventVoid.Fire ()
	MCDespawner.BtnExit ()
	UnityEngine.Events.InvokableCall.Invoke (System.Object[] args)
	UnityEngine.Events.InvokableCallList.Invoke (System.Object[] parameters)
	UnityEngine.Events.UnityEventBase.Invoke (System.Object[] parameters)
	UnityEngine.Events.UnityEvent.Invoke ()
	UnityEngine.UI.Button.Press ()
	UnityEngine.UI.Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData)
	UnityEngine.EventSystems.ExecuteEvents.Execute (IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData)
	UnityEngine.EventSystems.ExecuteEvents.Execute[IPointerClickHandler] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.EventFunction`1 functor)
	UnityEngine.EventSystems.EventSystem:Update()

 

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.