Jump to content

How to override partial vessel control?


Recommended Posts

I've been experimenting with partial vessel control in post KSP 1.2 release, and haven't had much luck overriding it. I've tried setting Vessel.maxControlLevel to Vessel.ControlLevel.PARTIAL_MANNED, and tried implementing ICommNetControlSource, and returning VesselControlState.KerbalPartial from GetControlSourceState. I've even tried setting Vessel.maxControlLevel during the GetControlSourceState call. When the part also has a ModuleCommand, neither approach overrides the vessel control state; it seems that ModuleCommand takes priority. Short of swapping out ModuleCommand, how do I set the vessel control state to partial?

 

Link to comment
Share on other sites

On 18/10/2016 at 3:29 AM, Angel-125 said:

I've been experimenting with partial vessel control in post KSP 1.2 release, and haven't had much luck overriding it. I've tried setting Vessel.maxControlLevel to Vessel.ControlLevel.PARTIAL_MANNED, and tried implementing ICommNetControlSource, and returning VesselControlState.KerbalPartial from GetControlSourceState. I've even tried setting Vessel.maxControlLevel during the GetControlSourceState call. When the part also has a ModuleCommand, neither approach overrides the vessel control state; it seems that ModuleCommand takes priority. Short of swapping out ModuleCommand, how do I set the vessel control state to partial?

 

Vessel.maxControlLevel is exactly that. It enables you to restrict the Maximum control level for the vessel.
It sounds like you want to actually set the control level to a specific value though?
Can I ask why?
..and yes. The control level is set by first checking the Commnet control level is the vessel has a connection and then the maximum value of all the parts on the vessel. Which will always probably be the part with ModuleCommand on it.
In theory I believe you can override this though using the interface you mention.
 

 

Edited by JPLRepo
Link to comment
Share on other sites

6 hours ago, JPLRepo said:

Vessel.maxControlLevel is exactly that. It enables you to restrict the Maximum control level for the vessel.
It sounds like you want to actually set the control level to a specific value though?
Can I ask why?
..and yes. The control level is set by first checking the Commnet control level is the vessel has a connection and then the maximum value of all the parts on the vessel. Which will always probably be the part with ModuleCommand on it.
In theory I believe you can override this though using the interface you mention.
 

 

I was hoping to set the command level independently of CommNet, as a penalty for missing too many meals; the kerbal would not be able to fly too well. I found that setting maxControlLevel did not affect vessel control; if I have a pilot aboard and set the vessel to partial, then I still have full control. It sounds like I'm unable to do what I'd like without replacing ModuleCommand, which is a bummer.

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