Jump to content

Cold reentry? No ablator consumed?


Recommended Posts

( actual patch is here: https://www.dropbox.com/s/y96a0krihtm7g04/zzz_HeatShieldsFix.cfg?dl=1 )
suggested to be used without RealHeat in a stockish environment - but you can use FAR (the unofficial 1.4.3 build)

The first time ever I had a reentry without ablator loss - on the dark side of Kerbin with a Bluedog DB Gemini pod and a Gemini Heatshield.

I know how the ablator is not consumed by any kind of air calculation (in stock) but just by part temp, set up by ablationTempThresh = 500 in this case, and that seems to be the default value.

But the ablator of the heatshield was not used at all ...

The reentry came from a 176 km apogee/perigee, the reentry burn was done at the perigee (yes) and perigee was set to 45 km on reentry burn.

It was a smooth reentry with not that much G force, lasted relatively long.
I did not manage it to check the temps during reentry, only after splashing down I recognized that the heatshield still got its 288 units of ablator.

Did anyone had seen something like this before?
When I do a research then people "only" have the opposite issue; that the ablator is already consumed in space because of part temp (for whatever reason, like engines, reactors or what ever).


So if any of the too much mods in my too much mods install is the culprit, here is the log of the whole session:
https://www.dropbox.com/s/n2er5bibbez89k2/2018-05-13_3 KSP.log.7z?dl=1

Edited by Gordon Dry
Link to comment
Share on other sites

4 hours ago, Gordon Dry said:

The reentry came from a 176 km apogee/perigee, the reentry burn was done at the perigee (yes) and perigee was set to 45 km on reentry burn. 

This means you spent a long time in the upper atmosphere.  Your craft slowed down enough that it didn't need a heatshield.    Especially considering you weren't coming in that fast to start with, you burned to slow down at periapsis, and you stayed at high altitude for a long time.  The low G's meant there was never a lot of force, ie friction, acting on the vessel, so not a lot of heat. 

Link to comment
Share on other sites

@Gargamel Well, the next launch, Gemini 2, had a 200 km apogee and after the burn at apogee a perigee of -23 km, that was a more stiff reentry, but still the same issue ...

I tried to pinpoint after the first issue, by removing the last mod I added, but still ...

I will remove the heatshield and add a new one the next time, perhaps it's kinda weird part issue.

39 minutes ago, Gargamel said:

Your craft slowed down enough that it didn't need a heatshield.

Nope, until 55 km it accelerated.

btw this is my Kerbin atmosphere:

and not to forget I didn't have this issue since today.

Edited by Gordon Dry
Link to comment
Share on other sites

  • 1 month later...

Attention: there seems to be a problem with this patch, now for whatever reason OrbitalDecay throws NREs ...

Edit: nope!
Well, easy like that, I had to take the vessel back to VAB (I use KCT) and just replace the heatshield with a brand new one - et voilá now it works ...

So, just did some research.

First, I finally found this, which is only 5 days old:

and this as follow up:
https://github.com/ringerc/ksp-minimods

 

I decided to fiddle the single patches into one, including own changes:

GameData\zFinal\zzz_HeatShieldsFix.cfg

@PART[*]:HAS[@MODULE[ModuleAblator,ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry]:FINAL
{
	// Stock heat shields are near perfect insulators and nearly thermally
	// indestructible, so their ablator is meaningless. Modify them so that
	// re-entry heating will destory the heat shield once the ablator burns up,
	// exposing the underlying part(s).
	//
	// This has to be high enough that the shield doesn't burn up before it's
	// depleted, but below the 2700K-ish max temp the shield reaches when
	// depleted. Temp before depletion depends on ablator parameters and
	// velocity.
	//
	// Tuned for 120% atmo heating to make re-entry at 3200m/s -> pe=0 survivable
	// with a module-only craft, but not a vertical re-entry. A gentle Eve re-entry
	// is OK, a moderately steep one will be kaboomy. Aerocapture in eve requires
	// caution.
	//
	%maxTemp=1400
	%skinMaxTemp=2500

	// It'd be nice if https://kerbalspaceprogram.com/api/class_module_ablator.html
	// documented these parameters...
	@MODULE[ModuleAblator]
	{
		// Heat offset by each unit of ablator. Increasing this lowers the heat
		// shield temp and lowers ablator burn rate, also the total heat the
		// ablator can ever offset when maxed. Small changes effective, linear.
		//
		// I don't decrease this because I want to be able to carry plenty of
		// ablator for interplanetary re-entries, and because it
		// increases required ablator mass excessively.
		//
		//@pyrolysisLossFactor *= 1
		@pyrolysisLossFactor *= 0.8

		// Base rate of ablator burn. Increasing this increases ablator burn rate
		// and lowers temp (more units of ablator burned = more heat offset).
		// Small changes effective, linear.
		//@lossConst *= 0.08
		@lossConst *= 0.8

		// Temp offset for ablation. Below this temp no ablation happens. Also
		// seems to affect the heat scaling above the threshold, lowering
		// burn rate for a given lossExp. I want ablator to have a much higher
		// resilience to gentle re-entry, mainly so it doesn't all burn off before
		// the final re-entry when doing repeated passes for aerocapture.
		//@ablationTempThresh = 2000
		// I think 2000 is way too high (Gordon Dry)
		@ablationTempThresh = 1500

		// Nonlinear factor (possibly exponent) of ablator burn rate.
		// Increasing this makes ablator burn slower and increases temp, so it
		// acts in the opposite direction to lossConst. Needs larger changes.
		//@lossExp *= 0.003
		@lossExp *= 0.1

		// Stock conductivity is 0.01. You'd think that lowering this
		// would make it a better insulator, accept less outside heat /
		// radiate less outside heat. But it seems to be the opposite.
		// With low values the shield heats more. While I'd like to
		// make it a better insulator, that makes it nearly
		// indestructible when ablator exhausted.
		@reentryConductivity = 0.01
		//@reentryConductivity *= 0.8
		
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry]:FINAL
{
    // The inflatible heat shield is magic, to the point where you never need
    // anything else once you have it. Nerf it a bit. It needs higher temp
    // tolerance on the skin than the ablative shields do because it doesn't
    // have pyrolisis for cooling.
    //
    // It should be useful for things like Duna landings, but lethal on Eve
    // or Jool for anything but high grazing of the atmosphere.
    //
    // One possible issue will be KSP's lack of decent "thin" atmo on dense
    // planets.
    //
    // This is rather less tuned so far, but it's shown survivable for Kerbin
    // high passes at 4500m/s
    //
    @maxTemp = 1500
    @skinMaxTemp = 3000

	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1550
    @skinMaxTemp = 3050
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[ServiceBay_*]:NEEDS[!DeadlyReentry]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 2600
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA,ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry]:FINAL
{
	// This is a crewed pod - is it supposed to have more than 100° C inside?
	// Caution!
	//
	%maxTemp=380
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblator
		ablativeResource = Ablator
		lossExp = -1500
		lossConst = 0.01
		pyrolysisLossFactor = 6000
		reentryConductivity = 0.01
		ablationTempThresh = 500
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}

// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

Thanks to ringerc aka. iiiinthecomputer

Edited by Gordon Dry
I found a config that is "way more fun"
Link to comment
Share on other sites

With the actual settings from the post above I created two videos during reentry:

Changed the config, testing with a steep reentry and no ablator at the heatshield. Kaboom, ofc.


Nearly the same reentry, some ablator on the heatshield, barely enough. As it's used up, the hottest reentry phase just came to an end. Survived.

 

 

Spoiler

 

This one is obsolete because settings are changed.

 

 

 

The fix also is inside the GameData\zFinal\ folder linked in my signature.

ofc this does not mean it's final.
But it's way better than stock behaviour now.
 

Edited by Gordon Dry
Link to comment
Share on other sites

@ringerc I just fiddled my patch again to make it compatible to your mod:

GameData\zFinal\zzz_HeatShieldsFix.cfg

// the first line in
// GameData\ImprovedAblator\ImprovedAblator.cfg 
// has to be changed to
// @PART[*]:HAS[@MODULE[ModuleAblator]]:FOR[ImprovedAblator]
//

@PART[*]:HAS[@MODULE[ModuleAblator,ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,!ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved,ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// Stock heat shields are near perfect insulators and nearly thermally
	// indestructible, so their ablator is meaningless. Modify them so that
	// re-entry heating will destory the heat shield once the ablator burns up,
	// exposing the underlying part(s).
	//
	// This has to be high enough that the shield doesn't burn up before it's
	// depleted, but below the 2700K-ish max temp the shield reaches when
	// depleted. Temp before depletion depends on ablator parameters and
	// velocity.
	//
	// Tuned for 120% atmo heating to make re-entry at 3200m/s -> pe=0 survivable
	// with a module-only craft, but not a vertical re-entry. A gentle Eve re-entry
	// is OK, a moderately steep one will be kaboomy. Aerocapture in eve requires
	// caution.
	//
	%maxTemp=1400
	%skinMaxTemp=2500

	// It'd be nice if https://kerbalspaceprogram.com/api/class_module_ablator.html
	// documented these parameters...
	@MODULE[ModuleAblator]
	{
		// Heat offset by each unit of ablator. Increasing this lowers the heat
		// shield temp and lowers ablator burn rate, also the total heat the
		// ablator can ever offset when maxed. Small changes effective, linear.
		//
		// I don't decrease this because I want to be able to carry plenty of
		// ablator for interplanetary re-entries, and because it
		// increases required ablator mass excessively.
		//
		//@pyrolysisLossFactor *= 1

		// Base rate of ablator burn. Increasing this increases ablator burn rate
		// and lowers temp (more units of ablator burned = more heat offset).
		// Small changes effective, linear.
		@lossConst *= 0.08

		// Temp offset for ablation. Below this temp no ablation happens. Also
		// seems to affect the heat scaling above the threshold, lowering
		// burn rate for a given lossExp. I want ablator to have a much higher
		// resilience to gentle re-entry, mainly so it doesn't all burn off before
		// the final re-entry when doing repeated passes for aerocapture.
		@ablationTempThresh = 2000

		// Nonlinear factor (possibly exponent) of ablator burn rate.
		// Increasing this makes ablator burn slower and increases temp, so it
		// acts in the opposite direction to lossConst. Needs larger changes.
		@lossExp *= 0.003

		// Stock conductivity is 0.01. You'd think that lowering this
		// would make it a better insulator, accept less outside heat /
		// radiate less outside heat. But it seems to be the opposite.
		// With low values the shield heats more. While I'd like to
		// make it a better insulator, that makes it nearly
		// indestructible when ablator exhausted.
		@reentryConductivity = 0.01
		
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblatorImproved]
	{
		%useChar = True
		%charModuleName = shieldChar
	}

// not used anymore?
//	@RESOURCE[Ablator]
//	{
		// Default to lighter heat shields.
//		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
//		@maxAmount *= 2
//	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // The inflatible heat shield is magic, to the point where you never need
    // anything else once you have it. Nerf it a bit. It needs higher temp
    // tolerance on the skin than the ablative shields do because it doesn't
    // have pyrolisis for cooling.
    //
    // It should be useful for things like Duna landings, but lethal on Eve
    // or Jool for anything but high grazing of the atmosphere.
    //
    // One possible issue will be KSP's lack of decent "thin" atmo on dense
    // planets.
    //
    // This is rather less tuned so far, but it's shown survivable for Kerbin
    // high passes at 4500m/s
    //
    @maxTemp = 1500
    @skinMaxTemp = 3000

	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblatorImproved]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1550
    @skinMaxTemp = 3050
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,ImprovedAblator]:FINAL
{
    @maxTemp = 1550
    @skinMaxTemp = 3050
	@MODULE[ModuleAblatorImproved]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[ServiceBay_*]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 2600
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA,ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// This is a crewed pod - is it supposed to have more than 100° C inside?
	// Caution!
	//
	%maxTemp=380
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblator
		ablativeResource = Ablator
		lossExp = -1500
		lossConst = 0.01
		pyrolysisLossFactor = 6000
		reentryConductivity = 0.01
		ablationTempThresh = 500
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}

// is this even useful anymore?
@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA,ModuleAblatorImproved],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	// This is a crewed pod - is it supposed to have more than 100° C inside?
	// Caution!
	//
	%maxTemp=380
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblatorImproved
		ablativeResource = Ablator
		lossExp = -1500
		lossConst = 0.01
		pyrolysisLossFactor = 6000
		reentryConductivity = 0.01
		ablationTempThresh = 700
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}


// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

 

Edited by Gordon Dry
and again some fiddling
Link to comment
Share on other sites

Next session:

// the first line in
// GameData\ImprovedAblator\ImprovedAblator.cfg 
// has to be changed to
// @PART[*]:HAS[@MODULE[ModuleAblator]]:FOR[ImprovedAblator]
//

@PART[*]:HAS[@MODULE[ModuleAblator,ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,!ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved,ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// Stock heat shields are near perfect insulators and nearly thermally
	// indestructible, so their ablator is meaningless. Modify them so that
	// re-entry heating will destory the heat shield once the ablator burns up,
	// exposing the underlying part(s).
	//
	// This has to be high enough that the shield doesn't burn up before it's
	// depleted, but below the 2700K-ish max temp the shield reaches when
	// depleted. Temp before depletion depends on ablator parameters and
	// velocity.
	//
	// Tuned for 120% atmo heating to make re-entry at 3200m/s -> pe=0 survivable
	// with a module-only craft, but not a vertical re-entry. A gentle Eve re-entry
	// is OK, a moderately steep one will be kaboomy. Aerocapture in eve requires
	// caution.
	//
	%maxTemp=1400
	%skinMaxTemp=2500

	// It'd be nice if https://kerbalspaceprogram.com/api/class_module_ablator.html
	// documented these parameters...
	@MODULE[ModuleAblator]
	{
		// Heat offset by each unit of ablator. Increasing this lowers the heat
		// shield temp and lowers ablator burn rate, also the total heat the
		// ablator can ever offset when maxed. Small changes effective, linear.
		//
		// I don't decrease this because I want to be able to carry plenty of
		// ablator for interplanetary re-entries, and because it
		// increases required ablator mass excessively.
		//
		//@pyrolysisLossFactor *= 1

		// Base rate of ablator burn. Increasing this increases ablator burn rate
		// and lowers temp (more units of ablator burned = more heat offset).
		// Small changes effective, linear.
		@lossConst *= 0.08

		// Temp offset for ablation. Below this temp no ablation happens. Also
		// seems to affect the heat scaling above the threshold, lowering
		// burn rate for a given lossExp. I want ablator to have a much higher
		// resilience to gentle re-entry, mainly so it doesn't all burn off before
		// the final re-entry when doing repeated passes for aerocapture.
		@ablationTempThresh = 1500

		// Nonlinear factor (possibly exponent) of ablator burn rate.
		// Increasing this makes ablator burn slower and increases temp, so it
		// acts in the opposite direction to lossConst. Needs larger changes.
		@lossExp *= 0.003

		// Stock conductivity is 0.01. You'd think that lowering this
		// would make it a better insulator, accept less outside heat /
		// radiate less outside heat. But it seems to be the opposite.
		// With low values the shield heats more. While I'd like to
		// make it a better insulator, that makes it nearly
		// indestructible when ablator exhausted.
		@reentryConductivity = 0.01
		
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	%maxTemp=1400
	%skinMaxTemp=2500

	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 1500
		%useChar = True
		%charModuleName = shieldChar
	}

	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		//@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // The inflatible heat shield is magic, to the point where you never need
    // anything else once you have it. Nerf it a bit. It needs higher temp
    // tolerance on the skin than the ablative shields do because it doesn't
    // have pyrolisis for cooling.
    //
    // It should be useful for things like Duna landings, but lethal on Eve
    // or Jool for anything but high grazing of the atmosphere.
    //
    // One possible issue will be KSP's lack of decent "thin" atmo on dense
    // planets.
    //
    // This is rather less tuned so far, but it's shown survivable for Kerbin
    // high passes at 4500m/s
    //
    @maxTemp = 1500
    @skinMaxTemp = 3000

	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblatorImproved]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1550
    @skinMaxTemp = 3050
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,ImprovedAblator]:FINAL
{
    @maxTemp = 1550
    @skinMaxTemp = 3050
	@MODULE[ModuleAblatorImproved]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[ServiceBay_*]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 1600
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA,ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// This is a crewed pod - is it supposed to have more than 100° C inside?
	// Caution!
	//
	%maxTemp=380
	%skinMaxTemp=1400

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblator
		ablativeResource = Ablator
		lossExp = -1500
		lossConst = 0.01
		pyrolysisLossFactor = 6000
		reentryConductivity = 0.01
		ablationTempThresh = 600
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}

// is this even useful anymore?
@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA,ModuleAblatorImproved],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	%maxTemp=380
	%skinMaxTemp=1400

	// seems to not working anymore with ImprovedAblator
	// MODULE
	// {
		// name = ModuleAblatorImproved
		// ablativeResource = Ablator
		// lossExp = -1500
		// lossConst = 0.01
		// pyrolysisLossFactor = 6000
		// reentryConductivity = 0.01
		// ablationTempThresh = 600
		
		// useChar = True
		// charModuleName = shieldChar
	// }

	// RESOURCE
	// {
		// name = Ablator
		// amount = 10
		// maxAmount = 20
	// }	
	// @mass -= 0.01
}


// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

and also this is installed:
https://github.com/KSP-RO/RealHeat/releases/tag/v4.6

and ofc this:

Result:

No ablator usage at all...
Video:


To find out if this is because of RealHeat or my patch (which uses mostly the same values as ImprovedHeatShields), I just loaded the save from after the reentry burn, exited the game and removed RealHeat.
I will do the same reentry without RealHeat in the next video.
 

Edited by Gordon Dry
Link to comment
Share on other sites

This time without RealHeat.

The heatshield and the pod became hotter, and this faster.
But not fast enough imho, so values also needs fixing.

And I also need to add patches for :NEEDS[RealHeat] and :NEEDS[!RealHeat]

Video:

 

Edited by Gordon Dry
Link to comment
Share on other sites

Next session, config changed.

RealHeat added again.

// the first line in
// GameData\ImprovedAblator\ImprovedAblator.cfg 
// has to be changed to
// @PART[*]:HAS[@MODULE[ModuleAblator]]:FOR[ImprovedAblator]
//

@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,!ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// Stock heat shields are near perfect insulators and nearly thermally
	// indestructible, so their ablator is meaningless. Modify them so that
	// re-entry heating will destory the heat shield once the ablator burns up,
	// exposing the underlying part(s).
	//
	// This has to be high enough that the shield doesn't burn up before it's
	// depleted, but below the 2700K-ish max temp the shield reaches when
	// depleted. Temp before depletion depends on ablator parameters and
	// velocity.
	//
	// Tuned for 120% atmo heating to make re-entry at 3200m/s -> pe=0 survivable
	// with a module-only craft, but not a vertical re-entry. A gentle Eve re-entry
	// is OK, a moderately steep one will be kaboomy. Aerocapture in eve requires
	// caution.
	//
	%maxTemp=1400
	%skinMaxTemp=2500

	// It'd be nice if https://kerbalspaceprogram.com/api/class_module_ablator.html
	// documented these parameters...
	@MODULE[ModuleAblator]
	{
		// Heat offset by each unit of ablator. Increasing this lowers the heat
		// shield temp and lowers ablator burn rate, also the total heat the
		// ablator can ever offset when maxed. Small changes effective, linear.
		//
		// I don't decrease this because I want to be able to carry plenty of
		// ablator for interplanetary re-entries, and because it
		// increases required ablator mass excessively.
		//
		@pyrolysisLossFactor *= 0.8
		//@pyrolysisLossFactor *= 0.2

		// Base rate of ablator burn. Increasing this increases ablator burn rate
		// and lowers temp (more units of ablator burned = more heat offset).
		// Small changes effective, linear.
		@lossConst *= 0.8
		//@lossConst *= 1.2

		// Temp offset for ablation. Below this temp no ablation happens. Also
		// seems to affect the heat scaling above the threshold, lowering
		// burn rate for a given lossExp. I want ablator to have a much higher
		// resilience to gentle re-entry, mainly so it doesn't all burn off before
		// the final re-entry when doing repeated passes for aerocapture.
		@ablationTempThresh = 1500

		// Nonlinear factor (possibly exponent) of ablator burn rate.
		// Increasing this makes ablator burn slower and increases temp, so it
		// acts in the opposite direction to lossConst. Needs larger changes.
		//@lossExp *= 0.003
		@lossExp *= 0.1

		// Stock conductivity is 0.01. You'd think that lowering this
		// would make it a better insulator, accept less outside heat /
		// radiate less outside heat. But it seems to be the opposite.
		// With low values the shield heats more. While I'd like to
		// make it a better insulator, that makes it nearly
		// indestructible when ablator exhausted.
		@reentryConductivity = 0.01
		//@reentryConductivity *= 0.8
		
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	%maxTemp=1400
	%skinMaxTemp=2500

	@MODULE[ModuleAblatorImproved]
	{
		@pyrolysisLossFactor *= 0.8
		@lossConst *= 0.8
		@ablationTempThresh = 1500
		@lossExp *= 0.1
		@reentryConductivity = 0.01
	}

	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500

}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // The inflatible heat shield is magic, to the point where you never need
    // anything else once you have it. Nerf it a bit. It needs higher temp
    // tolerance on the skin than the ablative shields do because it doesn't
    // have pyrolisis for cooling.
    //
    // It should be useful for things like Duna landings, but lethal on Eve
    // or Jool for anything but high grazing of the atmosphere.
    //
    // One possible issue will be KSP's lack of decent "thin" atmo on dense
    // planets.
    //
    // This is rather less tuned so far, but it's shown survivable for Kerbin
    // high passes at 4500m/s
    //
    @maxTemp = 1500
    @skinMaxTemp = 2500

	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
    @maxTemp = 1500
    @skinMaxTemp = 2500
	@MODULE[ModuleAblatorImproved]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1600
    @skinMaxTemp = 3000
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,ImprovedAblator]:FINAL
{
    @maxTemp = 1600
    @skinMaxTemp = 3000
	@MODULE[ModuleAblatorImproved]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
}

