Jump to content

[1.9-1.10] Throttle Controlled Avionics


allista

Recommended Posts

6 hours ago, NeuroticGamer said:

I'm trying to figure out if I'm experiencing a bug, an incompatibility, or a feature.

I recently returned to KSP, starting a brand new career mode with KSP 1.3.0 and including TCA 3.4.2.  The last version I think I played with was 3.2.x (KSP 1.2.2).

I noticed that my crafts were not gaining the TCA modules as I unlocked them.  I reviewed the in-game help and saw mention that previously launched crafts would not get newer TCA modules.  That mechanic sames fair enough.  

However, launching a NEW copy of same craft results in no new TCA modules.  If I created a brand new craft in VAB, I had the newer modules.  I tried editing the older craft in VAB, go so far as to re-root and delete/replace my Probodyne HECS with anewly spawned copy.  The craft still did not have the new TCA modules.

I decided to backup my ships folder and take a stab at editing the .craft file.  I found this section:

  Reveal hidden contents

    MODULE
    {
        name = ModuleTCA
        isEnabled = True
        stagingEnabled = True
        EVENTS
        {
        }
        ACTIONS
        {
            onActionUpdate
            {
                actionGroup = None
                active = False
            }
            ToggleTCA
            {
                actionGroup = None
            }
        }
        VSLCONFIG
        {
            VesselID = 00000000-0000-0000-0000-000000000000
            Name = Minmus Lander & Return 5
            Enabled = False
            GUIVisible = False
            ActiveTab = 0
            ActionGroup = None
            WarpToNode = True
            AltitudeAboveTerrain = False
            DesiredAltitude = 0
            VerticalCutoff = 10
            BlockThrottle = False
            ControlSensitivity = 0.00999999978
            ControlTransform = 0
            SteeringGain = 1
            SteeringModifier = 1,1,1
            PitchYawLinked = True
            AutoTune = True
            SASIsControlled = False
            SASWasEnabled = False
            SavedUp = 0,0,0
            NeededHorVelocity = 0,0,0
            MaxNavSpeed = 100
            ShowPath = False
            VTOLAssistON = True
            AutoGear = True
            AutoBrakes = True
            StabilizeFlight = True
            UseCPS = True
            CorrectWithTranslation = True
            ShowManualLimits = False
            AutoStage = True
            AutoParachutes = True
            UseSmartEngines = False
            Squad = 0
            MacroIsActive = False
            EnabledTCAParts
            {
                item = TCAModuleHorizontalSpeedControl
                item = TCAModuleCollisionPreventionSystem
                item = TCAModuleRadar
                item = TCAModuleToOrbitAutopilot
                item = TCAModuleVerticalSpeedControl
                item = TCAModuleVTOLAssist
                item = TCAModuleManeuverAutopilot
                item = TCAModuleThrottleControl
                item = TCAModuleAttitudeControl
                item = TCAModuleAltitudeControl
                item = TCAModuleMatchVelocityAutopilot
            }
            AT
            {
                State = None
            }
            VF
            {
                State = None
            }
            CTRL
            {
                State = None
            }
            HF
            {
                State = None
            }
            BR
            {
                State = None
            }
            Nav
            {
                State = None
            }
            AP1
            {
                State = None
            }
            AP2
            {
                State = None
            }
            Engines
            {
                p = 0.400000006
                i = 0.200000003
            }
            SmartEngines
            {
                State = None
            }
            Path
            {
                Name = 
            }
            EnginesProfiles
            {
                ENGINESPROF
                {
                    Name = Default
                    Active = True
                    Activated = False
                    Default = True
                    NumManual = 0
                    OnPlanet = 2
                    Stage = -1
                    Level = False
                    SmartEngines = 0
                    Groups
                    {
                    }
                    Single
                    {
                        964560710
                        {
                            Name = Kopo-4e "Pancake" Liquid Fuel Engine
                            On = False
                            Limit = 1
                            role = MAIN
                        }
                        231349557
                        {
                            Name = MRS Decoupler, 2.5m Stack, Low Profile
                            On = False
                            Limit = 1
                            role = MAIN
                        }
                        2783607488
                        {
                            Name = KL-1 'Volcano' Cryogenic Rocket Engine (KSX)
                            On = False
                            Limit = 1
                            role = MAIN
                        }
                        2549393450
                        {
                            Name = KL-1 'Volcano' Cryogenic Rocket Engine (KSX)
                            On = False
                            Limit = 1
                            role = MAIN
                        }
                        2777277342
                        {
                            Name = FTP-DS2 Stack Decoupler (2.5m)
                            On = False
                            Limit = 1
                            role = MAIN
                        }
                        275657244
                        {
                            Name = RE-M3 "Mainsail" Liquid Fuel Engine
                            On = False
                            Limit = 1
                            role = MAIN
                        }
                    }
                }
            }
            Macros
            {
                type = ThrottleControlledAvionics.TCAMacroLibrary, ThrottleControlledAvionics
                DB
                {
                }
            }
        }
        UPGRADESAPPLIED
        {
        }
    }

 

