Jump to content

[1.4.1] Take Command Continued- Launch Kerbals in External Command Seats


linuxgurugamer

Recommended Posts

Hey dear @linuxgurugamer, i was trying Omicron updates on 1.4.3 of KSP, and besides the compatibility error message that i ignore, when i launch my vessel on SPH, it show no pilot, that i put in command seat of Omicron on hangar, but when i recover the vessel, it show the Kerbal back from it. But in the runway, it show no kerbal on it, even making a search inside of it.

But is no rush.

Link to comment
Share on other sites

8 minutes ago, Climberfx said:

Hey dear @linuxgurugamer, i was trying Omicron updates on 1.4.3 of KSP, and besides the compatibility error message that i ignore, when i launch my vessel on SPH, it show no pilot, that i put in command seat of Omicron on hangar, but when i recover the vessel, it show the Kerbal back from it. But in the runway, it show no kerbal on it, even making a search inside of it.

But is no rush.

If you read back, you'd see that there are issues with this in 1.4

 

Link to comment
Share on other sites

22 minutes ago, linuxgurugamer said:

If you read back, you'd see that there are issues with this in 1.4

 

Oh G..., i was out for a long time, and come back thinking things are all almost fixed from KSP side, but i see they are not!

Sorry man to disrupt you with my silly posts.

I saw the older post, only confused by that being for other reason.

Link to comment
Share on other sites

On 5/18/2018 at 12:31 PM, Climberfx said:

Oh G..., i was out for a long time, and come back thinking things are all almost fixed from KSP side, but i see they are not!

Sorry man to disrupt you with my silly posts.

I saw the older post, only confused by that being for other reason.

Not silly, just repetitive.

I don’t have a clue as to what’s wrong, but I hope to be able to look into this next week.  Just working on some adopyions, enhancements and bug fixes.

Link to comment
Share on other sites

  • 1 month later...

LOL, yay I'm glad I just read this whole thread before asking about the weird issue I just had with the "Observation pod" I put on my plane. It's a 0.5 ton two seater that kind of looks like a chopper cockpit with open sides.

I put two kerbals in it Jeb and an engineer, when it spawned they were both on the ground. One of them wouldn't get up.

Then I reverted the flight and Jeb disappeared from my Kerbal list permanently. Now he's listed as "lost."

Had to reload an old save.....

I read everything here and see that there is an obvious bug with KSP v1.4.3 and this is on your low priority list for now LGG.

That's cool, uninstalling for now. I'll check back later.....Thanks!

Link to comment
Share on other sites

Well… In the expectation of being of (no) use, a bit of info that aims to save you some time.

I'm somewhat annoyed by this bug, because I'm stuck with biplanes (and worse :P) for some more time on my career, and would be nice for the looks to use Open Cockpit as my planes go metal. So I tinkered a bit on Take Command. This are my conclusions from this tinkering:

  • There's a problem on the line 37 of TakeCommand.cs.
  •         public static List<Part> allCommandSeats = new List<Part>();
    This part is being populated only once by startup. Looking on the code, I think I found why at line 287:
                if (HighLogic.LoadedSceneIsEditor && error)
                {
                    error = false;
                    allCommandSeats.Clear();
                }

    I think it is never being cleaned, as by some reason the "error" is false when you leave "HighLogic.LoadedSceneIsFligh". I think you should be using "||" here.

    It appears to make sense, as when you launch another "instance" of your vehicle, the pointers are not updated.

  • I changed line 345:
     

    //                       myKerbal = "kerbalEVA (" + kerbal.name + ")";
                             myKerbal = kerbal.name;

    And noticed a change: the Kerbals are still not boarding, but they stopped "vanishing". I start the scenario with them doing "EVA" inside the cockpits, and could board them manually. Well, it helped a bit - but I just don't understand what's happening, so I could be poking the Kraken without being aware. =P

Edited by Lisias
code formatting
Link to comment
Share on other sites

13 minutes ago, Lisias said:

Well… In the expectation of being of (no) use, a bit of info that aims to save you some time.

