Jump to content

[1.12.x] Ship Manifest (Crew, Science, & Resources) - v 6.0.8.0 - 28 Apr 23


Papa_Joe

Recommended Posts

I tested 4.1.3, no luck. It has the same behavior.

I built a copy of the mod with some extra debugging in it to print the results of SMAddon.CanShowShipManifest() and that seems to indicate that CanShowShipManifest comes back true*. Not sure if its expected, but that function is called constantly via Update->UpdateHighlighting. The debug line I added with its results basically filled up the debug console instantly. Clearing the console fills it up again immediately, even when the game is paused. Disabling highlighting stopped the spam, but did not fix the issue.

*It actually comes back false initially due to vessel.VesselType returning debris for some reason. However when using [] to switch to another vessel then switch back it starts acting properly and returning true.

Link to comment
Share on other sites

I tested 4.1.3, no luck. It has the same behavior.

I built a copy of the mod with some extra debugging in it to print the results of SMAddon.CanShowShipManifest() and that seems to indicate that CanShowShipManifest comes back true*. Not sure if its expected, but that function is called constantly via Update->UpdateHighlighting. The debug line I added with its results basically filled up the debug console instantly. Clearing the console fills it up again immediately, even when the game is paused. Disabling highlighting stopped the spam, but did not fix the issue.

*It actually comes back false initially due to vessel.VesselType returning debris for some reason. However when using [] to switch to another vessel then switch back it starts acting properly and returning true.

Hmm.. .Ok. Then the issue is elsewhere. There is another method called shouldtoggle in the SMAddon.cs file. This one is called when the toolbar buttons are pressed via OnSMButtonToggle handler. This handler works for both toolbars, so I'm thinking that ShouldToggle is the culprit. In there there is a reference to !PauseMenu.isOpen && !FlightResultsDialog.isDisplaying I have recently learned that these sometimes return null exceptions for unknown reasons. Blizzy's toolbar actually encapsulates them to trap for the error... I've since added that to my code in my current dev build, as well as consolidating bouth shouldToggle and CanShowShipManifest. This may be were you are having issues. Try removing !PauseMenu.isOpen from the test and see if it then works...

Thanks so much for going the extra mile and recompiling the code on your end... There are many times where I simply cannot duplicate the conditions necessary to replicate the issue! If you are recompiling, I suggest you use the latest code base if you are not already doing so... 4.1.4.4.

The CanSHowShipmanifest call is called every update, as conditions can change from frame to frame based on user input. To reduce the spam, i have a static var I use as a latch to catch the first instance only of a frame based method error or message:


if (!frameErrTripped)
{
Utilities.LogMessage(string.Format(" in IsInCLS (repeating error). Error: {0} \r\n\r\n{1}", ex.Message, ex.StackTrace), "Error", true);
frameErrTripped = true;
}

Edited by Papa_Joe
Link to comment
Share on other sites

Ok, I may be closer to tracking it down.

Removing PauseMenu.isOpen didn't help, but throwing in more random debug statements it looks like SMAddon.vessel is not the correct vessel. This also seems to be why SM initially things my Base is Debris. When loading the base UpdateSMcontroller gets called a couple times with different nearby vessels (I've got something of a littering problem) but none of them are the base in question. Then whenever it goes in to the Display function it falls in to step 0a because ActiveVessel != vessel.

Link to comment
Share on other sites

Ok, I think I got it. You're calling UpdateSMcontroller in OnVesselLoaded which in turn sets SMAddon.vessel to the given parameter. This is also called though when new vessels are loaded into physics, so its not always going to be your current vessel. I put in a gated the call to UpdateSMcontroller with a if(data.Equals(FlightGlobals.ActiveVessel)) and that seems to have fixed my problems. Not sure if it broke anything else, but I could switch to other vessels in physics range and it updated the SM dialog accordingly so it seems to be working.

Link to comment
Share on other sites

Ok, I think I got it. You're calling UpdateSMcontroller in OnVesselLoaded which in turn sets SMAddon.vessel to the given parameter. This is also called though when new vessels are loaded into physics, so its not always going to be your current vessel. I put in a gated the call to UpdateSMcontroller with a if(data.Equals(FlightGlobals.ActiveVessel)) and that seems to have fixed my problems. Not sure if it broke anything else, but I could switch to other vessels in physics range and it updated the SM dialog accordingly so it seems to be working.