@PART[ServiceBay_*]:NEEDS[!RealHeat]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 1600
}

@PART[ServiceBay_*]:NEEDS[RealHeat]:FINAL
{
    @maxTemp = 1100
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// This is a crewed pod - is it supposed to have more than 100° C inside?
	// Caution!
	//
	%maxTemp=380
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblator
		ablativeResource = Ablator
		lossExp = -1500
		lossConst = 0.01
		pyrolysisLossFactor = 6000
		reentryConductivity = 0.01
		ablationTempThresh = 500
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
	%skinMaxTemp=1000

}

// is this even useful anymore?
@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblatorImproved],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	%maxTemp=380
	%skinMaxTemp=1200

	// seems to not working anymore with ImprovedAblator
	MODULE
	{
		name = ModuleAblatorImproved
		ablativeResource = Ablator
		lossExp = -1500
		lossConst = 0.01
		pyrolysisLossFactor = 6000
		reentryConductivity = 0.01
		ablationTempThresh = 500
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	@mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblatorImproved],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
	%skinMaxTemp=1000
}

// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

Video follows soon

Edited by Gordon Dry
to make this work with and without RealHeat is a PITA
Link to comment
Share on other sites

It's really a pita.

RealHeat is a nice mod, but to use it in stock without all the RO stuff etc.pp. - especially DeadlyReentry - is a bummer.

