ShotgunNinja

[1.3.0] Kerbalism v1.2.9

Recommended Posts

1 hour ago, ShotgunNinja said:

I am unable to reproduce this issue.

I did it like this:

  1. Place a pod
  2. Remove all N2 from it
  3. Add another part
  4. Ctrl+Z to revert change

The pod should hold the default amount of N2 (Full) again.

Share this post


Link to post
Share on other sites

another question for you @ShotgunNinja do I have to define a radiation model for every body in the pack? Should I define every rocky body that I don't put as metallic or irregular as surface or should I leave them blank?

Share this post


Link to post
Share on other sites

I encountered a small issue after I launched a station a few minutes ago: It didn't appear on my list of ships in the Kerbalism menu!

Screenshots: http://imgur.com/a/dLPtS

Switching to another vessel and then back did not fix the issue, nor did going to the Tracking Station.

Fortunately, after I restarted KSP the vessel did show up, so it turned out to be a minor issue, but I thought you would want to know about it.

Share this post


Link to post
Share on other sites
On 12/23/2016 at 11:17 AM, alex_1313 said:

Could you make this mod compatible with "Science relay"?

Thank you. 

 

I'll try to look into this from the other end. For instance making the buttons that pop up in the second window more easily accessible so @ShotgunNinja can hijack them. There might be problems with calculating the vessel connections.

Share this post


Link to post
Share on other sites

Hi, i have a little problem, dont know if its a bug or not: before 1.1.6 I could see the planet's radiation belts, but in 1.1.7  I cant seem to find how (I dont have a menu that show's it) . How can I see the radiation belts? is there a new key ?

Edited by SiCaRiO31

Share this post


Link to post
Share on other sites

Hello there! i would like to suggest something as i noticed that your kerbal kind of panic when they get to a certain point with their ressources (or so say the message) 

an "expected mission time" for the kerbal. It could influence their moral or prevent panic when they have 3h of oxygen on a 30 minutes missions. Stress could increase as they go pas the expected mission time or they could feel less nervous if they know they have x4 the needed supply (redundancy).

Is that a interesting idea?

Share this post


Link to post
Share on other sites

@Chimer4 I'm skimming this thread right now and I see hints at the use of resources not commonly found (cfgs for their presences barely defined if at all) in Community Resource Pack: Ammonia, Nitrogen, Oxygen, Carbon Dioxide...? Does this mod present and use new/different mineable resources? If so, please list them. I'd like to write presence/abundance configs for them.

For Galileo's Planet Pack.

Edited by JadeOfMaar

Share this post


Link to post
Share on other sites
Spoiler

// ============================================================================
// Resources used in the default profile, same definition as in CRP
// ============================================================================

