Jump to content

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


Papa_Joe

Recommended Posts

I think the KIS inventory in a ship is associated with the seat, not the kerbal. When in the VAB, you can open and assign to the inventory for the various seats. So if you move a kerbal to another seat, I think the inventory stays behind. Think of that drill as being in a cabinet next to the seat in the capsule. If you move Bob to the science lab, the drill stays in the capsule. The items only go into the kerbal's inventory when he gets up to go on EVA, not when he gets up to go to another seat.

Link to comment
Share on other sites

I do not see any sign of it in storage.

KIS tools are assigned to seats, not to Kerbals or to the part. However they won't show up unless there is a Kerbal in that seat. If you transfered the Kerbal back to his original seat you should still see the screwdriver there.

I'm not sure how KIS handle stock internal transfers but I imagine they swap seat inventories too, if they do anything at all. Try it stock and see if you keep the screwdriver.

Edit: Damn ninja! ;']

Link to comment
Share on other sites

Thanks, guys. I'll take another look. I *believe* I tried that, but it is possible that he was in the right module, but wrong seat :)

Edit: Yup, no sign of it there. Interestingly, I tested with a different screwdriver, moving him to a different module. The screwdriver didn't move with him, but was there on his return. Maybe has something to do with a reload cycle happening? (Quitting the game and controlling that vessel again, after having moved?)

Edited by WarrenSchultz
Link to comment
Share on other sites

Thanks for the discussion. It has been very helpful and enlightening. It does bring up a question tho...

Would it make sense to have a feature to allow the inventory for the seat to move with the kerbal, kind of like a "toolbox"?. If it is assigned to the seat, I do have access to that. If I detected the presence of inventory, I could give you the choice to move it...

As I understand it... kerbals never go anywhere without their snacks... (brown bag anyone?) :D

Edited by Papa_Joe
Link to comment
Share on other sites

