Jump to content

[1.12.x] BetterCrewAssignment v1.4.1: Smarter by default. Remembers your choices. No UI.


Snark

Recommended Posts

15 hours ago, linuxgurugamer said:

@Snark

In what way is this not compatible with KCT?

I've never run KCT myself, and know nothing about how it works.  All I can do is refer you to this, from earlier in this thread:

...followed by this report from the field:

 

Link to comment
Share on other sites

  • 1 month later...
On 6/3/2016 at 0:23 PM, Snark said:

For KCT to respect the data that BCA stores with the ship, it would need to read the BCA-specific data, which is hard to do without taking an explicit dependency on BCA, which is unlikely to happen.

Well, not necessarily. If you're actually changing the manifest in the editor then KCT can just grab the manifest at build time and store that internally. The reason KCT just grabs the default crew for a vessel is that the crew you might want to use could have been sent off in another ship (or dead) between building the ship in the editor and launching it. There's no reason why it can't store a "preferred" list and default to that, falling back to the default crew if all the kerbals from the preferred list are off adventuring.

Alternatively if the data is stored in the ship's config node then I can read that without any dependencies. Worst case scenario I use reflection which I've used to integrate with plenty of mods with either no API or a lacking one.

Note this isn't me saying I'm definitely adding support to KCT, I might not have time, but I don't know that it'd be too hard to add when I do get time, assuming there's interest (it seems that way).

Edited by magico13
Link to comment
Share on other sites

28 minutes ago, magico13 said:

Well, not necessarily. If you're actually changing the manifest in the editor then KCT can just grab the manifest at build time and store that internally. The reason KCT just grabs the default crew for a vessel is that the crew you might want to use could have been sent off in another ship (or dead) between building the ship in the editor and launching it. There's no reason why it can't store a "preferred" list and default to that, falling back to the default crew if all the kerbals from the preferred list are off adventuring.

Alternatively if the data is stored in the ship's config node then I can read that without any dependencies. Worst case scenario I use reflection which I've used to integrate with plenty of mods with either no API or a lacking one.

Note this isn't me saying I'm definitely adding support to KCT, I might not have time, but I don't know that it'd be too hard to add when I do get time, assuming there's interest (it seems that way).

Sweet!  I'll take that as a definite "maybe," then.  :)

Thanks for the update-- good to know that there may be options, it's always great to have an answer from the authoritative source.

 

Link to comment
Share on other sites

58 minutes ago, Starwaster said:

Maybe using ScenarioModule could come in handy here as a place to store crew assignment data?

It needs to be stored in the .craft file itself, so ScenarioModule doesn't seem useful, here.  Or am I missing something?

Link to comment
Share on other sites

10 minutes ago, Snark said:

It needs to be stored in the .craft file itself, so ScenarioModule doesn't seem useful, here.  Or am I missing something?

ScenarioModule is stored in the save file itself. The idea is using it as a go-between; you could store data there other mods could access.

Truthfully though I haven't actually used it in that fashion before so I can't say it's any more or less feasible than putting that data in some other ConfigNode to be accessed.

Just an idea.

Link to comment
Share on other sites

3 minutes ago, Starwaster said:

ScenarioModule is stored in the save file itself.

Right.  That's the problem, that's what I'm saying.  The save file is the wrong place.  The data is stored in the .craft file.  Not the .sfs.

Link to comment
Share on other sites

32 minutes ago, Snark said:

Right.  That's the problem, that's what I'm saying.  The save file is the wrong place.  The data is stored in the .craft file.  Not the .sfs.