I guessed that the VSLCONFIG section was the offending problem since a newly created craft did not have that section.  Deleting that section did not cause any issues and the newly spawned copy of an old craft had the new TCA modules.

So, feature or bug/incompatibility.  It looks like a bug to me as the non-upgrading feature should be tied to crafts in the save file, not the .craft files.

The installed modules (along with other TCA settings) are indeed saved with the craft file to save you the reconfiguration of TCA each time you want to launch the same craft.

To change craft's modules, in editor open the TCA window and press the Modules button.

I agree that if you never had the need to configure TCA modules this looks counterintuitive. I'll try to improve this logic. Especially in the light of the new default configs feature in TCA-3.5

Cheers

Edited by allista
Link to comment
Share on other sites

On 9/28/2017 at 1:20 AM, allista said:

The installed modules (along with other TCA settings) are indeed saved with the craft file to save you the reconfiguration of TCA each time you want to launch the same craft.

To change craft's modules, in editor open the TCA window and press the Modules button.

I agree that if you never had the need to configure TCA modules this looks counterintuitive. I'll try to improve this logic. Especially in the light of the new default configs feature in TCA-3.5

Cheers

I don't know how I missed that with all the clicking I did in the VAB.  Thanks for the clarification.

Link to comment
Share on other sites

I'm having a similar problem to others' I've read earlier, but their fix hasn't worked for me yet. I am running KSP 1.3.1, TCA 3.4.0, and AT_Utils 1.4.3. I see the modules in the tech tree, but I don't see any TCA menu in the VAB or in-flight. Am I on the wrong versions of anything? Or missing something silly and obvious?

Link to comment
Share on other sites

On 10/3/2017 at 1:03 PM, Bit Fiddler said:

Does this do thrust balancing on RCA?  and if so where do I set this up. i can't seem to find any way to set up RCA.

It does by default. With no way of turning it off, actually :blush:

On 10/11/2017 at 6:45 AM, spudman238 said:

I'm having a similar problem to others' I've read earlier, but their fix hasn't worked for me yet. I am running KSP 1.3.1, TCA 3.4.0, and AT_Utils 1.4.3. I see the modules in the tech tree, but I don't see any TCA menu in the VAB or in-flight. Am I on the wrong versions of anything? Or missing something silly and obvious?

Yep, @swjr-swis is right. I haven't upgraded TCA to the last KSP version yet, sorry.

Link to comment
Share on other sites

  • 4 weeks later...
On 10/13/2017 at 12:34 AM, allista said:

It does by default. With no way of turning it off, actually :blush:

Yep, @swjr-swis is right. I haven't upgraded TCA to the last KSP version yet, sorry.