Outstanding! I did not think about that behavior. That would also explain an issue I had before about a slowdown when coming into proximity to debris a few versions back... I managed to overcome it, but did not realize that this was the cause.

I will be sure to add that to the next version.

Thanks!

i've been having an issue with the newest release that i cant seem to nail down the source.

sometimes a vessel will have an inoperable SM toolbar button. as soon as i dock it with another craft, or in some cases just undock a part of the same craft and immediately re-attach the button lights up again, and the window appears as though it had been open all along.

i cant figure out what parts or circumstances are making it happen though, has anyone else experienced this?

@BobsYerUncle: Since we seem to have identified the issue (thanks jenden!), please try setting your debris to 0 in your KSP configuration. This should eliminate the issue in the short term, until the next release.

Edited by Papa_Joe
Link to comment
Share on other sites

...

Now working on 4.2.0.0

Planned:

Version 4.2.0.0 - Release TBD - Transfer Expansion Edtion. External Crew, Multi-Resources, Multi-Parts.

- New: When using External Seats, crew can be transferred from seat to seat.

- New: You can now "link" 2 resources together, by simply Shift+clicking on a Second Resource. All parts that contain both resources will be displayed, and xfers will be linked. A ratio box will appear to adjust ratios as needed.

- New: You can now link multiple parts in the Transfer window, and move resources from 1:N, N:N and N:1 parts. Will not overfill a target part, and will fill all equally (you can top off multiple parts)

- New: RT command queue is now respected. Antenna switching from the Control Window will now be queued.

Update.

Multi Part Transfers have been tested and committed to GitHub. Also, the SM display issue and a minor button text color display issue have been corrected in this commit.

For those that can and want to, you can fork the code now and recompile to enjoy this feature. I still have the other features as listed above to complete before 4.2 is released.

The transfer window button behavior is changed as follows:

Before:

1. Clicking on a part would deselect another part.

2. Parts could not be directly deselected.

3. The same part could be selected in the Source and target windows, even tho no transfer could occur.

After:

1. Clicking on a part selects that part, and disables that same part in the target scroll window.

2. Clicking on a selected Part again, deselects that part (now a toggle).

3. Clicking on another part will also select that part.

4. Detail window now displays the combined totals for all parts selected.

5. Slider control range now includes total resource for all parts selected.

6. Flow button in details window now affects all selected parts.

One issue at the moment. sometimes switching between resources with parts selected will produce weird display issues in the Transfer Window. Selecting another resource will correct.

I will track it down before release of course.

I will keep everyone posted.

Edited by Papa_Joe
Link to comment
Share on other sites

Open Hatches command from controls menu of SM doesn't work properly. If I open a Hatch on docking port via right click menu, CLS updates living space graph and unites to docked ships. But if I open Hatch via SM menu, CLS doesn't update graph and doesn't unite ships.

Link to comment
Share on other sites

Open Hatches command from controls menu of SM doesn't work properly. If I open a Hatch on docking port via right click menu, CLS updates living space graph and unites to docked ships. But if I open Hatch via SM menu, CLS doesn't update graph and doesn't unite ships.

Thanks for the feedback. I'll take a look. does open all hatches after a close all hatches behave the same?

Update: Ok, I was able to replicate the issue. Interesting that this issue returned. I had it squashed before. I'll be sure to correct it in the next release.

Edited by Papa_Joe
Link to comment
Share on other sites

Noticed a very wired behavior of CLS crew transfer override.

With realism mode, cls and stock transfer override turned on I did the following:

I have a ship (call it A) with docked spaceLab (L). The crew of ship A, kerbonauts A1 and A2 was in the lab L, A3 was in the ship's pod.

Then I docked ship B to other port of L. Transfered A1 and A2 into the ship A and undocked it. Then I also undocked B.

I toggled back to A, deorbit it, land and recover. All crew A1, A2 and A3 was successfully recovered.

Then I returned to ship B and dock it to lab L again. And I've found, that A2 appeared in the lab L.

I'm not sure, that SM caused it, but I think that can be connected in some way with crew transfer delay.

Fortunatly, with realism mode toggled of ship manifest can return this kerbal back to Kerbin.

