Jump to content

Barrin

Members
  • Posts

    19
  • Joined

  • Last visited

Reputation

7 Neutral

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Thanks again for the real world data. As of the next version, I'll be using more realistic (but slightly rounded off) numbers based on what you provided. (135 Oxygen per 6 hour day, and 1 unit of water/food per day.)
  2. Hey, thanks. Any objection if I use some of these numbers in updating the next version of the realism.cfg?
  3. That's actually why I went with 540 units of Oxygen per day on the realistic config. I didn't consider the whole 6 hour day vs. 24 hour day, though, and I might tweak that in the next version. (Or not, I haven't quite decided yet. It feels like if I base Oxygen consumption on a 6 hour period, I ought to do the same thing for food and water... and at that point I'm just rescaling everything.)
  4. Did you start a new save game when you changed to the realism config, or load an old save? (Those two resources shouldn't be showing up at all with the realism config, unless they're coming in from a part/vessel that was created prior to the switch.) EDIT: Ah ha, looks like PBS includes a compatibility config for Kerbalism that uses the Crap and CO2 pseudo-resources for several parts. The realism config doesn't use those resources though, I used resources from the CRP instead, so I don't think PBS is going to work with the realism config without some serious tweaking. I'll see if I can write a patch this weekend, and compatibility might be better in the future depending on what direction the main Kerbalism mod goes with resources, but I can't make any promises there. It's not my mod, after all, I've just been enjoying tinkering with it. Yeah, that was a bit of a kludge to get some basic parts from US that require TAC-LS normally. I'll grab a copy of PBS and take a look at it, see what can be done, and when I have a bit of time this weekend I'll see if I can't find a less kludgey way of enabling the specific parts from US and just those parts.
  5. They should be on their own tab at the bottom of the part list when you're editing a ship in the VAB/SPH. Found the problem, and it was my goof. In the greenhouse section of the realism config, there's a bit that adds a waste storage tank to the greenhouse: RESOURCE { name = Waste isTweakable = false isVisible = true maxAmount = 90.0 // Large enough to store ~2 weeks of waste for a 3 man crew } But I forgot to specify an initial amount. It should have been: RESOURCE { name = Waste isTweakable = false isVisible = true amount = 0.0 maxAmount = 90.0 // Large enough to store ~2 weeks of waste for a 3 man crew } I'll make sure it's fixed in the next version, and for now you can just copy-paste that into the "Customize greenhouse" section of the config if you want the error to go away.
  6. Odd, checking the part using the in-game debugger, all the resources it's supposed to have are there... I'll try a few things from the cfg side and see if it's something I goofed up on. That's the rate when it's actively filtering water (which should only be for short bursts about four times per day). The planner isn't quite accurate in how it displays that right now, but that should improve down the line. In total, leaving the water filtration system on will cost you about 25 EC per Kerbalnaut each time it starts up, which will happen 4 times per day, for a total of 100 EC per day per Kerbalnaut. (Or about 0.005 EC per second, if you want a comparison to other systems that run constantly.)
  7. Personally, I'm using Xamarin and everything's compiling just fine. Just be sure to open up the .csproj project file that comes with Kerbalism in a text editor and update the HintPath entries to point toward your local KSP folder. For example, I had to change this: <Reference Include="Assembly-CSharp"> <HintPath>C:\Games\KSP\KSP_x64_Data\Managed\Assembly-CSharp.dll</HintPath> </Reference> To this: <Reference Include="Assembly-CSharp"> <HintPath>E:\Games\KSP\KSP_x64_Data\Managed\Assembly-CSharp.dll</HintPath> </Reference> You can do all that through whatever IDE you use, too, but personally it just seems easier to do a quick find and replace to change the drive letter/path.
  8. 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.
  9. Modding your own water tanks is of course an option, but you might have some other options before long. I've been working on tweaking the realism config (a lot) behind the scenes, adding support for some of the new features and nailing down bugs the old config was causing. When the next version of Kerbalism rolls out, it should come with an updated version of the realism config that is a lot more feature complete, and is actually playable longterm without everyone dying of thirst.
  10. UniversalStorage has some useful Water related parts, and I believe several of the USI mods (USI Kolonization System) use Water, as well as CarbonDioxide, Waste, and Wastewater. (Possibly scratch that, USI's MKS does use water, but I can't verify that it's using the same waste resources. The wiki seems out of date. Downloading it now to double check directly.) EDIT: Okay, looks like most of the USI parts should work, as long as you are spoofing Tac-LS support using a module manager patch (@Settings:FOR[TacLifeSupport] {}). There's way too much overlap in terms of what parts do what, though, so I'm not sure how well it would all play together. (Sorry about that.)
  11. Quick update for the realism.cfg profile: This version tweaks some of the specific food/oxygen part settings instead of applying a global multiplier to the kerbalism food/oxygen parts and greatly reduces the EC cost of using the water filtration module on command pods. While the EC cost of water filtration is much, much lower in this version, using the module now also requires a filtration material, putting a limit on how long the water filtration module can be run without being resupplied. If you're also using Universal Storage and you'd like to enable several useful life support parts that work well with this profile, paste the following into a text file, save it as a .cfg file, and drop it somewhere in your Kerbalism folder: // ============================================================================ // Unlock Universal Storage parts by spoofing TacLifeSupport settings // ============================================================================ @Settings:FOR[TacLifeSupport] {} // ============================================================================ // Tweak some Universal Storage part settings // ============================================================================ @PART[US_Radial_R40_Food] { @RESOURCE[Food] { @amount = 6 @maxAmount = 6 } } @PART[US_1R320_Wedge_Food] { @description = Packed to the brim with compressed food-like-items; this supply canister provides everything an indulgent Kerbalnaut would ever need in a lightweight, semi-edible package. Note: packaging is not edible. Food-like-items may or may not provide actual nutritional value. @title = Universal Storage: Food Storage Canister @RESOURCE[Food] { @amount = 36 @maxAmount = 36 } } This should enable all the TAC Life Support parts, and balance the amount of food stored in the US wedges/radials. Keep in mind, this profile is still experimental and there may be changes down the line that could break save games, so please backup your saves.
  12. Dagnabbit, that's all you have to do to bypass the part :NEEDS in mods like Universal Storage? Man, I wish I'd seen that about 24 hours ago... it would have saved me a bunch of time.
  13. You make a really good point on the whole EC planner integration thing, so that all sounds awesome to me. Yeah, I based those EC rates on the water filtration module from Universal Storage, and they seem way too high. I've been working on some pretty cool tweaks to the water filtration module I posted that fix that though (and add a couple really cool features on top). Give me a little bit to test everything and make sure there aren't any bugs and I'll post what I've got.
  14. Yeah, kind of. Personally, I'd prefer it if as much as possible was handled with ModuleManager configs, so that it's easier to tweak settings and behaviors and whatnot. Parts that need some special behavior to implement (like the interaction between scrubbers and being in-atmosphere) are an obvious exception, of course.
  15. One more tweak for anyone that decides to use the CRP resource rules config I posted earlier, and needs a way to filter waste water on longer missions, but doesn't want to fool with Universal Storage compatibility. Replace the scrubbers section of the rules config with the following to add a water filtration module to all command pods: // ============================================================================ // Add scrubbers/water filtration 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 = ModuleResourceConverter ConverterName = Water Filtration System StartActionName = Start Water Filtration StopActionName = Stop Water Filtration FillAmount = 1 AutoShutdown = true UseSpecializationBonus = false INPUT_RESOURCE { ResourceName = ElectricCharge Ratio = 10 FlowMode = STAGE_PRIORITY_FLOW } INPUT_RESOURCE { ResourceName = WasteWater Ratio = 0.1 FlowMode = STAGE_PRIORITY_FLOW } OUTPUT_RESOURCE { ResourceName = Water Ratio = 0.1 DumpExcess = false } } } If you decide to use this tweak and enable the universal storage parts, then you probably also want to increase the efficiency of the US Water Reclamation System and decrease the efficiency of the command pod water filtration system, otherwise the latter will be a bit too useful in comparison to the former.
×
×
  • Create New...