I haven't actually tested this mod out yet, but does it modify the CrewAssignmentDialog directly and before the launch button is pressed? If so then what I'm working on right now should work. If not then we can probably just talk through the craft file (is it just a module? That's easy, peasy, just go through the ConfigNode)

Link to comment
Share on other sites

40 minutes ago, Snark said:

Right.  That's the problem, that's what I'm saying.  The save file is the wrong place.  The data is stored in the .craft file.  Not the .sfs.

It may not be the best place but just because you store it one place doesn't mean you can't also put it somewhere else. It's just data. There is no 'wrong place' :wink:

 

Link to comment
Share on other sites

10 hours ago, Snark said:

Sweet!  I'll take that as a definite "maybe," then.

Well, be prepared to take it as a definite "yes" since I just got it working in the latest KCT dev build. Best part is that it isn't specific to BetterCrewAssignment, it works with manual assignments as well :)

 

Also, semi-unrelated, but normally I have to fight with the constraints of Squad's code. In this case it was entirely fighting with my own disheveled mess of code that I wrote 3 years ago when I knew nothing about proper development. I need to just rewrite everything because it was/is a mess:confused:

Edited by magico13
Link to comment
Share on other sites

  • 1 month later...

Hi all,

I've released v1.3.1 of BetterCrewAssignment.  No new features, this is just an update for KSP 1.3 compatibility.

The main thing that's changed is that it's now bundled with the newest version of ModuleManager, 2.8.0, so that it'll work with KSP 1.3.

One other change is that I've updated it to target .NET framework version 3.5, as a KSP mod is supposed to.  Previously it was targeting 4.5.2.  (This change is of interest only to modders who might be adding assembly references to this mod.  It has basically zero effect on players.)

Enjoy!

Link to comment
Share on other sites

  • 3 months later...
16 hours ago, Waz said:

It seems to ignore Tourists aggresively. I put in a Tourist, save, then Revert (because I accidentally killed him), and it goes back to shoving Jeb in the seat.

Hm.  Could be, thanks for the bug report.  :)  It's not an area I test a lot, because I very rarely take tourist contracts-- and when I do, it's generally in a special-purpose-built craft for that one tourist mission, which means I'm manually assigning them anyway.

Also, I haven't really touched the code here in a very long time, and KSP has been through a few updates since then.  I should probably go back and give this some love, when I have some time to do it.  For example, the way I handle targeted professions is just wrong, now.  When I first wrote BCA, everything was done by class ("are you a scientist?" "are you an engineer?"), whereas since then, KSP skills have been refactored to be mostly about abilities ("what can you do?") rather than identity ("what class are you?")  For example, for the science instruments that need special skill to reset, such as the goo pod, I shouldn't be asking "are you a scientist?"-- instead, I should be asking "do you have the ability to reset science instruments?"

Plus I believe there have been some enhancements / tweaks to the editor events available in the stock game, which could probably also improve my handling there.

So, yeah, I believe you that there very well may be a bug there, and I should revisit BCA anyway.  :)  I'll put it on my to-do list.  Not sure how long it'll take me to get to it, though, since it's a pretty big job (BCA has a lot of complexity under the hood) and I'm fairly busy IRL so it'll have to wait until I have a decent chunk of time available that's not already earmarked for other things.

Anyway, thank you for letting me know!

Link to comment
Share on other sites

  • 1 month later...
On 9/18/2017 at 5:58 PM, Snark said:

Hm.  Could be, thanks for the bug report.  :)  It's not an area I test a lot, because I very rarely take tourist contracts-- and when I do, it's generally in a special-purpose-built craft for that one tourist mission, which means I'm manually assigning them anyway.

Hi, I can confirm Waz's bug report, tourists do not seem to be holding still.  I hope you could fix it, it's even less stable than vanilla, since with your otherwise great mod first save of the rocket mixes up pre-made manual selections.  Thanks a lot!

Link to comment
Share on other sites

On 11/10/2017 at 4:09 AM, cam5d said:

Hi, I can confirm Waz's bug report, tourists do not seem to be holding still.  I hope you could fix it, it's even less stable than vanilla, since with your otherwise great mod first save of the rocket mixes up pre-made manual selections.  Thanks a lot!

Thanks for the report!  I'll have a look at this as soon as I can.  Unfortunately that could be a while and I can't make any promises exactly when, since IRL is extremely busy these days.  But I'll look at it when I can; I expect this will be next on my modding agenda.

Link to comment
Share on other sites

  • 1 month later...
On 9/17/2017 at 3:10 PM, Waz said:

It seems to ignore Tourists aggresively. I put in a Tourist, save, then Revert (because I accidentally killed him), and it goes back to shoving Jeb in the seat.

 

On 11/10/2017 at 4:09 AM, cam5d said:

Hi, I can confirm Waz's bug report, tourists do not seem to be holding still.  I hope you could fix it, it's even less stable than vanilla, since with your otherwise great mod first save of the rocket mixes up pre-made manual selections.  Thanks a lot!

