Oops, missed the bit about being able to hide waste buffers when I was updating the realism config, here's a version that has them properly tucked away and hidden:
// This profile is geared toward more realism oriented players.
// In comparison to the default profile, this one adds water, has more realistic
// consumption rates, and provides a water filtration mechanism on command pods.
// ============================================================================
// ENABLE FEATURES
// ============================================================================
// 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 scrubbers from the game
@Kerbalism:FOR[EnableScrubber] {}
// comment out to remove shielding from the game
@Kerbalism:FOR[EnableShielding] {}
// ============================================================================
// RULES
// ============================================================================
// CLIMATE
Rule
{
name = Climate
resource_name = ElectricCharge
rate = 0.0001242236 // 0.02 per-second at average temp diff in LKO
degeneration = 0.00000345 // 30min
on_eva = 20.0 // 16min
on_resque = 250.0
modifier = temperature
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.
low_message = $VESSEL batteries are almost empty$NEWLINE<i>We are squeezing the last bit of juice</i>|$VESSEL batteries are almost empty$NEWLINE<i>Shutting down non-essential systems</i>
empty_message = There is no more ElectricCharge on $VESSEL$NEWLINE<i>Life support systems are off</i>|There is no more ElectricCharge on $VESSEL$NEWLINE<i>We lost control</i>
refill_message = $VESSEL batteries recharged$NEWLINE<i>The crew is allowed music again</i>|$VESSEL batteries recharged$NEWLINE<i>Systems are back online</i>
}
// FOOD
Rule
{
name = Food
resource_name = Food
waste_name = Waste
waste_ratio = 0.36498207977208
waste_buffer = 0.0 // Flush Waste into space by default, unless a greenhouse or waste storage tank is attached.
hide_waste = true
rate = 1.5 // 6 per-day
interval = 5400.0 // four meals a day
degeneration = 0.015625 // 64 meals, 16 days
on_pod = 48.0 // 8 days of supply (+16 of degen before starvation, for a total of 24 days)
on_resque = 3.0 // Less than one day of food (but the slow degeneration adds plenty of time.)
warning_threshold = 0.5625 // 1 week remaining
danger_threshold = 0.8125 // 3 days remaining
warning_message = $ON_VESSEL$KERBAL is getting really, really hungry.
danger_message = $ON_VESSEL$KERBAL is starving.
fatal_message = $ON_VESSEL$KERBAL starved to death.
relax_message = $ON_VESSEL$KERBAL looks relieved now that there is food available.
low_message = Food reserves are getting low on $VESSEL$NEWLINE<i>Anything edible is being scrutinized.</i>
empty_message = There is no food available on $VESSEL$NEWLINE<i>Hopefully the crew can tough it out.</i>
refill_message = $VESSEL now has a supply of food onboard$NEWLINE<i>Double rations for everybody.</i>
}
// WATER
Rule
{
name = Water
resource_name = Water
waste_name = WasteWater
waste_buffer = 2.5 // Large enough, but not enormous. Water needs to be reclaimed/filtered to avoid loss.
hide_waste = true
rate = 0.75 // 3 liters per-day
interval = 5400.0 // 4 drinks per day
degeneration = 0.0625 // 16 drinks, 4 days
on_pod = 12.0 // 4 days of supply per crew member (+12 days with default Filtration Material)
on_resque = 18.0 // 6 days of water (+4 days with Filtration Material)
warning_threshold = 0.25 // 3 days remaining
danger_threshold = 0.75 // 1 day remaining
warning_message = $ON_VESSEL$KERBAL is getting thirsty.
danger_message = $ON_VESSEL$KERBAL is extremely dehydrated.
fatal_message = $ON_VESSEL$KERBAL died from dehydration.
relax_message = $ON_VESSEL$KERBAL has access to water again.
low_message = Water reserves are getting low on $VESSEL$NEWLINE<i>The crew wants to know if LOx is potable.</i>
empty_message = There is no more clean water on $VESSEL$NEWLINE<i>The crew is preparing for the inevitable.</i>
refill_message = $VESSEL now has a supply of clean water available$NEWLINE<i>Drinks all around.</i>
}
// WATER FILTRATION
Rule
{
name = WaterFiltration
resource_name = FiltrationMaterial
on_pod = 0.0
on_eva = 0.0
on_resque = 1.0
low_threshold = 0.1
low_message = The water filtration material is running low on $VESSEL$NEWLINE<i>The crew is nervously checking the mission time table.</i>
empty_message = $VESSEL has no remaining water filtration material$NEWLINE<i>They have enough clean water onboard to make it home, right?</i>
refill_message = $VESSEL has been resupplied with water filtration material$NEWLINE<i>Everyone can stop hoarding their water now.</i>
}
// OXYGEN
Rule
{
name = Oxygen
resource_name = Oxygen
waste_name = CarbonDioxide
waste_ratio = 0.75
waste_buffer = 6.0 // Large holding tank for now, switch to a smaller tank and slow poisoning when waste poisoning implemented.
hide_waste = true
rate = 0.025 // 540 liters of Oxygen consumed per-day
degeneration = 0.002083333 // 8 minutes
on_pod = 8100.0 // 15 days of oxygen, 24 days with active scrubber at baseline efficiency
on_eva = 90.0 // One hour of oxygen
on_resque = 5400.0 // 10 days of oxygen
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 no longer suffocating.
low_message = Oxygen reserves are dangerously low on $VESSEL$NEWLINE<i>There is mild panic among the crew.</i>
empty_message = There is no more oxygen on $VESSEL$NEWLINE<i>Everybody stop breathing!</i>
refill_message = $VESSEL oxygen reserves restored$NEWLINE<i>The crew is taking a breather.</i>
}
// QUALITY OF LIFE
Rule
{
name = Stress
degeneration = 0.00000086805 // 60 days
variance = 0.33 // add per-kerbal variance
modifier = qol
breakdown = true // trigger breakdown event instead of death
warning_message = $ON_VESSEL$KERBAL is losing $HIS_HER mind$NEWLINE<i>Concentration is becoming a problem</i>
danger_message = $ON_VESSEL$KERBAL is about to breakdown$NEWLINE<i>Starting to hear voices</i>
// no fatal_message because breakdown message is generated automatically
// no relax_message because there is no recovery from stress
}
// RADIATION POISONING
Rule
{
name = Radiation
degeneration = 1.0 // just use the modifier
modifier = radiation
warning_threshold = 15.0 // in rad
danger_threshold = 22.5 // in rad
fatal_threshold = 30.0 // in rad
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.
// no relax_message because there is no recovery from radiation
}
// ============================================================================
// Customize resource containers
// ============================================================================
@PART[kerbalism-food-small] // 8 day supply of food
{
@title = Small Supply Container
@description = A valid alternative to starving and/or dying of thirst, this container comes packed with a little over a week's worth of the finest food slurry packets we could find on short notice. WARNING: A small fraction of food slurry packets may in fact be entirely 'non-toxic' chemically pre-treated rocket bearing grease. While RBG has been described as 'perfectly safe' to consume, Nazari Storage Services assumes no liability in the instance it actually is consumed.
@mass = 0.1
@RESOURCE[Food]
{
@amount = 48.0
@maxAmount = 48.0
}
}
@PART[kerbalism-food-125] // 40 day supply for 1 crew member
{
@title = Supply Container
@description = A small supply container containing enough prepackaged food and water filtration media to keep one brave Kerbalnaut away from death's door for 40 days. Filtration supplies may or may not be slightly irradiated, and may or may not be labeled in a way to make them easily distinguishable from Tygoo Transport Solutions' patented food bricks. Caveat emptor.
@mass = 0.5
@RESOURCE[Food]
{
@amount = 240.0
@maxAmount = 240.0
}
RESOURCE
{
name = FiltrationMaterial
amount = 10.0
maxAmount = 10.0
}
}
@PART[kerbalism-food-250] // 240 day supply for 1 crew member
{
@title = Large Supply Container
@description = An extra large supply canister containing all the dehydrated, ionized, pulverized, and recompressed FoodChalk a high-flying, space-age Kerbalnaut needs to keep the grim reaper at bay for months at a time. With the right equipment, some percentage of Tygoo Transport Solutions' newly patented FoodChalk can even be used to utterly annihilate any and all organic impurities contaminating otherwise potable water.
@RESOURCE[Food]
{
@amount = 1440.0
@maxAmount = 1440.0
}
RESOURCE
{
name = FiltrationMaterial
amount = 60.0
maxAmount = 60.0
}
}
@PART[kerbalism-oxygen-radial]
{
@RESOURCE[Oxygen]
{
@name = Oxygen
@amount = 13500.0
@maxAmount = 13500.0
}
}
@PART[RadialOxygenBig]
{
@RESOURCE[Oxygen]
{
@name = Oxygen
@amount = 108000.0
@maxAmount = 108000.0
}
}
PART
{
name = kerbalism-water-small
module = Part
author = Barrin // tweaked from Nazari1382's small inline food canister
MODEL
{
model = Kerbalism/Parts/InlineFoodSm/kismfoodsm
scale = 1, 1, 1
texture = kismfoodsm, Kerbalism/Parts/InlineFoodSm/kismwatersm
}
rescaleFactor = 1
node_stack_top = 0.0, 0.105, 0.0, 0.0, 1.0, 0.0, 0
node_stack_bottom = 0.0, -0.105, 0.0, 0.0, -1.0, 0.0, 0
node_attach = 0.25, 0.0, 0.0, 1.0, 0.0, 0.0
attachRules = 1,1,1,1,0
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.15
angularDrag = 2
crashTolerance = 6
breakingForce = 50
breakingTorque = 50
maxTemp = 1600
bulkheadProfiles = size0, srf
TechRequired = survivability
entryCost = 1500
cost = 800
category = none
subcategory = 0
title = Inline Water Tank
manufacturer = Nazari Storage Services
description = A small water canister, guaranteed to be 'sealed' and 'leak-free' for as long as 1 to 4 hours at sea level. Integrity not guaranteed on impact, in flight, in vacuum, or at high accelerations.
mass = 0.1
tags = _kerbalism water life
RESOURCE
{
name = Water
amount = 48
maxAmount = 48
}
}
// ============================================================================
// Enable Life support parts from Universal Storage parts if it is installed.
// ============================================================================
@Settings:FOR[TacLifeSupport]:NEEDS[UniversalStorage] {}
// ============================================================================
// Adjust Universal Storage food/resource values for balance.
// ============================================================================
@PART[US_Radial_R40_Food]:NEEDS[UniversalStorage]:AFTER[UniversalStorage]
{
@RESOURCE[Food]
{
@amount = 24
@maxAmount = 24
}
}
@PART[US_1R320_Wedge_Food]:NEEDS[UniversalStorage]:AFTER[UniversalStorage]
{
@RESOURCE[Food]
{
@amount = 144
@maxAmount = 144
}
}
@PART[US_2R340_Radial_Oxygen]:NEEDS[UniversalStorage]:AFTER[UniversalStorage]
{
@RESOURCE[Oxygen]
{
@amount = 6750
@maxAmount = 6750
}
}
@PART[US_1R340_Wedge_Oxygen]:NEEDS[UniversalStorage]:AFTER[UniversalStorage]
{
@RESOURCE[Oxygen]
{
@amount = 40500
@maxAmount = 40500
}
}
@PART[US_Radial_R30_Water]:NEEDS[UniversalStorage]:AFTER[UniversalStorage]
{
@RESOURCE[Water]
{
@amount = 12
@maxAmount = 12
}
}
@PART[US_1R360_Wedge_Water]:NEEDS[UniversalStorage]:AFTER[UniversalStorage]
{
@RESOURCE[Water]
{
@amount = 24
@maxAmount = 24
}
RESOURCE
{
name = FiltrationMaterial
amount = 5.0
maxAmount = 5.0
}
}
// ============================================================================
// Add scrubbers and water recyclers to command pods
// ============================================================================
@PART[*]:HAS[@MODULE[ModuleCommand],#CrewCapacity[>0]]
{
MODULE
{
name = Scrubber
// change scrubbed resource
resource_name = Oxygen
// change waste name
waste_name = CarbonDioxide
// change ec/s per-crew
ec_rate = 0.01
@ec_rate *= #$/CrewCapacity$
// change waste/s per-crew
co2_rate = 0.03
@co2_rate *= #$/CrewCapacity$
}
MODULE
{
name = Recycler
display_name = Water Filtration
resource_name = Water // resource produced
waste_name = WasteWater // waste resource recycled
filter_name = FiltrationMaterial // filtration material used up in the process
ec_rate = 4.0 // ec per second
waste_rate = 0.12 // waste removed per second
filter_rate = 0.01 // filtration material used up per second
//Each unit of filtration material can clean 12 units of waste water at the total cost of 400 EC
//3 units of water per day per kerbonaut, so total cost of 100 EC per kerbonaut each day
// Scale water filtration system control variables by crew size
@ec_rate *= #$/CrewCapacity$
@waste_rate *= #$/CrewCapacity$
@filter_rate *= #$/CrewCapacity$
// disabled by default when added to a vessel
is_enabled = false
}
RESOURCE
{
name = FiltrationMaterial
// Command pods come with enough FM to filter +12 days worth of water.
// This gives basic vessels a total of 16 days worth of supply.
// For longer missions, you'll need a supply canister.
amount = 3.0
maxAmount = 3.0
@amount *= #$/CrewCapacity$
@maxAmount *= #$/CrewCapacity$
}
}
// ============================================================================
// Customize greenhouse
// ============================================================================
@PART[Greenhouse]
{
@MODULE[Greenhouse]
{
// change food resource
@resource_name = Food
// change waste resource
@waste_name = Waste
// change ec rate for the lamps
@ec_rate = 0.5
// change waste rate
@waste_rate = 0.0003 // requires slightly less than waste/s for crew of 3
// change harvest size
@harvest_size = 1440.0 // food consumed for 3 crew over 80 days at 6 food per day == 1440 food
// change growth rate
@growth_rate = 0.0000005787 // 80 days
}
RESOURCE
{
name = Waste
isTweakable = false
isVisible = true
maxAmount = 90.0 // Large enough to store ~2 weeks of waste for a 3 man crew
}
}
// ============================================================================
// Filtration material
// ============================================================================
// Cover the 'wet cost' of Filtration Material added to parts
@PART[*]:HAS[@RESOURCE[FiltrationMaterial]]
{
materialCost = #$/RESOURCE[FiltrationMaterial]/maxAmount$
@materialCost *= #$@RESOURCE_DEFINITION[FiltrationMaterial]/unitCost$
@cost += #$materialCost$
}
// Water filtrationMaterial resource definition
RESOURCE_DEFINITION
{
name = FiltrationMaterial
density = 0.0004
flowMode = ALL_VESSEL
transfer = PUMP
isTweakable = true
isVisible = true
unitCost = 40.0 // Moderately expensive, but easier to get into orbit than the equivalent amount of water
}
And while I was in there, I added a bit of flavor text to the small water canister.