RESOURCE_DEFINITION
{
  name = Food
  volume = 1
  density = 0.00028102905982906
  unitCost = 0.238874700854701
  flowMode = ALL_VESSEL
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

RESOURCE_DEFINITION
{
  name = Water
  volume = 1
  density = 0.0010000000
  unitCost = 0.0008
  flowMode = ALL_VESSEL
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

RESOURCE_DEFINITION
{
  name = Oxygen
  volume = 1
  density = 0.00000141
  unitCost = 0.000055836
  flowMode = ALL_VESSEL
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

RESOURCE_DEFINITION
{
  name = Waste
  volume = 1
  density = 0.00075
  unitCost = 0
  flowMode = ALL_VESSEL
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

RESOURCE_DEFINITION
{
  name = WasteWater
  volume = 1
  density = 0.001005
  unitCost = 0
  flowMode = ALL_VESSEL
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

RESOURCE_DEFINITION
{
  name = CarbonDioxide
  volume = 1
  density = 0.000001951
  unitCost = 0.0000028637
  flowMode = ALL_VESSEL
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

RESOURCE_DEFINITION
{
  name = Hydrogen
  volume = 1
  density = 0.00000008990
  unitCost = 0.000055836
  flowMode = ALL_VESSEL
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

RESOURCE_DEFINITION
{
  name = Nitrogen
  density = 0.000001251
  unitCost = 0.00005
  flowMode = STACK_PRIORITY_SEARCH
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

RESOURCE_DEFINITION
{
  name = Ammonia
  volume = 1
  density = 0.0000007690
  unitCost = 0.00006785
  flowMode = ALL_VESSEL
  transfer = PUMP
  isTweakable = true
  isVisible = true
}

 

These are the resource definitions that Kerbalism uses, the only one that i think differs from CRP is ammonia (LqdAmmonia in CRP?) that is used in the greenhouse (presumably as a fertiliser) 

Share this post


Link to post
Share on other sites

I have one probe set to upload data while it is circling Minmus. Another probe is trying to time warp to Minmus. But every time the first probe (the one not in focus) goes behind Minmus, it loses contact with Kerbin. And then the time warp ends! It's very frustrating. Is there some way to not make this happen? Because it's liquiding me off very quickly.

Share this post


Link to post
Share on other sites

I'm getting an issue with the presmat barometer. When I assign all my experiments to an action group and trigger it, they all put their corresponding data into the probe hard drive, except the barometer, which loses the "Log pressure" button in its menu and records no data. Geiger and thermometer work just fine.

3 hours ago, mikegarrison said:

I have one probe set to upload data while it is circling Minmus. Another probe is trying to time warp to Minmus. But every time the first probe (the one not in focus) goes behind Minmus, it loses contact with Kerbin. And then the time warp ends! It's very frustrating. Is there some way to not make this happen? Because it's liquiding me off very quickly.

Yes, click the offending vessel's name in the Kerbalism menu (upper right of screen). Then click "CFG". This will take you to a menu where you can disable notifications by clicking the green check marks.

Share this post


Link to post
Share on other sites
13 hours ago, ShotgunNinja said:

HardDrive module implement IScienceDataContainer

So, that's what fixed [x] Science status display?

Share this post


Link to post
Share on other sites
13 hours ago, SiCaRiO31 said:

Hi, i have a little problem, dont know if its a bug or not: before 1.1.6 I could see the planet's radiation belts, but in 1.1.7  I cant seem to find how (I dont have a menu that show's it) . How can I see the radiation belts? is there a new key ?

Try pressing the 0 key on the numpad.

Share this post


Link to post
Share on other sites

OK, bit confused. I have a connection to DSN, and it says its connected. Data ready to transmit, and marked as ready. But still not transmitting. Mousing over the icon says that telemetry is being transmitted.

What am I missing?

Share this post


Link to post
Share on other sites
15 hours ago, mikegarrison said:

I have one probe set to upload data while it is circling Minmus. Another probe is trying to time warp to Minmus. But every time the first probe (the one not in focus) goes behind Minmus, it loses contact with Kerbin. And then the time warp ends! It's very frustrating. Is there some way to not make this happen? Because it's liquiding me off very quickly.

You can click on the Kerbalism toolbar, there select the craft that's bothering you and switch off the notifications on LOS events.

Share this post


Link to post
Share on other sites
8 hours ago, alex_1313 said:

Try pressing the 0 key on the numpad.

yep, using numpad keys (0,1,2,3) seem to show magnetosphere and radiation belts, but I distincly remember having a little windows showing me the Planet's info, activable by Alt+N. That windows doesnt seem to work anymore.

Share this post


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

yep, using numpad keys (0,1,2,3) seem to show magnetosphere and radiation belts, but I distincly remember having a little windows showing me the Planet's info, activable by Alt+N. That windows doesnt seem to work anymore.

Then try the "B" key.

Share this post


Link to post
Share on other sites

Is this version of Kerbalism support TAC Life Support, or not? It was only to know if these two mods work simultaneously.

Share this post


Link to post
Share on other sites

@ShotgunNinja for parts breaking down, it should require spare parts to fix them, also, if you have OSE workshop installed, it should no longer require spare parts but require materialkits to fix.

Share this post


Link to post
Share on other sites

@bpilgrim Can you send me the log when that happen again?

 

@DMagic I can stop hiding the dialog again in next version (fixed related issues). Also recently changed the HardDrive module to implement IScienceDataContainer. Eventually I could extend that to a ModuleScienceContainer emulation, meanwhile ReturnData() can be used to store and DumpData() to remove files.

The API doesn't include functions to deal with files right now, but I will add them ASAP. Those will be necessary if you want to transfer to unloaded vessels. Same with connection info, there is a function already but I could add additional ones.

 

@SiCaRiO31 Press the 'B' key in map-view/tracking-station to open that window.

 

@JadeOfMaar Crustal resources: Water, Ore. Atmospheric resources: CarbonDioxide,Oxygen,Nitrogen. I've used this, maybe it can give you some ideas.

 

@SmarterThanMe Yep that was it. For the transmission problem: data transfer require some time, try to wait a few minutes and see if the file size is going down. Also check if your science credits are going up after some minutes.

 

Share this post


Link to post
Share on other sites

 

On 12/24/2016 at 8:15 PM, Chimer4 said:

do I have to define a radiation model for every body in the pack? Should I define every rocky body that I don't put as metallic or irregular as surface or should I leave them blank?

You can leave bodies without a RadiationBody definition: these will just have no magnetopause or belts. That is okay, not every piece of rock has these.

All the RadiationModel included (like 'metallic', 'irregular', 'earth', etc) are just generic examples. You can use these, or create some new RadiationModel.

Then you can share the models with multiple bodies, or not. That is up to you. It's a tradeoff between fields variety and preprocessing time.

Share this post


Link to post
Share on other sites
On 12/24/2016 at 6:35 PM, APlayer said:

I did it like this:

  1. Place a pod
  2. Remove all N2 from it
  3. Add another part
  4. Ctrl+Z to revert change

The pod should hold the default amount of N2 (Full) again

Thanks, you are right. The issue seem with the UNDO in editor, that apparently 'recreate' all the parts and reset all their module values. You can see the same behaviour with eg: pod lights. Turn light on, add another part, undo: you will see the light revert to off.

Share this post


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

Thanks, you are right. The issue seem with the UNDO in editor, that apparently 'recreate' all the parts and reset all their module values. You can see the same behaviour with eg: pod lights. Turn light on, add another part, undo: you will see the light revert to off.

Humm, is there a workaround? Because the same thing happens upon saving and reloading the ship, and thus I need to empty all the tanks (There are about 20 not including the symmetrically attached ones) after every slight modification before saving, else I'll end up launching them filled...

Share this post


Link to post
Share on other sites

can others try this modified default. think it got it where it disabled the kerbalism food and such but keeps all the functions such as keeping track of amounts and still gives warnings.

Spoiler

// ============================================================================
// The default profile
// ============================================================================

Profile
{
  name = default
  // comment out to disable the signal mechanic
  // disabled automatically if RemoteTech or AntennaRange are detected
  @Kerbalism:FOR[EnableSignal] {}


  // comment out to disable malfunctions
  // disabled automatically if DangIt is detected
  @Kerbalism:FOR[EnableMalfunction] {}


  // comment out to remove shielding from the game
  @Kerbalism:FOR[EnableShielding] {}


  Supply
  {
    resource = ElectricCharge
    low_message = $VESSEL batteries are almost empty@<i>We are squeezing the last bit of juice</i>|$VESSEL batteries are almost empty@<i>Shutting down non-essential systems</i>
    empty_message = There is no more ElectricCharge on $VESSEL@<i>Life support systems are off</i>|There is no more ElectricCharge on $VESSEL@<i>We lost control</i>
    refill_message = $VESSEL batteries recharged@<i>The crew is allowed music again</i>|$VESSEL batteries recharged@<i>Systems are back online</i>
  }

  Supply
  { resource = Food
    low_message = Food reserves are getting low on $VESSEL@<i>Anything edible is being scrutinized</i>
    empty_message = There is no more food on $VESSEL@<i>The crew prepare for the inevitable</i>
    refill_message = $VESSEL food reserves restored@<i>Double snack rations for everybody</i>
  }

  Supply
  { resource = Water
    low_message = Water reserves are getting low on $VESSEL@<i>Hygiene schedule suspended until further notice</i>
    empty_message = There is no more water on $VESSEL@<i>Licking the condense is not a viable solution</i>
    refill_message = $VESSEL water reserves restored@<i>The situation look much better now</i>
  }

  Supply
  { resource = Oxygen
    low_message = Oxygen reserves are dangerously low on $VESSEL@<i>There is mild panic among the crew</i>
    empty_message = There is no more oxygen on $VESSEL@<i>Everybody stop breathing</i>
    refill_message = $VESSEL oxygen reserves restored@<i>The crew is taking a breather</i>
  }

  Supply
  {
    resource = Nitrogen
    low_message = Nitrogen reserves are getting low on $VESSEL
    empty_message = There is no more nitrogen on $VESSEL@<i>Time to go back in the suits</i>
    refill_message = $VESSEL nitrogen reserves restored@<i>Let's get out of these damn suits</i>
  }

  Supply
  {
    resource = Hydrogen
    low_message = Hydrogen tanks are almost empty on $VESSEL
    empty_message = There is no more hydrogen on $VESSEL tanks
    refill_message = $VESSEL hydrogen tanks refilled
  }

  Supply
  {
    resource = Ammonia
    low_message = Ammonia tanks are almost empty on $VESSEL
    empty_message = There is no more ammonia on $VESSEL tanks@<i>Maybe it is time for some smelly alternative</i>
    refill_message = $VESSEL ammonia tanks refilled
  }

  Rule
  {
    name = climatization
    input = ElectricCharge
    rate = 0.0002 // per-kelvin (temp diff), per m^3 (living space), per-second
    degeneration = 0.00000345 // 30min
    modifier = temperature,volume,per_capita
    warning_message = $ON_VESSEL$KERBAL feels cold|$ON_VESSEL$KERBAL is sweating
    danger_message = $ON_VESSEL$KERBAL is freezing to death|$ON_VESSEL$KERBAL is burning alive
    fatal_message = $ON_VESSEL$KERBAL froze to death|$ON_VESSEL$KERBAL was burned alive
    relax_message = $ON_VESSEL$KERBAL hypothermia is under control|$ON_VESSEL$KERBAL is hugging the climatizer
  }

  Rule
  {
    warning_message = $ON_VESSEL$KERBAL is hungry
    danger_message = $ON_VESSEL$KERBAL is starving
    fatal_message = $ON_VESSEL$KERBAL starved to death
    relax_message = $ON_VESSEL$KERBAL is enjoying some snacks right now
  }

  Rule
  {
    warning_message = $ON_VESSEL$KERBAL is thirsty
    danger_message = $ON_VESSEL$KERBAL is dehydrated
    fatal_message = $ON_VESSEL$KERBAL died from dehydration
    relax_message = $ON_VESSEL$KERBAL is enjoying some drinks right now
  }

  Rule
  {
    modifier = breathable
    warning_message = $ON_VESSEL$KERBAL can't breathe
    danger_message = $ON_VESSEL$KERBAL is suffocating
    fatal_message = $ON_VESSEL$KERBAL suffocated to death
    relax_message = $ON_VESSEL$KERBAL is breathing again
  }

  Rule
  {
    name = co2 poisoning
    degeneration = 0.0005555 // 30 minutes
    modifier = poisoning,breathable
    warning_message = $ON_VESSEL$KERBAL's head feels light
    danger_message = $ON_VESSEL$KERBAL seem unable to breath properly
    fatal_message = $ON_VESSEL$KERBAL died of co2 poisoning
    relax_message = $ON_VESSEL$KERBAL is breathing again
  }

  Rule
  {
    name = stress
    degeneration = 0.00000000463 // 10000 days
    variance = 0.33 // add per-kerbal variance
    modifier = living_space,comfort,pressure
    breakdown = true // trigger breakdown event instead of death
    warning_message = $ON_VESSEL$KERBAL is losing $HIS_HER mind@<i>Concentration is becoming a problem</i>
    danger_message = $ON_VESSEL$KERBAL is about to breakdown@<i>Starting to hear voices</i>
    relax_message = $ON_VESSEL$KERBAL is thinking straight now@<i>Let's do it again!</i>
  }

  Rule
  {
    name = radiation
    degeneration = 1.0 // just use the modifier
    variance = 0.1 // add per-kerbal variance
    modifier = radiation,shielding
    warning_threshold = 25.0
    danger_threshold = 37.5
    fatal_threshold = 50.0
    warning_message = $ON_VESSEL$KERBAL has been exposed to intense radiation
    danger_message = $ON_VESSEL$KERBAL is reporting symptoms of radiation poisoning
    fatal_message = $ON_VESSEL$KERBAL died after being exposed to extreme radiation
    relax_message = $ON_VESSEL$KERBAL has recovered from radiation exposure
  }

  Process
  {
    name = scrubber
    modifier = _Scrubber
    input = ElectricCharge@0.1
    input = WasteAtmosphere@0.00008
    output = CarbonDioxide@0.08
  }

  Process
  {
    name = pressure control
    modifier = _PressureControl
    input = Nitrogen@0.6
    output = Atmosphere@0.0006
    dump = false
  }

  Process
  {
    name = atmo leaks
    modifier = surface,breathable
    input = Atmosphere@0.000005
  }

  Process
  {
    name = water recycler
    modifier = _WaterRecycler
    input = ElectricCharge@0.2
    input = WasteWater@0.0005
    output = Water@0.0004
    output = Waste@0.0001
  }

  Process
  {
    name = waste processor
    modifier = _WasteProcessor
    input = ElectricCharge@0.3
    input = Waste@0.0005
    output = Ammonia@0.25
  }

  Process
  {
    name = fuel cell
    modifier = _FuelCell
    input = Hydrogen@1.0
    input = Oxygen@0.5065966
    output = Water@0.0008043
    output = ElectricCharge@0.5
  }

  Process
  {
    name = water electrolysis
    modifier = _WaterElectrolysis
    input = ElectricCharge@0.5
    input = Water@0.003242754
    output = Hydrogen@1.0
    output = Oxygen@2.042476596
  }

  Process
  {
    name = sabatier process
    modifier = _Sabatier
    input = CarbonDioxide@2.030166581
    input = ElectricCharge@0.5
    input = Hydrogen@1.0
    output = Water@0.003242754
    output = LiquidFuel@0.001443825 // (Methane@2.013702929)
  }

  Process
  {
    name = haber process
    modifier = _Haber
    input = Nitrogen@1.007676259
    input = Hydrogen@1.0
    output = Ammonia@1.993178153
  }

  Process
  {
    name = anthraquinone process
    modifier = _Anthraquinone
    input = Hydrogen@1.0
    input = Oxygen@2.042476596
    output = Oxidizer@0.003061323 // (HydrogenPeroxide@0.002111257241)
  }

  Process
  {
    name = hydrazine production
    modifier = _HydrazineProduction
    input = Ammonia@3.986344603
    input = Oxidizer@0.003061323 // (HydrogenPeroxide@0.002111257241)
    output = Water@0.003242754
    output = MonoPropellant@0.003605085 // (Hydrazine@0.002872577689)
  }

  Process
  {
    name = solid oxide electrolysis
    modifier = _SOE
    input = ElectricCharge@1.0
    input = CarbonDioxide@2.030166581
    output = Oxygen@2.042476596
    // Carbon@0.000514744 is wasted
  }

  Process
  {
    name = molten regolith electrolysis
    modifier = _MRE
    input = ElectricCharge@2.5
    input = Ore@0.01
    output = Oxygen@1.0
  }
}


// ============================================================================
// Add configurable Life Support System to all manned parts
// ============================================================================

@PART[*]:HAS[#CrewCapacity[>0]]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  MODULE
  {
    name = ProcessController
    resource = _Scrubber
    title = Scrubber
    capacity = 1
    running = true
  }

  MODULE
  {
    name = ProcessController
    resource = _PressureControl
    title = Pressure control
    capacity = 1
    running = true
  }

  MODULE
  {
    name = ProcessController
    resource = _WaterRecycler
    title = Water recycler
    capacity = 1
  }

  MODULE
  {
    name = ProcessController
    resource = _WasteProcessor
    title = Waste processor
    capacity = 1
    running = true
    toggle = false
  }

  MODULE
  {
    name = Configure
    title = Pod
    slots = 2

    SETUP
    {
      name = Scrubber
      desc = Sequester <b>CarbonDioxide</b> from the internal atmosphere.
      mass = 0.01
      cost = 250

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _Scrubber
      }
    }

    SETUP
    {
      name = Pressure Control
      desc = Use <b>Nitrogen</b> to maintain the internal atmosphere at a comfortable pressure.
      tech = engineering101
      mass = 0.01
      cost = 250

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _PressureControl
      }

      RESOURCE
      {
        name = Nitrogen
        amount = 10000
        maxAmount = 10000
      }
    }

    SETUP
    {
      name = Water Recycler
      desc = Filter impurities out of <b>WasteWater</b>.
      tech = spaceExploration
      mass = 0.05
      cost = 500


      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _WaterRecycler
      }

      RESOURCE
      {
        name = WasteWater
        amount = 0
        maxAmount = 5
      }
    }

    SETUP
    {
      name = Waste Processor
      desc = Extract <b>Ammonia</b> out of decomposing organic waste.
      tech = advExploration
      mass = 0.05
      cost = 500

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _WasteProcessor
      }

      RESOURCE
      {
        name = Waste
        amount = 0
        maxAmount = 5
      }
    }
  }

  MODULE:NEEDS[FeatureReliability]
  {
    name = Reliability
    type = ProcessController
    title = ECLSS
    redundancy = Life Support
    repair = true // anyone
    mtbf = 72576000 // 8y
    extra_cost = 2.5
    extra_mass = 0.1
  }
}

 

 

// ============================================================================
// Add scrubber process to EVA kerbals
// ============================================================================
@PART[kerbalEVA,kerbalEVAfemale]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  MODULE
  {
    name = ProcessController
    resource = _Scrubber
    title = Scrubber
    capacity = 0.5
    toggle = true
    running = true
  }
}

// ============================================================================
// Add configurable supplies to inline containers
// ============================================================================

@PART[kerbalism-container-inline-*]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  MODULE
  {
    name = Configure
    title = Supply Container
    slots = 1

    SETUP
    {
      name = Supplies
      desc = Store a balanced supply of <b>Food</b> and <b>Water</b>.

      RESOURCE
      {
        name = Food
        amount = 0.7224224
        maxAmount = 0.7224224
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }

      RESOURCE
      {
        name = Water
        amount = 0.2775776
        maxAmount = 0.2775776
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }

    SETUP
    {
      name = Waste
      desc = Store solid and liquid organic waste.

      RESOURCE
      {
        name = Waste
        amount = 0
        maxAmount = 0.4949706
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }

      RESOURCE
      {
        name = WasteWater
        amount = 0
        maxAmount = 0.5050294
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }

    SETUP
    {
      name = Food

      RESOURCE
      {
        name = Food
        amount = 1
        maxAmount = 1
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }

    SETUP
    {
      name = Water

      RESOURCE
      {
        name = Water
        amount = 1
        maxAmount = 1
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }
  }
}


// ============================================================================
// Add configurable supplies to radial containers
// ============================================================================

@PART[kerbalism-container-radial-*]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  MODULE
  {
    name = Configure
    title = Pressurized Tank
    slots = 1

    SETUP
    {
      name = Oxygen
      desc = Store liquid oxygen

      RESOURCE
      {
        name = Oxygen
        amount = 809.22
        maxAmount = 809.22
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }

    SETUP
    {
      name = Nitrogen
      desc = Store liquid nitrogen

      RESOURCE
      {
        name = Nitrogen
        amount = 659.4
        maxAmount = 659.4
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }

    SETUP
    {
      name = Hydrogen
      desc = Store liquid hydrogen

      RESOURCE
      {
        name = Hydrogen
        amount = 788.1
        maxAmount = 788.1
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }

    SETUP
    {
      name = Ammonia
      desc = Store liquid ammonia

      RESOURCE
      {
        name = Ammonia
        amount = 913.0
        maxAmount = 913.0
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }

    SETUP
    {
      name = CarbonDioxide
      desc = Store liquid co2

      RESOURCE
      {
        name = CarbonDioxide
        amount = 0
        maxAmount = 601.36
        @amount *= #$../../../ContainerVolume$
        @maxAmount *= #$../../../ContainerVolume$
      }
    }
  }
}


// ============================================================================
// Setup greenhouse
// ============================================================================

@PART[kerbalism-greenhouse]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  MODULE
  {
    name = Greenhouse

    crop_resource = Food                // name of resource produced by harvests
    crop_size = 2500.0                  // amount of resource produced by harvests
    crop_rate = 0.00000023148           // growth per-second when all conditions apply
    ec_rate = 2.5                       // EC/s consumed by the lamp at max intensity

    light_tolerance = 400.0             // minimum lighting flux required for growth, in W/m^2
    pressure_tolerance = 0.1            // minimum pressure required for growth, in sea level atmospheres
    radiation_tolerance = 0.000008333   // maximum radiation allowed for growth in rad/s, considered after shielding is applied

    lamps = Cylinder001                 // object with emissive texture used to represent lamp intensity graphically
    shutters = door                     // animation to manipulate shutters
    plants =                            // animation to represent plant growth graphically

    INPUT_RESOURCE
    {
      name = Ammonia
      rate = 0.00695                    // 37530 units required for crop
    }

    INPUT_RESOURCE
    {
      name = Water
      rate = 0.00023148                 // 1250 units required for crop
    }

    OUTPUT_RESOURCE
    {
      name = Oxygen
      rate = 0.00463                    // 25% of oxygen required by 1 crew member
    }

    OUTPUT_RESOURCE
    {
      name = WasteWater
      rate = 0.00023033
    }
  }

  MODULE
  {
    name = Habitat
    toggle = false
  }

  RESOURCE
  {
    name = Waste
    amount = 0
    maxAmount = 10
  }

  RESOURCE
  {
    name = Ammonia
    amount = 1000
    maxAmount = 1000
  }
}


// ============================================================================
// Fuel cells
// ============================================================================

@PART[FuelCell]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  !MODULE[ModuleResourceConverter] {}
  !RESOURCE[ElectricCharge] {}

  MODULE
  {
    name = ProcessController
    resource = _FuelCell
    title = Fuel cell
    capacity = 1
  }

  MODULE:NEEDS[FeatureReliability]
  {
    name = Reliability
    type = ProcessController
    title = Fuel Cell
    redundancy = Power Generation
    repair = Engineer
    mtbf = 72576000 // 8y
    extra_cost = 1.0
    extra_mass = 0.5
  }

  @TechRequired = basicScience
}

@PART[FuelCellArray]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  !MODULE[ModuleResourceConverter] {}
  !RESOURCE[ElectricCharge] {}

  MODULE
  {
    name = ProcessController
    resource = _FuelCell
    title = Fuel cell
    capacity = 6
  }

  MODULE:NEEDS[FeatureReliability]
  {
    name = Reliability
    type = ProcessController
    title = Fuel Cell
    redundancy = Power Generation
    repair = Engineer
    mtbf = 72576000 // 8y
    extra_cost = 1.0
    extra_mass = 0.5
  }
}


// ============================================================================
// ISRU chemical plants
// ============================================================================

@PART[kerbalism-chemicalplant,MiniISRU,ISRU,smallISRU]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  !MODULE[ModuleResourceConverter],* {}
  !MODULE[ModuleOverheatDisplay] {}
  !MODULE[ModuleCoreHeat] {}

  MODULE
  {
    name = ProcessController
    resource = _WaterElectrolysis
    title = Water electrolysis
    capacity = 1
  }

  MODULE
  {
    name = ProcessController
    resource = _Sabatier
    title = Sabatier process
    capacity = 1
  }

  MODULE
  {
    name = ProcessController
    resource = _Haber
    title = Haber process
    capacity = 1
  }

  MODULE
  {
    name = ProcessController
    resource = _Anthraquinone
    title = Anthraquinone process
    capacity = 1
  }

  MODULE
  {
    name = ProcessController
    resource = _HydrazineProduction
    title = Hydrazine production
    capacity = 1
  }

  MODULE
  {
    name = ProcessController
    resource = _MRE
    title = MRE
    capacity = 1
  }

  MODULE
  {
    name = ProcessController
    resource = _SOE
    title = SOE
    capacity = 1
  }

  MODULE
  {
    name = Configure
    title = Chemical Plant
    slots = 1

    SETUP
    {
      name = Water Electrolysis

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _WaterElectrolysis
      }
    }

    SETUP
    {
      name = Sabatier Process

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _Sabatier
      }
    }

    SETUP
    {
      name = Haber Process

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _Haber
      }
    }

    SETUP
    {
      name = Anthraquinone Process
      tech = advScienceTech

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _Anthraquinone
      }
    }

    SETUP
    {
      name = Hydrazine Production
      tech = advScienceTech

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _HydrazineProduction
      }
    }

    SETUP
    {
      name = Solid Oxide Electrolysis
      desc = Convert <b>CarbonDioxide</b> into <b>Oxygen</b>, using vast amounts of <b>ElectricCharge</b> in the process.
      tech = experimentalScience

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _SOE
      }
    }

    SETUP
    {
      name = Molten Regolith Electrolysis
      desc = Extract <b>Oxygen</b> out of <b>Ore</b>.
      tech = experimentalScience

      MODULE
      {
        type = ProcessController
        id_field = resource
        id_value = _MRE
      }
    }
  }

  MODULE:NEEDS[FeatureReliability]
  {
    name = Reliability
    type = ProcessController
    title = Chemical Plant
    repair = Engineer
    mtbf = 72576000 // 8y
    extra_cost = 1.0
    extra_mass = 0.2
  }
}