I came across an incompatibility/bug with PaladinLabs DeepFreeze cryonic crew storage (or at least the latest version available, revived by someone other than the original author, and its the first time I've used it). Not sure if it's unique to that mod, a bug with that mod, or a more general issue.

The Cryofreezer part has a capacity of only 1 (non-frozen) Kerbal. If there is a Kerbal in it, and you initiate a transfer of another Kerbal to it, SM seems to not recognize that it is full, and on completion the transferring Kerbal will disappear. I reproduced it with stock override both on and off, realism on and off, and CLS on and off. And I'm on 4.2.1.1.

Edited by curiousepic
Link to comment
Share on other sites

I came across an incompatibility/bug with PaladinLabs DeepFreeze cryonic crew storage (or at least the latest version available, revived by someone other than the original author, and its the first time I've used it). Not sure if it's unique to that mod, a bug with that mod, or a more general issue.

The Cryofreezer part has a capacity of only 1 (non-frozen) Kerbal. If there is a Kerbal in it, and you initiate a transfer of another Kerbal to it, SM seems to not recognize that it is full, and on completion the transferring Kerbal will disappear. I reproduced it with stock override both on and off, realism on and off, and CLS on and off. And I'm on 4.2.1.1.

Interesting. The fact that you state "...I reproduced it with stock override both on and off..." seems to indicate is it NOT SM. However, if you were using SM to make the transfer, then the override button has no effect. However, if you were performing a Stock transfer, and override is off, then that points to an issue outside of SM.

Now, given that SM does not recognize that the part is full, is another issue and I'll at least need to look into that. I'll grab a copy of the crew storage mod and take a look.

Update:

Looking at the code, the author manipulates the crew count on the fly. It appears that this is to account for kerbals entering the space and then being frozen. There is a note indicating that the iscrewablewhenfull flag is set to true to allow for a kerbal to enter the space even when the cryonic seats are full...

I don't use that, but I do look at the max crew for each part. I do not count seats. I'll do a little digging and use the part myself to "characterize the events". Looks like I may neeed to add some code to account for this particular mod. Neat idea tho. don't remember this one...

Edited by Papa_Joe
Link to comment
Share on other sites

Seriously ridiculously useful mod right here. Fantastic stuff. I have but one humble request! Would it be possible to identify the type of Kerbal in the crew list? I.e., Scientist, Pilot, Engineer, and possibly a skill rating? This would be awesome for when you're using Kerbals you're just not quite familiar with, or trying to set up MKS Training Akademies, etc.

Link to comment
Share on other sites

Seriously ridiculously useful mod right here. Fantastic stuff. I have but one humble request! Would it be possible to identify the type of Kerbal in the crew list? I.e., Scientist, Pilot, Engineer, and possibly a skill rating? This would be awesome for when you're using Kerbals you're just not quite familiar with, or trying to set up MKS Training Akademies, etc.

Thanks a lot!

As for your request, which version of SM are you using? Which list are you referring to? The Roster window or the Transfer window? IIRC, I list the type in both places..

In the Roster Window, each kerbal shows their profession in parentheses.

687474703a2f2f692e696d6775722e636f6d2f7575334c7847372e706e67

In the Transfer window, the kerbals in each part show their profession..

687474703a2f2f692e696d6775722e636f6d2f6f44486c4e666f2e706e67

I certainly can look at the skill rating...

Now this does bring up something I forgot about... We don't really have a list of all kerbals in a given vessel do we... That could be helpful...

Edited by Papa_Joe
Link to comment
Share on other sites

Thanks a lot!

As for your request, which version of SM are you using? Which list are you referring to? The Roster window or the Transfer window? IIRC, I list the type in both places..

In the Roster Window, each kerbal shows their profession in parentheses.

https://camo.githubusercontent.com/13b15c3bf366d8e3165b3520c687bfbe5a008827/687474703a2f2f692e696d6775722e636f6d2f7575334c7847372e706e67

In the Transfer window, the kerbals in each part show their profession..

https://camo.githubusercontent.com/80cc22fe1fcf8c28f4fb81046d2be77a4dc3c750/687474703a2f2f692e696d6775722e636f6d2f6f44486c4e666f2e706e67

I certainly can look at the skill rating...

Now this does bring up something I forgot about... We don't really have a list of all kerbals in a given vessel do we... That could be helpful...

OK, so here is a revision with s filter in place for the kerbal list...

BuI5mFG.png

Thoughts?

Link to comment
Share on other sites

I have run into an issue with this mod. Whenever I try to transfer LiquidFuel and Oxidiser from 1 tank to 3 or more other tanks (I haven't tested many other configurations but it didn't yet happen with 1 or 2 tanks) it freezes the game. I'm running 4.2.1.1.

Link to comment
Share on other sites

I don't use that, but I do look at the max crew for each part. I do not count seats. I'll do a little digging and use the part myself to "characterize the events". Looks like I may neeed to add some code to account for this particular mod. Neat idea tho. don't remember this one...

Nice, glad I could help again.

Link to comment
Share on other sites

I have run into an issue with this mod. Whenever I try to transfer LiquidFuel and Oxidiser from 1 tank to 3 or more other tanks (I haven't tested many other configurations but it didn't yet happen with 1 or 2 tanks) it freezes the game. I'm running 4.2.1.1.

Thanks for the feedback!

Can you give me a bit more detail? Are all the parts stock or are some part mod parts? I've done countless transfers to many combinations and have had no issue. I've been using a space station for testing, so I have up to 30 tanks to play with...

Is the issue from source to target or target to source or matters not?

Any additional info you can provide would help. also, if you go to Settings, Config, and turn on verbose logging and the debug window. there will be an output generated. click on save and post that. It will hlep with the troubleshooting.

Thanks!

Edited by Papa_Joe
Link to comment
Share on other sites

Thanks for the feedback!

Can you give me a bit more detail? Are all the parts stock or are some part mod parts? I've done countless transfers to many combinations and have had no issue. I've been using a space station for testing, so I have up to 30 tanks to play with...

Is the issue from source to target or target to source or matters not?

Any additional info you can provide would help. also, if you go to Settings, Config, and turn on verbose logging and the debug window. there will be an output generated. click on save and post that. It will hlep with the troubleshooting.

Thanks!

I'm not able to provide the log because once the game frezes i can't click on anything. I have instead taken a few screenshots which show when this happened.

It doesn't seem to matter which way I'm transfering the resource or whether it is a modded or stock fuel tank. When I transfer LiquidFuel and Oxidizer (at the same time) I'm only able to transfer from 1 tank to up to 2 other tanks. I can also transfer from 2 to other 2 tanks without issues. Transfering to 3 tanks freezes the game.

http://i.imgur.com/XPv4Lj3.jpg

http://i.imgur.com/JBhd0bt.jpg

I have tired only LiquidFuel and only Oxidizer and then the problem first occured when transfering it from 1 to 5 tanks. However in this case It did transfer some of the fuel prior to freeze. It usually freezes right when you press the Xfer button.

http://i.imgur.com/OLUG1zl.jpg

I have also tried the Monopropellant and that gave the same result as LiquidFuel + Oxidizer.

http://i.imgur.com/NTdMfgm.jpg

I have many mods installed, here is the screenshot of my GameData contents.

http://i.imgur.com/vu1YJEN.jpg

Let me know if there is anything else I can test.

Link to comment
Share on other sites

I'm not able to provide the log because once the game frezes i can't click on anything. I have instead taken a few screenshots which show when this happened.

It doesn't seem to matter which way I'm transfering the resource or whether it is a modded or stock fuel tank. When I transfer LiquidFuel and Oxidizer (at the same time) I'm only able to transfer from 1 tank to up to 2 other tanks. I can also transfer from 2 to other 2 tanks without issues. Transfering to 3 tanks freezes the game.

http://i.imgur.com/XPv4Lj3.jpg

http://i.imgur.com/JBhd0bt.jpg

I have tired only LiquidFuel and only Oxidizer and then the problem first occured when transfering it from 1 to 5 tanks. However in this case It did transfer some of the fuel prior to freeze. It usually freezes right when you press the Xfer button.

http://i.imgur.com/OLUG1zl.jpg

I have also tried the Monopropellant and that gave the same result as LiquidFuel + Oxidizer.

http://i.imgur.com/NTdMfgm.jpg

I have many mods installed, here is the screenshot of my GameData contents.

http://i.imgur.com/vu1YJEN.jpg

Let me know if there is anything else I can test.

thanks so much for taking the time to do this. I will look over everything and get to investigating!

Edit:

After looking over the screen shots, I see what the issue is. I have experienced this is testing, but thought I had it worked out.

I will resolve it and get out an update.

Thanks for your effort. It was very helpful.

Edited by Papa_Joe
Link to comment
Share on other sites

Interesting. The fact that you state "...I reproduced it with stock override both on and off..." seems to indicate is it NOT SM. However, if you were using SM to make the transfer, then the override button has no effect. However, if you were performing a Stock transfer, and override is off, then that points to an issue outside of SM.

Now, given that SM does not recognize that the part is full, is another issue and I'll at least need to look into that. I'll grab a copy of the crew storage mod and take a look.

Update:

Looking at the code, the author manipulates the crew count on the fly. It appears that this is to account for kerbals entering the space and then being frozen. There is a note indicating that the iscrewablewhenfull flag is set to true to allow for a kerbal to enter the space even when the cryonic seats are full...

I don't use that, but I do look at the max crew for each part. I do not count seats. I'll do a little digging and use the part myself to "characterize the events". Looks like I may neeed to add some code to account for this particular mod. Neat idea tho. don't remember this one...

Hi Papa_Joe, yes I revived this mod for 1.0.x.

I've looked through the DeepFreeze code again and believe it is not entirely working the way I think the original author intended, and it indeed is not playing nicely with SM.

I'm working on fixes from a DeepFreeze angle, and believe I got it all working - EXCEPT - SM when it does crew transfers in real mode, during the delay processing there appears to be no way for another mod to know that this is happening as you have all your vars set to internal and there is no API? So I can start a xfer in SM and still move and freeze/thaw them during the process. When SM finishes the transfer - suddenly I have TWO crew.

The quickest fix for this I can see (other than implementing an Interface for SM) would be to expose crewXfer in SMAddon that I can check, or perhaps in WindowTransfer.TransferCrewMemberComplete you should be checking the crew member is still there before completing the move?

Edited by JPLRepo
Link to comment
Share on other sites

Hi Papa_Joe, yes I revived this mod for 1.0.x.

I've looked through the DeepFreeze code again and believe it is not entirely working the way I think the original author intended, and it indeed is not playing nicely with SM.

I'm working on fixes from a DeepFreeze angle, and believe I got it all working - EXCEPT - SM when it does crew transfers in real mode, during the delay processing there appears to be no way for another mod to know that this is happening as you have all your vars set to internal and there is no API? So I can start a xfer in SM and still move and freeze/thaw them during the process. When SM finishes the transfer - suddenly I have TWO crew.

The quickest fix for this I can see (other than implementing an Interface for SM) would be to expose crewXfer in SMAddon that I can check, or perhaps in WindowTransfer.TransferCrewMemberComplete you should be checking the crew member is still there before completing the move?

Good to hear from you!

I agree with you.

One of the things that is beginning to crop up is the impact of my change a few versions ago to delay the actual move of the kerbals. Prior to 1.0.2 I had been making the move, and simply "simulating" the delay in my code. It appears that was less of an issue for mods, and more of an issue for the user experience. When I made the change to delay the actual move, it became more of an issue for mods.

I wonder if I should make the move immediate and delay the display update as before for improved compatibility.

As for an API, I hadn't considered it, and really don't know what I could expose (other than what you mentioned) that would be of value to other mods. I am open to the idea, and if there is value in it I would make it happen. Exposing event flags is certainly possible, and I should be checking to see if the kerbals are still there when I complete. Thanks for noting that.

Let me know your thoughts. In the short term, reverting the crew move behavior back to immediate and simply documenting it in the wiki would likely solve the issue. Same goes for stock crew transfers with override...

Edited by Papa_Joe
Link to comment
Share on other sites

Good to hear from you!

I agree with you.

One of the things that is beginning to crop up is the impact of my change a few versions ago to delay the actual move of the kerbals. Prior to 1.0.2 I had been making the move, and simply "simulating" the delay in my code. It appears that was less of an issue for mods, and more of an issue for the user experience. When I made the change to delay the actual move, it became more of an issue for mods.

I wonder if I should make the move immediate and delay the display update as before for improved compatibility.

As for an API, I hadn't considered it, and really don't know what I could expose (other than what you mentioned) that would be of value to other mods. I am open to the idea, and if there is value in it I would make it happen. Exposing event flags is certainly possible, and I should be checking to see if the kerbals are still there when I complete. Thanks for noting that.

Let me know your thoughts. In the short term, reverting the crew move behavior back to immediate and simply documenting it in the wiki would likely solve the issue. Same goes for stock crew transfers with override...

Hi again Papa_Joe.

Hmmm.. reverting your crew move behavior isn't a clean fix from the perspective of the actual xfer process. But would remove the issue.

and as for exposing flags - perhaps a simple Interface exposing the Bools for the various Xfers might be useful to other mods? IE: A clean Interface file like the CLS one you use would be best. An ugly one would be making the bools public.

What about this idea:

How about using the actual in-game crew transfer 'CrewTransfer.Create' method. I haven't tried it myself, but I'm assuming this is how the Xfer works when you click on the hatch of crewed parts and it also fires GameEvents.onCrewTransferred which other mods can use to know when a xfer is happening (which DeepFreeze is currently doing).

Link to comment
Share on other sites

Hi again Papa_Joe.

Hmmm.. reverting your crew move behavior isn't a clean fix from the perspective of the actual xfer process. But would remove the issue.

and as for exposing flags - perhaps a simple Interface exposing the Bools for the various Xfers might be useful to other mods? IE: A clean Interface file like the CLS one you use would be best. An ugly one would be making the bools public.

What about this idea:

How about using the actual in-game crew transfer 'CrewTransfer.Create' method. I haven't tried it myself, but I'm assuming this is how the Xfer works when you click on the hatch of crewed parts and it also fires GameEvents.onCrewTransferred which other mods can use to know when a xfer is happening (which DeepFreeze is currently doing).

Agreed. Ideally, notification of a transfer in progress would be good. I just didn't "expect" that my little mod would reach the point of other mods would wish to "hook" in. :D

I can create an interface and make it available. I will also explore the crew transfer create method, but even then, due to my desire for a delay (for realism purposes), the notification of the action in progress would still be needed. Let me explore the code and see what makes sense.

Thanks so much for the feedback. I'll keep you posted on it. For sure expect the flag CrewXfer to be exposed, along with the source part/seat and target part/seat as well as the kerbal(s) in question. from there I'll look at the best method for event notification of completion.

At the very least we can discuss what the interface should "end up with" and rpovide some testing builds before I release to the wild.

Edited by Papa_Joe
Link to comment
Share on other sites

Agreed. Ideally, notification of a transfer in progress would be good. I just didn't "expect" that my little mod would reach the point of other mods would wish to "hook" in. :D

I can create an interface and make it available. I will also explore the crew transfer create method, but even then, due to my desire for a delay (for realism purposes), the notification of the action in progress would still be needed. Let me explore the code and see what makes sense.

Thanks so much for the feedback. I'll keep you posted on it. For sure expect the flag CrewXfer to be exposed, along with the source part/seat and target part/seat as well as the kerbal(s) in question. from there I'll look at the best method for event notification of completion.

At the very least we can discuss what the interface should "end up with" and rpovide some testing builds before I release to the wild.

Okay, I have a proposed interface built and in test.

I've documented it here: https://github.com/PapaJoesSoup/ShipManifest/wiki/4.0-SMInterface.dll

I'll be updating this documentation as I get near to release of the next version of SM.

Link to comment
Share on other sites

Hi there, not sure if this has been previously mentioned but I have encountered what seems to be a bug?

I have CLS installed along side the latest version of this mod. The bug occurs after moving successfully moving one crew from one living space to another (which occurs instantly). This move is fine but any subsequent Xfer results in the button being replaced by "Moving", result in unable to close the windows and unable to utilise ship manifest until the game is completely restarted (I have tried reloading, going back to main menu etc).

Many thanks

Casper

Link to comment
Share on other sites

Hi there, not sure if this has been previously mentioned but I have encountered what seems to be a bug?

I have CLS installed along side the latest version of this mod. The bug occurs after moving successfully moving one crew from one living space to another (which occurs instantly). This move is fine but any subsequent Xfer results in the button being replaced by "Moving", result in unable to close the windows and unable to utilise ship manifest until the game is completely restarted (I have tried reloading, going back to main menu etc).

Many thanks

Casper

I encountered this error as well in my testing for the new interface. Thanks for reporting it.

I'm refactoring the Crew transfer code to allow other modders access to data during the transfer process, so I'll be sure to correct this error. Expect a fix in the next release.

Link to comment
Share on other sites

I encountered this error as well in my testing for the new interface. Thanks for reporting it.

I'm refactoring the Crew transfer code to allow other modders access to data during the transfer process, so I'll be sure to correct this error. Expect a fix in the next release.

Update: I discovered the cause of the Transfer Issue. Under certain conditions, if you go into the Settings window and cancel without saving, you can lose your sound file path information.

If you look in Settings, Sounds, you will note that your sound file entries have no data. If you delete the SMSettings.dat file, SM will rebuild it for you. However, if you wish to keep your existing settings, then replace the sound entries with the values shown in the Wiki under the Settings window, Sounds tab (image shown here) and click save.

687474703a2f2f692e696d6775722e636f6d2f544a49634549382e706e67

This is likely the cause of the resource transfer issues as well, since both use sounds...

This has been corrected and will be included in the next update.

Edited by Papa_Joe
Link to comment
Share on other sites

Update:

I have published the code changes for Release 4.3.0.0 to Github. It is ready for integration testing by JPLRepo. From what I understand he will need a bit of time to absorb and integrate (several days).

I'd like to give him what ever time he needs to ensure we don't have to rework the interface after I release.

The preliminary change log is as follows:

Version 4.3.0.0 - Pre-Release xx May, 2015 - CrewTransfer Mod Interface & Refactoring Edition.

  • New: Refactored Crew transfers into separate class and added events to improve visibility and state management.
  • New: Added SMInterface.dll for other mods to detect Crew xfers in progress and act accordingly.
  • New: Added Kerbal Filter for Roster Window: All, vessel, Available, Dead/Missing. Vessel is omitted in Space Center.
  • New: Refactoring - moved window vars from Settings into window level code.
  • New: Altered Settings Save to segregate Hidden settings for ease of identification by users.
  • Fixed: Bug in multi-part transfers that lock transfer in run state, with no progress.
  • Fixed: Bug in Crew Transfer with CLS installed. First transfer works fine, subsequent xfers fail, and Transfer is stuck in moving.

For those that may have missed it earlier in the thread, the new Roster window looks like this:

BuI5mFG.png

Also, the wiki currently shows the planned changes to the SMSettings.dat file. It also contains the details of the new SMInterface.dll.

Thanks for everyone's patience.

This release will open the door to other mods to see into my crew transfer process. Hopefully this will eliminate/mitigate potential compatibility issues with multiple crew based actions during the transfer process.

Edited by Papa_Joe
Link to comment
Share on other sites

Update:

I have published the code changes for Release 4.3.0.0 to Github. It is ready for integration testing by JPLRepo. From what I understand he will need a bit of time to absorb and integrate (several days).

...

For those that may have missed it earlier in the thread, the new Roster window looks like this:

http://i.imgur.com/BuI5mFG.png

...

This release will open the door to other mods to see into my crew transfer process. Hopefully this will eliminate/mitigate potential compatibility issues with multiple crew based actions during the transfer process.

Just a note:

With the release of 4.3.0.0, I'm discontinuing further Roster Window development. I'm now actively coding its replacement, Roster Manager, which will provide a much more robust experience. Once I've released the early alpha of Roster Manager, I will begin stripping out most of the non vessel related functionality in the Roster Window, leaving ONLY those things directly related to the vessel in Preflight or flight. SO, this means you will have a limited ability to assign crew to a vessel or remove crew from a vessel. as a result, only the active vessel's crew and any available crew will be listed in the pared down window.

I will be announcing more on this as I get closer to an initial release of Roster Manager, and ensure that no functionality is lost in the process of transition.

Here is a teaser screenshot of some of the early work. I intend to provide a tabbed edit section, that will provide much more functionality than currently exists. Check out the Roster Manager development thread for more.

V1KmpZX.png

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...