...Okay, I'm trying to reproduce this bug as reported by both of you, and not having much luck.  Here's what I did:

  1. Start up KSP 1.3.1, running BetterCrewAssignment 1.3.1.
  2. Go to Mission Control, accept a contract that has a couple of tourists.
  3. Go to the VAB.
  4. Make a new ship consisting of a Mk1-2 command pod.
  5. Go to the crew assignment tab.
  6. Leave Jeb sitting in the first crew slot.
  7. Remove the crew from the other two slots, and put tourists in there instead.
  8. Save the ship.
  9. Launch.  Note that all expected kerbals (Jeb plus two tourists) are in there).
  10. Recover ship.  Go back to VAB.  Press "new", then load the previously created ship.
  11. Launch again, without going to the crew tab first.
  12. Result:  I see Jeb, plus the two tourists, as expected.
  13. Recover.
  14. Go back to Mission Control and cancel the contract (which makes the two tourists disappear).
  15. Accept a different contract with a different tourist.
  16. Go back to VAB.
  17. Press "new", then load the previously created ship.
  18. Launch again, without going to the crew tab first.
  19. Result:  I see Jeb, plus the new tourist, plus a regular crew member sitting in the extra slot, as expected.

...So that all appears to be working exactly as designed.  I believe you when you say you're observing odd behavior, but if I can't reproduce it myself, I can't address it.

@Waz and/or @cam5d, could you please let me know the exact repro steps (at the same level of detail as my example above) for reproducing the problem?  Thanks!

Link to comment
Share on other sites

  • 1 month later...
20 minutes ago, linuxgurugamer said:

Ever think about putting in a settings page too supplement the config file?

Nope.

Don't get me wrong, I'm not dissing the idea itself, I can see how that could be convenient to some folks.  It's just not my personal cup of tea, is all.  My reasons why not:

  • It's UI, which I don't like, on general principles.  I like keeping things simple.  It might be nice for other folks, but not for me, and I write my mods primarily for me.  :wink:
  • It would require me to learn how to write & debug the UI, which is a learning curve I'm not inclined to climb at the moment.
  • It would take extra time for me to do, which I don't have a lot of, these days.
  • I, myself, would have no use for such a feature when I'm playing.

That last one is the kicker.  Basically, any mod feature that I, myself, would never use when playing, is pretty much a non-starter for me, regardless of its merit otherwise-- I simply don't have the motivation to design, implement, test, and maintain such a feature.

Link to comment
Share on other sites

  • 4 weeks later...

Hi all,

Just a note that I've released version 1.3.2 of BetterCrewAssignment.  No new features, just a minor update for KSP 1.4.1 compatibility that updates to ModuleManager version 3.0.6.

Link to comment
Share on other sites

  • 4 months later...

Hi @Snark I know this is a bit of an old thread, but I wanted to post an error I'm seeing in my KSP.log file when loading craft in the VAB. I'm still seeing whether it's thrown on all my craft, or if it's more specific.

I'm not sure if this is actually causing a problem, but I've been trying to hunt down errors that I'm seeing in this game, since I've been having a lot of performance issues (with other mods in general). Can you let me know what this might mean?

Here's the segment of the log with the error from BetterCrewAssignment:

[LOG 19:22:02.491] [BetterCrewAssignment] Ship modified, 69 parts.
[ERR 19:22:02.491] [BetterCrewAssignment] (Exception) Mismatch at index 0: mk2LanderCabin versus crewCabin:   at BetterCrewAssignment.Crewable.List (.ShipConstruct construct) [0x00000] in <filename unknown>:0 
  at BetterCrewAssignment.CrewableList..ctor (.ShipConstruct construct) [0x00000] in <filename unknown>:0 
  at BetterCrewAssignment.AssignmentLogic.AssignKerbals (.ShipConstruct construct) [0x00000] in <filename unknown>:0 
  at BetterCrewAssignment.EditorBehaviour.OnShipModified (.ShipConstruct construct) [0x00000] in <filename unknown>:0 
[LOG 19:22:02.503] [BetterCrewAssignment] Ship loaded, 69 parts. 

Here's the rest of the segment where this is showing up in the log. This is the assignment process, which seems to go through just fine:

Spoiler

[LOG 19:22:02.491] [BetterCrewAssignment] Ship modified, 69 parts.
[ERR 19:22:02.491] [BetterCrewAssignment] (Exception) Mismatch at index 0: mk2LanderCabin versus crewCabin:   at BetterCrewAssignment.Crewable.List (.ShipConstruct construct) [0x00000] in <filename unknown>:0 
  at BetterCrewAssignment.CrewableList..ctor (.ShipConstruct construct) [0x00000] in <filename unknown>:0 
  at BetterCrewAssignment.AssignmentLogic.AssignKerbals (.ShipConstruct construct) [0x00000] in <filename unknown>:0 
  at BetterCrewAssignment.EditorBehaviour.OnShipModified (.ShipConstruct construct) [0x00000] in <filename unknown>:0 
