JedTech Posted January 2, 2017 Share Posted January 2, 2017 I swear this mod used to have a UI to manually toggle certain contract types off or on. But I can't seem to find it. Can anyone help? Quote Link to comment Share on other sites More sharing options...
steve_v Posted January 2, 2017 Share Posted January 2, 2017 8 minutes ago, JedTech said: I swear this mod used to have a UI to manually toggle certain contract types off or on. It does: It's moved to the stock difficulty settings page, and there's also a debug interface at Mod+F10. Quote Link to comment Share on other sites More sharing options...
WuphonsReach Posted January 4, 2017 Share Posted January 4, 2017 On 1/1/2017 at 6:45 PM, WuphonsReach said: 1. Is it possible to require a stationary (is this KEO?) orbit to be over KSC? 2. What is the difference between STATIONARY and SYNCHRONOUS for orbit types? 3. For the new parameters of AntennaTransmitPower and AntennaRelayPower, how are they used? I'm guessing PARAMETER { name = XYZ, type = AntennaRelayPower, minRelayPower = 0.0, maxRelayPower = 200.0 } 4. Without RemoteTech installed, is there any way to test KSC connectivity? 5. Can AllVessels().Where() retrieve only vessels with a specific parameter (e.g. has a specific part, or has AntennaRelayPower above some value)? Thanks to all who helped answer so far! 5. Dug back through the archives and found this more specific answer for checking whether a vessel has a specific part. Combined with the link to the Vessel methods from the wiki and I can figure out whether a particular world already has X number of vessels matching the contract requirements in orbit. 3. Is a bug in the wiki for HasAntenna. As shown in this previous post that explains that you need to use minAntennaPower instead of minPower in the config file. Working example here showing it in use. I haven't figured out a method or answer yet for: 1. Is it possible to require a stationary orbit to be over KSC? 4. Without RemoteTech installed, is there any way to test KSC connectivity? Quote Link to comment Share on other sites More sharing options...
severedsolo Posted January 4, 2017 Share Posted January 4, 2017 (edited) 13 hours ago, WuphonsReach said: 1. Is it possible to require a stationary orbit to be over KSC? Off the top of my head - what if you created a waypoint at KSC - then used Orbit (to get them to Stationary altitude) and VisitWaypoint (with distance set to that altitude +-5k or so) to ensure the player was at the right place. Wrap them in an "All" and use "disableOnStateChange" (I always forget whether it's true or false, but the one that flips the parameter to uncomplete if you move out of the requirements). Edited January 4, 2017 by severedsolo Quote Link to comment Share on other sites More sharing options...
rohanguard1 Posted January 5, 2017 Share Posted January 5, 2017 I noticed that in the newer versions of contract configurer I can't block unwanted contracts. I remember it used to be possible in 1.1.2, so why not now. Quote Link to comment Share on other sites More sharing options...
Waxing_Kibbous Posted January 5, 2017 Share Posted January 5, 2017 17 minutes ago, rohanguard1 said: I noticed that in the newer versions of contract configurer I can't block unwanted contracts. I remember it used to be possible in 1.1.2, so why not now. If you mean what I think you mean it's in your game settings now- while in a career go to settings then click the top button that takes you to the settings you initially set up, a CC tab should be available. Quote Link to comment Share on other sites More sharing options...
Errol Posted January 8, 2017 Share Posted January 8, 2017 I was just playing and a window came up asking me to paste this here: Exception occured while loading contract parameter 'PartValidation' in contract 'GAP.Wright-Glider': System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentException: 'seatExternalCmd' is not a valid Part. at ContractConfigurator.ConfigNodeUtil.ParsePartValue (System.String partName) [0x00000] in <filename unknown>:0 at ContractConfigurator.ConfigNodeUtil.ParseSingleValue[AvailablePart] (System.String key, System.String stringValue, Boolean allowExpression) [0x00000] in <filename unknown>:0 at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception&) at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0 at ContractConfigurator.ConfigNodeUtil.ParseValue[List`1] (.ConfigNode configNode, System.String key, Boolean allowExpression) [0x00000] in <filename unknown>:0 I was in the VAB trying to use ubiozur welding, and it had appeared that the game froze. I was in the middle of making edits to an existing craft in KCT, so I clicked the cancel edits button on the KCT window and was brought back to the space center, with that window up. Quote Link to comment Share on other sites More sharing options...
Jebs_SY Posted January 9, 2017 Share Posted January 9, 2017 (edited) @nightingale I wanted to ask, if these CC exceptions are harmless. Do I get them cause I removed a part mod? (Complete log aviable). I have top say this is a highly modded install but I keep a close eye on the errors and it runs crash free atm. Cause they are from a stream I can in theory find and show the video on the time where the errors occur, if that helps debugging. I had a NRE caused on "Tito Kerman" with Kerbalstats from the "Kick of Space Tourism (Tourism Plus)" mission, which I have reported here in detail. Maybe it is related? Spoiler [LOG 01:51:50.790] [Progress Tracking Parser] Progress Nodes Loaded... [ERR 01:51:52.867] Input is null for field 'title' in config node 'PARAM' at System.Environment.get_StackTrace() at ConfigNode.AddValue(System.String name, System.String value) at ContractConfigurator.Parameters.Docking.OnParameterSave(.ConfigNode node) at ContractConfigurator.Parameters.ContractConfiguratorParameter.OnSave(.ConfigNode node) at Contracts.ContractParameter.Save(.ConfigNode node) at Contracts.ContractParameter.Save(.ConfigNode node) at Contracts.Contract.Save(.ConfigNode node) at SSTUTools.RescueContractPartSelector.OnContractOffered(Contracts.Contract contract) at EventData`1[[Contracts.Contract, Assembly-CSharp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].Fire(Contracts.Contract data) at Contracts.Contract.SetState(State newState) at ContractConfigurator.ConfiguredContract.set_ContractState(State value) at ContractConfigurator.ContractPreLoader+<GenerateContract>d__33.MoveNext() at ContractConfigurator.ContractPreLoader+<ContractEnumerator>d__32.MoveNext() at ContractConfigurator.ContractPreLoader.Update() [LOG 01:52:20.358] [1/9/2017 1:52:20 AM] [TimeControl(2.50): ]: <Info> (TCGUI.onShowUI) - Unhiding GUI for Settings Lock [LOG 01:52:20.359] [UIMasterController]: ShowUI [LOG 01:52:20.360] Game Paused! [LOG 01:52:20.368] QuickGoTo(QStockToolbar)[1.31]: OnHide [LOG 01:52:51.423] Awarding 45000 funds to player for contract advance [LOG 01:53:09.805] [1/9/2017 1:53:09 AM] [TimeControl(2.50): ]: <Info> (TCGUI.onShowUI) - Unhiding GUI for Settings Lock [LOG 01:53:09.807] [UIMasterController]: ShowUI [LOG 01:53:09.809] Game Unpaused! [LOG 01:53:09.810] Flight State Captured [LOG 01:53:09.817] Saving Achievements Tree... [LOG 01:53:09.819] Saving Achievements Tree... [LOG 01:53:09.821] Saving Achievements Tree... [LOG 01:53:09.823] Saving Achievements Tree... [LOG 01:53:09.825] Saving Achievements Tree... [ERR 01:53:09.832] Input is null for field 'title' in config node 'PARAM' at System.Environment.get_StackTrace() at ConfigNode.AddValue(System.String name, System.String value) at ContractConfigurator.Parameters.Docking.OnParameterSave(.ConfigNode node) at ContractConfigurator.Parameters.ContractConfiguratorParameter.OnSave(.ConfigNode node) at Contracts.ContractParameter.Save(.ConfigNode node) at Contracts.ContractParameter.Save(.ConfigNode node) at Contracts.Contract.Save(.ConfigNode node) at ContractConfigurator.ContractPreLoader.OnSave(.ConfigNode node) at ScenarioModule.Save(.ConfigNode node) at ProtoScenarioModule..ctor(.ScenarioModule module) at ScenarioRunner.UpdateModules() at ScenarioRunner.GetUpdatedProtoModules() at Game.Updated() at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode) at MCSceneSpawner.OnMCDespawn() at EventVoid.Fire() at MCDespawner.BtnExit() at UnityEngine.Events.InvokableCall.Invoke(System.Object[] args) at UnityEngine.Events.InvokableCallList.Invoke(System.Object[] parameters) at UnityEngine.Events.UnityEventBase.Invoke(System.Object[] parameters) at UnityEngine.Events.UnityEvent.Invoke() at UnityEngine.UI.Button.Press() at UnityEngine.UI.Button.OnPointerClick(UnityEngine.EventSystems.PointerEventData eventData) at UnityEngine.EventSystems.ExecuteEvents.Execute(IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) at UnityEngine.EventSystems.ExecuteEvents.Execute(UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.EventFunction`1 functor) at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress(UnityEngine.EventSystems.MouseButtonEventData data) at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent(Int32 id) at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent() at UnityEngine.EventSystems.StandaloneInputModule.Process() at UnityEngine.EventSystems.EventSystem.Update() [LOG 01:53:09.838] QuickStart(QPersistent)[2.11]: OnSave 0d8cd759-8e9e-4570-bdf8-f20257849118 [LOG 01:53:09.840] DeepFreeze Scenario OnSave completed. [LOG 01:53:09.920] [MessageSystem] Save Messages [LOG 01:53:09.932] [KerbalStats] saving ext for Jebediah Kerman [LOG 01:53:09.934] from kerbals [LOG 01:53:09.935] [KerbalStats] saving ext for Bill Kerman [LOG 01:53:09.937] from kerbals [LOG 01:53:09.939] [KerbalStats] saving ext for Bob Kerman [LOG 01:53:09.941] from kerbals [LOG 01:53:09.943] [KerbalStats] saving ext for Valentina Kerman [LOG 01:53:09.945] from kerbals [LOG 01:53:09.946] [KerbalStats] saving ext for Jerdock Kerman [LOG 01:53:09.948] from kerbals [LOG 01:53:09.950] [KerbalStats] saving ext for Gertrix Kerman [LOG 01:53:09.952] from kerbals [LOG 01:53:09.953] [KerbalStats] saving ext for Elicine Kerman [LOG 01:53:09.955] from kerbals [LOG 01:53:09.957] [KerbalStats] saving ext for Edmy Kerman [LOG 01:53:09.959] from kerbals [LOG 01:53:09.962] [KerbalStats] saving ext for Nedgard Kerman [LOG 01:53:09.963] from kerbals [LOG 01:53:09.965] [KerbalStats] saving ext for Ladine Kerman [LOG 01:53:09.967] from kerbals [LOG 01:53:09.969] [KerbalStats] saving ext for Rosy Kerman [LOG 01:53:09.971] from kerbals [LOG 01:53:09.972] [KerbalStats] saving ext for Maltrey Kerman [LOG 01:53:09.974] from kerbals [LOG 01:53:09.976] [KerbalStats] saving ext for Sutrix Kerman [LOG 01:53:09.978] from kerbals [LOG 01:53:09.980] [KerbalStats] saving ext for Tomler Kerman [LOG 01:53:09.982] from kerbals [LOG 01:53:09.983] [KerbalStats] saving ext for Billorf Kerman [LOG 01:53:09.985] from kerbals [LOG 01:53:09.987] [KerbalStats] saving ext for Dilin Kerman [LOG 01:53:09.989] from kerbals [LOG 01:53:10.004] Game State Saved to saves/122-Twitch/persistent [LOG 01:53:10.008] [UIMasterController] RemoveCanvas:MissionControl [LOG 01:53:20.700] [ContractSystem]: Contract Conduct observational surveys of the Mun. is no longer being offered by REPOSoftTech [LOG 01:53:45.990] [1/9/2017 1:53:45 AM] [TimeControl(2.50): ]: <Info> (TCGUI.onShowUI) - Unhiding GUI for Settings Lock [LOG 01:53:45.992] [UIMasterController]: ShowUI [LOG 01:53:45.993] Game Paused! [LOG 01:53:52.807] Flight State Captured [LOG 01:53:52.814] Saving Achievements Tree... [LOG 01:53:52.816] Saving Achievements Tree... [LOG 01:53:52.818] Saving Achievements Tree... [LOG 01:53:52.819] Saving Achievements Tree... [LOG 01:53:52.822] Saving Achievements Tree... [ERR 01:53:52.828] Input is null for field 'title' in config node 'PARAM' at System.Environment.get_StackTrace() at ConfigNode.AddValue(System.String name, System.String value) at ContractConfigurator.Parameters.Docking.OnParameterSave(.ConfigNode node) at ContractConfigurator.Parameters.ContractConfiguratorParameter.OnSave(.ConfigNode node) at Contracts.ContractParameter.Save(.ConfigNode node) at Contracts.ContractParameter.Save(.ConfigNode node) at Contracts.Contract.Save(.ConfigNode node) at ContractConfigurator.ContractPreLoader.OnSave(.ConfigNode node) at ScenarioModule.Save(.ConfigNode node) at ProtoScenarioModule..ctor(.ScenarioModule module) at ScenarioRunner.UpdateModules() at ScenarioRunner.GetUpdatedProtoModules() at Game.Updated() at KSCPauseMenu.doSave(System.String filename) at KSCPauseMenu.<ConfirmDialog>m__830() at DialogGUIButton.OptionSelected() at DialogGUIButton.<Create>m__6F1() at UnityEngine.Events.InvokableCall.Invoke(System.Object[] args) at UnityEngine.Events.InvokableCallList.Invoke(System.Object[] parameters) at UnityEngine.Events.UnityEventBase.Invoke(System.Object[] parameters) at UnityEngine.Events.UnityEvent.Invoke() at UnityEngine.UI.Button.Press() at UnityEngine.UI.Button.OnPointerClick(UnityEngine.EventSystems.PointerEventData eventData) at UnityEngine.EventSystems.ExecuteEvents.Execute(IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) at UnityEngine.EventSystems.ExecuteEvents.Execute(UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.EventFunction`1 functor) at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress(UnityEngine.EventSystems.MouseButtonEventData data) at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent(Int32 id) at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent() at UnityEngine.EventSystems.StandaloneInputModule.Process() at UnityEngine.EventSystems.EventSystem.Update() [LOG 01:53:52.834] QuickStart(QPersistent)[2.11]: OnSave 0d8cd759-8e9e-4570-bdf8-f20257849118 [LOG 01:53:52.836] DeepFreeze Scenario OnSave completed. [LOG 01:53:52.911] [MessageSystem] Save Messages [LOG 01:53:52.922] [KerbalStats] saving ext for Jebediah Kerman [LOG 01:53:52.924] from kerbals There are some empty TITLE= *nothing* in my save game, but I assume this is normal? Spoiler PARAM { name = ReachDestination state = Incomplete disableOnStateChange = False values = 0,0,0,0,0 dest = 1 title = } EDIT: Seems like replacing all "title = *newline*" by "title = temptitle*newline*" in the CC section of my save game fixed the NRE. However, I assume it will generate more contracts with empty params titles. Is this by design? If yes, could these exceptions maybe be catched to not clutter the log? EDIT2: One thing that could mess with contracts maybe, that I have installed is the rescue pod fix. EDIT3: Might this line (missing title?) be the cause? Edited January 16, 2017 by Jebs_SY Quote Link to comment Share on other sites More sharing options...
william2002730 Posted January 9, 2017 Share Posted January 9, 2017 Ok so... the github link doesn't work for me, anyone can send me the download with any other methods? Any help will be very appreciated! Maybe try emailing me the mod? I'll share my email. Quote Link to comment Share on other sites More sharing options...
Jebs_SY Posted January 9, 2017 Share Posted January 9, 2017 (edited) @nightingale I've added some more information to my question regarding NRE 2 posts above. @william2002730 I've sent you a alternative download link. Edited January 9, 2017 by Jebs_SY Quote Link to comment Share on other sites More sharing options...
akardam Posted January 16, 2017 Share Posted January 16, 2017 I'm hoping a CC guru can help out here. My apologies for being a n00b, but, well, I'm a n00b. Here's what I'm trying to do. I want to build a simple contract to put a probe in orbit around Kerbin. The goal is, the lighter the probe, the higher the rewards. Here's what I have so far: CONTRACT_TYPE { name = TestMission title = Test Mission group = TestGroup description = Test Mission Description synopsis = Do it! completedMessage = Did it! targetBody = HomeWorld() maxSimultaneous = 1 PARAMETER { name = Mission type = VesselParameterGroup define = MyVessel PARAMETER { name = ReachState type = ReachState situation = ORBITING } PARAMETER { name = VesselMass type = VesselMass maxMass = 1 } } } The contract completes and gives the name of the craft in the contract window (in this case I've been using "Test Probe"). However, after many hours of combing through the wiki and forum posts, I'm at a loss as to how to access the mass of the vessel that was recorded by the VPG, much less how to incorporate that into a dynamic reward. So... any thoughts on if what I'm describing is possible, and if so how one might go about doing it? Many thanks. Quote Link to comment Share on other sites More sharing options...
rsparkyc Posted January 16, 2017 Share Posted January 16, 2017 (edited) I'm pretty new to trying to work on mods, but I figured I'd try to be proactive about some of the mods I'd like to see updated rather than putting up "when will this be ready?" posts. With that said, I'm trying to work on updating the RP-0 mod to use the latest Contract Configurator (see this issue: https://github.com/KSP-RO/RP-0/issues/571) When I start the game, I do a grep on the Player.log for "contract" to get any log messages that have to do with contract configurator. I was seeing messages like this in the log: ContractConfigurator.ContractGroup: CONTRACT_GROUP 'Milestones': No minVersion or older minVersion provided. It is recommended that the minVersion is set to at least 1.15.0 to turn important warnings for deprecated functionality into errors. I went through the CONTRACT_GROUP nodes, and added a minVersion of 1.22.2 (since that's what we're running on), however now I get the following message everywhere I changed that: ContractConfigurator.ContractConfigurator: Multiple assemblies with name 'ContractConfigurator' found! You can take a look at my config file here: https://github.com/rsparkyc/RP-0/blob/1.2_CCupdate/GameData/RP-0/Contracts/Groups.cfg 2 main questions: 1) Since we have nested CONTRACT_GROUP nodes, would it make sense for the child nodes to inherit properties like minVersion from the parent node, and not give a warning that I didn't supply a value? 2) What's up with the Multiple assemblies message? I thought maybe somewhere I was referencing another version of ContractConfigurator, but doing a grep in my GameData directory for "minVersion" shows only 1.22.2 Thanks! Edited January 16, 2017 by rsparkyc spelling helps Quote Link to comment Share on other sites More sharing options...
severedsolo Posted January 17, 2017 Share Posted January 17, 2017 (edited) On 16/01/2017 at 3:17 AM, akardam said: So... any thoughts on if what I'm describing is possible, and if so how one might go about doing it? Expressions are validated on contract generation, meaning you can't dynamically adjust them. (You need to know everything at the point the contract generates, not when it completes) What you may be able to do, though, is have an "Any" Parameter, and generate rewards based on a "Class" of probe (Not 100% sure this will work, but you can try). Something like this: PARAMETER { name = Mission type = VesselParameterGroup define = MyVessel PARAMETER { name = ReachState type = ReachState situation = ORBITING } PARAMETER { name = VesselClass type = Any PARAMETER { name = VesselMass type = VesselMass rewardFunds = 5000 minMass = 0.51 maxMass = 1.0 } PARAMETER { name = VesselMass type = VesselMass rewardFunds = 10000 maxMass = 0.5 } } } Edited January 17, 2017 by severedsolo Quote Link to comment Share on other sites More sharing options...
akardam Posted January 17, 2017 Share Posted January 17, 2017 8 hours ago, severedsolo said: Expressions are validated on contract generation, meaning you can't dynamically adjust them. (You need to know everything at the point the contract generates, not when it completes) What you may be able to do, though, is have an "Any" Parameter, and generate rewards based on a "Class" of probe (Not 100% sure this will work, but you can try). Something like this: OK, makes sense. I already had an idea along these lines for a backup, glad to get a second opinion/confirmation on it. I'm still fuzzy on the Vessel and VesselItentifier expression types, the Vessel() method/function, and their relation to Vessel IDs defined by VesselParameterGroup(s). Can anyone explain how I might access or act upon the properties of a Vessel ID that is captured by a VPG? In other words, how would one potentially use them other than defining in one VPG and using the vessel = assignment to make sure other VPGs only track said vessel? Quote Link to comment Share on other sites More sharing options...
severedsolo Posted January 17, 2017 Share Posted January 17, 2017 @akardam it may be easier if you explain what it is you are trying to do. If you are trying to access a VPG and then validate it against a set of expessions (the only thing I can think of where this would be useful off the top of my head), you'd do it like this (example taken from BaseRover in Bases and Stations): DATA { type = List<Vessel> requiredValue = false RoverCheck = [BaseRover].Where(r => r.CelestialBody() == @/targetBody1) } Quote Link to comment Share on other sites More sharing options...
akardam Posted January 18, 2017 Share Posted January 18, 2017 (edited) 10 hours ago, severedsolo said: @akardam it may be easier if you explain what it is you are trying to do. If you are trying to access a VPG and then validate it against a set of expessions (the only thing I can think of where this would be useful off the top of my head), you'd do it like this (example taken from BaseRover in Bases and Stations): DATA { type = List<Vessel> requiredValue = false RoverCheck = [BaseRover].Where(r => r.CelestialBody() == @/targetBody1) } I've been trolling through some of the other contract packs looking at how people did things, the one you mention above is a good example. I have kind of a chicken and the egg thing right now, in that I don't have anything specifically in mind (other than the mass thing above, which with your assistance I think I've figured out a way to do). Generally, I'm just trying to learn the syntax and musing on cool things I could do. Thanks for your help. I'll keep plugging away at it... Edited January 18, 2017 by akardam Must... close... parenthesis... Quote Link to comment Share on other sites More sharing options...
Enceos Posted January 20, 2017 Share Posted January 20, 2017 (edited) @nightingale Hi dude, would you please hint me which line could be creating this kind of requirement: The "Drive a Tour Bus for KSC!" blocks other contracts from the category. EDIT: Ok, found, thanks me CONTRACT_GROUP { name = Kerbal Space Program displayName = Kerbal Space Program minVersion = 1.20.3 agent = Kerbal Space Program maxSimultaneous = 1 0 maxCompletions = 0 sortKey = a4 } Edited January 20, 2017 by Enceos Quote Link to comment Share on other sites More sharing options...
akardam Posted January 22, 2017 Share Posted January 22, 2017 Another issue I've come across, which I'm not sure is by design, or I'm missing something, is that a CollectScience parameter inside a VesselParameterGroup doesn't seem to fire its defined completedMessage or any funds, science, or rep rewards. I have two test cases. First test case, no VPG, simple contract to get into orbit and transmit back a temperature scan. When I finish transmitting, I get the completed message, and the funds and science rewards: CONTRACT_TYPE { name = TestMission title = Test Mission group = TestGroup description = Test Mission Description synopsis = Do it! completedMessage = Did it! targetBody = HomeWorld() maxSimultaneous = 1 DATA { type = ScienceExperiment title = Desired Experiment desiredExperiment = temperatureScan } PARAMETER { name = ReachOrbit type = ReachState situation = ORBITING } PARAMETER { name = DesiredScience type = CollectScience title = Perform @/desiredExperiment.Name() situation = InSpaceLow experiment = @/desiredExperiment recoveryMethod = Transmit completedMessage = You did the science! rewardFunds = 1000 rewardScience = 10 } } The second test case wraps the ReachOrbit parameter in a VPG with a define line, and the DesiredScience parameter in a VPG with a vessel line. When I finish transmitting, I do not get the completed message defined inside the CollectScience block, and even watching the funds/rep/science window, I don't see funds or science increment by the given values (I've long since exhausted the actual transmit science for temp in LKO): CONTRACT_TYPE { name = TestMission title = Test Mission group = TestGroup description = Test Mission Description synopsis = Do it! completedMessage = Did it! targetBody = HomeWorld() maxSimultaneous = 1 DATA { type = ScienceExperiment title = Desired Experiment desiredExperiment = temperatureScan } PARAMETER { name = GoodOrbit type = VesselParameterGroup title = Good Orbit define = TestProbe PARAMETER { name = ReachOrbit type = ReachState situation = ORBITING } } PARAMETER { name = DoScience type = VesselParameterGroup title = Do Science vessel = TestProbe PARAMETER { name = DesiredScience type = CollectScience title = Perform @/desiredExperiment.Name() situation = InSpaceLow experiment = @/desiredExperiment recoveryMethod = Transmit completedMessage = You did the science! rewardFunds = 1000 rewardScience = 10 } } } I've tried other parameters (such as requiring the probe to have a solar panel) and they do complete within a VPG. So far CollectScience is the only parameter I've seen this issue with. Any ideas? Quote Link to comment Share on other sites More sharing options...
Luovahulluus Posted January 25, 2017 Share Posted January 25, 2017 (edited) I had some (maybe three or four) contracts pop into the available contracts list for maybe half a second. I have nearly 90 mods installed so it could be a conflict with another mod. Oh, and it would be nice if the "Listing of Contract Packs" from the beginning of this thread was updated. Quite a few of them are not updated to 1.2. And it would be even nicer, if the mod description would tell if it only supports the stock planets. Edited January 25, 2017 by Luovahulluus Quote Link to comment Share on other sites More sharing options...
NermNermNerm Posted February 1, 2017 Share Posted February 1, 2017 I'm generally enjoying the Contracts mods, but I got this crash upon completion of "Boot Camp" (for engineers): Quote Exception occured while saving ScenarioModule 'ContractVesselTracker': System.NullReferenceException: Object reference not set to an instance of an object at ContractConfigurator.Extensions+<>c__DisplayClass5_1.<GetHashes>b__1 (.ProtoPartSnapshot childPart) [0x00000] in <filename unknown>:0 at System.Linq.Enumerable+<CreateWhereIterator>c__Iterator1D`1[ProtoPartSnapshot].MoveNext () [0x00000] in <filename unknown>:0 at System.Linq.Enumerable.FirstOrDefault[ProtoPartSnapshot] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 at ContractConfigurator.Extensions+<GetHashes>d__5.MoveNext () [0x00000] in <filename unknown>:0 at System.Linq.Enumerable.Contains[UInt32] (IEnumerable`1 source, UInt32 value, IEqualityComparer`1 comparer) [0x00000] in <filename unknown>:0 at System.Linq.Enumerable.Contains[UInt32] (IEnumerable`1 source, UInt32 value) [0x00000] in <filename unknown>:0 at ContractConfigurator.ContractVesselTracker+<>c__DisplayClass15_0.<OnSave>b__1 (.Vessel v) [0x00000] in <filename unknown>:0 at System.Collections.Generic.List`1[Vessel].GetIndex (Int32 startIndex, Int32 count, System.Predicate`1 match) [0x00000] in <filename unknown>:0 at System.Collections.Generic.List`1[Vessel].Find (System.Predicate`1 match) [0x00000] in <filename unknown>:0 at ContractConfigurator.ContractVesselTracker.OnSave (.ConfigNode node) [0x00000] in <filename unknown>:0 There's a lot going on with this save w/r/t contracts that's bad, so... If I have a contract, exit the game, and come back, the contract will be gone. It seems to do with the game's auto-save feature. If I QuickSave and reload, the contract is not destroyed. I'm not being offered any Rescue contracts on this save. Pity, I really enjoy them. The Training vessel for Boot Camp sometimes appears below ground. I have ContractConfigurator, ContractPacks(Field Research & Kerbal Academy) installed. I also have USI Kolonization, IR, and some other unrelated mods. Quote Link to comment Share on other sites More sharing options...
Merkov Posted February 1, 2017 Share Posted February 1, 2017 54 minutes ago, NermNermNerm said: I'm generally enjoying the Contracts mods, but I got this crash upon completion of "Boot Camp" (for engineers): There's a lot going on with this save w/r/t contracts that's bad, so... If I have a contract, exit the game, and come back, the contract will be gone. It seems to do with the game's auto-save feature. If I QuickSave and reload, the contract is not destroyed. I'm not being offered any Rescue contracts on this save. Pity, I really enjoy them. The Training vessel for Boot Camp sometimes appears below ground. I have ContractConfigurator, ContractPacks(Field Research & Kerbal Academy) installed. I also have USI Kolonization, IR, and some other unrelated mods. If I recall correctly, Kerbal Academy disables (or used to disable) the stock rescue contracts. You should be able to see if they are enabled or not through the difficulty settings -> Contracts window. If they are disabled, a simple check in the box should re-enable them again. Seems like most of your other issues are also related to Kerbal Academy, so it may be prudent to ask in that thread so the contract pack's author can be alerted. Quote Link to comment Share on other sites More sharing options...
Liquid5n0w Posted February 2, 2017 Share Posted February 2, 2017 I got a popup on load with this exception: Exception occured while loading contract 'BasesandStations.StationCore': System.NullReferenceException: Object reference not set to an instance of an object at ContractConfigurator.ConfigNodeUtil+<>c.<ParseTypeValue>b__36_0 (System.Reflection.Assembly a) [0x00000] in <filename unknown>:0 at System.Linq.SortSequenceContext`2[System.Reflection.Assembly,System.Int32].Initialize (System.Reflection.Assembly[] elements) [0x00000] in <filename unknown>:0 at System.Linq.QuickSort`1[System.Reflection.Assembly].PerformSort () [0x00000] in <filename unknown>:0 at System.Linq.QuickSort`1+<Sort>c__Iterator21[System.Reflection.Assembly].MoveNext () [0x00000] in <filename unknown>:0 at ContractConfigurator.ConfigNodeUtil.ParseTypeValue (System.String name) [0x00000] in <filename unknown>:0 at ContractConfigurator.ConfiguredContract.OnLoad (.ConfigNode node) [0x00000] in <filename unknown>:0 Anything else I can do to help with it? I have been having problems with disappearing contracts on load, I think related to QuickStart, a mod that loads directly into the game. I think it only happens when loading to a craft instead of the space center. Quote Link to comment Share on other sites More sharing options...
LatiMacciato Posted February 7, 2017 Share Posted February 7, 2017 (edited) Alright, I have the tourism and the field pack, got 4 contracts that I can't accept but maxed out mission control ergo I should be able to do so, right? The slider at the setting doesn't raise any limits (it's at 2), it stays max trivial = 8, max significant = 6, max exceptional = 4. What am I missing? ty Edited February 7, 2017 by LatiMacciato Quote Link to comment Share on other sites More sharing options...
Merkov Posted February 7, 2017 Share Posted February 7, 2017 7 hours ago, LatiMacciato said: Alright, I have the tourism and the field pack, got 4 contracts that I can't accept but maxed out mission control ergo I should be able to do so, right? The slider at the setting doesn't raise any limits (it's at 2), it stays max trivial = 8, max significant = 6, max exceptional = 4. What am I missing? ty I just woke up, so I apologise if I'm misunderstanding you, but are you saying that you max trivial, significant, and exceptional are not going up? If so, I believe those numbers are based on your Reputation level. The higher your rep, the more and better contracts you can take. Quote Link to comment Share on other sites More sharing options...
LatiMacciato Posted February 7, 2017 Share Posted February 7, 2017 (edited) 4 hours ago, Merkov said: I just woke up, so I apologise if I'm misunderstanding you, but are you saying that you max trivial, significant, and exceptional are not going up? If so, I believe those numbers are based on your Reputation level. The higher your rep, the more and better contracts you can take. ty for reply, dug into my persistent.sav and assuming I'm currently at 35.7892952% reputation, so far I might just need more work to climb up: Spoiler SCENARIO { name = Reputation scene = 7, 8, 5, 6 rep = 35.7892952 } Thing is, it feels like the "never expiring" contracts are sorta blocking a slot. Don't ge me wrong here .. I just might misunderstand the mod's mechanic .. and if the rep is required for a higher number of max accepted contracts that's totally ok with me. The slider in the options that shall multiply max active contracts is not multiplying for me (possibly because I started over and have some contracts that are still mandatory for early career game explorations). ty for your help EDIT: just noticed I currently can accept 1 more trivial it climbed from 8 to 9! YAY! Edited February 7, 2017 by LatiMacciato Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.