I've recompiled it.  It works; the current version does nothing except ... not work and prevent other autopilots from functioning when it's turned on, despite the fact that the UI works.  Replace your DLL with this: https://www.dropbox.com/s/ym5qvbq1lm4qy6e/ThrottleControlledAvionics.dll?dl=0

and your problem is fixed.  @allista it just needs a recompile, no code changes are necessary to fix it.

Oh, you will likely need my AT_Utils recompile as well; a link to that is in the Configurable Containers thread, along with a fixed DLL for Configurable Containers - it's a ZIP containing both DLLs (AT_Utils and ConfigurableContainers).  I was having KSP crash on load with the previous versions of those, so... there you go.

Edited by ss8913
Link to comment
Share on other sites

3 hours ago, ss8913 said:

@allista it just needs a recompile, no code changes are necessary to fix it.

Ah, if only it was true ;.;

There are changes in KSP code in 1.3.1 which are hard to find but which are breaking things. Just yesterday I've found out one that breaks deorbit autopilot in some circumstances, but not in the others.

Anyway, thank you a lot for your efforts and for helping my mods to keep going! :)

Edited by allista
Link to comment
Share on other sites

KSP core code is moving "target". Each time some small adjustment have to be made, otherwise you got odd results, sometimes you hit "target", sometimes you hit on the edge and sometimes you miss.

Regardless, it is nice to see that in this community there is alwas someone willing and able to make adjustments to keep up with moving "target".

Link to comment
Share on other sites

37 minutes ago, allista said:

Ah, if only it was true ;.;

There are changes in KSP code in 1.3.1 which are hard to find but which are breaking things. Just yesterday I've found out one that breaks deorbit autopilot in some circumstances, but not in the others.

Anyway, thank you a lot for your efforts and for helping my mods to keep going! :)

I never had much luck with the orbital autopilot; it doesn't seem to like to play nice with a lot of the non-stock engines, and I have a ton of mods loaded... for what I *do* use it for, the recompile fixed that functionality, so... it's at least somewhat of an improvement, if you just care about thrust balancing and such.

One thing that WOULD help a lot, when you're able to get back to maintaining TCA, is a "force roll" function and a surface velocity/heading autopilot.. like what MJ has, but MJ doesn't do well with a lot of the systems I use, either.. too much control wobble, which TCA doesn't do (TCA is far better at holding a vector, when TCA is enabled.. but it doesn't have the surface-relative functions nor the force-roll functions that MJ does, so I keep having to try to use both concurrently, with mixed results :wink: )

Edited by ss8913
Link to comment
Share on other sites

56 minutes ago, ss8913 said:

One thing that WOULD help a lot, when you're able to get back to maintaining TCA, is a "force roll" function and a surface velocity/heading autopilot.. like what MJ has, but MJ doesn't do well with a lot of the systems I use, either.. too much control wobble, which TCA doesn't do (TCA is far better at holding a vector, when TCA is enabled.. but it doesn't have the surface-relative functions nor the force-roll functions that MJ does, so I keep having to try to use both concurrently, with mixed results :wink: )

I don't know what MJ does. I haven't been playing KSP for years now, only developing and testing things :confused:

But TCA does have plenty of surface-related functions: bearing control (heading), cruise control (horizontal surface velocity), even path navigation and following a moving target; you name it! :cool:

Could you explain what the force-roll is?

Link to comment
Share on other sites

4 hours ago, allista said:

I don't know what MJ does. I haven't been playing KSP for years now, only developing and testing things :confused:

But TCA does have plenty of surface-related functions: bearing control (heading), cruise control (horizontal surface velocity), even path navigation and following a moving target; you name it! :cool:

Could you explain what the force-roll is?

TCA will, for example, follow a maneuver node, or prograde, or retrograde, but it doesn't have control over the roll axis at all.  with MJ, I can push prograde and force roll 0, so it'll be nicely level with the horizon, or I can specify what degree of roll I want.  Handy for docking, ie, station port aligned NML+ with rotation 0, ship aligned NML- with rotation 0, makes it easy to dock.. that sort of thing.