I can manage it to have a neat config without RealEntry - at least much faster and more precise than with RealHeat installed.

 

So in my next session I will test this config on top of ImprovedAblator - without RealHeat (the RealHeat-specific patches are still inside):

// the first line in
// GameData\ImprovedAblator\ImprovedAblator.cfg 
// has to be changed to
// @PART[*]:HAS[@MODULE[ModuleAblator]]:FOR[ImprovedAblator]
//

@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,!ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// Stock heat shields are near perfect insulators and nearly thermally
	// indestructible, so their ablator is meaningless. Modify them so that
	// re-entry heating will destory the heat shield once the ablator burns up,
	// exposing the underlying part(s).
	//
	// This has to be high enough that the shield doesn't burn up before it's
	// depleted, but below the 2700K-ish max temp the shield reaches when
	// depleted. Temp before depletion depends on ablator parameters and
	// velocity.
	//
	// Tuned for 120% atmo heating to make re-entry at 3200m/s -> pe=0 survivable
	// with a module-only craft, but not a vertical re-entry. A gentle Eve re-entry
	// is OK, a moderately steep one will be kaboomy. Aerocapture in eve requires
	// caution.
	//
	%maxTemp=1400
	%skinMaxTemp=2500

	// It'd be nice if https://kerbalspaceprogram.com/api/class_module_ablator.html
	// documented these parameters...
	@MODULE[ModuleAblator]
	{
		// Heat offset by each unit of ablator. Increasing this lowers the heat
		// shield temp and lowers ablator burn rate, also the total heat the
		// ablator can ever offset when maxed. Small changes effective, linear.
		//
		// I don't decrease this because I want to be able to carry plenty of
		// ablator for interplanetary re-entries, and because it
		// increases required ablator mass excessively.
		//
		@pyrolysisLossFactor *= 0.9
		//@pyrolysisLossFactor *= 0.2

		// Base rate of ablator burn. Increasing this increases ablator burn rate
		// and lowers temp (more units of ablator burned = more heat offset).
		// Small changes effective, linear.
		@lossConst *= 0.2
		//@lossConst *= 1.2

		// Temp offset for ablation. Below this temp no ablation happens. Also
		// seems to affect the heat scaling above the threshold, lowering
		// burn rate for a given lossExp. I want ablator to have a much higher
		// resilience to gentle re-entry, mainly so it doesn't all burn off before
		// the final re-entry when doing repeated passes for aerocapture.
		@ablationTempThresh = 1500

		// Nonlinear factor (possibly exponent) of ablator burn rate.
		// Increasing this makes ablator burn slower and increases temp, so it
		// acts in the opposite direction to lossConst. Needs larger changes.
		//@lossExp *= 0.003
		@lossExp *= 0.1

		// Stock conductivity is 0.01. You'd think that lowering this
		// would make it a better insulator, accept less outside heat /
		// radiate less outside heat. But it seems to be the opposite.
		// With low values the shield heats more. While I'd like to
		// make it a better insulator, that makes it nearly
		// indestructible when ablator exhausted.
		@reentryConductivity = 0.01
		//@reentryConductivity *= 0.8
		
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 1000
	}
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	%maxTemp=1400
	%skinMaxTemp=2500

	@MODULE[ModuleAblatorImproved]
	{
		@pyrolysisLossFactor *= 0.9
		@lossConst *= 0.2
		@ablationTempThresh = 1500
		@lossExp *= 0.1
		@reentryConductivity = 0.01
	}

	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500
	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 1000
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // The inflatible heat shield is magic, to the point where you never need
    // anything else once you have it. Nerf it a bit. It needs higher temp
    // tolerance on the skin than the ablative shields do because it doesn't
    // have pyrolisis for cooling.
    //
    // It should be useful for things like Duna landings, but lethal on Eve
    // or Jool for anything but high grazing of the atmosphere.
    //
    // One possible issue will be KSP's lack of decent "thin" atmo on dense
    // planets.
    //
    // This is rather less tuned so far, but it's shown survivable for Kerbin
    // high passes at 4500m/s
    //
    @maxTemp = 1500
    @skinMaxTemp = 2500

	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 1000
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
    @maxTemp = 1500
    @skinMaxTemp = 2500
	@MODULE[ModuleAblatorImproved]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 1000
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1600
    @skinMaxTemp = 3000
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 2000
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 1500
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,ImprovedAblator]:FINAL
{
    @maxTemp = 1600
    @skinMaxTemp = 3000
	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 2000
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 1500
	}
}