[LOG 19:22:02.503] [BetterCrewAssignment] Ship loaded, 69 parts. 
[LOG 19:22:02.503] [BetterCrewAssignment] Mk2 Lander Can slot 0: assign Geofrigh Kerman|Pilot|Crew
[LOG 19:22:02.503] [BetterCrewAssignment] Mk2 Lander Can slot 1: assign Hanton Kerman|Tourist|Crew
[LOG 19:22:02.503] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 0: assign Crisming Kerman|Tourist|Empty
[LOG 19:22:02.503] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 1: assign Tramon Kerman|Tourist|Empty
[LOG 19:22:02.503] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 2: assign Hairie Kerman|Tourist|Empty
[LOG 19:22:02.503] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 3: assign Magfrod Kerman|Tourist|Empty
[LOG 19:22:02.503] [BetterCrewAssignment] Mk2-R Radial-Mount Parachute: require Engineer1-0
[LOG 19:22:02.503] [BetterCrewAssignment] Mk2-R Radial-Mount Parachute: require Engineer1-0
[LOG 19:22:02.503] [BetterCrewAssignment] Mk2-R Radial-Mount Parachute: require Engineer1-0
[LOG 19:22:02.503] [BetterCrewAssignment] Mk2-R Radial-Mount Parachute: require Engineer1-0
[LOG 19:22:02.503] [BetterCrewAssignment] Mk16-XL Parachute: require Engineer1-0
[LOG 19:22:02.503] [BetterCrewAssignment] <Assigning kerbals by name>
[LOG 19:22:02.504] [BetterCrewAssignment] Mk2 Lander Can slot 0: Assigned Geofrigh Kerman/Pilot3 (by request)
[LOG 19:22:02.504] [BetterCrewAssignment] <Ensuring SAS>
[LOG 19:22:02.504] [BetterCrewAssignment] Geofrigh Kerman/Pilot3 is already assigned and will provide SAS
[LOG 19:22:02.504] [BetterCrewAssignment] <Assigning kerbals to command modules by profession>
[LOG 19:22:02.504] [BetterCrewAssignment] <Assigning kerbals to all modules by profession>
[LOG 19:22:02.504] [BetterCrewAssignment] <Fulfilling part requirements>
[LOG 19:22:02.504] [BetterCrewAssignment] Assigning Gemrod Kerman/Engineer1 to operate Mk2-R Radial-Mount Parachute
[LOG 19:22:02.504] [BetterCrewAssignment] <Assigning any kerbals to command modules>
[LOG 19:22:02.504] [BetterCrewAssignment] <Assigning any kerbals to all modules>
[LOG 19:22:02.504] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 0: Assigned Burdred Kerman/Tourist0
[LOG 19:22:02.504] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 1: Assigned Leafrey Kerman/Tourist0
[LOG 19:22:02.504] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 2: Assigned Shepford Kerman/Tourist0
[LOG 19:22:02.504] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 3: Assigned Burcal Kerman/Tourist0
[LOG 19:22:02.504] [BetterCrewAssignment] Crew assignment complete. Assigned 6 kerbals, left 0 slots empty.
[LOG 19:22:02.504] [BetterCrewAssignment] Crew assigned to mk2LanderCabin slot 0: Geofrigh Kerman/Pilot3
[LOG 19:22:02.504] [BetterCrewAssignment] Crew assigned to mk2LanderCabin slot 1: Gemrod Kerman/Engineer1
[LOG 19:22:02.504] [BetterCrewAssignment] Crew assigned to crewCabin slot 0: Burdred Kerman/Tourist0
[LOG 19:22:02.504] [BetterCrewAssignment] Crew assigned to crewCabin slot 1: Leafrey Kerman/Tourist0
[LOG 19:22:02.504] [BetterCrewAssignment] Crew assigned to crewCabin slot 2: Shepford Kerman/Tourist0
[LOG 19:22:02.504] [BetterCrewAssignment] Crew assigned to crewCabin slot 3: Burcal Kerman/Tourist0
[LOG 19:22:02.511] [BetterCrewAssignment] Ship modified, 69 parts.
[LOG 19:22:02.511] [BetterCrewAssignment] <Assigning kerbals by name>
[LOG 19:22:02.511] [BetterCrewAssignment] Mk2 Lander Can slot 0: Assigned Geofrigh Kerman/Pilot3 (by request)
[LOG 19:22:02.511] [BetterCrewAssignment] <Ensuring SAS>
[LOG 19:22:02.512] [BetterCrewAssignment] Geofrigh Kerman/Pilot3 is already assigned and will provide SAS
[LOG 19:22:02.512] [BetterCrewAssignment] <Assigning kerbals to command modules by profession>
[LOG 19:22:02.512] [BetterCrewAssignment] <Assigning kerbals to all modules by profession>
[LOG 19:22:02.512] [BetterCrewAssignment] <Fulfilling part requirements>
[LOG 19:22:02.512] [BetterCrewAssignment] Assigning Gemrod Kerman/Engineer1 to operate Mk2-R Radial-Mount Parachute
[LOG 19:22:02.512] [BetterCrewAssignment] <Assigning any kerbals to command modules>
[LOG 19:22:02.512] [BetterCrewAssignment] <Assigning any kerbals to all modules>
[LOG 19:22:02.512] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 0: Assigned Burdred Kerman/Tourist0
[LOG 19:22:02.512] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 1: Assigned Leafrey Kerman/Tourist0
[LOG 19:22:02.512] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 2: Assigned Shepford Kerman/Tourist0
[LOG 19:22:02.512] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 3: Assigned Burcal Kerman/Tourist0
[LOG 19:22:02.512] [BetterCrewAssignment] Crew assignment complete. Assigned 6 kerbals, left 0 slots empty.
[LOG 19:22:02.544] [BetterCrewAssignment] Ship modified, 69 parts.
[LOG 19:22:02.545] [BetterCrewAssignment] <Assigning kerbals by name>
[LOG 19:22:02.545] [BetterCrewAssignment] Mk2 Lander Can slot 0: Assigned Geofrigh Kerman/Pilot3 (by request)
[LOG 19:22:02.545] [BetterCrewAssignment] <Ensuring SAS>
[LOG 19:22:02.545] [BetterCrewAssignment] Geofrigh Kerman/Pilot3 is already assigned and will provide SAS
[LOG 19:22:02.545] [BetterCrewAssignment] <Assigning kerbals to command modules by profession>
[LOG 19:22:02.545] [BetterCrewAssignment] <Assigning kerbals to all modules by profession>
[LOG 19:22:02.545] [BetterCrewAssignment] <Fulfilling part requirements>
[LOG 19:22:02.545] [BetterCrewAssignment] Assigning Gemrod Kerman/Engineer1 to operate Mk2-R Radial-Mount Parachute
[LOG 19:22:02.545] [BetterCrewAssignment] <Assigning any kerbals to command modules>
[LOG 19:22:02.545] [BetterCrewAssignment] <Assigning any kerbals to all modules>
[LOG 19:22:02.545] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 0: Assigned Burdred Kerman/Tourist0
[LOG 19:22:02.545] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 1: Assigned Leafrey Kerman/Tourist0
[LOG 19:22:02.545] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 2: Assigned Shepford Kerman/Tourist0
[LOG 19:22:02.545] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 3: Assigned Burcal Kerman/Tourist0
[LOG 19:22:02.545] [BetterCrewAssignment] Crew assignment complete. Assigned 6 kerbals, left 0 slots empty.
[LOG 19:22:02.546] [BetterCrewAssignment] Ship modified, 69 parts.
[LOG 19:22:02.546] [BetterCrewAssignment] <Assigning kerbals by name>
[LOG 19:22:02.546] [BetterCrewAssignment] Mk2 Lander Can slot 0: Assigned Geofrigh Kerman/Pilot3 (by request)
[LOG 19:22:02.546] [BetterCrewAssignment] <Ensuring SAS>
[LOG 19:22:02.546] [BetterCrewAssignment] Geofrigh Kerman/Pilot3 is already assigned and will provide SAS
[LOG 19:22:02.546] [BetterCrewAssignment] <Assigning kerbals to command modules by profession>
[LOG 19:22:02.546] [BetterCrewAssignment] <Assigning kerbals to all modules by profession>
[LOG 19:22:02.546] [BetterCrewAssignment] <Fulfilling part requirements>
[LOG 19:22:02.546] [BetterCrewAssignment] Assigning Gemrod Kerman/Engineer1 to operate Mk2-R Radial-Mount Parachute
[LOG 19:22:02.546] [BetterCrewAssignment] <Assigning any kerbals to command modules>
[LOG 19:22:02.546] [BetterCrewAssignment] <Assigning any kerbals to all modules>
[LOG 19:22:02.546] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 0: Assigned Burdred Kerman/Tourist0
[LOG 19:22:02.546] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 1: Assigned Leafrey Kerman/Tourist0
[LOG 19:22:02.546] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 2: Assigned Shepford Kerman/Tourist0
[LOG 19:22:02.546] [BetterCrewAssignment] PPD-10 Hitchhiker Storage Container slot 3: Assigned Burcal Kerman/Tourist0
[LOG 19:22:02.546] [BetterCrewAssignment] Crew assignment complete. Assigned 6 kerbals, left 0 slots empty.

 