For spaceplane re-entry I like to have it force a heading of 90 and a pitch of 40; TCA will control bearing, cruise, etc, but you can't just say heading X, pitch Y, roll Z, and in a lot of cases that's extremely extremely useful :)

Link to comment
Share on other sites

1 hour ago, ss8913 said:

TCA will, for example, follow a maneuver node, or prograde, or retrograde, but it doesn't have control over the roll axis at all.  with MJ, I can push prograde and force roll 0, so it'll be nicely level with the horizon, or I can specify what degree of roll I want.  Handy for docking, ie, station port aligned NML+ with rotation 0, ship aligned NML- with rotation 0, makes it easy to dock.. that sort of thing.

For spaceplane re-entry I like to have it force a heading of 90 and a pitch of 40; TCA will control bearing, cruise, etc, but you can't just say heading X, pitch Y, roll Z, and in a lot of cases that's extremely extremely useful :)

Ok, now I understand.

But it won't be easy to add this: TCA controls attitude of the thrust vector, not the attitude of a cockpit or other control module. You may say TCA doesn't have the notion of pitch/roll/yaw, only the current and needed direction of thrust. Bearing control works only because it's action is always around the thrust axis.

Anyway, I never intended for TCA to replace MJ :rolleyes:

Link to comment
Share on other sites

14 hours ago, allista said:

Ok, now I understand.

But it won't be easy to add this: TCA controls attitude of the thrust vector, not the attitude of a cockpit or other control module. You may say TCA doesn't have the notion of pitch/roll/yaw, only the current and needed direction of thrust. Bearing control works only because it's action is always around the thrust axis.

Anyway, I never intended for TCA to replace MJ :rolleyes:

fair enough; although adding the above features would in fact allow it to. :)

Link to comment
Share on other sites

That was hilarious, and great EVA control btw!

In other news, TIL that your autopilot can control a ship not in focus. I had no idea.

Tell me, how feasible would it be to develop a remote control for ships you are not focused on? Just basic stuff like attitude control and such -- it would be really handy for docking, not to mention the cinematic effects one could produce if you aren't having to switch control focus all the time.

Link to comment
Share on other sites

28 minutes ago, Mandella said:

That was hilarious, and great EVA control btw!

In other news, TIL that your autopilot can control a ship not in focus. I had no idea.

Tell me, how feasible would it be to develop a remote control for ships you are not focused on? Just basic stuff like attitude control and such -- it would be really handy for docking, not to mention the cinematic effects one could produce if you aren't having to switch control focus all the time.

Well, some sort of remote control is implemented in Squadron Mode, where you can assign a squad id to each ship; then all ships with the same squad id will perform most TCA commands simultaneously. They can even fly in formation (on planet; don't try this in orbit). But RC is incomplete in that not all the commands are propagated to the squad; and in that the current ship also executes them.

To have full RC, I would need to change TCA GUI window, so that it has an option to switch between loaded vessels instead of always following active one. This is relatively easy; I just never needed it.

Link to comment
Share on other sites

1 hour ago, kcs123 said:

^^ That might be good improvement for not waking kraken that can happen trough KSP switching between ships on the ground.

Just don't engage TimeWarp when remotely controlled vessels are in flight :wink:

Link to comment
Share on other sites

23 minutes ago, Mandella said:

That would be super! Just as you're showing it would be extremely useful and fun to play with, but...

Since no project is complete without creep, would it be feasible to control EVA Kerbals with this or a similar system?

No. Keyboard and mouse controls remain with the active vessel. Only TCA interface switches to other vessels, so the only thing you can do is to engage some TCA functions. And kerbals do not have TCA installed :D

Edited by allista
Link to comment
Share on other sites

25 minutes ago, Mandella said:

That would be super! Just as you're showing it would be extremely useful and fun to play with, but...

Since no project is complete without creep, would it be feasible to control EVA Kerbals with this or a similar system?

If I may, this might suit you:

 

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