@PART[ServiceBay_*]:NEEDS[!RealHeat]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 1600
}

@PART[ServiceBay_*]:NEEDS[RealHeat]:FINAL
{
    @maxTemp = 1100
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// This is a crewed pod - is it supposed to have more than 100° C inside?
	// Caution!
	//
	%maxTemp=380
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblator
		ablativeResource = Ablator
		lossExp = -750
		lossConst = 0.002
		pyrolysisLossFactor = 5400
		reentryConductivity = 0.01
		ablationTempThresh = 400
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
	%skinMaxTemp=1000
}

// is this even useful anymore?
@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblatorImproved],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	%maxTemp=380
	%skinMaxTemp=1200

	// seems to not working anymore with ImprovedAblator
	MODULE
	{
		name = ModuleAblatorImproved
		ablativeResource = Ablator
		lossExp = -750
		lossConst = 0.002
		pyrolysisLossFactor = 5400
		reentryConductivity = 0.01
		ablationTempThresh = 400
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	@mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblatorImproved],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
	%skinMaxTemp=1000
}

// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

 

Link to comment
Share on other sites

So, the video.

I'm not sure if I should increase the Temp (I) of the crewable pod to let's say 400 K - but guess what?
What is better? Dying in an explosion because the pod's internal temperature was below a finnish sauna?
Or reaching the surface fully clothed in astronaut suits in a finnish hardcore sauna, but surviving?
So I will increase that value to 400 K.
And I also try to make the heatshield conduct a little bit less temperature to the pod ...