Let me know if you'd like me to provide anything else to help understand what might be happening with this error.

Thanks for all your awesome work on these mods!

Edited by scottadges
Link to comment
Share on other sites

16 hours ago, scottadges said:

I know this is a bit of an old thread, but I wanted to post an error I'm seeing in my KSP.log file when loading craft in the VAB. I'm still seeing whether it's thrown on all my craft, or if it's more specific.

I'm not sure if this is actually causing a problem, but I've been trying to hunt down errors that I'm seeing in this game, since I've been having a lot of performance issues (with other mods in general). Can you let me know what this might mean?

Hi, thanks for the bug report!  Don't worry about the age-of-thread; the mod is very much alive, and the reason the thread's been quiet is simply because nothing much has been happening here.  ;)  You've come to the right place.

I've noticed errors like that once in a while, myself.  As for "what this might mean", I'd say that what it means is that BetterCrewAssignment probably has a bug in it somewhere-- either a problem that was present from the get-go, or possibly something that's been knocked somewhat off-kilter by the game changing out from under it in one of the many KSP updates that have happened since I first released this mod.  Or possibly it could be an interaction with some other mod, somewhere.

I've never tried to spend a lot of time digging into the root cause because BCA code actually is pretty complex and has a lot of moving parts under the hood, so chasing down and fixing this would take me a bit of time.  And I've never had a really great repro case.  And (more to the point) it's never actually impacted my own gameplay in any way I can determine-- what I mainly care about is "does the mod work, and do what I want it to do, and not cause any problematic buggy side-effects in the game."  And that's always been the case for me, even on those occasions when I see this exception message pop up.