I'm somewhat annoyed by this bug, because I'm stuck with biplanes (and worse :P) for some more time on my career, and would be nice for the looks to use Open Cockpit as my planes go metal. So I tinkered a bit on Take Command. This are my conclusions from this tinkering:

  • There's a problem on the line 37 of TakeCommand.cs.
  • 
            public static List<Part> allCommandSeats = new List<Part>();
    This part is being populated only once by startup. Looking on the code, I think I found why at line 287:
    
                if (HighLogic.LoadedSceneIsEditor && error)
                {
                    error = false;
                    allCommandSeats.Clear();
                }

    I think it is never being cleaned, as by some reason the "error" is false when you leave "HighLogic.LoadedSceneIsFligh". I think you should be using "||" here.

    It appears to make sense, as when you launch another "instance" of your vehicle, the pointers are not updated.

  • I changed line 345:
     

    
    //                       myKerbal = "kerbalEVA (" + kerbal.name + ")";
                             myKerbal = kerbal.name;

    And noticed a change: the Kerbals are still not boarding, but they stopped "vanishing". I start the scenario with them doing "EVA" inside the cockpits, and could board them manually. Well, it helped a bit - but I just don't understand what's happening, so I could be poking the Kraken without being aware. =P

Not sure if your fix is good, since myKerbal needs to be the internal name.

I'll take a look at  287 as well.  I've been working on other mods, but with this, I'll spend some time this evening to see if I can figure out what's going on.

Can you provide a repeatable set of steps to make a Kerbal vanish?  it hasn't happened with me (yet), but then again, I'm not really using it that much right now.

Thanks

 

Link to comment
Share on other sites

22 minutes ago, linuxgurugamer said:

Not sure if your fix is good, since myKerbal needs to be the internal name.

It's not a fix. It's something that happens and make the problem slightly less worse. :D 

Perhaps the information would help you - at least, you would know what does not works. :P

24 minutes ago, linuxgurugamer said:

Can you provide a repeatable set of steps to make a Kerbal vanish?  it hasn't happened with me (yet), but then again, I'm not really using it that much right now.

Will do by night, or the weekend in the worst case.

Link to comment
Share on other sites

Feed back:

Changing

if (HighLogic.LoadedSceneIsEditor && error)

to 

if (HighLogic.LoadedSceneIsEditor || error)

Fixed the problem of Take Command being working only once by startup. I don't know if it implies on undesired side effects, so further testing (or more knowledge) is needed before accepting this. I need to understand "error" meaning before really pinpoint this as a proper fix.

The line 354 hack will be tested later, RL kicked my butter right now.

Link to comment
Share on other sites

1 minute ago, Lisias said:

Fixed the problem of Take Command being working only once by startup. I don't know if it implies on undesired side effects, so further testing (or more knowledge) is needed before accepting this. I need to understand "error" meaning before really pinpoint this as a proper fix.

The line 354 hack will be tested later, RL kicked my butter right now

Thanks, but I want to fix it by resetting error.  Good to know, this may also be required.

Link to comment
Share on other sites

Just so you know, I just reviewed my local, and had already fixed that particular issue (the LoadedSceneIsEditor && error)

I checked the code, and this:

myKerbal = "kerbalEVA (" + kerbal.name + ")";

is definitely needed.  You may be masking a problem because this is used to identify a vessel, and kerbals are considered vessels.  by changing it, the code can't identify the correct vessel to work with.

Question, are the kerbals you are having problems with male or female?

Link to comment
Share on other sites

And…. For now:

  1. The line 287 fix is working consistently until the moment, no side effects perceived. You can leave Flight Scene and go back as many times you want, it's always (sort of) working now.
    1. Theoretically, this line can overuse the CPU on editing time...
  2. The line 354 stunt was tested - hacked, and unhacked versions. Exactly the same behaviour:
    1. The kerbal is spanwed on the cockpit, but on EVA.
    2. "Board <part name" make the guy/gal take command of the vessel and then everything goes as expected.

So, I concluded that whatever had changed by Squad, is related to the name the Kerbal gets when goes EVA, and then the code cannot find him/her in order to put him/her on the seat.