But before I do that I just want to show the outcome of the values from the previous post:

 

Link to comment
Share on other sites

3 Videos in a row, testing the same patch and the same vessel in the same game session.

The patch on top of

Spoiler

GameData\zFinal\zzz_HeatShieldsFix.cfg


// Gordon Dry
// https://forum.kerbalspaceprogram.com/index.php?/topic/174912-cold-reentry-no-ablator-consumed/
@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,!ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch,ImprovedAblator]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	%maxTemp=1400
	%skinMaxTemp=2500
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 1500
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 1000
	}
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	%maxTemp=1400
	%skinMaxTemp=2500

	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 1500
	}

	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500
	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 1000
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
    @maxTemp = 1500
    @skinMaxTemp = 2500

	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 1000
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
    @maxTemp = 1500
    @skinMaxTemp = 2500
	@MODULE[ModuleAblatorImproved]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 1000
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!ImprovedAblator]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1600
    @skinMaxTemp = 3000
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 2000
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
	@MODULE[ModuleAblator]
	{
		@ablationTempThresh = 1500
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,ImprovedAblator]:FINAL
{
    @maxTemp = 1600
    @skinMaxTemp = 3000
	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 2000
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
	@MODULE[ModuleAblatorImproved]
	{
		@ablationTempThresh = 1500
	}
}

@PART[ServiceBay_*]:NEEDS[!RealHeat]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 1600
}

@PART[ServiceBay_*]:NEEDS[RealHeat]:FINAL
{
    @maxTemp = 1100
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!ImprovedAblator]:FINAL
{
	// This is a crewed pod - is it supposed to be hotter than a hardcore finnish sauna inside?
	// Caution!
	%maxTemp=400
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblator
		ablativeResource = Ablator
		lossExp = -2500
		lossConst = 0.01
		pyrolysisLossFactor = 4800
		reentryConductivity = 0.01
		ablationTempThresh = 500
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!ImprovedAblator,RealHeat]:FINAL
{
	%skinMaxTemp=1000
}

// is this even useful anymore?
@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblatorImproved],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,ImprovedAblator]:FINAL
{
	%maxTemp=400
	%skinMaxTemp=1200

	MODULE
	{
		name = ModuleAblatorImproved
		ablativeResource = Ablator
		lossExp = -2500
		lossConst = 0.01
		pyrolysisLossFactor = 4800
		reentryConductivity = 0.01
		ablationTempThresh = 500
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	@mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblatorImproved],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,ImprovedAblator,RealHeat]:FINAL
{
	%skinMaxTemp=1000
}

// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

 

No RealHeat, no FAR.

All 3 videos origin from the same initial orbit, 200km circular.

 

1st approach, reentry burn to 55km periapsis:

Spoiler

 

hrKOsC8.png

Pod nearly survives, internal temp raises to nearly the limit of 400 K.

 

 

 

 

2nd approach, reentry burn to 35km periapsis:

Spoiler

aqM9d3K.png

This is better, the pod's internal temp reaches "only" 340 K, nearly the double amount of ablator left.

 

 

3rd approach, reentry burn to 15km periapsis:

Spoiler

FUoWF13.png

And just way better, pod reaches 330 K internal, additional 50% ablator left.

 

 

What do you think?

 

Edited by Gordon Dry
Link to comment
Share on other sites

Being a masochist this is the next test run with FAR and RealHeat added again, darn it.
On top of ImprovedHeatShields again, ofc.

GameData\zFinal\zzz_HeatShieldsFix.cfg

// Gordon Dry
// https://forum.kerbalspaceprogram.com/index.php?/topic/174912-cold-reentry-no-ablator-consumed/

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblatorImproved]
	{
		@name = ModuleAblator
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	%maxTemp=1400
	%skinMaxTemp=2500
	@MODULE[ModuleAblator]
	{
		@pyrolysisLossFactor *= 0.9
		@lossConst *= 0.2
		@lossExp *= 0.1
		@ablationTempThresh = 1000 // was 500K (redunant to the change above)
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500
	@MODULE[ModuleAblator]
	{
		@pyrolysisLossFactor *= 0.1
		@lossConst *= 0.1
//		@lossExp *= 0.1
		@ablationTempThresh = 600
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
    @maxTemp = 1500
    @skinMaxTemp = 2500
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1600
    @skinMaxTemp = 3000
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[ServiceBay_*]:NEEDS[!RealismOverhaul,!RealHeat]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 1600
}

@PART[ServiceBay_*]:NEEDS[!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1100
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	// This is a crewed pod - is it supposed to be hotter than a hardcore finnish sauna inside?
	// Caution!
	%maxTemp=400
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblator
		ablativeResource = Ablator
		lossExp = -2500
		lossConst = 0.002
		pyrolysisLossFactor = 5400
		reentryConductivity = 0.01
		ablationTempThresh = 500
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],@MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
	%maxTemp=380
	%skinMaxTemp=1000
	@MODULE[ModuleAblator]
	{
		@pyrolysisLossFactor *= 0.1
		@lossConst *= 0.1
		@ablationTempThresh = 400
	}
}

// is this even useful anymore?
@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleAnimateHeat]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	@MODULE[ModuleAnimateHeat]
	{
//		%ThermalAnim = overheat
		%ThermalAnim = hsanim
		%useTemp = false
		%useSkinTemp = true
	}
}