Link to comment
Share on other sites

Noticed a very wired behavior of CLS crew transfer override.

With realism mode, cls and stock transfer override turned on I did the following:

I have a ship (call it A) with docked spaceLab (L). The crew of ship A, kerbonauts A1 and A2 was in the lab L, A3 was in the ship's pod.

Then I docked ship B to other port of L. Transfered A1 and A2 into the ship A and undocked it. Then I also undocked B.

I toggled back to A, deorbit it, land and recover. All crew A1, A2 and A3 was successfully recovered.

Then I returned to ship B and dock it to lab L again. And I've found, that A2 appeared in the lab L.

I'm not sure, that SM caused it, but I think that can be connected in some way with crew transfer delay.

Fortunatly, with realism mode toggled of ship manifest can return this kerbal back to Kerbin.

Interesting. This was all accomplished using the part tweakables, with SM override on, correct? Did you Undock a or b before the delay was complete (approx 7 seconds)?

It definitely could be the delay, IF the above is true.

I revert the crew, and then trigger an event. on the following frame i initiate the delay timeout, allowing callbacks to complete and video frames to proceed prior to the transfer being re accomplished. The transfer is then performed, and an event fired, that will be effective by the next frame...

What could also be true, is that I'm missing some action that KSP is expecting when using the Tweakables when I override the behavior... I'll investigate. still more to learn it seems. :D

Link to comment
Share on other sites

I installed this mod and now the space station I have in orbit around the mun throws crew member errors

[LOG 20:06:56.357] [PlanetariumCamera]: Focus: Training Station

[EXC 20:06:56.359] ArgumentOutOfRangeException: Argument is out of range.

Parameter name: index

System.Collections.Generic.List`1[internalSeat].get_Item (Int32 index)

KnowledgeBase.CreateVesselCrewList (.Vessel v)

KnowledgeBase.OnMapFocusChange (.MapObject target)

EventData`1[MapObject].Fire (.MapObject data)

PlanetariumCamera.SetTarget (.MapObject tgt)

SpaceTracking.SetVessel (.Vessel v, Boolean keepFocus)

SpaceTracking+

.MoveNext ()

[LOG 20:06:57.383] Flight State Captured