The exception is one that my own code throws-- it doesn't necessarily mean that something's horribly bad, it simply means that the mod saw something that it didn't expect, and so it's yelling about it.  (I'm a very cautious programmer and like to do lots of rigorous validation on things, and make the code yell loud and early if anything seems smelly.)  Basically, if you're using the mod and it appears to be working as advertised, then the error message is fairly harmless.

Of course, as a tidy soul I'd prefer that my mod not be spamming exceptions around.  ;)  I'd like to get to the root of this and fix it-- it's just that it's a chunk of work and my motivation has never gotten big enough to put me past the tipping point of actually getting off my duff and taking care of it.

(Part of my reluctance is also because the way that BCA handles professions / traits is a bit out of date, since KSP went through a professions overhaul after I wrote all this stuff.  So the way I handle it now is functional, but not really the "right" design.  I'd like to fix that, and I've got a design all fleshed out in my head as to how it would look.  But implementing that design would be a big chunk of work, which is why I keep procrastinating.  And knowing that that thing's hanging over my head causes me to be irrationally reticent about touching the BCA code unless there's an urgent gotta-fix-this kinda problem, because when I go in and touch the code without addressing the elephant in the room, I feel guilty.  So by simply ignoring it and pretending like the issue isn't there at all, everytihng's all better!  Ain't the human mind a wonderful thing.)  :)

Anyway, that's the scoop.  TL;DR:  my guess is that in terms of what happens in the game, you're probably fine, and the message is harmless other than cluttering your log file.  If-and-when I get the gumption together to go in and overhaul BCA, I'll definitely take a look at this.  Thank you for the report!

Link to comment
Share on other sites

48 minutes ago, Snark said:

Hi, thanks for the bug report!

Thanks for the great response! I appreciate your thoughtfulness and I can totally understand the trade-offs you're talking about. 

I'll keep the mod in my load order seeing as there aren't any problems, just a noisy little mod. :D If there's a next iteration where you address the overhauls you describe, I'd love to take a look at that as well.

Edited by scottadges
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

×
×
  • Create New...