Yemo Posted June 29, 2015 Share Posted June 29, 2015 Hi nightingaleThanks for the update :-) I can wait thats not that much of a problem. Also was i think would be a good feat. if we could deactivate all stock contracts so we only get the contracts of the packs we installed...Thankshttps://github.com/jrossignol/ContractConfigurator/wiki/Miscellaneous Quote Link to comment Share on other sites More sharing options...
ManuxKerb Posted June 29, 2015 Share Posted June 29, 2015 @ Yemo,I know that but i want it included into the contract selsction menu ingame :-) Quote Link to comment Share on other sites More sharing options...
nightingale Posted June 29, 2015 Author Share Posted June 29, 2015 Yeah, the support for disabling of contracts is intended for developers who want to replace stock contracts. It's a little bit more challenging technically speaking, but I'll consider supporting that in-game for stock contracts in-game (since it makes sense to have it all in one spot).Actually it opens up an ugly can of worms if I don't support it. Suppose you have a contract pack "Some Guy's Part Testing" (not to be confused with sumghai). This contract pack removes the part testing contracts, and replaces them with something different. If you disable this contract pack, ideally one would expect it to work as if it wasn't installed in that save (ie. stock part testing contracts should come back). So the easiest way is to just give the end-user control (which means a little bit more work for them in re-enabling them in a new save). Quote Link to comment Share on other sites More sharing options...
ManuxKerb Posted June 29, 2015 Share Posted June 29, 2015 Hi There is a MM file/ Mod on Kerbalstuff to disable all stock contracts. Maybe you can use this as a starting point just search for stock contracts.Hope this helps :-) Quote Link to comment Share on other sites More sharing options...
nightingale Posted June 29, 2015 Author Share Posted June 29, 2015 Hi There is a MM file/ Mod on Kerbalstuff to disable all stock contracts. Maybe you can use this as a starting point just search for stock contracts.Hope this helps :-)Not really. As Yemo points out, I already have that functionality.When I say "technically challenging", I don't mean that I don't know how to do it - just that I have to be careful how it's done. It needs to be careful to put things in the right state when a user either loads up a save or when starting a new game. Right now it takes the simplistic approach of disabling whatever needs disabling on game start and never looking back. Quote Link to comment Share on other sites More sharing options...
nightingale Posted June 29, 2015 Author Share Posted June 29, 2015 I have an issue where the contracts disappear after switching to the KSC or leaving the game. This only happens with some contract packs. Remote tech pack and Kerbin station are two. What am i doing wrong?Please don't cross post the same issue on multiple threads. Quote Link to comment Share on other sites More sharing options...
Wjolcz Posted June 29, 2015 Share Posted June 29, 2015 (edited) I made my first contract! Woooo!Great mod. Still learning things, but I will make my own contract pack eventually!E: is it possible to spawn vessels with this? Edited June 30, 2015 by Veeltch Quote Link to comment Share on other sites More sharing options...
CosmoBro Posted June 30, 2015 Share Posted June 30, 2015 I made my first contract! Woooo!Great mod. Still learning things, but I will make my own contract pack eventually!E: is it possible to spawn vessels with this?Yes with the vessel spawner behaviour look at the wiki.Also nightingale I just release my contract pack can you add it to the op http://forum.kerbalspaceprogram.com/threads/127138 Quote Link to comment Share on other sites More sharing options...
nightingale Posted June 30, 2015 Author Share Posted June 30, 2015 Also nightingale I just release my contract pack can you add it to the op http://forum.kerbalspaceprogram.com/threads/127138Will do, forgot to do that today. On mobile for a bit, so may be a couple days before I am able. Quote Link to comment Share on other sites More sharing options...
coldice4 Posted June 30, 2015 Share Posted June 30, 2015 I just wanted to try out some contract packs, but they don't show up in the mission control center. Is there something I am doing wrong, or is this a bug?I installed the contract packs Field Research, RemoteTech and SCANSat. Quote Link to comment Share on other sites More sharing options...
blnk2007 Posted June 30, 2015 Share Posted June 30, 2015 I keep getting a "None Kerbin" contract. Does anyone else get that? Quote Link to comment Share on other sites More sharing options...
AlphaAsh Posted June 30, 2015 Share Posted June 30, 2015 I just wanted to try out some contract packs, but they don't show up in the mission control center. Is there something I am doing wrong, or is this a bug?I installed the contract packs Field Research, RemoteTech and SCANSat.You probably haven't enough rep for those contracts to start showing up. And asking the obvious, you have the RemoteTech and SCANSat mods installed too, right? Quote Link to comment Share on other sites More sharing options...
coldice4 Posted June 30, 2015 Share Posted June 30, 2015 You probably haven't enough rep for those contracts to start showing up. And asking the obvious, you have the RemoteTech and SCANSat mods installed too, right?Yes I have them installed But I think I found the problem, I started a new career game and now the contracts show up when I research the tech. Is it possible that the contracts only start if you research the tech and not if you have it already researched? Quote Link to comment Share on other sites More sharing options...
AlphaAsh Posted June 30, 2015 Share Posted June 30, 2015 Yes I have them installed But I think I found the problem, I started a new career game and now the contracts show up when I research the tech. Is it possible that the contracts only start if you research the tech and not if you have it already researched?If a contract requires a tech, it shouldn't matter if you already had the tech unlocked when you installed the pack. As far as I know. Quote Link to comment Share on other sites More sharing options...
CosmoBro Posted June 30, 2015 Share Posted June 30, 2015 (edited) Yes I have them installed But I think I found the problem, I started a new career game and now the contracts show up when I research the tech. Is it possible that the contracts only start if you research the tech and not if you have it already researched?You should try the debug console (alt+f10) and look for the contract then press force check requirements and if all appear green mean that the contract should appear if any appear yellow you should look at it an see what are you missing. Edited July 1, 2015 by CosmoBro Quote Link to comment Share on other sites More sharing options...
nightingale Posted June 30, 2015 Author Share Posted June 30, 2015 I keep getting a "None Kerbin" contract. Does anyone else get that?No idea what this is. Perhaps a screenshot of the contract and of the alt-f10 debug menu?- - - Updated - - -If a contract requires a tech, it shouldn't matter if you already had the tech unlocked when you installed the pack. As far as I know.That is indeed correct. Quote Link to comment Share on other sites More sharing options...
maculator Posted July 1, 2015 Share Posted July 1, 2015 So after some practice I now have a contract wich works propper and I want to use it to expand on.But there are some things I'm not sure about, so i thought I might just post it here and mark the places wich stil confuse me and hope someone can explain^^To keep it simple: Red is about forcing the player to do things in order, but i don't know if it is really necessary because my contract is build like this:[start, Do a thing, land on the runway] when those parameters are met, you have to [wait 25 seconds] and then [recover the vessel] Blue is something with WP0 and index = 0 and I really have no clue how that works, althou it seems to work.And green is some index stuff with kerbals//Experimental, first contract I made wich I'm really proud of. But its stil verry basic, and I dont understand some thingsCONTRACT_TYPE{//Basic definition: name = TouristFlight1 title = Tourist Photo-Flight group = Tourists agent = Kerbal Aircraft Builders//Texts to be displayed in the description: description = Since we're a bit short on funds, we need to fly some of those tourists over to the island and show them kerbins beautiful wildlife synopsis = Get them abord and fly them arround a bit. completedMessage = Mission Accomplished!//All that contract related stuff: minExpiry = 1.0 maxExpiry = 7.0 deadline = 500 cancellable = true declinable = true autoAccept = false targetBody = Kerbin maxSimultaneous = 1 rewardScience = 10.0 rewardReputation = 20.0 rewardFunds = 12000.0 failureReputation = 20.0 failureFunds = 12000.0 advanceFunds = 4000.0 weight = 5.0//Whats required? //Wait 10 days to do the mission again REQUIREMENT { name = CompleteContract type = CompleteContract contractType = TouristFlight1 minCount = 0 cooldownDuration = 10d }//The main part of the contract //Load a tourist PARAMETER { //Forces the vessel to have exactly 1 passenger name = HasPassengers type = HasPassengers count = 1 [COLOR=#ff0000] //This one makes sure the player completes all the main REQUIREMENTS in correct order completeInSequence = true[/COLOR] //"title" is the text wich is displayed in the contracts app title = Pre-Launchcheck } //Define the vessel to prevent cheating PARAMETER { //Gives the vessel the name "Cap1" name = VesselParameterGroup type = VesselParameterGroup define = Cap1 //title wich is displayed to coat the "vesselnamecreation" title = Get to the island airfield [COLOR=#ff0000]completeInSequence = true[/COLOR] //Get to the waypoint not sure what all this does :/ PARAMETER { [COLOR=#0000cd]//Seems to define it as the first waypoint created later in the BEHAVIOUR section? name = WP0 //?!? type = All[/COLOR] title = Photosession! //Placeholder, could add a "situation" PARAMETER { //This is about visiting the waypoint name = VisitWaypoint type = VisitWaypoint //titel again to coat everything title = Perform a flyby and let the tourist take some actionshots [COLOR=#0000cd]//?!? has something to do with the WP0 above?? index = 0[/COLOR] //The max distance for the waypoint to be concidered done distance = 1000 [COLOR=#ff0000] //This makes the PARAMETER checked even if you get out of distance again //(Since the main PARAMETER has "completeINSequence = true" I don't know if this is necessary?!? disableOnStateChange = true[/COLOR] } } } //get back to KSC and land PARAMETER { name = land type = ReachState title = Land back at the KSC //Land on the runway situation = LANDED biome = Runway[COLOR=#ff0000] //again don't know if they're both necessary disableOnStateChange = false completeInSequence = true[/COLOR] } //Some countdown to make sure the craft is landed and functional --> no crashlanding! PARAMETER { name = Duration type = Duration duration = 25s preWaitText = Give the tourist some time to recover waitingText = He seems a bit greener than usual completionText = And he puked, great!!! [COLOR=#ff0000] //again don't know if they're both necessary completeInSequence = true disableOnStateChange = false[/COLOR] } //works with PARAMETER above to prevent crashlandings PARAMETER { name = VesselNotDestroyed type = VesselNotDestroyed [COLOR=#ff0000] //necessary? completeInSequence = true[/COLOR] title = Don't crash! } //Recovers the kerbal PARAMETER { name = RecoverKerbal type = RecoverKerbal [COLOR=#006400] //?!? index = 0[/COLOR] }//The following creates a kerbal tourist and a waypoint //The kerbal BEHAVIOUR { name = SpawnPassengers type = SpawnPassengers count = 1 kerbalType = Tourist } //Waypointgenerator kicks in .. BEHAVIOUR { name = WaypointGenerator type = WaypointGenerator // .. and creates a waypoint "IslandAirfield" WAYPOINT { name = IslandAirfield icon = marker altitude = 1000 latitude = -1.48 longitude = -71.8506 } }}So i hope someone can help, would be nice. And a I have another little question: how do I make the name of the randomly generated tourist appear in let's say the titel of the first PARAMETER? Quote Link to comment Share on other sites More sharing options...
blnk2007 Posted July 1, 2015 Share Posted July 1, 2015 (edited) No idea what this is. Perhaps a screenshot of the contract and of the alt-f10 debug menu?I'll get one next time it comes up.Update: Somehow I selected this... Edited July 1, 2015 by blnk2007 Quote Link to comment Share on other sites More sharing options...
Arctic Sesquipedalian Posted July 1, 2015 Share Posted July 1, 2015 Contract Configurator asked me to post this:Exception occured while attempt to generate contract of type 'Lunokhod-1':System.InvalidOperationException: Operation is not valid due to the current state of the object at System.Linq.Enumerable.First[CelestialBody] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGenerator.Initialize () [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGenerator..ctor (ContractConfigurator.Behaviour.WaypointGenerator orig, ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGeneratorFactory.Generate (ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.BehaviourFactory.GenerateBehaviours (ContractConfigurator.ConfiguredContract contract, System.Collections.Generic.List`1 behaviourNodes) [0x00000] in <filename unknown>:0 at ContractConfigurator.ContractType.GenerateBehaviours (ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.ConfiguredContract.Initialize (ContractConfigurator.ContractType contractType) [0x00000] in <filename unknown>:0 I've got a bajillion mods (Realism Overhaul, all its dependencies and suggestions, and a ton more besides), so it could easily be an interaction. Log is here: https://www.dropbox.com/s/dwbya7lyf5epys1/output_log%20contract%20configurator%201%20Jul%202015.txt?dl=0 Quote Link to comment Share on other sites More sharing options...
AlphaAsh Posted July 1, 2015 Share Posted July 1, 2015 Contract Configurator asked me to post this:Exception occured while attempt to generate contract of type 'Lunokhod-1':System.InvalidOperationException: Operation is not valid due to the current state of the object at System.Linq.Enumerable.First[CelestialBody] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGenerator.Initialize () [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGenerator..ctor (ContractConfigurator.Behaviour.WaypointGenerator orig, ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGeneratorFactory.Generate (ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.BehaviourFactory.GenerateBehaviours (ContractConfigurator.ConfiguredContract contract, System.Collections.Generic.List`1 behaviourNodes) [0x00000] in <filename unknown>:0 at ContractConfigurator.ContractType.GenerateBehaviours (ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.ConfiguredContract.Initialize (ContractConfigurator.ContractType contractType) [0x00000] in <filename unknown>:0 I've got a bajillion mods (Realism Overhaul, all its dependencies and suggestions, and a ton more besides), so it could easily be an interaction. Log is here: https://www.dropbox.com/s/dwbya7lyf5epys1/output_log%20contract%20configurator%201%20Jul%202015.txt?dl=0Can't tell much from the log and I couldn't confirm if you're using Win KSP x64. Can you post ksp.log instead? Quote Link to comment Share on other sites More sharing options...
CosmoBro Posted July 2, 2015 Share Posted July 2, 2015 Can't tell much from the log and I couldn't confirm if you're using Win KSP x64. Can you post ksp.log instead? Can't confirm now because I'm on the phone but I think he put a Dropbox link for the output log on the last part of the post https://www.dropbox.com/s/dwbya7lyf5epys1/output_log%20contract%20configurator%201%20Jul%202015.txt?dl=0 Quote Link to comment Share on other sites More sharing options...
nightingale Posted July 2, 2015 Author Share Posted July 2, 2015 So after some practice I now have a contract wich works propper and I want to use it to expand on.But there are some things I'm not sure about, so i thought I might just post it here and mark the places wich stil confuse me and hope someone can explain^^To keep it simple: Red is about forcing the player to do things in order, but i don't know if it is really necessary because my contract is build like this:[start, Do a thing, land on the runway] when those parameters are met, you have to [wait 25 seconds] and then [recover the vessel] Blue is something with WP0 and index = 0 and I really have no clue how that works, althou it seems to work.And green is some index stuff with kerbals//Experimental, first contract I made wich I'm really proud of. But its stil verry basic, and I dont understand some thingsCONTRACT_TYPE{//Basic definition: name = TouristFlight1 title = Tourist Photo-Flight group = Tourists agent = Kerbal Aircraft Builders//Texts to be displayed in the description: description = Since we're a bit short on funds, we need to fly some of those tourists over to the island and show them kerbins beautiful wildlife synopsis = Get them abord and fly them arround a bit. completedMessage = Mission Accomplished!//All that contract related stuff: minExpiry = 1.0 maxExpiry = 7.0 deadline = 500 cancellable = true declinable = true autoAccept = false targetBody = Kerbin maxSimultaneous = 1 rewardScience = 10.0 rewardReputation = 20.0 rewardFunds = 12000.0 failureReputation = 20.0 failureFunds = 12000.0 advanceFunds = 4000.0 weight = 5.0//Whats required? //Wait 10 days to do the mission again REQUIREMENT { name = CompleteContract type = CompleteContract contractType = TouristFlight1 minCount = 0 cooldownDuration = 10d }//The main part of the contract //Load a tourist PARAMETER { //Forces the vessel to have exactly 1 passenger name = HasPassengers type = HasPassengers count = 1 [COLOR=#ff0000] //This one makes sure the player completes all the main REQUIREMENTS in correct order completeInSequence = true[/COLOR] //"title" is the text wich is displayed in the contracts app title = Pre-Launchcheck } //Define the vessel to prevent cheating PARAMETER { //Gives the vessel the name "Cap1" name = VesselParameterGroup type = VesselParameterGroup define = Cap1 //title wich is displayed to coat the "vesselnamecreation" title = Get to the island airfield [COLOR=#ff0000]completeInSequence = true[/COLOR] //Get to the waypoint not sure what all this does :/ PARAMETER { [COLOR=#0000cd]//Seems to define it as the first waypoint created later in the BEHAVIOUR section? name = WP0 //?!? type = All[/COLOR] title = Photosession! //Placeholder, could add a "situation" PARAMETER { //This is about visiting the waypoint name = VisitWaypoint type = VisitWaypoint //titel again to coat everything title = Perform a flyby and let the tourist take some actionshots [COLOR=#0000cd]//?!? has something to do with the WP0 above?? index = 0[/COLOR] //The max distance for the waypoint to be concidered done distance = 1000 [COLOR=#ff0000] //This makes the PARAMETER checked even if you get out of distance again //(Since the main PARAMETER has "completeINSequence = true" I don't know if this is necessary?!? disableOnStateChange = true[/COLOR] } } } //get back to KSC and land PARAMETER { name = land type = ReachState title = Land back at the KSC //Land on the runway situation = LANDED biome = Runway[COLOR=#ff0000] //again don't know if they're both necessary disableOnStateChange = false completeInSequence = true[/COLOR] } //Some countdown to make sure the craft is landed and functional --> no crashlanding! PARAMETER { name = Duration type = Duration duration = 25s preWaitText = Give the tourist some time to recover waitingText = He seems a bit greener than usual completionText = And he puked, great!!! [COLOR=#ff0000] //again don't know if they're both necessary completeInSequence = true disableOnStateChange = false[/COLOR] } //works with PARAMETER above to prevent crashlandings PARAMETER { name = VesselNotDestroyed type = VesselNotDestroyed [COLOR=#ff0000] //necessary? completeInSequence = true[/COLOR] title = Don't crash! } //Recovers the kerbal PARAMETER { name = RecoverKerbal type = RecoverKerbal [COLOR=#006400] //?!? index = 0[/COLOR] }//The following creates a kerbal tourist and a waypoint //The kerbal BEHAVIOUR { name = SpawnPassengers type = SpawnPassengers count = 1 kerbalType = Tourist } //Waypointgenerator kicks in .. BEHAVIOUR { name = WaypointGenerator type = WaypointGenerator // .. and creates a waypoint "IslandAirfield" WAYPOINT { name = IslandAirfield icon = marker altitude = 1000 latitude = -1.48 longitude = -71.8506 } }}So i hope someone can help, would be nice. The way you have the questions in the contract makes it kind of awkward to answer inline. So I'm just listing stuff out.completeInSequence has nothing to do with REQUIREMENT nodes - only PARAMETER nodes.Your WP0 name for the All parameter is only meaningful for expressionsIf you're unsure what the All parameter is, read this.If you're unsure what the index in VisitWaypoint refers to, read this.In general if there's issues with something in the doco being confusing, let me know, and I'll try and beef it up (I'm currently in the process of doing a documentation improvement pass).And a I have another little question: how do I make the name of the randomly generated tourist appear in let's say the titel of the first PARAMETER?Currently not possible. Raise a GitHub issue and I'll see what can be done (be warned there's a bit of a backlog on feature requests).- - - Updated - - -Contract Configurator asked me to post this:Exception occured while attempt to generate contract of type 'Lunokhod-1':System.InvalidOperationException: Operation is not valid due to the current state of the object at System.Linq.Enumerable.First[CelestialBody] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGenerator.Initialize () [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGenerator..ctor (ContractConfigurator.Behaviour.WaypointGenerator orig, ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.Behaviour.WaypointGeneratorFactory.Generate (ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.BehaviourFactory.GenerateBehaviours (ContractConfigurator.ConfiguredContract contract, System.Collections.Generic.List`1 behaviourNodes) [0x00000] in <filename unknown>:0 at ContractConfigurator.ContractType.GenerateBehaviours (ContractConfigurator.ConfiguredContract contract) [0x00000] in <filename unknown>:0 at ContractConfigurator.ConfiguredContract.Initialize (ContractConfigurator.ContractType contractType) [0x00000] in <filename unknown>:0 I've got a bajillion mods (Realism Overhaul, all its dependencies and suggestions, and a ton more besides), so it could easily be an interaction. Log is here: https://www.dropbox.com/s/dwbya7lyf5epys1/output_log%20contract%20configurator%201%20Jul%202015.txt?dl=0Well, I'm not going to do too much digging, because this one jumped right out at me:ContractConfigurator.ContractType: CONTRACT_TYPE 'AS_Bop_DeadKraken':Error parsing targetBodyArgumentException: 'Bop' is not a valid CelestialBody.Basically, you have contract packs that don't support RSS installed with RSS. Lunokhod-1 I'm guessing is from Historic Missions? I think WhiteCat said that he was adding RSS support soon-ish.Anyway, I'll still fix this issue (as what really should happen is that the contract should fail to load, rather than letting it get this far). Also, I'm considering updating Anomaly Surveyor to disable itself when RSS is in use to prevent false-positives from being reported. Then again, if I do that, I'll get people who say "I installed it but get no contracts", which might be worse still to investigate.- - - Updated - - -Can't tell much from the log and I couldn't confirm if you're using Win KSP x64. Can you post ksp.log instead?Agree as I prefer KSP.log (because why anyone would "double space" a log file like output_log.txt is beyond me). But as for the Win64 bit, that much I can confirm is not the case. In a recent update I changed my logging framework to pretty much spam out "THIS IS WIN64" or something to that effect so that I never get fooled again. Quote Link to comment Share on other sites More sharing options...
Arctic Sesquipedalian Posted July 2, 2015 Share Posted July 2, 2015 Thanks Nightingale. And thanks for the awesome mod! Quote Link to comment Share on other sites More sharing options...
GrafZahl Posted July 3, 2015 Share Posted July 3, 2015 HiFirst of all, tanks for your mod! It makes the career mode so much more interesting to allow so many new contract types. I wonder why this is not a Stock feature.However I think I discovered an error.I use KSP 1.0.4 and Contract Configurator 1.5.0.The important mods are here: - Contrack Pack: Field Research - Tarsier Space Technology - Community Tech Tree - SETIctt modSo now what happens:I get contracts from the Field Research Contract Pack to do some experiments around the KSC. I looked at the code of this contract and it uses the CC function "AvailableExperiments(<body: Homeworld>)" to get a list of experiments. When I understand the Contract Configurator Source Code correctly, this function should only return experiments that are really available for the parts, the player can use. However this Contract asked me all the time to do experiments with ChemCam (a part from Tarsier Space Technology, that is only later available in Tech Tree). So something seems to be broken with the check, if the part that can do this experiment is available or not. Maybe it is not a Contract Configurator issue. Maybe the Community Tech Tree has issues to fill the "ResearchAndDevelopment.PartTechAvailable" list correctly.Or the SETIctt makes some things with this list.Or maybe the Tarsier Space Technology mod uses a different way to create this experiment, so it will always be available independent of the part-availability. Does anyone has an idea how to start debugging this? Quote Link to comment Share on other sites More sharing options...
GrafZahl Posted July 3, 2015 Share Posted July 3, 2015 Ok I look more closely at the CC code and added some Debug-Logs to look inside the data structures. I think I have an idea why this happens:In file Science.cs, function AvailableExperiments() I can see this line:[FONT=Consolas] [COLOR=#333333]experiments[/COLOR][COLOR=#333333]=[/COLOR][COLOR=#333333]experiments[/COLOR][COLOR=#333333].[/COLOR][COLOR=#333333]Where[/COLOR][COLOR=#333333]([/COLOR][COLOR=#333333]exp[/COLOR][COLOR=#333333]=[/COLOR][COLOR=#333333]>[/COLOR][COLOR=#333333] ![/COLOR][COLOR=#333333]experimentParts[/COLOR][COLOR=#333333].[/COLOR][COLOR=#333333]ContainsKey[/COLOR][COLOR=#333333]([/COLOR][COLOR=#333333]exp[/COLOR][COLOR=#333333].[/COLOR][COLOR=#333333]id[/COLOR][COLOR=#333333])[/COLOR][COLOR=#333333] || [/COLOR][COLOR=#333333]experimentParts[/COLOR][COLOR=#333333][[/COLOR][COLOR=#333333]exp[/COLOR][COLOR=#333333].[/COLOR][COLOR=#333333]id[/COLOR][COLOR=#333333]][/COLOR][COLOR=#333333].[/COLOR][COLOR=#333333]Any[/COLOR][COLOR=#333333]([/COLOR][COLOR=#3364a4]ResearchAndDevelopment[/COLOR][COLOR=#333333].[/COLOR][COLOR=#333333]PartTechAvailable[/COLOR][COLOR=#333333]))[/COLOR][COLOR=#333333];[/COLOR][/FONT]The intention of this line is to filter only those experiments where the parts are available for the player. In the lines above the code tries to get a list of all available parts and their experiments. However something looks strange here: According to the expression it allows an experiment either when there is not part that can do this experiment or when this part (when there is a part) is available for the player.I wonder: Why do you allow experiments, where is no part defined to do those experiments? Is there a special reason or is this only a "hidden" check, if a part is in the list before you try to access this list (to prevent exceptions)?Anyway the ChemCam is for some reasons not in the list. But the part is available in the TechTree, so I guess there in another error with the Part-Definition of the ChemCam that triggers the first test-stastement of this expression and this leads to the situation that such an experiment is chosen by the "Field Resource" contracts. I simply need to find out, why the part is not found even when it exists. 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.