[WRN 20:06:57.383] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Rayby Kerman on crew roster. (Stored index: Rayby Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Geneman Kerman on crew roster. (Stored index: Geneman Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Burwell Kerman on crew roster. (Stored index: Burwell Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Philkin Kerman on crew roster. (Stored index: Philkin Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Lansel Kerman on crew roster. (Stored index: Lansel Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Bilby Kerman on crew roster. (Stored index: Bilby Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Lanbald Kerman on crew roster. (Stored index: Lanbald Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Dorick Kerman on crew roster. (Stored index: Dorick Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Alby Kerman on crew roster. (Stored index: Alby Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Richcal Kerman on crew roster. (Stored index: Richcal Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Tanzon Kerman on crew roster. (Stored index: Tanzon Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Bobfal Kerman on crew roster. (Stored index: Bobfal Kerman)

Link to comment
Share on other sites

I installed this mod and now the space station I have in orbit around the mun throws crew member errors

[LOG 20:06:56.357] [PlanetariumCamera]: Focus: Training Station

[EXC 20:06:56.359] ArgumentOutOfRangeException: Argument is out of range.

Parameter name: index

System.Collections.Generic.List`1[internalSeat].get_Item (Int32 index)

KnowledgeBase.CreateVesselCrewList (.Vessel v)

KnowledgeBase.OnMapFocusChange (.MapObject target)

EventData`1[MapObject].Fire (.MapObject data)

PlanetariumCamera.SetTarget (.MapObject tgt)

SpaceTracking.SetVessel (.Vessel v, Boolean keepFocus)

SpaceTracking+

.MoveNext ()

[LOG 20:06:57.383] Flight State Captured

[WRN 20:06:57.383] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Rayby Kerman on crew roster. (Stored index: Rayby Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Geneman Kerman on crew roster. (Stored index: Geneman Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Burwell Kerman on crew roster. (Stored index: Burwell Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Philkin Kerman on crew roster. (Stored index: Philkin Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Lansel Kerman on crew roster. (Stored index: Lansel Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Bilby Kerman on crew roster. (Stored index: Bilby Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Lanbald Kerman on crew roster. (Stored index: Lanbald Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Dorick Kerman on crew roster. (Stored index: Dorick Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Alby Kerman on crew roster. (Stored index: Alby Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Richcal Kerman on crew roster. (Stored index: Richcal Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Tanzon Kerman on crew roster. (Stored index: Tanzon Kerman)

[WRN 20:06:57.384] [Protocrewmember]: Instance of crewmember ProtoCrewMember in part MK3.Akademy on Training Station did not match instance of Bobfal Kerman on crew roster. (Stored index: Bobfal Kerman)

Did you perform any actions at all, or did you just "install" the mod? I've never seen any of these errors before. Under what conditions does it occur? Did you rename any crew, and if so are you using KerbalStats?

Are you using Exception detector to trap this or is it in the KSP log?

any additional info you can provide would be helpful.

Update: I did a quick search online for this and found... http://forum.kerbalspaceprogram.com/threads/113968-Corrupt-Save-due-to-space-station-seats

So it does not look like it is SM causing it... The poster of this thread was using Crew manifest, and SM is based on that for crew transfers, but it looks like the space station mod itself..... read it and see if it applies.

Edited by Papa_Joe
Link to comment
Share on other sites

Interesting. This was all accomplished using the part tweakables, with SM override on, correct? Did you Undock a or b before the delay was complete (approx 7 seconds)?

It definitely could be the delay, IF the above is true.

I revert the crew, and then trigger an event. on the following frame i initiate the delay timeout, allowing callbacks to complete and video frames to proceed prior to the transfer being re accomplished. The transfer is then performed, and an event fired, that will be effective by the next frame...

What could also be true, is that I'm missing some action that KSP is expecting when using the Tweakables when I override the behavior... I'll investigate. still more to learn it seems. :D

Oh, I've forgot to mention this detail. I've transfered kerbals with left click menu on hatches. As I understand, SM overrides it's functional.

So, I've initiated transfer of A2 again before first one completed. I clicked on a lab hatch, transfered A2 to ship, then immediately click on the hatch again and see, that A2 still listed there. I thought, I've just misclicked first time and transfered him again.

I think, that I haven't undocked ship before transfer had completed - there was some other stuff, that I did with ships, and I doubt I've done it in less, than 7 seconds.

Link to comment
Share on other sites

Oh, I've forgot to mention this detail. I've transfered kerbals with left click menu on hatches. As I understand, SM overrides it's functional.

So, I've initiated transfer of A2 again before first one completed. I clicked on a lab hatch, transfered A2 to ship, then immediately click on the hatch again and see, that A2 still listed there. I thought, I've just misclicked first time and transfered him again.

I think, that I haven't undocked ship before transfer had completed - there was some other stuff, that I did with ships, and I doubt I've done it in less, than 7 seconds.

Ok, that makes sense.

If you initiate another transfer immediately after the first, I can see where that could cause an issue. The process for the override is as follows:

Click on the kerbal and initiate the transfer.

1. I immediately revert the transfer and initiate the delay function

2. The next Frame updates to commit the reversion, and the sound and delay begin.

3. when the delay is complete, I then perform the move again. So, the kerbals will appear to be in their original places (and actually are) until the completion of the delay function.

4. The next frame updates to commit the move and update the portraits.

I'm not running the events asynchronously, and I'm reusing a single static object to handle persistence between frames, so it could get confused. I'll have to look at how I'm performing the data storage to allow for that behavior. I'm looking at the same issue with multi Part/multi resource transfers as well. You could conceivably try to transfer 2 different kerbals within the delay period...

Likely, I'll use an object collections to manage the storage instead of static vars. Also, I can disable the button on the tweakable during the transfer...

We should be able to overcome the problem :D

Edited by Papa_Joe
Link to comment
Share on other sites

Yes, probably the issue earlier in the thread

Indeed it is, and based on the combined efforts of you fine players, and some research, we believe it is related to the proximity of debris. I left out a check to see if the vessel being loaded in th4e event OnVesselLoad was actually the active vessel, so SM sometimes thinks that the debris that just appeared in the scene is the current vessel. To overcome this issue in the short term, you can remove your debris from your game, or switch between vessels using the [ ] keys... Sorry for the inconvenience.

To permanently correct the issue, I've added a check for the active vessel in my dev build. I'm in the midst of a fairly large update atm so it will have to wait until I get to a stable point.

Currently I have multi-part and multi-resource transfers working. I'm testing them thoroughly to make sure there are no surprises, but soon you will be able to transfer LF+O to multiple parts at the same time.

That should make those fueling runs more enjoyable... :D

Look back a page or 2 for the proposed update list for version 4.2.0.0

With the impending release of KSP version 1.0, I'll likely want to test it against the release as well...

More coming soon.

Link to comment
Share on other sites

Since I currently cannot run the game on my outdated laptop, I'd like to ask a question regarding the Kerbal profession editing feature.

I understand that when altering a Kerbal's profession, Ship Manifest appends various ASCII characters after the Kerbal's name (due to SQUAD basing professions on the hash of the name). So do these random characters actually get rendered in-game?*

*I recall seeing a screenshot where a Kerbal's name was followed by a string of smileys, presumably the ASCII required to effect the profession change. That seems rather...immersion breaking.

Link to comment
Share on other sites

Since I currently cannot run the game on my outdated laptop, I'd like to ask a question regarding the Kerbal profession editing feature.

I understand that when altering a Kerbal's profession, Ship Manifest appends various ASCII characters after the Kerbal's name (due to SQUAD basing professions on the hash of the name). So do these random characters actually get rendered in-game?*

*I recall seeing a screenshot where a Kerbal's name was followed by a string of smileys, presumably the ASCII required to effect the profession change. That seems rather...immersion breaking.

Hey sumghai,

Yes I do append ascii chars to affect the profession change and allow persistence.

The only place where it seems to show up is in map mode when a kerbal is standing on a planetary body (or moon).

the image you saw was likely in this post: http://forum.kerbalspaceprogram.com/threads/62270-0-90-0-Ship-Manifest-%28Crew-Science-Resources%29-v-4-1-4-4-10-Apr-15?p=1755250&viewfull=1#post1755250.

I agree it would be immersion breaking, and it is NOT an ideal solution. I would much prefer that Squad did NOT tie the profession to the name as they have done.

However, given the current constraints, this was the "solution" I came up with with 5thHorseman's assistance. This is also why I have the feature turned off by default and warn to "use at your own risk". My profession management method also does not take into account "custom" professions that are now available in some new mods.

With my plan to create Roster Manager, I'm looking into leveraging KerbalStats, where the naming and professions are actively managed using a separate persistence file.. Upon load of your game, the plugin will strip the name and profession in memory, replacing them with their new versions after load of the game save. The upside, is that it is more "elegant" and not a hack, and accounts for custom professions. The downside of this is the need to continue using KerbalStats if you wish to continue with the renames and profession changes. Uninstall KerbalStats, and your kerbals revert to their original name and profession. For many that will not be a bad thing.

Now this also introduces a compatibility issue. My current profession management feature is NOT compatible with KerbalStats. If you use KerbalStats, be sure that Profession management is turned off in SM. If you do happen to run into this issue, you can remove the ascii chars in the game save and this will correct the issue. However, your professions will change based on what ever name you have in the game save. I may add a "revert" feature to remove the ascii chars via the Roster Window, to help if anyone wishes to revert the Profession changes in the game save.

I intend to provide both options in Roster Manager, as some folks may not wish to use kerbalstats, and instead use the method that alters their game save to manage professions. When Roster manager is released, I will be removing the Roster feature from SM, as it really does not fit the current "Theme" of the plugin and is a holdover from the Crew manifest days. All the same functionality will then be in Roster Manager (plus more).

You know me, I like to offer choices.

Edited by Papa_Joe
Link to comment
Share on other sites

Yes I do append ascii chars to affect the profession change and allow persistence.

The only place where it seems to show up is in map mode when a kerbal is standing on a planetary body (or moon).

the image you saw was likely in this post: http://forum.kerbalspaceprogram.com/threads/62270-0-90-0-Ship-Manifest-%28Crew-Science-Resources%29-v-4-1-4-4-10-Apr-15?p=1755250&viewfull=1#post1755250.

Yep, that's the one.

I agree it would be immersion breaking, and it is NOT an ideal solution. I would much prefer that Squad did NOT tie the profession to the name as they have done.

Likewise. I talked to some folks in IRC, and apparently the reason for tying professions to names is so that they persist across savefiles.

Interestingly, according to Scott Manley, gender in 1.0 is apparently defined via a separate variable, so the persistence reasoning seems to be rather weak.

However, given the current constraints, this was the "solution" I came up with with 5thHorseman's assistance. This is also why I have the feature turned off by default and warn to "use at your own risk". My profession management method also does not take into account "custom" professions that are now available in some new mods.

Now with my plan to create Roster Manager, I'm looking into leveraging KerbalStats, where the naming and professions are actively managed using a separate persistence file.. Upon load of your game, the plugin will strip the name and profession in memory, replacing them with their new versions after load of the game save. The upside, is that it is more "elegant" and not a hack, and accounts for custom professions. The downside of this is the need to continue using KerbalStats if you wish to continue with the renames and profession changes. Uninstall KerbalStats, and your kerbals revert to their original name and profession. For many that will not be a bad thing.

Now this also introduces a compatibility issue. My current profession management feature is NOT compatible with KerbalStats. If you use KerbalStats, be sure that Profession management is turned off in SM. If you do happen to run into this issue, you can remove the ascii chars in the game save and this will correct the issue. However, your professions will change based on what ever name you have in the game save.

I intend to provide both options in Roster Manager, as some folks may not wish to use kerbalstats, and instead use the method that alters their game save to manage professions. When Roster manager is released, I will be removing the Roster feature from SM, as it really does not fit the current "Theme" of the plugin and is a holdover from the Crew manifest days.

You know me, I like to offer choices.

Fair enough. I eagerly await for Roster Manager's completion and release.

I can't seem to find KerbalStats in the plugin library, could you please toss me a link? Found it here.

Edited by sumghai
Link to comment
Share on other sites

What Squad should do is, upon creation of a Kerbal, base its profession on its name hash and save that as a separate variable. This will allow same named Kerbals across saves to have the same profession unless changed by an addon, and allow graceful name and profession changes.

Link to comment
Share on other sites

What Squad should do is, upon creation of a Kerbal, base its profession on its name hash and save that as a separate variable. This will allow same named Kerbals across saves to have the same profession unless changed by an addon, and allow graceful name and profession changes.

Now this is the perfect solution.

+rep

Link to comment
Share on other sites

Indeed it is, and based on the combined efforts of you fine players, and some research, we believe it is related to the proximity of debris. I left out a check to see if the vessel being loaded in th4e event OnVesselLoad was actually the active vessel, so SM sometimes thinks that the debris that just appeared in the scene is the current vessel. To overcome this issue in the short term, you can remove your debris from your game, or switch between vessels using the [ ] keys... Sorry for the inconvenience.

To permanently correct the issue, I've added a check for the active vessel in my dev build. I'm in the midst of a fairly large update atm so it will have to wait until I get to a stable point.

Currently I have multi-part and multi-resource transfers working. I'm testing them thoroughly to make sure there are no surprises, but soon you will be able to transfer LF+O to multiple parts at the same time.

That should make those fueling runs more enjoyable... :D

Look back a page or 2 for the proposed update list for version 4.2.0.0

With the impending release of KSP version 1.0, I'll likely want to test it against the release as well...

More coming soon.

Ok. At least I know what it is. Thank you.

Link to comment
Share on other sites

...

Likewise. I talked to some folks in IRC, and apparently the reason for tying professions to names is so that they persist across savefiles.

Interestingly, according to Scott Manley, gender in 1.0 is apparently defined via a separate variable, so the persistence reasoning seems to be rather weak.

...

Yep, it is weak. My guess is that the name is "hardcoded" across a lot of code as professions and contracts "evolved", and would require a fair bit of refactoring to decouple. Now that they got a chance to do the gender after their "learning curve", they did that right.

I'm hoping they will revisit it at some later date, now that they have a pattern to use. However, I'm also guessing that the gender is not embedded into contracts and professions as the name is...

I do have to admit I've learned a lot over the past year or so, and I'm in the midst of a serious refactor of SM as well...

Edited by Papa_Joe
Link to comment
Share on other sites

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

×
×
  • Create New...