// @PART[*]:HAS[@MODULE[ModuleAblator],!MODULE[ModuleColorChanger]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FOR[zzz_HeatShieldsFix7]
// {
	// MODULE
	// {
		// name = ModuleColorChanger
		// moduleID = shieldChar
		// shaderProperty = _BurnColor
		// useRate = False
		// toggleInEditor = False
		// toggleInFlight = False
		
		// redCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// greenCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// blueCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// alphaCurve
		// {
			// key = 0 0.8
		// }
	// }
// }	

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,!FerramAerospaceResearch]:FINAL
{
	@thermalMassModifier *= 0.5
}

@PHYSICSGLOBALS:NEEDS[!FerramAerospaceResearch]:FINAL
{
	@convectionVelocityExponent = 3.35
}

@RESOURCE_DEFINITION[Ablator]:NEEDS[!FerramAerospaceResearch]:FINAL
{
	@hsp = 1000 // KSP 1.4.x stock value is 400, it was 100 way earlier
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblator]
	{
		@name = ModuleAblatorImproved
	}
}

// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

*forget RealHeat, it's not supposed to be used in a stock environment

Edited by Gordon Dry
and changed again for heavens sake
Link to comment
Share on other sites

This config (on top of ImprovedHeatshields), with FAR, no RealHeat:

// Gordon Dry
// https://forum.kerbalspaceprogram.com/index.php?/topic/174912-cold-reentry-no-ablator-consumed/

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblatorImproved]
	{
		@name = ModuleAblator
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	%maxTemp=1400
	%skinMaxTemp=2500
	@MODULE[ModuleAblator]
	{
		@pyrolysisLossFactor *= 0.9
		@lossConst *= 0.2
		@lossExp *= 0.1
		@ablationTempThresh = 1000 // was 500K (redunant to the change above)
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500
	@MODULE[ModuleAblator]
	{
		@pyrolysisLossFactor *= 0.1
		@lossConst *= 0.1
//		@lossExp *= 0.1
		@ablationTempThresh = 600
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
    @maxTemp = 1500
    @skinMaxTemp = 2500
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1600
    @skinMaxTemp = 3000
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[ServiceBay_*]:NEEDS[!RealismOverhaul,!RealHeat]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 1600
}

@PART[ServiceBay_*]:NEEDS[!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1100
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	// This is a crewed pod - is it supposed to be hotter than a hardcore finnish sauna inside?
	// Caution!
	%maxTemp=400
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	MODULE
	{
		name = ModuleAblator
		ablativeResource = Ablator
		lossExp = -2500
		lossConst = 0.002
		pyrolysisLossFactor = 5400
		reentryConductivity = 0.01
		ablationTempThresh = 500
		
		useChar = True
		charModuleName = shieldChar
	}

	RESOURCE
	{
		name = Ablator
		amount = 10
		maxAmount = 20
	}	
	// and adjust the mass so we don't get the ablator mass as a weight
	// discount.
	@mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],@MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
	%maxTemp=380
	%skinMaxTemp=1000
	@MODULE[ModuleAblator]
	{
		@pyrolysisLossFactor *= 0.1
		@lossConst *= 0.1
		@ablationTempThresh = 400
	}
}

// is this even useful anymore?
@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleAnimateHeat]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	@MODULE[ModuleAnimateHeat]
	{
//		%ThermalAnim = overheat
		%ThermalAnim = hsanim
		%useTemp = false
		%useSkinTemp = true
	}
}

// @PART[*]:HAS[@MODULE[ModuleAblator],!MODULE[ModuleColorChanger]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FOR[zzz_HeatShieldsFix7]
// {
	// MODULE
	// {
		// name = ModuleColorChanger
		// moduleID = shieldChar
		// shaderProperty = _BurnColor
		// useRate = False
		// toggleInEditor = False
		// toggleInFlight = False
		
		// redCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// greenCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// blueCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// alphaCurve
		// {
			// key = 0 0.8
		// }
	// }
// }	

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,!FerramAerospaceResearch]:FINAL
{
	@thermalMassModifier *= 0.5
}

@PHYSICSGLOBALS:NEEDS[!FerramAerospaceResearch]:FINAL
{
	@convectionVelocityExponent = 3.35
}

@RESOURCE_DEFINITION[Ablator]:NEEDS[!FerramAerospaceResearch]:FINAL
{
	@hsp = 1000 // KSP 1.4.x stock value is 400, it was 100 way earlier
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblator]
	{
		@name = ModuleAblatorImproved
	}
}

// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

The crewed vessel was in orbit for 7 days, so the temps were low.
I have to remove some mods to unclutter the PAW.
The parachute failed, but I just ejected the crew and managed to land them on their own parachutes.
In the water.
They sunk.
Not enough buoyancy on KerbalEVA. -> see https://github.com/Icecovery/Comfortable-Landing/issues/3

 

