Starwaster

[1.2.2] Ioncross Crew Support v1.26.0 (Starwaster's branch) - Jul 7, 2016

Recommended Posts

confirmed - massive lag on EVA's - not always, but often enough - and it's quite brutal when it happens -- upon heading back aboard, it goes away and FPS becomes smooth again

on a semi-related note: using NanoGauges, you get correct O2 and CO2 readings when focused on the ship, but not on EVA's - I found that odd, given there's only one shared set of resource definitions for those supplies - logic implies it should read through just the same with EVA's but somewhy it doesn't...

mayhaps that's a clue somehow -- so I figured it was worth mentioning, just in case

Share this post


Link to post
Share on other sites
confirmed - massive lag on EVA's - not always, but often enough - and it's quite brutal when it happens -- upon heading back aboard, it goes away and FPS becomes smooth again

on a semi-related note: using NanoGauges, you get correct O2 and CO2 readings when focused on the ship, but not on EVA's - I found that odd, given there's only one shared set of resource definitions for those supplies - logic implies it should read through just the same with EVA's but somewhy it doesn't...

mayhaps that's a clue somehow -- so I figured it was worth mentioning, just in case

I think I need your logs anyway (output_log.txt; player.log if Linux/Mac. No ksp.log plz)

With regard to NanoGauges, or any other mod that reads resources: EVA resources don't actually 'exist' in the same sense that part resources do. That's something that I'll do something about eventually, but at the moment they are virtual and that's a legacy holdover from before I branched off the mod. When the Kerbal goes EVA, a gauge is added (via the Ioncross EVA partmodule) and virtual resources assigned based on how much O2 was able to be drained from the ship.

So it's not unusual that other mods can't read the amount of O2 on the Kerbal.

Share this post


Link to post
Share on other sites
Experiencing an issue with LS-19A and LS 32-C recyclers. The recycler part doesn't seem to work. O2 is consumed normally and CO2 is produced normally (scrubbers off), but when I activate the recycler on either part, no extra CO2 is consumed and there is no effect on O2 consumption.

Also, In atmo, they draw O2 even if the air intake is off.

Has anybody else had this issue?

I'm running KSP 1.0.5 on a Mac, and I've got IonCross v 1.20.1. I've got other mods, but I tried this on a clean install with only IonCross and Module Manager 2.6.13.

[URL="https://www.dropbox.com/s/9cxo4pvn55ub0mk/Player.log?dl=0"]Log file is here if anyone wants a look[/URL].

Share this post


Link to post
Share on other sites
[quote name='MacAddict008']Experiencing an issue with LS-19A and LS 32-C recyclers. The recycler part doesn't seem to work. O2 is consumed normally and CO2 is produced normally (scrubbers off), but when I activate the recycler on either part, no extra CO2 is consumed and there is no effect on O2 consumption.

Also, In atmo, they draw O2 even if the air intake is off.

Has anybody else had this issue?

I'm running KSP 1.0.5 on a Mac, and I've got IonCross v 1.20.1. I've got other mods, but I tried this on a clean install with only IonCross and Module Manager 2.6.13.

[URL="https://www.dropbox.com/s/9cxo4pvn55ub0mk/Player.log?dl=0"]Log file is here if anyone wants a look[/URL].[/QUOTE]


Looks like a ton of errors in a collector. Probably the recycler. I haven't tested the previous version with KSP 1.0.5 at all yet so there's probably things I need to go repair.

Share this post


Link to post
Share on other sites

Any ideas on where this mod is at with the current build? 

Essentially I mean does it work? lol

Edited by Danger2007
Clarity

Share this post


Link to post
Share on other sites
18 hours ago, Danger2007 said:

Any ideas on where this mod is at with the current build? 

Essentially I mean does it work? lol

Unfortunately I haven't had a chance to give this the attention it needs for KSP 1.1.x 

Based on known changes to the KSP code base it almost certainly is not going to work with the current KSP

What it really needs is a major rewrite that is less prone to breakage when KSP updates. I've always liked Ioncross because of its massive amount of configurability. Most people don't realize the extent to which the mod can be customized through its config files alone. More than any of the more popular life support mods even. But the code is way too complex for what it needs to do which makes maintaining it difficult

Share this post


Link to post
Share on other sites

Ah, tricky! Well I wouldn't even know where to start, you're a braver man than I lol 

Keep up the good work.

Share this post


Link to post
Share on other sites

I really like the idea behind this mod, sadly it doesn't work right in 1.05 (eg. when I EVA Val a clone remains in the pod)- would a recompile for 1.05 be easy enough to do in the meantime?

Edit: Perhaps the EVA thing has to do with no oxygen on EVA? I can clone Val continuously, which isn't such a bad thing :P

*I am familiar with compiling from source (eg cmake/scons) but I can't seem to find any guides for KSP, or if there is a way to simply recompile the source using some sort of KSP/Unity tools...

Edited by Waxing_Kibbous

Share this post


Link to post
Share on other sites
5 hours ago, Waxing_Kibbous said:

I really like the idea behind this mod, sadly it doesn't work right in 1.05 (eg. when I EVA Val a clone remains in the pod)- would a recompile for 1.05 be easy enough to do in the meantime?

Edit: Perhaps the EVA thing has to do with no oxygen on EVA? I can clone Val continuously, which isn't such a bad thing :P

*I am familiar with compiling from source (eg cmake/scons) but I can't seem to find any guides for KSP, or if there is a way to simply recompile the source using some sort of KSP/Unity tools...

I did recompile for 1.0.5 when I was looking into updating it but I don't remember if that stopped the cloning or other issue and I got sidetracked with other things and didn't get to further updates. I think it was an exception that occurred during initialization of the Ioncross EVA part module. Because of where that would have occurred in the spawning process it would have stopped KSP from executing the rest of its code that would have cleaned up the Kerbal from the originating crew part.

The KSP/Unity tools are not required or used in compiling a KSP plugin unless you're doing something like asset bundles. Ioncross doesn't require that. What you do need to do is to add in necessary references to KSP. I think Assembly-CSharp.dll and UnityEngine.dll was all that was required but there might have been others.

I use Xamarin Studio. If you have the Unity editor/tools installed then you have Monodevelop, which is basically the same thing but it has annoying GUI bugs because it's not updated as frequently as Xamarin. (so I use Xamarin)

Visual Studios can also be used; not much to say there, same thing, link to the necessary KSP dlls.

Share this post


Link to post
Share on other sites

I hate to keep bothering you because I know this mod isn't a priority, but I'll leave this here- in 1.05 the EVA cloning only happens with female Kerbals. I set up a stack of pods and filled it with both female and male, orange suits and hires. All the male ones acted normally, all the females were cloned. I'm curious if this can be fixed easily in one of the cfg files, I'm going to poke around for a female kerbal tag in the meantime.

Share this post


Link to post
Share on other sites
2 hours ago, Waxing_Kibbous said:

I hate to keep bothering you because I know this mod isn't a priority, but I'll leave this here- in 1.05 the EVA cloning only happens with female Kerbals. I set up a stack of pods and filled it with both female and male, orange suits and hires. All the male ones acted normally, all the females were cloned. I'm curious if this can be fixed easily in one of the cfg files, I'm going to poke around for a female kerbal tag in the meantime.

I don't mind you 'bothering' me. Honestly I'm bothered that I've let this mod languish, though as I've said the reason is updateability :(

I believe the problem is HERE:

https://github.com/Starwaster/Ioncross-Crew-Support/blob/master/Source/IoncrossCrewSupport/IonController.cs#L323-L338

Kerbals on EVA are vessels and they have a part. Inserting modules into them requires special handling because the part does not have a cfg in the database and is instead handled at runtime so we have to handle them at runtime as well. (and, really Google? runtime isn't a word? Get with it!)

The part name for a female Kerbal is kerbalEVAfemale and it wasn't being handled in there. You will notice that I just committed a change to that file to process female Kerbals.so download that file or just grab the changes and insert them locally and try recompiling. I'll look into pushing another update out but IIRC there were some other issues with 1.0.5 that were requiring attention. We'll see.

Share this post


Link to post
Share on other sites

@Waxing_Kibbous

Ok, I recompiled with those changes and that does fix the cloning issue, but there are still nullref exceptions during EVA that seem linked to resource handling, also recycler issues. (memory coming back; some of that is on this very page in fact)

So still needs lots more work

Edited by Starwaster

Share this post


Link to post
Share on other sites
3 hours ago, Starwaster said:

I don't mind you 'bothering' me. Honestly I'm bothered that I've let this mod languish, though as I've said the reason is updateability :(.

Yeah, I get that, looking at the source files there is quite a bit of code involved, and who knows what needs to get gutted/built from scratch in the U4-U5 transition.

A while back, before I knew this existed, I suggested a LS system that would only require electricity, and this fits that idea in a nice and logical way. I think with USI-LS moving away from simplicity mods like this will fill in a gap nicely.

Anyhow, thanks a lot for fixing the Lady-bug! :D

Share this post


Link to post
Share on other sites
1 hour ago, Waxing_Kibbous said:

Yeah, I get that, looking at the source files there is quite a bit of code involved, and who knows what needs to get gutted/built from scratch in the U4-U5 transition.

A while back, before I knew this existed, I suggested a LS system that would only require electricity, and this fits that idea in a nice and logical way. I think with USI-LS moving away from simplicity mods like this will fill in a gap nicely.

Anyhow, thanks a lot for fixing the Lady-bug! :D

You will want to redownload the repo, I just made some changes to address some of the exceptions. At some point I renamed a part module and I think Github for Windows ate some of the changes. (specifically some hard coded references to the old part module name)

I'm in the process of testing the new changes.

The specific changes from KSP 1.0.x to KSP 1.1 are known and well documented and shouldn't present much of a problem

Edit: So still seeing exceptions and had a male Kerbal clone himself.... 

Edit #2: But some things that weren't working are, such as CO2 generation and CO2 scrubbing, so, progress.

Edit #3: Cloned Kerbal and other exceptions were caused by a bug in Deadly Reentry that was fixed recently but not for KSP 1.0.5

Edit #4: I think the current build is ok to push out but the rate of O2 consumption bothers me. Or maybe it's just the storage amount in the pods. I have to look at my spreadsheets and see what's up because it should be lasting longer. It's possible I might have done my calculations per second forgetting that consumption rates are per FRAME. If that's the case I'll just  compensate for it in the code because all rates should be based on human friendly values (seconds, minutes, hours, etc)  Meh, rates are ok I guess. Mk1 pod has enough to last for 2 days without additional supplies so I guess it's ok.

Edited by Starwaster

Share this post


Link to post
Share on other sites
On 6/12/2016 at 3:20 PM, Starwaster said:

Edit #2: But some things that weren't working are, such as CO2 generation and CO2 scrubbing, so, progress.

So, the new download is lacking a parts folder (unless I'm looking in the wrong place, I grabbed the master folder). I tried pasting in an older version and the recyclers don't work, at least as I expect them to. I made vessel with a MK1-2, a small recycler, and batteries and tested on the launchpad. I can fill and transfer CO2 and O2, but I assume when I activate the recycler it should be converting CO2 to O2, but it's not.

Share this post


Link to post
Share on other sites
1 hour ago, Waxing_Kibbous said:

So, the new download is lacking a parts folder (unless I'm looking in the wrong place, I grabbed the master folder). I tried pasting in an older version and the recyclers don't work, at least as I expect them to. I made vessel with a MK1-2, a small recycler, and batteries and tested on the launchpad. I can fill and transfer CO2 and O2, but I assume when I activate the recycler it should be converting CO2 to O2, but it's not.

I think that only includes the source code.... I'll look into making it include everything. I'm not sure why it doesn't.

The deal with the recycler is that you need to kill the scrubbers first. They're scrubbing the CO2 out before the recycler can get to it.

Share this post


Link to post
Share on other sites

Ioncross 1.21.0 update

  • Updated for KSP 1.0.5
  • Known issue: Menu unavailable at this time. If per savegame enabling/disabling is desired then save games must be manually edited and isLifeSupportEnabled set to true or false as desired for enabling or disabling.

Downloads

http://mods.curse.com/ksp-mods/kerbal/221054-ioncross-crew-support-sw

alternate download

https://github.com/Starwaster/Ioncross-Crew-Support/releases/tag/v1.21.0

 

Plans for near future:

  • Update for KSP 1.1.x (this may or may not mean 1.1.2, depending on how quickly 1.1.3 gets here)
  • Command pods will have electronics and other electrical equipment that generate heat.
  • Factor in effects of interior heating on Kerbals. Kerbals can get too hot or too cold and be incapacitated or die. (radiators will be useful in keeping them cool)
  • Create simpler life support configs. (Two resources. 'Life Support' and possibly 'Waste')
  • Create advanced life support config (current config + water and possibly other resources)

 

Share this post


Link to post
Share on other sites
On 6/13/2016 at 6:05 PM, Waxing_Kibbous said:

So, the new download is lacking a parts folder (unless I'm looking in the wrong place, I grabbed the master folder). I tried pasting in an older version and the recyclers don't work, at least as I expect them to. I made vessel with a MK1-2, a small recycler, and batteries and tested on the launchpad. I can fill and transfer CO2 and O2, but I assume when I activate the recycler it should be converting CO2 to O2, but it's not.

Ok I take back my earlier answer. Or rather, it's factually correct but conversion is definitely not happening.... Looking into that. I see no errors or status messages indicating a  problem.

Share this post


Link to post
Share on other sites
50 minutes ago, Starwaster said:

Ok I take back my earlier answer. Or rather, it's factually correct but conversion is definitely not happening.... Looking into that. I see no errors or status messages indicating a  problem.

OK, thanks for looking into it still- it looks like in the current version no CO2 is being produced, I can turn off all electricity and timewarp on the launchpad and nothing happens (unless there is a new default setting that negates the effects on Kerbin).

I see you are looking to expand this, will the other resources be optional?

Share this post


Link to post
Share on other sites
25 minutes ago, Waxing_Kibbous said:

OK, thanks for looking into it still- it looks like in the current version no CO2 is being produced, I can turn off all electricity and timewarp on the launchpad and nothing happens (unless there is a new default setting that negates the effects on Kerbin).

I see you are looking to expand this, will the other resources be optional?

No, even on Kerbin, if there is CO2 on the part then the recycler is supposed to be processing it into O2.

Re: expansion & other resources, maybe. Even if not, it would be easy enough to write up a MM config to cut out unwanted parts. 99.99% of Ioncross resources are not hardcoded at all. It's all in the configs. And the 0.01% is only because of a hack that checks to see if any EVA resources are Oxygen so that Kerbals can be exempted in code from having to need bottled Oxygen when on Kerbin or Laythe. (Laythe has O2 in its atmosphere, right? I forget... anyway, it checks to see if the planet.atmosphereContainsOxygen and doesn't do a resource check/consumption for the Kerbal if that's true)

Share this post


Link to post
Share on other sites

Using Update() to check to see if any new Kerbals have gone on EVA lately is bad folks... m'kay?

So don't use Update() to check to see if any Kerbals have gone on EVA... m'kay?

Share this post


Link to post
Share on other sites

Ioncross News

So, I've been trying to figure out the recycler issue without much luck. It's very bizarre because the module in question is used all over the place and it works elsewhere. Specifically, the modules in question work if configured as part of the 'pod' configurations. They don't work if added directly to a part as a PartModule (those MODULE entries that have name = IonModuleGenerator or IonModuleCollector). At first I thought maybe it was some change I made that had broken things but after a lot of testing and comparison of code it's pretty obvious now that some change in KSP or Unity is responsible. Essentially what happens is that somewhere between the Main Menu and Flight mode the part of the config node that defines a generator or collector's inputs and outputs is getting nuked. It just stops existing. Everything 'works' except that the recycler no longer has inputs or outputs for CO2, O2 or electricity.

I'd hoped to have that part fixed before the 1.1.3 update came out but it's out now and looks like even more Ioncross stuff is broken so looks like I'm going to have my hands full on this one.

Eh, looks like it's working fine in 1.1.3 except for the recyclers and collectors. So I only have to figure that part out.

Edited by Starwaster

Share this post


Link to post
Share on other sites

More news:

Starting sometime tonight I'll begin pushing several updates. 

First for KSP 1.0.5 then for 1.1.3

 included will be fixes for converters and EVA issues. Kerbals on EVA will try to draw from attached external O2 before  their internal supply. So if they are driving rovers with O2 tanks they will use those first. 

Edited by Starwaster
ROVERS not rivers

Share this post


Link to post
Share on other sites

Thanx for not only the update, but STILL updating 1.0.5... :) I for ONE thank you for that alone... :)

Share this post


Link to post
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.