Skip to content

Commit 0e13bc2

Browse files
Merge pull request #112 from post-kerbin-mining-corporation/dev
Release 0.7.0
2 parents d799ba1 + 9ab5573 commit 0e13bc2

65 files changed

Lines changed: 2489 additions & 2055 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.mod_data.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ package:
88
- changelog.txt
99
dependencies: # Configure dependencies
1010
ModuleManager:
11-
version: 4.2.1
11+
version: 4.2.3
1212
location: s3
1313
CommunityResourcePack:
1414
version: 1.4.2

Extras/SystemHeatBoiloff/CryoTanks/CryoTanksSystemHeat.cfg

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,22 +9,57 @@
99
iconName = Icon_Snow
1010
}
1111

12+
// FFT fusion-fuel tanks have CoolingCost specified at the module level, but
13+
// CoolingHeatCost will be specified at the BOILOFFCONFIG level since it
14+
// differs between the two resources. Delete the module-level CoolingCost
15+
// so it doesn't produce a module-level CoolingHeatCost.
16+
@MODULE[ModuleCryoTank]:HAS[@BOILOFFCONFIG:HAS[#FuelName[LqdHe3]|#FuelName[LqdDeuterium]]]
17+
{
18+
!CoolingCost = deleted
19+
}
20+
21+
// For the other resources, the cost can vary from part to part since there
22+
// are both ZBO and non-ZBO tanks, so the CoolingHeatCost can't be a
23+
// constant; it's derived from the CoolingCost. It can be specified either
24+
// at the module level or within a BOILOFFCONFIG; this handles the former.
25+
@MODULE[ModuleCryoTank]:HAS[#CoolingCost]
26+
{
27+
CoolingHeatCost = #$CoolingCost$
28+
@CoolingHeatCost *= 10
29+
@CoolingHeatCost /= 3
30+
}
31+
1232
@MODULE[ModuleCryoTank]
1333
{
1434

35+
// Replace the basic CryoTanks cooling (consumes EC according to
36+
// CoolingCost) with SystemHeat cooling (participates in a cooling loop
37+
// according to CoolingHeatCost).
1538
@name = ModuleSystemHeatCryoTank
1639
systemHeatModuleID = tank
1740

41+
// Derive CoolingHeatCost from CoolingCost at the individual resource
42+
// level, where applicable. (Costs specified at the module level were
43+
// handled earlier.)
44+
@BOILOFFCONFIG:HAS[#CoolingCost]
45+
{
46+
CoolingHeatCost = #$CoolingCost$
47+
@CoolingHeatCost *= 10
48+
@CoolingHeatCost /= 3
49+
}
50+
1851
@BOILOFFCONFIG:HAS[#FuelName[LqdHydrogen]]
1952
{
20-
CoolingHeatCost = 0.3
2153
CryocoolerTemperature = 300
2254
}
2355
@BOILOFFCONFIG:HAS[#FuelName[LqdMethane]]
2456
{
25-
CoolingHeatCost = 0.15
2657
CryocoolerTemperature = 400
2758
}
59+
60+
// FFT fusion fuels are stored in special tanks, with a different ratio
61+
// from CoolingCost to CoolingHeatCost. These tanks don't have separate
62+
// ZBO and non-ZBO versions, so the the cooling cost is always the same.
2863
@BOILOFFCONFIG:HAS[#FuelName[LqdHe3]]
2964
{
3065
CoolingHeatCost = 0.22

GameData/SystemHeat/Localization/en-us.cfg

Lines changed: 72 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ Localization
22
{
33
en-us
44
{
5-
#LOC_SystemHeat_Coolant_Default_title = Default Coolant Type
5+
#LOC_SystemHeat_Coolant_Default_title = Default Coolant Type
66
// TOOLBAR
77
// ------------
8-
#LOC_SystemHeat_ToolbarPanel_Title = System Heat
9-
#LOC_SystemHeat_ToolbarPanel_CraftStatsTitle = Craft Summary
8+
#LOC_SystemHeat_ToolbarPanel_Title = Heat Management
9+
#LOC_SystemHeat_ToolbarPanel_CraftStatsTitle = Overview
1010

11-
#LOC_SystemHeat_ToolbarPanel_OutgoingFluxTitle = Total Generation
12-
#LOC_SystemHeat_ToolbarPanel_IncomingFluxTile = Total Rejection
11+
#LOC_SystemHeat_ToolbarPanel_OutgoingFluxTitle = Generated
12+
#LOC_SystemHeat_ToolbarPanel_IncomingFluxTile = Removed
1313
#LOC_SystemHeat_ToolbarPanel_OutgoingFluxValue = <<1>>W
1414
#LOC_SystemHeat_ToolbarPanel_IncomingFluxValue = <<1>>W
1515

@@ -29,15 +29,15 @@ Localization
2929
#LOC_SystemHeat_ToolbarPanel_SettingsTitle = Settings
3030

3131
#LOC_SystemHeat_ToolbarPanel_SimulationRateTitle = Editor Simulation Rate
32-
#LOC_SystemHeat_ToolbarPanel_OverlayToggle = Overlay
32+
#LOC_SystemHeat_ToolbarPanel_OverlayToggle = Show Overlay
3333
#LOC_SystemHeat_ToolbarPanel_LoopsToggle = Loops
3434
#LOC_SystemHeat_ToolbarPanel_SimulationRateValue = <<1>>x
3535

3636
#LOC_SystemHeat_ToolbarPanel_LoopsTitle = Loops
3737
#LOC_SystemHeat_ToolbarPanel_LoopTitle = Loop <<1>>
3838
#LOC_SystemHeat_ToolbarPanel_LoopTemperatureTitle = • Temperature
3939
#LOC_SystemHeat_ToolbarPanel_LoopTemperatureValue = <<1>>/<<2>> K
40-
#LOC_SystemHeat_ToolbarPanel_LoopFluxTitle = • Net Flux
40+
#LOC_SystemHeat_ToolbarPanel_LoopFluxTitle = • Flux
4141
#LOC_SystemHeat_ToolbarPanel_LoopFluxValue = <<1>><<2>>W
4242

4343
// OVERLAY PANEL
@@ -48,7 +48,7 @@ Localization
4848

4949
// REACTOR TOOLBAR
5050
// ------------
51-
#LOC_SystemHeat_ReactorPanel_Title = Installed Reactors
51+
#LOC_SystemHeat_ReactorPanel_Title = Reactors
5252
#LOC_SystemHeat_ReactorPanel_NoReactors = No reactors detected on vessel
5353
#LOC_SystemHeat_ReactorPanel_ReactorOnToggleLabel = ON
5454
#LOC_SystemHeat_ReactorPanel_Field_HeatGeneratedTitle = Heat Generated
@@ -58,8 +58,32 @@ Localization
5858
#LOC_SystemHeat_ReactorPanel_Field_CoreLifeTitle = Core Life
5959
#LOC_SystemHeat_ReactorPanel_Field_CoreLife = <<1>>
6060
#LOC_SystemHeat_ReactorPanel_Field_CoreTemperatureTitle = Core Temperature
61-
#LOC_SystemHeat_ReactorPanel_Field_CoreTemperature = <<1>> K
61+
#LOC_SystemHeat_ReactorPanel_Field_CoreTemperature = <<1>>/<<2>> K
6262
#LOC_SystemHeat_ReactorPanel_Field_CoreTemperatureAlert = <<1>> K!
63+
// TOOLTIPS
64+
// ----------
65+
#LOC_SystemHeat_Tooltip_ReactorPanel_Toggle = Enable or disable reactor
66+
#LOC_SystemHeat_Tooltip_ReactorPanel_CapacitorCharge = Startup capacitor charge level
67+
#LOC_SystemHeat_Tooltip_ReactorPanel_CapacitorToggle = Enable or disable startup capacitors
68+
#LOC_SystemHeat_Tooltip_ReactorPanel_Temperature = Current and nominal reactor temperature
69+
#LOC_SystemHeat_Tooltip_ReactorPanel_Power = Current electrical generation
70+
#LOC_SystemHeat_Tooltip_ReactorPanel_Heat = Current heat generation
71+
#LOC_SystemHeat_Tooltip_ReactorPanel_Lifetime = Est. lifetime at current power
72+
73+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_StatsGeneration = Total heat generated by the vessel's parts
74+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_StatsRejection = Total heat removed by the vessel's parts
75+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_StatsLoopCount = Number of heat loops on the vessel
76+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_SituationVelocity= Simulated vessel velocity in atmosphere
77+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_SituationAltitude = Simulated altitude sea level
78+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_SituationSetSealevel = Set simulated altitude to Sea Level
79+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_SituationSetVacuum = Set simulated state to Vacuum/Orbit
80+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_SituationBody = Choose body for simulation
81+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_SettingsSimRate = Change the rate of the editor's simulation
82+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_LoopToggle = Show this loop in the overlay
83+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_LoopTemperature = Current and nominal temperature in this loop
84+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_LoopFlux = Net heating of this loop
85+
#LOC_SystemHeat_Tooltip_SystemHeatPanel_OverlayToggle = Toggle heat loop visualization
86+
6387

6488
// ENGINEER'S REPORT
6589
// ------------
@@ -73,6 +97,36 @@ Localization
7397
#LOC_SystemHeat_Units_W = W
7498
#LOC_SystemHeat_Units_kW = kW
7599
100+
// INGAME SETTINGS UI
101+
// ------------
102+
#LOC_SystemHeat_Settings_MainSection_Title = System Heat
103+
#LOC_SystemHeat_Settings_ReactorDamage_Section_Title = Fission Reactor Damage
104+
#LOC_SystemHeat_Settings_AllowReactorDamage_Title = Allow Reactor Damage
105+
#LOC_SystemHeat_Settings_AllowReactorDamage_Tooltip = If enabled, overheated reactors will take damage
106+
#LOC_SystemHeat_Settings_AllowReactorRepair_Title = Allow Reactor Repairs
107+
#LOC_SystemHeat_Settings_AllowReactorRepair_Tooltip = If enabled, damaged fission reactors can be repaired
108+
109+
#LOC_SystemHeat_Settings_EngineerLevelNeeded_Title = Engineer Level Required
110+
#LOC_SystemHeat_Settings_EngineerLevelNeeded_Tooltip = Engineer level needed to repair a reactor
111+
#LOC_SystemHeat_Settings_RepairAmoutPerKit_Title = Amount Repaired per Repair Kit
112+
#LOC_SystemHeat_Settings_RepairAmoutPerKit_Tooltip = The percentage of repairs done by using a single kit
113+
#LOC_SystemHeat_Settings_MaximumRepair_Title = Maximum Repairable Integrity
114+
#LOC_SystemHeat_Settings_MaximumRepair_Tooltip = The maximum integrity level to repair a reactor to
115+
#LOC_SystemHeat_Settings_MinimumRepair_Title = Minimum Repairable Integrity
116+
#LOC_SystemHeat_Settings_MinimumRepair_Tooltip = If a reactor is below this integrity level it can't be repaired
117+
118+
#LOC_SystemHeat_Settings_FissionFuel_Section_Title = Fission Fuel Transfer
119+
#LOC_SystemHeat_Settings_FissionFuelNeedsEngineers_Title = Nuclear Fuel Transfer Needs Engineers
120+
#LOC_SystemHeat_Settings_FissionFuelNeedsEngineers_Tooltip = If enabled, nuclear fuel transfer needs experienced engineers onboard
121+
#LOC_SystemHeat_Settings_FissionFuelEngineerLevelNeeded_Title = Engineer Level Required
122+
#LOC_SystemHeat_Settings_FissionFuelEngineerLevelNeeded_Tooltip = If enabled, overheated reactors will take damage
123+
124+
#LOC_SystemHeat_Settings_Cryogenics_Section_Title = Cryogenic Boiloff
125+
#LOC_SystemHeat_Settings_AllowCryogenicBoiloff_Title = Allow Cryogenic Fuel Boiloff
126+
#LOC_SystemHeat_Settings_AllowCryogenicBoiloff_Tooltip = If enabled, cryogenic fuels like Liquid Hydrogen, Helium, Methane, etc will need to be cooled using radiators
127+
#LOC_SystemHeat_Settings_ScaledCryogenicBoiloff_Title = Boiloff Rate
128+
#LOC_SystemHeat_Settings_ScaledCryogenicBoiloff_Tooltip = Modifies base boiloff rate
129+
76130
// PART MODULES
77131
// ------------
78132

@@ -101,6 +155,9 @@ Localization
101155
#LOC_SystemHeat_ModuleSystemHeatRadiator_ConvectionStatus_Title = Convective Flux
102156
#LOC_SystemHeat_ModuleSystemHeatRadiator_ConvectionStatus_Running = <<1>>W
103157

158+
#LOC_SystemHeat_ModuleSystemHeatRadiator_SunTracking_Disable = Disable Sun Tracking
159+
#LOC_SystemHeat_ModuleSystemHeatRadiator_SunTracking_Enable = Enable Sun Tracking
160+
104161
// ModuleSystemHeatEngine
105162
/// =================================
106163
#LOC_SystemHeat_ModuleSystemHeatEngine_DisplayName = Engine Heat
@@ -372,8 +429,11 @@ Localization
372429
#LOC_SystemHeat_switcher_size_square_detail = <color=#ff730d><b>Heat Radiated</b></color>: 2150 kW
373430
#LOC_SystemHeat_switcher_size_double_detail = <color=#ff730d><b>Heat Radiated</b></color>: 4300 kW
374431
#LOC_SystemHeat_switcher_size_half_detail = <color=#ff730d><b>Heat Radiated</b></color>: 1075 kW
375-
#LOC_SystemHeat_switcher_size_third_detail = <color=#ff730d><b>Heat Radiated</b></color>: 350 kW
376-
#LOC_SystemHeat_switcher_size_twothirds_detail = <color=#ff730d><b>Heat Radiated</b></color>: 710 kW
432+
#LOC_SystemHeat_switcher_size_third_detail = <color=#ff730d><b>Heat Radiated</b></color>: 710 kW
433+
#LOC_SystemHeat_switcher_size_twothirds_detail = <color=#ff730d><b>Heat Radiated</b></color>: 1420 kW
377434

435+
/// OTHER
436+
/// ========
437+
#LOC_SystemHeat_Subcategory_heatLoops = Cooling Loops
378438
}
379-
}
439+
}

GameData/SystemHeat/Localization/zh-cn.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ Localization
172172
/// ModuleSystemHeatFissionFuelContainer
173173
/// =================================
174174
175-
#LOC_SystemHeat_ModuleSystemHeatFissionFuelContainer_PartInfo = 转移核燃料需要高于 <color=#ff730d><<1>></color> 工程师 //Transfer nuclear fuel and waste when Engineers greater than <color=#ff730d>Level <<1>></color> are on board.
175+
#LOC_SystemHeat_ModuleSystemHeatFissionFuelContainer_PartInfo = 转移核燃料需要高于 <color=#ff730d><<1>></color> 工程师 //Transfer nuclear fuel and waste when Engineers greater than <color=#ff730d>Level <<1>></color> are on board.
176176
#LOC_SystemHeat_ModuleSystemHeatFissionFuelContainer_ModuleName = 核燃料容器 //Nuclear Fuel Container
177177
178178
#LOC_SystemHeat_ModuleSystemHeatFissionFuelContainer_Field_Collect_Name = 收集 <<1>> //Collect <<1>>

GameData/SystemHeat/Parts/systemheat-coolant-tank-radial-1.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
PART
22
{
33

4-
name = systemheat-coolant-tank-radial-1
4+
name = systemheat-exchanger-1
55
module = Part
66
author = Chris Adderley
77

GameData/SystemHeat/Parts/systemheat-exchanger-1.cfg

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,13 @@ PART
8484
key = 0 2
8585
key = 2000 200
8686
}
87+
// Maps desired heat flow to power scale
88+
heatFlowCostCurve
89+
{
90+
key = -1000 1000
91+
key = 0 0
92+
key = 1000 1000
93+
}
8794
OnLightTransformName = Light1
8895
DirectionLightTransformName = Light2
8996
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/// Adds a new VABOrganizer category
2+
ORGANIZERSUBCATEGORY
3+
{
4+
name = heatLoops
5+
Label = #LOC_SystemHeat_Subcategory_heatLoops
6+
Priority = 40
7+
CategoryPriority = 50
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/// Adds the parts added to a new VABOrganizer category
2+
@PART[systemheat-sink-1,systemheat-exchanger-1,systemheat-exchanger-1]:FOR[SystemHeat]:NEEDS[VABOrganizer]
3+
{
4+
%VABORGANIZER
5+
{
6+
%organizerSubcategory = heatManagement
7+
}
8+
}
8 KB
Binary file not shown.

GameData/SystemHeat/Settings.cfg

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,43 @@
11
SYSTEMHEAT
22
{
3-
4-
// Overlay Settings
3+
// UI scroll speed
4+
UISrollSensitivity = 25
5+
6+
// Overlay Settings
57
OverlayBaseLineWidth = 4
8+
OverlayBaseLineQueue = 3000
9+
10+
OverlayActiveLineWidth = 8
11+
OverlayActiveLineTextureScaleFactor = 10
12+
OverlayActiveLineTextureScrollRate = 2.5
13+
14+
OverlayLineBevel = 0.1
15+
OverlayLineBevelScale = 0.3
616
OverlayLineShader = GUI/Text Shader
17+
718
OverlayBoundsPadding = 1
8-
OverlayPadding = 0.4
19+
OverlayPadding = 0.2
920

1021
// Debug Settings
1122
DebugUI = false
1223
DebugOverlay = false
1324
DebugSimulation = false
14-
DebugModules = false
15-
DebugPartUI = false
1625

17-
1826
// General Settings
1927
MaxLoopCount = 20
2028

2129
// Simulator Settings
22-
// The functional minimum temperature of a loop
30+
// The functional minimum temperature of a loop (K)
2331
SpaceTemperature = 2.7f
24-
// Minimum loop integration step count
32+
// Minimum loop integration step count per physics frame
2533
MinSteps = 1
26-
// Maximum loop integration step count
34+
// Maximum loop integration step count per physics frame
2735
MaxSteps = 25
28-
// Modulates sharp heat spikes
36+
// Modulates sharp heat spikes by clamping the change in temperature in a physics frame at 1x speed
2937
MaxDeltaTPerStep = 25
30-
// Bas
38+
// Base simulation rate in the editor
3139
SimulationRateEditor = 1
32-
// Loop temperature is not adjusted when the net heat flux is below htis
40+
// Loop temperature is not adjusted when the net heat flux is below this (kW)
3341
AbsFluxThreshold = 0.5
3442

3543
}

0 commit comments

Comments
 (0)