@PART[MiniISRU]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  @MODULE[ProcessController]
  {
    @capacity *= 3.3
  }
}

@PART[ISRU]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  @MODULE[ProcessController]
  {
    @capacity *= 5.0
  }

  @MODULE[Configure]
  {
    %slots = 2
  }
}

@PART[smallISRU]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  @MODULE[ProcessController]
  {
    @capacity *= 2.0
  }
}


// ============================================================================
// ISRU drills
// ============================================================================

@PART[MiniDrill,RadialDrill]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  !MODULE[ModuleResourceHarvester] {}
  !MODULE[ModuleOverheatDisplay] {}
  !MODULE[ModuleCoreHeat] {}

  MODULE
  {
    name = Harvester
    title = Water Extraction
    drill = ImpactTransform
    type = 0
    resource = Water
    min_abundance = 0.01
    rate = 0.0005
    ec_rate = 1.0
  }

  MODULE
  {
    name = Harvester
    title = Ore Extraction
    drill = ImpactTransform
    type = 0
    resource = Ore
    min_abundance = 0.05
    rate = 0.0025
    ec_rate = 1.0
  }

  MODULE
  {
    name = Configure
    title = Drill
    slots = 1

    SETUP
    {
      name = Water Extraction
      desc = Extract <b>Water</b> from the surface.

      MODULE
      {
        type = Harvester
        id_field = resource
        id_value = Water
      }

      RESOURCE
      {
        name = Water
        amount = 0
        maxAmount = 50
      }
    }

    SETUP
    {
      name = Ore Extraction
      desc = Extract <b>Ore</b> from the surface.

      MODULE
      {
        type = Harvester
        id_field = resource
        id_value = Ore
      }

      RESOURCE
      {
        name = Ore
        amount = 0
        maxAmount = 50
      }
    }
  }

  MODULE:NEEDS[FeatureReliability]
  {
    name = Reliability
    type = Harvester
    title = Harvester
    repair = Engineer
    mtbf = 72576000 // 8y
    extra_cost = 1.0
    extra_mass = 0.2
  }
}
@PART[RadialDrill]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  @MODULE[Harvester],*
  {
    @rate *= 5
    @ec_rate *= 5
  }
}