Link to comment
Share on other sites

Actually this:

// Gordon Dry
// https://forum.kerbalspaceprogram.com/index.php?/topic/174912-cold-reentry-no-ablator-consumed/

@PART[*]:HAS[@MODULE[ModuleAblatorImproved]]:NEEDS[!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblatorImproved]
	{
		@name = ModuleAblator
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	%maxTemp=1400
	%skinMaxTemp=2500
	@MODULE[ModuleAblator]
	{
		@pyrolysisLossFactor *= 0.9
		@lossConst *= 0.2
		@lossExp *= 0.1
		@ablationTempThresh = 1000 // was 500K (redunant to the change above)
		%useChar = True
		%charModuleName = shieldChar
	}
	@RESOURCE[Ablator]
	{
		// Default to lighter heat shields.
		@amount *= 0.5

		// Allow bigger heat shields. Useful for repeat flybys.
		@maxAmount *= 2
	}
}

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
	%maxTemp=900
	%skinMaxTemp=1500
	@MODULE[ModuleAblator]
	{
		@pyrolysisLossFactor *= 0.1
		@lossConst *= 0.1
//		@lossExp *= 0.1
		@ablationTempThresh = 600
	}
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
    @maxTemp = 1500
    @skinMaxTemp = 2500
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1000
    @skinMaxTemp = 2000
}

@PART[InflatableHeatShield]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry]:FINAL
{
    // Special treatment of the foldable KADEPT heatshields from TokamakIndustries
    // because they rock - and they're made of high-tech Mystery Goo impregnated fabric
    @maxTemp = 1600
    @skinMaxTemp = 3000
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1100
    @skinMaxTemp = 2500
}

@PART[KADEPT*]:NEEDS[TokamakIndustries,!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblator]
	{
		!useChar = delete
		!charModuleName = delete
	}
}

@PART[ServiceBay_*]:NEEDS[!RealismOverhaul,!RealHeat]:FINAL
{
    // Who needs a heat shield when a service bay is totally indestructible?
    // stock max temp was 3000.
    @maxTemp = 1600
}

@PART[ServiceBay_*]:NEEDS[!RealismOverhaul,RealHeat]:FINAL
{
    @maxTemp = 1100
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],!MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	// This is a crewed pod - is it supposed to be hotter than a hardcore finnish sauna inside?
	// Caution!
	%maxTemp=400
	%skinMaxTemp=1200

	// Add the option of some minimal built-in heat shielding. This makes it
	// playable in lower tech games, otherwise death is instantaneous and
	// certain. It also helps protect it against grazing heating.
	// MODULE
	// {
		// name = ModuleAblator
		// ablativeResource = Ablator
		// lossExp = -2500
		// lossConst = 0.002
		// pyrolysisLossFactor = 5400
		// reentryConductivity = 0.01
		// ablationTempThresh = 500
		
		// useChar = True
		// charModuleName = shieldChar
	// }

	// RESOURCE
	// {
		// name = Ablator
		// amount = 10
		// maxAmount = 20
	// }	
	// // and adjust the mass so we don't get the ablator mass as a weight
	// // discount.
	// @mass -= 0.01
}

@PART[*]:HAS[@MODULE[ModuleCommand],!MODULE[KerbalEVA],@MODULE[ModuleAblator],#CrewCapacity[>0]]:NEEDS[!DeadlyReentry,!RealismOverhaul,RealHeat]:FINAL
{
	%maxTemp=380
	%skinMaxTemp=1000
	// @MODULE[ModuleAblator]
	// {
		// @pyrolysisLossFactor *= 0.1
		// @lossConst *= 0.1
		// @ablationTempThresh = 400
	// }
}

// is this even useful anymore?
@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleLiftingSurface]]:NEEDS[FerramAerospaceResearch]:FINAL
{
	!MODULE[ModuleLiftingSurface] { }
}

@PART[*]:HAS[@MODULE[ModuleAblator],@MODULE[ModuleAnimateHeat]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FINAL
{
	@MODULE[ModuleAnimateHeat]
	{
//		%ThermalAnim = overheat
		%ThermalAnim = hsanim
		%useTemp = false
		%useSkinTemp = true
	}
}

// @PART[*]:HAS[@MODULE[ModuleAblator],!MODULE[ModuleColorChanger]]:NEEDS[!DeadlyReentry,!RealismOverhaul]:FOR[zzz_HeatShieldsFix7]
// {
	// MODULE
	// {
		// name = ModuleColorChanger
		// moduleID = shieldChar
		// shaderProperty = _BurnColor
		// useRate = False
		// toggleInEditor = False
		// toggleInFlight = False
		
		// redCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// greenCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// blueCurve
		// {
			// key = 0 0
			// key = 1 1
		// }
		// alphaCurve
		// {
			// key = 0 0.8
		// }
	// }
// }	

// @PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,!FerramAerospaceResearch]:FINAL
// {
	// @thermalMassModifier *= 0.5
// }

// @PHYSICSGLOBALS:NEEDS[!FerramAerospaceResearch]:FINAL
// {
	// @convectionVelocityExponent = 3.35
// }

// @RESOURCE_DEFINITION[Ablator]:NEEDS[!FerramAerospaceResearch]:FINAL
// {
	// @hsp = 1000 // KSP 1.4.x stock value is 400, it was 100 way earlier
// }

@PART[*]:HAS[@MODULE[ModuleAblator]]:NEEDS[!DeadlyReentry,!RealismOverhaul,ImprovedAblator]:FINAL
{
	@MODULE[ModuleAblator]
	{
		@name = ModuleAblatorImproved
	}
}

// I could try to alter it that the values differ, for example by taking mass into account and using  "low pass filters" and "high pass filters" to have set minimum and maximum values.

 

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...