HawkEngineer Posted December 21, 2022 Share Posted December 21, 2022 I am working on some custom contracts and wondering where I could get the full available for the PartValidation parameter. In particular, I wanted to see the full list for the partModule and partModuleType options. Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted December 21, 2022 Share Posted December 21, 2022 11 minutes ago, HawkEngineer said: wondering where I could get the full available for the PartValidation parameter Everything is in the wiki https://github.com/jrossignol/ContractConfigurator/wiki/PartValidation-Parameter Quote Link to comment Share on other sites More sharing options...
HawkEngineer Posted December 21, 2022 Share Posted December 21, 2022 25 minutes ago, Caerfinon said: Everything is in the wiki https://github.com/jrossignol/ContractConfigurator/wiki/PartValidation-Parameter Thanks for the response, just one follow-up. I was reviewing the wiki and for for partModuleType, the only values allowed are Antenna, Battery, Dock, Generator, Grapple, Wheel? For PartModules, the only examples include ModuleReactionWheel and ModuleSAS. Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted December 21, 2022 Share Posted December 21, 2022 21 minutes ago, HawkEngineer said: partModuleType these are defined by the game in ContractDefs. See https://www.kerbalspaceprogram.com/ksp/api/class_fine_print_1_1_contract_defs.html There are only those. So this type of validation not so useful. 22 minutes ago, HawkEngineer said: PartModules Any valid PartModule will do as long as it is loaded from stock or a mod at startup. The wiki ones are just two examples. Quote Link to comment Share on other sites More sharing options...
shoe7ess Posted January 24, 2023 Share Posted January 24, 2023 I just noticed on my first EVA science collection that I have a lot of warnings in the log about "<scienceexperiment> is unknown, assuming a standard experiment". Most start with the suffix "bd" (maybe BDB?) and the other are from station science "rocketFuels" "advFuels" etc. I can not find the station science experiments, so I'm wondering if I should take out that contract pack and stick to the contracts from the mod, but it seems so cheaty that my EVA gives me like 17 experiments. The error log is: KSP.log I'm sure it's because the contract packs are old and the science experiments it's looking for don't exist, but I can't find any sciencedef file or something to remove or add the experiments. Any help is much appreciated. If there's another log I should post let me know. Quote Link to comment Share on other sites More sharing options...
bolttanker Posted January 27, 2023 Share Posted January 27, 2023 hey is there a way to make it that i can take unlimited contracts would be a nice option is settings Quote Link to comment Share on other sites More sharing options...
Brigadier Posted January 28, 2023 Share Posted January 28, 2023 2 hours ago, bolttanker said: hey is there a way to make it that i can take unlimited contracts It's called Sandbox mode Quote Link to comment Share on other sites More sharing options...
WhitestWizard Posted March 9, 2023 Share Posted March 9, 2023 Has anyone else experienced any issues with toggling the orbit and waypoints in the tracking station recently? I genuinely thought this was a stock feature and found it very valuable. However with a clean install it doesn't appear to toggle in real time only on a scene change. Quote Link to comment Share on other sites More sharing options...
UltraJohn Posted March 13, 2023 Share Posted March 13, 2023 Hi, I got a bunch of these errors: Spoiler [ERR 02:49:36.019] ContractConfigurator.RemoteTech.HasAntennaFactory: CONTRACT_TYPE 'OWR_DestinationHell', PARAMETER 'HasAntenna' of type 'HasAntenna': Error parsing antennaType [EXC 02:49:36.021] ArgumentException: Requested value 'TRANSMIT' was not found. System.Enum+EnumResult.SetFailure (System.Enum+ParseFailureKind failure, System.String failureMessageID, System.Object failureMessageFormatArgument) (at <9577ac7a62ef43179789031239ba8798>:0) System.Enum.TryParseEnum (System.Type enumType, System.String value, System.Boolean ignoreCase, System.Enum+EnumResult& parseResult) (at <9577ac7a62ef43179789031239ba8798>:0) System.Enum.Parse (System.Type enumType, System.String value, System.Boolean ignoreCase) (at <9577ac7a62ef43179789031239ba8798>:0) ContractConfigurator.ExpressionParser.EnumExpressionParser`1[T].ParseIdentifier (ContractConfigurator.ExpressionParser.BaseParser+Token token) (at <7cf636bf2f2f4038af6634d8e4f57459>:0) ContractConfigurator.ExpressionParser.ExpressionParser`1[T].ParseVarOrIdentifier (ContractConfigurator.ExpressionParser.BaseParser+Token token) (at <7cf636bf2f2f4038af6634d8e4f57459>:0) ContractConfigurator.ExpressionParser.ExpressionParser`1[T].ParseSimpleStatement[TResult] () (at <7cf636bf2f2f4038af6634d8e4f57459>:0) ContractConfigurator.ExpressionParser.ExpressionParser`1[T].ParseStatementInner[TResult] () (at <7cf636bf2f2f4038af6634d8e4f57459>:0) ContractConfigurator.ExpressionParser.ExpressionParser`1[T].ParseStatement[TResult] () (at <7cf636bf2f2f4038af6634d8e4f57459>:0) ContractConfigurator.ExpressionParser.ExpressionParser`1[T].ParseExpression (System.String key, System.String expression, ContractConfigurator.ExpressionParser.DataNode dataNode) (at <7cf636bf2f2f4038af6634d8e4f57459>:0) Rethrow as Exception: Error parsing statement. Error occurred near '*': TRANSMIT ........* <-- HERE ContractConfigurator.ExpressionParser.ExpressionParser`1[T].ParseExpression (System.String key, System.String expression, ContractConfigurator.ExpressionParser.DataNode dataNode) (at <7cf636bf2f2f4038af6634d8e4f57459>:0) ContractConfigurator.ConfigNodeUtil.ParseSingleValue[T] (System.String key, System.String stringValue, System.Boolean allowExpression) (at <7cf636bf2f2f4038af6634d8e4f57459>:0) ContractConfigurator.ConfigNodeUtil.ParseValue[T] (ConfigNode configNode, System.String key, System.Boolean allowExpression) (at <7cf636bf2f2f4038af6634d8e4f57459>:0) System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at <9577ac7a62ef43179789031239ba8798>:0) Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation. System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at <9577ac7a62ef43179789031239ba8798>:0) System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at <9577ac7a62ef43179789031239ba8798>:0) ContractConfigurator.ConfigNodeUtil.ParseValue[T] (ConfigNode configNode, System.String key, System.Boolean allowExpression) (at <7cf636bf2f2f4038af6634d8e4f57459>:0) ContractConfigurator.ConfigNodeUtil.ParseValue[T] (ConfigNode configNode, System.String key, System.Action`1[T] setter, ContractConfigurator.IContractConfiguratorFactory obj, T defaultValue, System.Func`2[T,TResult] validation) (at <7cf636bf2f2f4038af6634d8e4f57459>:0) UnityEngine.DebugLogHandler:LogException(Exception, Object) ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object) UnityEngine.Debug:LogException(Exception) ContractConfigurator.LoggingUtil:LogException(Exception) ContractConfigurator.ConfigNodeUtil:ParseValue(ConfigNode, String, Action`1, IContractConfiguratorFactory, Nullable`1, Func`2) ContractConfigurator.ConfigNodeUtil:ParseValue(ConfigNode, String, Action`1, IContractConfiguratorFactory, Nullable`1) ContractConfigurator.RemoteTech.HasAntennaFactory:Load(ConfigNode) ContractConfigurator.ParameterFactory:GenerateParameterFactory(ConfigNode, ContractType, ParameterFactory&, ParameterFactory) ContractConfigurator.ContractType:Load(ConfigNode) ContractConfigurator.<LoadContractTypeConfig>d__31:MoveNext() ContractConfigurator.<FinalizeContractTypeLoad>d__30:MoveNext() UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr) KSP.log Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted March 14, 2023 Share Posted March 14, 2023 8 hours ago, John007qwe said: I got a bunch of these errors You should post the contract.cfg file that is causing the error to check that syntax is proper. Also you should tun on contract debugging. See the file ContractConfigurator.cfg.default in GameData/ContractConfiguator folder for instructions to enable debug logging. It doesn't seem to like a number of the "OWR" contracts that fail on similar parsing errors [ERR 02:49:36.050] ContractConfigurator.RemoteTech.HasAntennaFactory: CONTRACT_TYPE 'OWR_GalacticCandy', PARAMETER 'HasAntenna' of type 'HasAntenna': Error parsing antennaType [EXC 02:49:36.052] ArgumentException: Requested value 'TRANSMIT' was not found. Could be a possible CC conflict with Remotetech. Quote Link to comment Share on other sites More sharing options...
UltraJohn Posted March 14, 2023 Share Posted March 14, 2023 15 hours ago, Caerfinon said: You should post the contract.cfg file that is causing the error to check that syntax is proper. Also you should tun on contract debugging. See the file ContractConfigurator.cfg.default in GameData/ContractConfiguator folder for instructions to enable debug logging. It doesn't seem to like a number of the "OWR" contracts that fail on similar parsing errors [ERR 02:49:36.050] ContractConfigurator.RemoteTech.HasAntennaFactory: CONTRACT_TYPE 'OWR_GalacticCandy', PARAMETER 'HasAntenna' of type 'HasAntenna': Error parsing antennaType [EXC 02:49:36.052] ArgumentException: Requested value 'TRANSMIT' was not found. Could be a possible CC conflict with Remotetech. Well I turned on the debugger file, but I'm not sure what I should be looking for? I don't see anything change in that regard. I would open the ingame CC overlay, but it doesn't open when I hit alt+f10 for some reason. Anyway, I think the error might have something to do with the OtherWorldsReboot (OWR) contracts, as I recently just installed this planet pack. Here's one of the contract files, which I think might be the issue as the exceptions seem to point to these contract names. StellarExplorationCercani.cfg: Spoiler CONTRACT_TYPE { name = OWR_OrangeCandle group = OWR_StellarExplorationCercani sortKey = 001 title = #LOC_OWR_Contract_OrangeCandle_Title description = #LOC_OWR_Contract_OrangeCandle_Description genericDescription = #LOC_OWR_Contract_OrangeCandle_GenericDescription synopsis = #LOC_OWR_Contract_OrangeCandle_GenericDescription completedMessage = #LOC_OWR_Contract_OrangeCandle_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Significant rewardFunds = 50000.0 rewardScience = 100.0 rewardReputation = 10.0 advanceFunds = 20000.0 REQUIREMENT { name = PartUnlocked type = PartUnlocked part = InfraredTelescope } PARAMETER { name = NewVessel type = NewVessel } PARAMETER { name = Orbit type = Orbit minAltitude = 100000 targetBody = Sun() } PARAMETER { name = HasAntenna type = HasAntenna antennaType = TRANSMIT minAntennaPower = 100.0 } MODULE { name = ModuleScienceExperiment label = Experiment experimentID = infraredTelescope } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } CONTRACT_TYPE { name = OWR_DreamsOfTheUnknown group = OWR_StellarExplorationCercani sortKey = 002 title = #LOC_OWR_Contract_DreamsOfTheUnknown_Title description = #LOC_OWR_Contract_DreamsOfTheUnknown_Description genericDescription = #LOC_OWR_Contract_DreamsOfTheUnknown_GenericDescription synopsis = #LOC_OWR_Contract_DreamsOfTheUnknown_GenericDescription completedMessage = #LOC_OWR_Contract_DreamsOfTheUnknown_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 1000000.0 rewardScience = 500.0 rewardReputation = 85.0 advanceFunds = 200000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_OrangeCandle minCount = 1 } PARAMETER { name = ReachState type = ReachState targetBody = Cercani maxAltitude = 1350000000000 } PARAMETER { name = HasAntenna type = HasAntenna minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } //------------------------- // Troni Contracts //------------------------- CONTRACT_TYPE { name = OWR_Cercani_b group = OWR_StellarExplorationCercani sortKey = 010 title = #LOC_OWR_Contract_Cercani_b_Title description = #LOC_OWR_Contract_Cercani_b_Description genericDescription = #LOC_OWR_Contract_Cercani_b_GenericDescription synopsis = #LOC_OWR_Contract_Cercani_b_GenericDescription completedMessage = #LOC_OWR_Contract_Cercani_b_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 500000.0 rewardScience = 250.0 rewardReputation = 50.0 advanceFunds = 100000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_DreamsOfTheUnknown minCount = 1 } PARAMETER { name = ReachState type = ReachState targetBody = Troni minAltitude = 0 } PARAMETER { name = HasAntenna type = HasAntenna minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } CONTRACT_TYPE { name = OWR_DestinationHell group = OWR_StellarExplorationCercani sortKey = 011 title = #LOC_OWR_Contract_DestinationHell_Title description = #LOC_OWR_Contract_DestinationHell_Description genericDescription = #LOC_OWR_Contract_DestinationHell_GenericDescription synopsis = #LOC_OWR_Contract_DestinationHell_GenericDescription completedMessage = #LOC_OWR_Contract_DestinationHell_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 750000.0 rewardScience = 400.0 rewardReputation = 80.0 advanceFunds = 250000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_Cercani_b minCount = 1 hideChildren = true } BEHAVIOUR { name = OrbitGenerator type = OrbitGenerator FIXED_ORBIT { targetBody = Troni ORBIT { SMA = 686750 ECC = 0.75 INC = 85 MNA = 0 LAN = 1.23825 LPE = -65 EPH = 0 REF = 1 } } } PARAMETER { name = Sequence type = Sequence failWhenCompleteOutOfOrder = false PARAMETER { name = ReachSpecificOrbit type = ReachSpecificOrbit index = 0 deviationWindow = 5.0 } PARAMETER { name = All type = All PARAMETER { name = CollectScience1 type = CollectScience targetBody = Troni experiment = gravityScan recoveryMethod = None } PARAMETER { name = CollectScience2 type = CollectScience targetBody = Troni experiment = magnetometer recoveryMethod = None } PARAMETER { name = CollectScience3 type = CollectScience targetBody = Troni experiment = temperatureScan recoveryMethod = None } } } PARAMETER { name = HasAntenna type = HasAntenna antennaType = TRANSMIT minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } //------------------------- // Vassa Contracts //------------------------- CONTRACT_TYPE { name = OWR_Cercani_c group = OWR_StellarExplorationCercani sortKey = 020 title = #LOC_OWR_Contract_Cercani_c_Title description = #LOC_OWR_Contract_Cercani_c_Description genericDescription = #LOC_OWR_Contract_Cercani_c_GenericDescription synopsis = #LOC_OWR_Contract_Cercani_c_GenericDescription completedMessage = #LOC_OWR_Contract_Cercani_c_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 500000.0 rewardScience = 250.0 rewardReputation = 50.0 advanceFunds = 100000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_DreamsOfTheUnknown minCount = 1 } PARAMETER { name = ReachState type = ReachState targetBody = Vassa minAltitude = 0 } PARAMETER { name = HasAntenna type = HasAntenna minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } CONTRACT_TYPE { name = OWR_FrozenSun group = OWR_StellarExplorationCercani sortKey = 021 title = #LOC_OWR_Contract_FrozenSun_Title description = #LOC_OWR_Contract_FrozenSun_Description genericDescription = #LOC_OWR_Contract_FrozenSun_GenericDescription synopsis = #LOC_OWR_Contract_FrozenSun_GenericDescription completedMessage = #LOC_OWR_Contract_FrozenSun_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 750000.0 rewardScience = 500.0 rewardReputation = 80.0 advanceFunds = 250000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_Cercani_c minCount = 1 hideChildren = true } PARAMETER { name = ReachSpecificOrbit type = ReachSpecificOrbit index = 0 deviationWindow = 5.0 } BEHAVIOUR { name = OrbitGenerator type = OrbitGenerator FIXED_ORBIT { targetBody = Vassa ORBIT { SMA = 686750 ECC = 0.75 INC = 85 MNA = 0 LAN = 1.23825 LPE = -65 EPH = 0 REF = 1 } } } PARAMETER { name = CollectScience type = CollectScience targetBody = Vassa situation = FlyingHigh experiment = barometerScan recoveryMethod = RecoverOrTransmit } PARAMETER { name = CollectScience type = CollectScience targetBody = Vassa situation = FlyingHigh experiment = atmosphereAnalysis recoveryMethod = RecoverOrTransmit } PARAMETER { name = HasAntenna type = HasAntenna antennaType = TRANSMIT minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } //------------------------- // Pequar Contracts //------------------------- CONTRACT_TYPE { name = OWR_Cercani_d group = OWR_StellarExplorationCercani sortKey = 030 title = #LOC_OWR_Contract_Cercani_d_Title description = #LOC_OWR_Contract_Cercani_d_Description genericDescription = #LOC_OWR_Contract_Cercani_d_GenericDescription synopsis = #LOC_OWR_Contract_Cercani_d_GenericDescription completedMessage = #LOC_OWR_Contract_Cercani_d_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 500000.0 rewardScience = 250.0 rewardReputation = 50.0 advanceFunds = 100000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_DreamsOfTheUnknown minCount = 1 } PARAMETER { name = ReachState type = ReachState targetBody = Pequar minAltitude = 0 } PARAMETER { name = HasAntenna type = HasAntenna minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } CONTRACT_TYPE { name = OWR_SistersOfTheSands group = OWR_StellarExplorationCercani sortKey = 031 title = #LOC_OWR_Contract_SistersOfTheSands_Title description = #LOC_OWR_Contract_SistersOfTheSands_Description genericDescription = #LOC_OWR_Contract_SistersOfTheSands_GenericDescription synopsis = #LOC_OWR_Contract_SistersOfTheSands_GenericDescription completedMessage = #LOC_OWR_Contract_SistersOfTheSands_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 750000.0 rewardScience = 450.0 rewardReputation = 80.0 advanceFunds = 250000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_Cercani_d minCount = 1 hideChildren = true } BEHAVIOUR { name = OrbitGenerator type = OrbitGenerator FIXED_ORBIT { targetBody = Pequar ORBIT { SMA = 12456000 ECC = 0.6 INC = 23 MNA = 0 LAN = -1.1 LPE = 2 EPH = 0 REF = 1 } } } PARAMETER { name = Sequence type = Sequence failWhenCompleteOutOfOrder = false PARAMETER { name = ReachSpecificOrbit type = ReachSpecificOrbit index = 0 deviationWindow = 5.0 } PARAMETER { name = All type = All PARAMETER { name = CollectScience1 type = CollectScience targetBody = Pequar experiment = gravityScan recoveryMethod = None } PARAMETER { name = CollectScience2 type = CollectScience targetBody = Pequar experiment = magnetometer recoveryMethod = None } } } PARAMETER { name = HasAntenna type = HasAntenna antennaType = TRANSMIT minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } //------------------------- // Nienna Contracts //------------------------- CONTRACT_TYPE { name = OWR_Cercani_e group = OWR_StellarExplorationCercani sortKey = 040 title = #LOC_OWR_Contract_Cercani_e_Title description = #LOC_OWR_Contract_Cercani_e_Description genericDescription = #LOC_OWR_Contract_Cercani_e_GenericDescription synopsis = #LOC_OWR_Contract_Cercani_e_GenericDescription completedMessage = #LOC_OWR_Contract_Cercani_e_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 500000.0 rewardScience = 250.0 rewardReputation = 50.0 advanceFunds = 100000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_DreamsOfTheUnknown minCount = 1 } PARAMETER { name = ReachState type = ReachState targetBody = Nienna minAltitude = 0 } PARAMETER { name = HasAntenna type = HasAntenna minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } CONTRACT_TYPE { name = OWR_GalacticCandy group = OWR_StellarExplorationCercani sortKey = 041 title = #LOC_OWR_Contract_GalacticCandy_Title description = #LOC_OWR_Contract_GalacticCandy_Description genericDescription = #LOC_OWR_Contract_GalacticCandy_GenericDescription synopsis = #LOC_OWR_Contract_GalacticCandy_GenericDescription completedMessage = #LOC_OWR_Contract_GalacticCandy_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 750000.0 rewardScience = 450.0 rewardReputation = 80.0 advanceFunds = 250000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_Cercani_e minCount = 1 hideChildren = true } PARAMETER { name = Sequence type = Sequence failWhenCompleteOutOfOrder = false PARAMETER { name = ReachStateOrbit type = ReachState targetBody = Nienna situation = ORBITING minAltitude = 300000 } PARAMETER { name = Flyby type = Any PARAMETER { name = ReachStateFlybyKevari type = ReachState targetBody = Kevari situation = ESCAPING minAltitude = 0 minRateOfClimb = 0 } PARAMETER { name = ReachStateFlybyCrons type = ReachState targetBody = Crons situation = ESCAPING minAltitude = 0 minRateOfClimb = 0 } PARAMETER { name = ReachStateFlybyNiko type = ReachState targetBody = Niko situation = ESCAPING minAltitude = 0 minRateOfClimb = 0 } } } PARAMETER { name = HasAntenna type = HasAntenna antennaType = TRANSMIT minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } //------------------------- // Prima-Secunda Contracts //------------------------- CONTRACT_TYPE { name = OWR_Cercani_f group = OWR_StellarExplorationCercani sortKey = 050 title = #LOC_OWR_Contract_Cercani_f_Title description = #LOC_OWR_Contract_Cercani_f_Description genericDescription = #LOC_OWR_Contract_Cercani_f_GenericDescription synopsis = #LOC_OWR_Contract_Cercani_f_GenericDescription completedMessage = #LOC_OWR_Contract_Cercani_f_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 500000.0 rewardScience = 250.0 rewardReputation = 50.0 advanceFunds = 100000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_DreamsOfTheUnknown minCount = 1 } PARAMETER { name = ReachState type = ReachState targetBody = PrimaSecunda minAltitude = 0 } PARAMETER { name = HasAntenna type = HasAntenna minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } CONTRACT_TYPE { name = OWR_WaltzOfIce group = OWR_StellarExplorationCercani sortKey = 051 title = #LOC_OWR_Contract_WaltzOfIce_Title description = #LOC_OWR_Contract_WaltzOfIce_Description genericDescription = #LOC_OWR_Contract_WaltzOfIce_GenericDescription synopsis = #LOC_OWR_Contract_WaltzOfIce_GenericDescription completedMessage = #LOC_OWR_Contract_WaltzOfIce_Completion minExpiry = 0.0 maxExpiry = 0.0 deadline = 0 cancellable = false declinable = false maxCompletions = 1 maxSimultaneous = 1 prestige = Exceptional rewardFunds = 750000.0 rewardScience = 400.0 rewardReputation = 80.0 advanceFunds = 250000.0 REQUIREMENT { name = CompleteContract type = CompleteContract contractType = OWR_Cercani_f minCount = 1 hideChildren = true } PARAMETER { name = CollectSciencePrima type = CollectScience targetBody = Prima situation = InSpaceLow experiment = temperatureScan recoveryMethod = RecoverOrTransmit } PARAMETER { name = CollectScienceSecunda type = CollectScience targetBody = Secunda situation = InSpaceLow experiment = temperatureScan recoveryMethod = RecoverOrTransmit } PARAMETER { name = HasAntenna type = HasAntenna antennaType = TRANSMIT minAntennaPower = 100.0 } PARAMETER { name = HasResource type = HasResource resource = ElectricCharge } } I also noticed this error: [ERR 16:53:45.735] ContractConfigurator.ParameterFactory: CONTRACT_TYPE 'AS_Jool_Monolith', PARAMETER 'Monolith' of type 'Monolith': Unknown parameter 'Monolith'. Which I think is from Anomaly Surveyor contract pack if I'm not mistaken. Here's Jool_Monolith.cfg: Spoiler // Contract for the Jool monolith anomaly. // Author: nightingale CONTRACT_TYPE { name = AS_Jool_Monolith group = AnomalySurveyor sortKey = 05.00 genericTitle = Undiscovered anomaly near Jool genericDescription = If we mess around with things that shouldn't be messed with, we may end up somewhere interesting. title = Investigate the monolith signal at Jool description = We've traced latest monolith signal to Jool. We don't know exactly where in the Jool system, but we're confident that if you can make it there we'll be able to figure it out. synopsis = Find out what's in the Jool system. completedMessage = Well, that was certainly interesting... // Level 3 prestige prestige = Exceptional targetBody = Jool // Always offered by the Anomaly Surveyor Group agent = Anomaly Surveyor Group // Can only do this contract once maxCompletions = 1 // Contract rewards rewardFunds = 200000.0 rewardScience = 40.0 rewardReputation = 8.6 PARAMETER { name = Sequence type = Sequence title = Investigate the situation hiddenParameter = Monolith PARAMETER { name = VesselParameterGroup type = VesselParameterGroup define = Discovery One PARAMETER { name = HasCrew type = HasCrew minCrew = 1 trait = Pilot } PARAMETER { name = HasCrew type = HasCrew minCrew = 1 trait = Scientist } PARAMETER { name = ReachState type = ReachState situation = ORBITING } } PARAMETER { name = Rendezvous type = Rendezvous title = Approach within 20km of the unknown object distance = 20000 vessel = Discovery One vessel = Monolith } PARAMETER { name = Monolith type = Monolith } } BEHAVIOUR { type = DialogBox DIALOG_BOX { title = The Star Jeb is Born condition = PARAMETER_COMPLETED parameter = Monolith position = CENTER width = 0.2 IMAGE { url = ContractPacks/AnomalySurveyor/Images/starjeb.dds.noload } BREAK { } TEXT { text = And so it was that $starJebName became an immortal being known as "The Star Jeb". After the Star Jeb's transcendence, the Jool monolith disappeared - no one knows if it will ever reappear.\n\nAs for the Star Jeb, they have the ability to advance Kerbal science and the Kerbal Space Program to great new heights, and yet they've done absolutely nothing.\n\nIn fact, rumor has it that they haven't even called their mother. fontSize = 16 } } DIALOG_BOX { condition = PARAMETER_COMPLETED parameter = Monolith KERBAL { } TEXT { text = $starJebName.FirstWord() is coming back...\n\nRight? } } } BEHAVIOUR { name = SpawnVessel type = SpawnVessel deferVesselCreation = true VESSEL { name = Monolith craftURL = ContractPacks/AnomalySurveyor/Monolith/Monolith.craft vesselType = Unknown owned = False ORBIT { SMA = 8001000.30496466 ECC = 7.42530592330278E-06 INC = 0 LPE = 90.5321508078686 LAN = 102.402138847893 MNA = 1.56146499268263 EPH = 446551.435125314 REF = 8 } } } REQUIREMENT { type = Any title = Must have visited similar anomalies, and triggered something unexpected hideChildren = true REQUIREMENT { type = CompleteContract contractType = AS_Mun_Monolith.0 } REQUIREMENT { type = CompleteContract contractType = AS_Mun_Monolith.1 } REQUIREMENT { type = CompleteContract contractType = AS_Mun_Monolith.2 } REQUIREMENT { type = CompleteContract contractType = AS_Mun_Monolith.3 } } REQUIREMENT { type = Expression title = [Currently broken in newer versions of KSP - fix in the works] expression = 1 == 0 } } Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted March 14, 2023 Share Posted March 14, 2023 (edited) 1 hour ago, John007qwe said: doesn't open when I hit alt+f10 for some reason This is typically caused by an issue with Nvidia In-Game Overlay which uses “Alt + F10” to save the last 5 minutes of the game as a video. You can change the Nvidia setting, I use ALT-CTR-F10. There should be a file copy of the output under GameData/ContractConfigurator/logs. 1 hour ago, John007qwe said: might have something to do with the OtherWorldsReboot (OWR) contracts The parameter definitions are correct for standard Contract Configurator however, something you have installed has modified the radios so that the types and power settings are no longer recognized and the exceptions are thrown. You have the following options available to you to fix it. Hunt down the cause of your radio setting s being changes and fix that. Stop using OWR contracts Edit the OWR Contract files and change all instances of this PARAMETER { name = HasAntenna type = HasAntenna antennaType = TRANSMIT minAntennaPower = 100.0 } to this PARAMETER { name = HasAntenna type = HasAntenna } From what I can see the contracts don't force you to transmit data to complete them so checking that you "can" is not necessarily required. The change just makes sure you have an antenna onboard. The third option is probably the quickest way to stop the errors and continue using the contract pack in a modified form. 1 hour ago, John007qwe said: Here's Jool_Monolith.cfg The Monolith contract is borked. Best to just delete it. Edited March 14, 2023 by Caerfinon Quote Link to comment Share on other sites More sharing options...
UltraJohn Posted March 14, 2023 Share Posted March 14, 2023 17 minutes ago, Caerfinon said: This is typically caused by an issue with Nvidia In-Game Overlay which uses “Alt + F10” to save the last 5 minutes of the game as a video. You can change the Nvidia setting, I use ALT-CTR-F10. Thanks, that was exactly the problem! 17 minutes ago, Caerfinon said: Hunt down the cause of your radio setting s being changes and fix that. The only thing it could be would be RemoteTech I think? I'm not sure what else would change it. If not, then I will just delete the part of the contract files as you said. 19 minutes ago, Caerfinon said: The Monolith contract is borked. Best to just delete it. Thanks, will do! Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted March 14, 2023 Share Posted March 14, 2023 @John007qwe Good stuff. Fly Safe. Quote Link to comment Share on other sites More sharing options...
Morphyum Posted March 23, 2023 Share Posted March 23, 2023 (edited) Hi everyone, sorry in advanced if i am just slow. So i have been searching far and wide to find a way to create a repair contract. Did i miss something or is that not possible with contract configurator? Mainly i am trying to spawn a broken vehicle and then send a Kerbal to use the engineers fix part action. Edited March 23, 2023 by Morphyum Quote Link to comment Share on other sites More sharing options...
Caerfinon Posted March 23, 2023 Share Posted March 23, 2023 5 hours ago, Morphyum said: Mainly i am trying to spawn a broken vehicle and then send a Kerbal to use the engineers fix part action. Contract configurator currently has no way to determine the use of the fix part action, however you could spawn a vessel that is missing a key part and then use a part validation parameter to check for the existence of of the key part. Then have your engineer rendezvous with the vessel, attach the missing part using EVA Construction or KIS/KAS and then swirtch to the now repaired vessel so the validation will trigger to complete the contract. Quote Link to comment Share on other sites More sharing options...
Morphyum Posted March 24, 2023 Share Posted March 24, 2023 Thanks alot, i decided to do the following, spawn a vessel without an antenna and check for the vessel to receive an antenna works like a charm Quote Link to comment Share on other sites More sharing options...
bolttanker Posted March 25, 2023 Share Posted March 25, 2023 On 1/28/2023 at 1:59 AM, Brigadier said: It's called Sandbox mode thanks how very useless u are Quote Link to comment Share on other sites More sharing options...
siimav Posted April 7, 2023 Share Posted April 7, 2023 (edited) There's fixes for rather substantial memory/GameEvent leaks in this release. v2.4.0 for KSP 1.12 What's Changed Fix memory leakage in ParameterDelegate by @hxl11211 in #14 Replace OnContractLoaded event with virtual OnContractLoad method to fix memory leak in VesselParameterGroup by @siimav in #15 Remove all unnecessary new EventData<T>.OnEvent and new EventVoid.OnEvent calls. This also prevented KSPCF from finding leaks. By @siimav in #13 Mark ContractConfigurator.OnParameterChange as obsolete and change all parameters to not use it by @siimav Increment KSPAssembly version on releases. Can be useful for enforcing dependencies based on min version. by @siimav Edited April 7, 2023 by siimav Quote Link to comment Share on other sites More sharing options...
siimav Posted April 15, 2023 Share Posted April 15, 2023 (edited) v2.5.0.1 for KSP 1.12 New mod dependency ContractConfigurator now depends on HarmonyKSP. For CKAN users this will be installed automatically but others will need to download the latest release from here. What's Changed Add Harmony as a dependency Harmony-patch ContractSystem.OnLoadRoutine to work consistently on fresh saves Add option to ReachState parameter for specifying speed mode Edited April 15, 2023 by siimav Quote Link to comment Share on other sites More sharing options...
siimav Posted May 16, 2023 Share Posted May 16, 2023 v2.6.0 for KSP 1.12 Add preview of contract parameters to All tab. Needs explicit support from contract packs. Read more about it in #18 Replace all OnPartJointBreak events with OnPartDeCouple+OnPartUndock. This fixes severe performance issues when joints are recreated, for instance with autostruts. #20 Fix broken localization in ReachState title Replace crew capacity calculation with stock method call Add warning to accepting a contract if it would cause other conflicting contracts to fail automatically Quote Link to comment Share on other sites More sharing options...
Apophis705 Posted June 13, 2023 Share Posted June 13, 2023 Hello. I play with mods and have put different mods on contracts. It became much more interesting to play, but there was a problem. The fact is that the Contract Configurator mod limits the maximum number of possible contracts. Since I have different mods for contracts, I want to execute them in parallel. Some tasks, such as visiting ALL the planets and moons, can take years. Because of this, I can't take other assignments. I tried to find the settings in *.cfg, but I didn't find anything similar. Maybe I was just looking in the wrong place. Downloading updates from Git, I studied the mod code and found a method where the maximum number of contracts is calculated. Simply increasing the number in the code solved my problem. If possible, I would like to ask you to put these settings in a *.cfg file so that the user can easily change the maximum number of tasks. Maybe we can make some kind of multiplier that will increase the maximum number of tasks, or an additional variable that will be 0 by default, and in cfg it can be replaced with any value to increase the maximum number of tasks. If there are such settings, please tell me where to look for them? I don't want to interfere in your creativity for nothing because of such a trifle =) Quote Link to comment Share on other sites More sharing options...
Aelfhe1m Posted June 13, 2023 Share Posted June 13, 2023 (edited) @Apophis705 Did you already go into the Contract Configurator section of the stock difficulty settings menu and crank the "Active Contract Multiplier" up to 8 (the max the slider allows)? With that set you will get limits of 75 trivial, 59 significant and 44 exceptional contracts. I've never hit this limit but if that still isn't enough, you can edit the save file (take a backup first) and set PARAMETERS -> ContractConfiguratorParameters -> ActiveContractMultiplier to whatever figure you want. The individual contract groups still contain limits to the number of simultaneous contracts that they will offer that varies from contract pack to contract pack. EDIT: note, the contact_group limit can be overridden using ModuleManager patches, either on a case-by-case approach or applying a global multiplier to the maxSimultaneous field. Edited June 13, 2023 by Aelfhe1m extra info Quote Link to comment Share on other sites More sharing options...
Apophis705 Posted June 13, 2023 Share Posted June 13, 2023 4 hours ago, Aelfhe1m said: @Apophis705 Did you already go into the Contract Configurator section of the stock difficulty settings menu and crank the "Active Contract Multiplier" up to 8 (the max the slider allows)? With that set you will get limits of 75 trivial, 59 significant and 44 exceptional contracts. I've never hit this limit but if that still isn't enough, you can edit the save file (take a backup first) and set PARAMETERS -> ContractConfiguratorParameters -> ActiveContractMultiplier to whatever figure you want. The individual contract groups still contain limits to the number of simultaneous contracts that they will offer that varies from contract pack to contract pack. EDIT: note, the contact_group limit can be overridden using ModuleManager patches, either on a case-by-case approach or applying a global multiplier to the maxSimultaneous field. Yes, I saw the ActiveContractMultiplier multiplier in the code, but I didn't find it in the game =). Now I've searched again, he's nowhere to be found. I can only set it up when I start a new game. But I added the mod after the game started. I have now edited my saved game. It helped, thanks =). Quote Link to comment Share on other sites More sharing options...
Aelfhe1m Posted June 14, 2023 Share Posted June 14, 2023 2 hours ago, Apophis705 said: Yes, I saw the ActiveContractMultiplier multiplier in the code, but I didn't find it in the game =). Now I've searched again, he's nowhere to be found. I can only set it up when I start a new game. But I added the mod after the game started. I have now edited my saved game. It helped, thanks =). How to get to those settings in an ongoing save: Start KSP and load a save game At the space centre view Press escape to get the pause menu (or click button in top right of screen) Choose settings Press the button labelled "Difficulty Options" at the top of the new window Click the buttons down the left side of the next window for individual mod options (one should be labelled Contract Configurator) 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.