Jump to content

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


Papa_Joe

Recommended Posts

1.0.4 o.O

you must live in the future! XD

Jokes aside, I'll be trying this mod out today. I hope the latest version works in my 1.0.2 build too.

P.S. I just noticed squad actually did release 1.0.4 as a hotfix update... didn't think version numbers would go up so fast

Edited by ebigunso
Link to comment
Share on other sites

1.0.4 o.O

you must live in the future! XD

Jokes aside, I'll be trying this mod out today. I hope the latest version works in my 1.0.2 build too.

P.S. I just noticed squad actually did release 1.0.4 as a hotfix update... didn't think version numbers would go up so fast

Yup, a hot fix to fix existing saves where a capsule had a heat shield.... :D

and yes it will work in KSP from 1.0.0 and up. (probably works in 0.90 as well, but I'm not supporting that... :D)

Link to comment
Share on other sites

Yup, a hot fix to fix existing saves where a capsule had a heat shield.... :D

and yes it will work in KSP from 1.0.0 and up. (probably works in 0.90 as well, but I'm not supporting that... :D)

Based on testing that JPLRepo has done, there is still one outstanding issue with integration to DeepFreeze. If you perform a stock crew transfer to a freezer, and the freezer is full, and the CrewTransferOvverride switch in SM is on (meaning that SM will handle Stock Crew transfers), it loses the kerbal.

I have corrected this and released a new version of SM. Now when you perform a stock transfer under the above conditions, SM ignores the transfer and lets DeepFreeze handle the event and prevent the transfer from occurring.

Release:

Version 4.4.0.2 - Release 24 June, 2015 - Docked Vessel Transfers Edition.

- New: Added StockCrewXferOverride flag to SMInterface. This is an informational flag to let other mods know that my Override code is active

- New: Added check for full DeepFreezer when Stock Transfer Initiated and Override is On. Ignore event if Freezer is full, and allow DeepFreeze to handle it.

Out on Kerbalstuff, Github, & Curse now.

Link to comment
Share on other sites

This is just a catch up post to be sure I have any outstanding issues documented across the many pages of posts:

1. Bug: Multi-Resource, Multi-part transfers are hanging, with no stop button and no moving label display, as well as no Xfer buttons on opposing transfer window. (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=2008632&viewfull=1#post2008632)

2. Bug: KIS is generating an error after a crew transfer via OnCrewTransferred Event handler. (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=2010905&viewfull=1#post2010905)

3. Bug: Entering IVA when a crew transfer is in progress is possible. Should not be allowed. (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=2004103&viewfull=1#post2004103)

4. Bug: Frozen Kerbals are not showing their Vessel in Roster Window. (Found during integration testing with latest version of DeepFreeze Continued)

5. Bug: When cancelling/Saving Settings in Settings Window, Toolbar Icon does not properly revert (found during feature testing)

6. Feature: Add a "Fuel Pump" module? To manage flow rate, ec cost, etc via MM (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=1796561&viewfull=1#post1796561)

7. Feature: Add a Resource Vent part to allow realistic dumping of resources in flight. (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=1901605&viewfull=1#post1901605)

8. Feature: Add support for RT command Queue (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=1809202&viewfull=1#post1809202)

9. Feature: Add support for External Crew Seat transfers (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=1811648&viewfull=1#post1811648)

10. Feature: Add the ability to select all parts of a given resource by "vessel". Example Space station has a vessel docked. Refuel the Vessel, instead of having to select its individual tanks... (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=1876298&viewfull=1#post1876298)

11. Feature: Add Part click toggle to enable/disable buttons in part selections of Transfer Window. (http://forum.kerbalspaceprogram.com/threads/62270-1-0-2-Ship-Manifest-%28Crew-Science-Resources%29-v-4-3-0-2-08-Jun-15?p=2001223&viewfull=1#post2001223)

Ok, this is what I have so far, based on my research of the posts from the last 4 months or so..

...

Catching back up with this list...

1. Complete. Deployed

2. Complete. Deployed

3. I've looked over the object model, done some web research, and still have not found any means to access the kerbal portrait buttons. Still looking, but so far, no joy.

4. Complete. Deployed

5. Complete. Deployed.

6. Next on my list.

7. Next on my list.

8. Researching to understand needed means. (Learning RT)

9. Will follow RT.

10. Complete. Deployed.

11. Complete. Deployed.

So, remaining items are:

6, 7, 8, and 9.

3 may not be possible, but I did add code to clean up errors when in IVA during transfer, so partially addressed.

Edited by Papa_Joe
Link to comment
Share on other sites

Catching back up with this list...

1. Complete. Deployed

2. Complete. Deployed

3. I've looked over the object model, done some web research, and still have not found any means to access the kerbal portrait buttons. Still looking, but so far, no joy.

4. Complete. Deployed

5. Complete. Deployed.

6. Next on my list.

7. Next on my list.

8. Researching to understand needed means. (Learning RT)

9. Will follow RT.

10. Complete. Deployed.

11. Complete. Deployed.

So, remaining items are:

6, 7, 8, and 9.

3 may not be possible, but I did add code to clean up errors when in IVA during transfer, so partially addressed.

for point 3 you could try this:


//kick us back out to the flight camera (you could get fancy and check the camera first, not just kick out to the flight camera. It's all in the CameraManager class)
CameraManager.Instance.SetCameraFlight();

//turn off the IVA cameras/mode
CameraManager.ICameras_DeactivateAll();

and when the xfer is finished:


CameraManager.ICameras_ResetAll();

if that doesn't work, the problem being described sounds like the camera is losing it's reference point. I've read something about that somewhere as well..

Link to comment
Share on other sites

for point 3 you could try this:


//kick us back out to the flight camera (you could get fancy and check the camera first, not just kick out to the flight camera. It's all in the CameraManager class)
CameraManager.Instance.SetCameraFlight();

//turn off the IVA cameras/mode
CameraManager.ICameras_DeactivateAll();

and when the xfer is finished:


CameraManager.ICameras_ResetAll();

if that doesn't work, the problem being described sounds like the camera is losing it's reference point. I've read something about that somewhere as well..

Thanks! I'll give that a whirl.. I poked around the CameraManager class, but didn't play too much with it..

Edit:

Well, that did not seem to make any difference.

The issue I'm trying to deal with is the ability of the user to click on the IVA button during a transfer and get to IVA camera view. I want to prevent this.

First, I have the SM interface disabled during IVA, so a transfer cannot be initiated from IVA, so setting the camera to flight is not needed.

I tried adding the deactivate all at the beginning of the process, and resetting them after the completion of the process.

With these commands in place, the user can still select IVA on a kerbal portrait and still get to the IVA camera view.

Either I need to fire some event to allow updating of the cameras, or it doesn't do what I think it should...

Ideas?

Update: Solved it.

Instead of disabling and resetting all cameras, run the following check in the Transfer Process code (every update) when a crew transfer is active:


if (CameraManager.Instance.currentCameraMode == CameraManager.CameraMode.IVA)
CameraManager.Instance.SetCameraMode(CameraManager.CameraMode.Flight);

This then reverts the view back to flight when a user attempts to click on the IVA button.... no flicker, just cannot go there :D

Yay!

Thanks for pointing me in the right direction!

Edited by Papa_Joe
Link to comment
Share on other sites

Thanks! I'll give that a whirl.. I poked around the CameraManager class, but didn't play too much with it..

Edit:

Well, that did not seem to make any difference.

The issue I'm trying to deal with is the ability of the user to click on the IVA button during a transfer and get to IVA camera view. I want to prevent this.

First, I have the SM interface disabled during IVA, so a transfer cannot be initiated from IVA, so setting the camera to flight is not needed.

I tried adding the deactivate all at the beginning of the process, and resetting them after the completion of the process.

With these commands in place, the user can still select IVA on a kerbal portrait and still get to the IVA camera view.

Either I need to fire some event to allow updating of the cameras, or it doesn't do what I think it should...

Ideas?

Update: Solved it.

Instead of disabling and resetting all cameras, run the following check in the Transfer Process code (every update) when a crew transfer is active:


if (CameraManager.Instance.currentCameraMode == CameraManager.CameraMode.IVA)
CameraManager.Instance.SetCameraMode(CameraManager.CameraMode.Flight);

This then reverts the view back to flight when a user attempts to click on the IVA button.... no flicker, just cannot go there :D

Yay!

Thanks for pointing me in the right direction!

NP. Thought the turning them off was more elegant, I have been testing with that in DeepFreeze, but moved away from it with upcoming changes in DeepFreeze no longer requiring it.


if (CameraManager.Instance.currentCameraMode == CameraManager.CameraMode.IVA)
CameraManager.Instance.SetCameraMode(CameraManager.CameraMode.Flight);

Is exactly what DeepFreeze does as well right now.

Link to comment
Share on other sites

Papa_Joe.

The Unity Style is not persistence.

Every time i start KSP it keep going back to KSP style.

Even putting in autosave on.

And saving...

Using Mac.

Interesting. I'll check it out.

Update.

I noted the following:

I use a dual set of settings vars to allow for cancelling changes when in the Settings Window. These "memory" vars are loaded with the defaults on start. When you open the settings window they are supposed to be updated with the values loaded from file.

I've noted the following issues with the methodology I've employed:

1. If you open settings window from the Space center, the "memory" settings (defaults) are not refreshed with the values loaded from file. If you cancel from this window without saving, the loaded values can be overwritten with default values. If you close without saving, while your current settings remained intact, the memory vars were then "out of sync".

2. If you change scenes, and then open the settings window, the issue in Item 1 above will again apply.

To combat this, I've done the following:

1. I've added calls to refresh the memory vars immediately upon loading values from file.

2. I've also added the same call to refresh the memory vars when a save occurs.

3. Finally I've added the same call when the Settings Window is opened in Space center. IT was already being properly called when in flight.

This way, the memory vars stay in sync with the loaded/altered values.

This also addressed some "unusual" behavior I'd been noticing when I simply "exited" the game using Alt + F4 (Windows unconditional exit of an app).

The above fix will be in the next release.

Edited by Papa_Joe
Link to comment
Share on other sites

Well, good luck.

I 'm having problems when transfer kerbals too. Have CLS installed.

I did transfer Kerbals between a docked ship and the station.

But in the final transfer, when i was to come back the tourists, one off then got lost in transfer.

I lost the contract. :(

First one i lost. But is ok. I imagine that this Tourist got cold and die in space. srsrsrsrsrsrr...

Here a pic of the error. Normally, on every Kerbal transfer i got this, but the transfer occur, on second try on the first, but directly on all others.

19064794719_efffc16660_o.pngscreenshot11 by Rafael Valle, on Flickr

Link to comment
Share on other sites

So, these are stock transfers, with Override on and DeepFreeze installed, based on what I'm seeing.

Ill look into this as well...

Was the tourist actually a Kerbal Type Tourist?

Edited by Papa_Joe
Link to comment
Share on other sites

Yep, a mission control kind of Tourist. :)

You are right, i try the direct approach to transfer, click in hatch and choose transfer...

The crew transfer i use more to resources life support, the vessel options is super.

Solve me a great deal!

Edited by Climberfx
Link to comment
Share on other sites

Yep, a mission control kind of Tourist. :)

Your are right, i try the direct approach to transfer, click in hatch and choose transfer...

The crew transfer i use more to resources life support, the vessel options is super.

Solve me a great deal!

Thanks much. I'll sort it out.

Link to comment
Share on other sites

Hi again Joe.

I'm sure you'll be able to answer this.. I use Sm to xfer reports. Once in a container is there away to xfer individual reports from a container?

Thanks once again

At the moment, no. It simply does a count and if there is "any" science to xfer, it xfers it all. Let me look into detailing out what is in a container. The current interface design would allow it without much pain.

Link to comment
Share on other sites

Thanks much. I'll sort it out.

In my refactoring of my crew transfer event handler to support DeepFreeze, I screwed up handling of crew transfers in progress... so I'd give you the warning on every transfer and not actually handle when it was in progress correctly...

Fix will be in next version.

At the moment, no. It simply does a count and if there is "any" science to xfer, it xfers it all. Let me look into detailing out what is in a container. The current interface design would allow it without much pain.

I've implemented detail viewing of reports in a container.

Now to the left of the part Module, will be a [+] button. clicking on this will expand the module to show the detailed reports. you can transfer all or any of the reports. mouse over the title and you get a more complete description. Space requires I limit what can be shown in the title label.

Ibesw84.png

This will also be included in the next version.

Edited by Papa_Joe
Link to comment
Share on other sites

In my refactoring of my crew transfer event handler to support DeepFreeze, I screwed up handling of crew transfers in progress... so I'd give you the warning on every transfer and not actually handle when it was in progress correctly...

Fix will be in next version.

I've implemented detail viewing of reports in a container.

Now to the left of the part Module, will be a [+] button. clicking on this will expand the module to show the detailed reports. you can transfer all or any of the reports. mouse over the title and you get a more complete description. Space requires I limit what can be shown in the title label.

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

This will also be included in the next version.

Update.

New version released.

Version 4.4.0.3 - Release 1 July, 2015 - Docked Vessel Transfers Edition.

- New: Science transfers now allow individual report transfers from a science container. You can transfer all or any now. Added an Expand/collapse button for clean display.

- New: Altered stock Transfer messaging system to show success messages near portraits. Cleaner look.

- New: General clean up of button displays to prevent overflowing of text.

- Fixed: When Transferring crew, the user can switch to IVA, causing potential camera issues. Switching to IVA is now prevented and a message is displayed near portraits.

- Fixed: Saving Settings sometimes does not "stick" When opening and closing settings without saving in Space Center, default values can overwrite saved values.

- Fixed: Stock Crew transfer were not being handled correctly, and transfer fail message was always being shown.

Link to comment
Share on other sites

With the release of the last version, I decided to expand on the science detail. I also realized I needed to improve on the existing tooltip displays

So, I've been expanding on tooltips across SM and added a fair amount of detail to science reports when expanded.

Sample here:

K4e4z0Q.png

This shows the new tooltip design, and the changes to Science details. I've also opened up details for experiments as well.

I'm still testing, but new release (4.4.1) should be in the next few days.

Link to comment
Share on other sites

nice one joe! this is gonna aid my science collection even further :D

thanks. Thought the additional data would be helpful.

I've spent some time with the tool tips behavior. I'm liking the way it is working now. tooltips now respect the screen boundaries as well as windows.

I expect to be releasing a new version later today/tonight (CST US).

Proposed change list:

Version 4.4.1.0 - Release 0x July, 2015 - Tooltips & Science Xfer Improvements.

- New: Refactored and expanded Tooltips. Changed background, positioning, anchor points, font styles & colors for better readability. Added more tooltips to various windows and tabs.

- New: Added Control Window Tooltip control to settings. If control window Tooltips is off, all tab tooltip settings are disabled.

- New: Added linkage of Control Window Tab Tooltip settings to the Control Window ToolTip control. They now act as children.

- New: Added Detail support to Experiments. Added greater detail to science tooltips. Cleaned up horizontal scroll behavior and layout.

- New: Added labels to button headers in Roster Window.

- New: Added 2 additional Roster List Filters. "Assigned" and "Frozen".

- New: Added active window and tool tip screen edge management. No more positioning windows or tool tips beyond the screen edge when moving.

- Fixed: Control window close button (upper right) did not display tooltip.

- Fixed: Some Roster window action buttons have incorrect text when in Space Center.

Edited by Papa_Joe
Link to comment
Share on other sites

thanks. Thought the additional data would be helpful.

I've spent some time with the tool tips behavior. I'm liking the way it is working now. tooltips now respect the screen boundaries as well as windows.

I expect to be releasing a new version later today/tonight (CST US).

Proposed change list:

Version 4.4.1.0 - Release 0x July, 2015 - Tooltips & Science Xfer Improvements.

- New: Refactored and expanded Tooltips. Changed background, positioning, anchor points, font styles & colors for better readability. Added more tooltips to various windows and tabs.

- New: Added Control Window Tooltip control to settings. If control window Tooltips is off, all tab tooltip settings are disabled.

- New: Added linkage of Control Window Tab Tooltip settings to the Control Window ToolTip control. They now act as children.

- New: Added Detail support to Experiments. Added greater detail to science tooltips. Cleaned up horizontal scroll behavior and layout.

- New: Added labels to button headers in Roster Window.

- New: Added 2 additional Roster List Filters. "Assigned" and "Frozen".

- New: Added active window and tool tip screen edge management. No more positioning windows or tool tips beyond the screen edge when moving.

- Fixed: Control window close button (upper right) did not display tooltip.

- Fixed: Some Roster window action buttons have incorrect text when in Space Center.

New Release out. 4.4.1.0. See OP for details.

Link to comment
Share on other sites

@Papa_Joe Thanks for a great plugin.

After the last update I noticed my toolbar button has disappeared. I was using the stock toolbar. I've tried changing the SMSettings.dat file to use Blizzy's toolbar and it doesn't show up there either. I've also tried turning on verbose and debug logging and didn't see any extra entries in the log file. In fact I can't see anything indicating an error. Nothing but loading and similar messages when I filter on the word "manifest". Let me know what else to look for.

4.4.1.0 of ShipManifest and 1.0.4 of KSP. 1.1.3.1 of CLS if it's in anyway related.

Link to comment
Share on other sites

@Papa_Joe Thanks for a great plugin.

After the last update I noticed my toolbar button has disappeared. I was using the stock toolbar. I've tried changing the SMSettings.dat file to use Blizzy's toolbar and it doesn't show up there either. I've also tried turning on verbose and debug logging and didn't see any extra entries in the log file. In fact I can't see anything indicating an error. Nothing but loading and similar messages when I filter on the word "manifest". Let me know what else to look for.

4.4.1.0 of ShipManifest and 1.0.4 of KSP. 1.1.3.1 of CLS if it's in anyway related.

I'm not sure what your issue may be. Maybe a screen shot of the gamedata folder structure for ShipManifest... Is there an Textures folder? and if so, are there 12 pngs there? Missing icons could cause an issue, or there may be an issue with the loading of the plugin... but, if you are seeing the debug window, that tells me that you are loading the plugin... Also the fact you have an SMSettings.dat file. that is created by the plugin on first run...

finally, maybe a copy of the ksp.log, so I can look at it...

I would expect to see:

[LOG 18:41:40.793] AssemblyLoader: Loading assembly at [your path]\KSP_win\GameData\ShipManifest\Plugins\ShipManifest.dll

[LOG 18:41:40.809] Load(Assembly): ShipManifest/Plugins/SMInterface

and later...

[LOG 18:41:41.234] AddonLoader: Instantiating addon 'SMAddon' from assembly 'ShipManifest'

I loaded the latest version of the plugin via CKAN, just to be sure that the distribution works. I've had no issues...

Edited by Papa_Joe
Link to comment
Share on other sites

hey joe, I get multiple errors when clicking the + to expand the list of science reports. i've clicked the "save log" button on the debug output...where does it get saved to? cheers

- - - Updated - - -

Actually, looking at the output, it is the same error over and over...

Error: in WindowTransfer.SourceDetailsViewer. Error: Argument cannot be null.

Parameter name: key

at System.Collections.Generic.Dictionary`2[system.String,System.String].get_Item (System.String key) [0x00000] in <filename unknown>:0

at ShipManifest.WindowTransfer.ScienceDetailsSource () [0x00000] in <filename unknown>:0

at ShipManifest.WindowTransfer.SourceDetailsViewer () [0x00000] in <filename unknown>:0

Link to comment
Share on other sites

~gamedata\ShipManifest\Plugins\PluginData

Also, if you can describe the conditions, source part and such when the error occurred. Also is it an experiment, or a container you are expanding? A screenie of the "before you click" would also be helpful...

It's not finding the experiment, so I'm curious...

I can correct the error in any case, but the "results" field will be blank... I'd rather better understand what is happening.

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