// ============================================================================
// atmospheric harvester
// the atmospheric experiment part is used as an atmospheric harvester
// ============================================================================

@PART[sensorAtmosphere]:NEEDS[ProfileDefault]:FOR[Kerbalism]
{
  MODULE
  {
    name = Harvester
    title = CO2 Filter
    type = 2
    resource = CarbonDioxide
    min_abundance = 0.005
    min_pressure = 4.0
    rate = 0.2
    ec_rate = 0.5
  }

  MODULE
  {
    name = Harvester
    title = Oxygen Filter
    type = 2
    resource = Oxygen
    min_abundance = 0.02
    min_pressure = 5.0
    rate = 0.25
    ec_rate = 0.5
  }

  MODULE
  {
    name = Harvester
    title = Nitrogen Filter
    type = 2
    resource = Nitrogen
    min_abundance = 0.01
    min_pressure = 2.0
    rate = 0.35
    ec_rate = 0.5
  }

  MODULE
  {
    name = Configure
    title = Atmospheric Filter
    slots = 1

    SETUP
    {
      name = CO2 Filter
      desc = Extract <b>CO2</b> from the atmosphere.

      MODULE
      {
        type = Harvester
        id_field = resource
        id_value = CarbonDioxide
      }
    }

    SETUP
    {
      name = Oxygen Filter
      desc = Extract <b>Oxygen</b> from the atmosphere.

      MODULE
      {
        type = Harvester
        id_field = resource
        id_value = Oxygen
      }
    }

    SETUP
    {
      name = Nitrogen Filter
      desc = Extract <b>Nitrogen</b> from the atmosphere.

      MODULE
      {
        type = Harvester
        id_field = resource
        id_value = Nitrogen
      }
    }
  }

  MODULE:NEEDS[FeatureReliability]
  {
    name = Reliability
    type = Harvester
    title = Harvester
    repair = Engineer
    mtbf = 72576000 // 8y
    extra_cost = 1.0
    extra_mass = 0.5
  }

  @mass = 0.2
}


// ============================================================================
// Pseudo-resources used by processes
// ============================================================================

RESOURCE_DEFINITION
{
  name = _Scrubber
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _PressureControl
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _WaterRecycler
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _WasteProcessor
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _FuelCell
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _WaterElectrolysis
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _Sabatier
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _Haber
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _Anthraquinone
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _HydrazineProduction
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _SOE
  density = 0.0
  isVisible = false
}

RESOURCE_DEFINITION
{
  name = _MRE
  density = 0.0
  isVisible = false
}

@ShotgunNinja can u look over it also. it should just stop keralism from using/ applying food,water,oxygen and electricity but be able to track tac still when u leave the launch pad. it should also disable the failures if u have dangit and use RT if its installed..

can anyone verfy that the section at top for RT and such is correct.

ive already did some quick testing and the timers once u leave the launch pad will default to what TAC is using. so with this u wont have to check tac but can use the kerbalism checker to check it and it also still throws the alarms.

 

if everything checks out @ShotgunNinja u can add it as a optional default for those with tac on the OP.

 

think with this setup it will work with any other LS just fine not just tac but haven't checked other mods.

 

Edited by sidfu

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.