So I had another hunch, and tried using ["KerbalEVA (" + kerbal.name + ")"], ["KerbalEVA(" + kerbal.name + ")"] , and ["kerbalEVA(" + kerbal.name + ")"]. No joy. What is a relief, as this would leave the bad taste of "JavaScript" on my mouth. :D 

 

EDIT: I just had read your post now. It appears we posted on the same minute, or near it! :D I'm checking your theory now.

Edited by Lisias
Link to comment
Share on other sites

OK!!!!

I may have found the problem.  Please try this beta:

https://www.dropbox.com/s/clvgnulndni4kf4/TakeCommand-1.4.12.1.zip?dl=0

There are two fixes here.  The first was pointed out by @Lisias above, but more needed to be done for it.

The second was that it wasn't properly checking for female kerbals, so anytime a female kerbal was in an external seat, she wasn't being put into the seat.

Please let me know how it works.  I was able to make it fail successfully, and since I put in these two fixes, it's been working fine, at least for me.

If it does fail for you, please exit the game and get me the log file.  Don't do anything else.  This is a debug build, it will be writing a lot to the log file, but only when it's being used.  

Link to comment
Share on other sites

30 minutes ago, linuxgurugamer said:

Please let me know how it works.  I was able to make it fail successfully, and since I put in these two fixes, it's been working fine, at least for me.

YES. It's working for both female and male Kerbals on the installment the thing was previously failing (all of 1.4 series :P )

I'm curious now. First thing I want to do when you officially publish the new version is check what changed!

Recalling from my memory, I think the problem would affect if any loading kerbals were female - I think I always have a least one female on the crew as I have two female pilots (Val and another), and Jeb is essentially being used on solo space missions for now...

Edited by Lisias
some (uninteresting) details.
Link to comment
Share on other sites

13 hours ago, JoE Smash said:

LOL, yay I'm glad I just read this whole thread before asking about the weird issue I just had with the "Observation pod" I put on my plane. It's a 0.5 ton two seater that kind of looks like a chopper cockpit with open sides.

I put two kerbals in it Jeb and an engineer, when it spawned they were both on the ground. One of them wouldn't get up.

Then I reverted the flight and Jeb disappeared from my Kerbal list permanently. Now he's listed as "lost."

Had to reload an old save.....

I read everything here and see that there is an obvious bug with KSP v1.4.3 and this is on your low priority list for now LGG.

That's cool, uninstalling for now. I'll check back later.....Thanks!

Try the beta I just released in the previous posts, please

Link to comment
Share on other sites

"kerbalEVAfemale (" + kerbal.name + ")"

Seriously? It was that? :) 

I failed to understand the need of such change on KSP's code, but… I'm happy the problem is solved. :) 

Link to comment
Share on other sites

Hello,

So I downloaded the patch from this thread put it in my game data folder and launched KSP v1.4.3.

I opened my savegame and tried the Meadowlark EAS-316 pod with Jeb and intentionally a female a kerbal. I am also using Kerbal Konstructs and was at a different runway than the main KSC runway (no idea if that matters). Told it to launch. Only Jeb appeared and he wasn't in the command pod and there was no way to board it.....just climb on it. The female kerbal was MIA so I reverted flight to inside the SPH. I tried relaunching at the KSC and this time they both appeared but neither were in the pod and there was no way to board it either.

I started a new career sandbox mode, because I had not yet unlocked the normal command chair to test out. I put 4 normal command chairs on some default ship model I loaded up, and put all 4 starting kerbals in the chairs and then launched the rocket to the launchpad. All 4 kerbals were in their chairs, no one was in the mk1 command pod and I was able to launch the rocket and get into orbit.

So I guess this is a bug/issue with that specific part I was using which is a part from SXTContinued. 

Anyways no big deal either way. It is a cool part though, because of it's low weight, it holds two kerbals and they are exposed to the elements because the sides are open....

Thanks,

JoE_Smash

Edited by JoE Smash
Edited to appease LGG
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...