Jump to content

[1.12.*] Deadly Reentry v7.9.0 The Barbie Edition, Aug 5th, 2021


Starwaster

Recommended Posts

Ok, here is a custom.cfg file with a hard mode specifically written for stock Kerbin.

I think the new model in the beta is a better deal though.

I'll probably add a new button that configures all three difficulty settings for the new model. (the settings for which are really simple, first five items set to 1 except for densityExponent)

In fact I think I'll replace the radio button with two buttons like the difficulty buttons. (Legacy Heating / New Heating. Or something)

Put this in your DeadlyReentry folder, overwriting the existing custom.cfg file

https://www.dropbox.com/s/8excxflkg7cjqc3/custom.cfg?dl=1

EDIT: 4:40 PM EST

Oops, if you downloaded that already prior to the time above, re-download it. Sorry, I got one setting wrong.

Edited by Starwaster
Link to comment
Share on other sites

Thanks, will test this ASAP :)

EDIT: Just did so. Upon munar reentry at 3.2 km/s with 30 km apoapsis all modules sticking outside the shield's base melted on instant, then came the life support cans and parachutes above (downloading RealChutes as we speak), then came the shield itself (crap), Cupola heated to around 400 degrees and then finally it stopped, leaving Jeb in a command pod, speeding his way towards the firm embrace of mother Kerbin.

Result: Overlord MPCV delayed, requires TOTAL overhaul.

Edited by Astraph
Link to comment
Share on other sites

I use the 6.5 beta, but something was wrong, just at 65km in stock kerbin 2200m/s all my things started to explode. I reach only 63 km.

The temperature was super low.

I dint have much time to make a propper test. sorry.

My download was like 5 hours ago.

Edited by AngelLestat
Link to comment
Share on other sites

Yes!!! How am I supposed to know what's happening to you?

I haven't the first clue.

Now look what you made me do. You made me italicize stuff. Italicizing stuff leads to bold facing. Boldfacing leads to Comic Sans. Nobody wants that.

https://www.dropbox.com/sh/477xuh26wldm1nx/AAB7wbkzqTD_deWX8ozYmiS1a?dl=0

theres 3 output logs

Link to comment
Share on other sites

Thanks, will test this ASAP :)

EDIT: Just did so. Upon munar reentry at 3.2 km/s with 30 km apoapsis all modules sticking outside the shield's base melted on instant, then came the life support cans and parachutes above (downloading RealChutes as we speak), then came the shield itself (crap), Cupola heated to around 400 degrees and then finally it stopped, leaving Jeb in a command pod, speeding his way towards the firm embrace of mother Kerbin.

Result: Overlord MPCV delayed, requires TOTAL overhaul.

But Jeb survived and that's the important thing!

Yeah, stuff needs to be carefully protected.

Uhm (just read heat shield gone too) you might want to think about a steeper reentry. Too steep and Kerbals can die from g-force damage but too shallow and and the shield spends too much time burning.

Or I might need to increase the metric for ablation rates in stock. I was thinking 2.5 - 3 minutes would be long enough but they might need longer. (An Earth reentry for example would take 10 or more minutes that the shield has to survive through)

I use the 6.5 beta, but something was wrong, just at 65km in stock kerbin 2200m/s all my things started to explode. I reach only 63 km.

The temperature was super low.

I dint have much time to make a propper test. sorry.

My download was like 5 hours ago.

Maybe your design needs work. Was there a heat shield between your ship and fiery plasma death? Maybe a picture of your ship is in order? Also what difficulty?

Ok, I'll take a look at them tonight and see what I can find out. M

Link to comment
Share on other sites

But Jeb survived and that's the important thing!

Yeah, stuff needs to be carefully protected.

Uhm (just read heat shield gone too) you might want to think about a steeper reentry. Too steep and Kerbals can die from g-force damage but too shallow and and the shield spends too much time burning.

Or I might need to increase the metric for ablation rates in stock. I was thinking 2.5 - 3 minutes would be long enough but they might need longer. (An Earth reentry for example would take 10 or more minutes that the shield has to survive through)

Maybe your design needs work. Was there a heat shield between your ship and fiery plasma death? Maybe a picture of your ship is in order? Also what difficulty?

Ok, I'll take a look at them tonight and see what I can find out. M

thank you so much

Link to comment
Share on other sites

@Starwaster

I implemented some changes I suggested in this post some time ago:

http://forum.kerbalspaceprogram.com/threads/54954-0-90-Deadly-Reentry-v6-4-0-Jan-20-2015?p=1656547&viewfull=1#post1656547

I only did reflectance as a proof of concept, but exactly the same approach can be used to add per-axis ablation. I tested the implementation, it seems to work correctly, giving properly changing degree of protection depending on your orientation and multiple reflectance values.

Here is an illustration of the general idea:

XnfHEfu.jpg

Here is how module config can look:

MODULE
{
name = ModuleHeatShield
direction = 0, 0, 0 // ignored if reflectanceDirectional is present and correctly set up, otherwise used as fallback
reflective = 0.25 // ignored if reflectanceDirectional is present and correctly set up, otherwise used as fallback
reflectanceDirectional = 0, 0, 0.5, 0.05, 0.1, 0.25 // X+, X-, Y+, Y-, Z+, Z-
}

Here are some additional variables I added above your KSPFields:


[KSPField (isPersistant = false)]
public string reflectanceDirectional;
public float[] reflectanceDirectionalArray = new float[6];
public float reflectanceDirectionalAverage = 0f;
public bool reflectanceDirectionalUsed = false;

Here is your Start method with additions to parse the new parameter into an array of per-axis reflectance values:


public override void Start()
{
base.Start();
if (ablative == null)
ablative = "None";

if (reflectanceDirectional == null)
reflectanceDirectionalUsed = false;
else
{
reflectanceDirectionalUsed = true;
string[] reflectanceDirectionalStrings = reflectanceDirectional.Split (',');
if (reflectanceDirectionalStrings.Length == 6)
{
for (int i = 0; i < 6; ++i)
{
try
{
reflectanceDirectionalArray[i] = float.Parse (reflectanceDirectionalStrings[i]);
}
catch
{
Debug.Log ("DRE | Directional reflectance value is not a float, parsing failed at " + i);
reflectanceDirectionalUsed = false;
break;
}
}
}
else
{
Debug.Log ("DRE | Incorrect number of values (" + reflectanceDirectionalStrings.Length + ") was used to define directional reflectance");
reflectanceDirectionalUsed = false;
}
}

// rest of the stuff involving conductivity and shielding
// no changes there
}

And here is your AdjustedHeat method with simple changes to use the resulting array in rad calculation:


public override float AdjustedHeat(float temp)
{
if (!reflectanceDirectionalUsed)
{
if (direction.magnitude == 0) dot = 1;
else dot = Vector3.Dot (velocity.normalized, part.transform.TransformDirection (direction).normalized);
}
else
{
float dotXPos = Mathf.Max (Vector3.Dot (velocity.normalized, part.transform.TransformDirection (Vector3.right)), 0f) * reflectanceDirectionalArray[0];
float dotXNeg = Mathf.Max (Vector3.Dot (velocity.normalized, part.transform.TransformDirection (Vector3.left)), 0f) * reflectanceDirectionalArray[1];
float dotYPos = Mathf.Max (Vector3.Dot (velocity.normalized, part.transform.TransformDirection (Vector3.up)), 0f) * reflectanceDirectionalArray[2];
float dotYNeg = Mathf.Max (Vector3.Dot (velocity.normalized, part.transform.TransformDirection (Vector3.down)), 0f) * reflectanceDirectionalArray[3];
float dotZPos = Mathf.Max (Vector3.Dot (velocity.normalized, part.transform.TransformDirection (Vector3.forward)), 0f) * reflectanceDirectionalArray[4];
float dotZNeg = Mathf.Max (Vector3.Dot (velocity.normalized, part.transform.TransformDirection (Vector3.back)), 0f) * reflectanceDirectionalArray[5];
reflectanceDirectionalAverage = dotXPos + dotXNeg + dotYPos + dotYNeg + dotZPos + dotZNeg;
}
if (canShield && temp > 0)
{
float rad = 0;
if (reflectanceDirectionalUsed && reflectanceDirectionalAverage > 0) rad = temp * reflectanceDirectionalAverage;
else if (!reflectanceDirectionalUsed && dot > 0) rad = temp * dot * reflective;
else return temp;

// rest of the stuff involving ablation
// no changes there
}
return temp;
}
}

I think implementing this is pretty simple and doing so will not break thousands of existing configs in any way, since the implementation only kicks in if relevant values are explicitly defined.

P.S.: Slightly different, potentially more performant (in most use cases) and more flexible approach would be to use an array of Vector4 values (where XYZ is direction and W is reflectance - or, well, Vector3+float pairs, to avoid inconveniences when XYZ has to be normalized for use in a dot product without touching reflectance in W) of an arbitrary size so that you can define only directions that are relevant to you. Example above can be considered a special case of that approach, with six vectors being implicitly defined for you (Vector3.up and all that) and six floats attached to them being parsed alone, but it's pretty much the same approach. In case of a wing, only Y+/Y- and Z+/Z- directions are relevant and cross section directions are not (if you have them exposed and facing prograde, you don't really get to complain about the shielding). Finding sum of all dot x reflectance values for an array of four pairs would be faster than finding sum from per-axis checks I posted above. Some parts might warrant only three vector+value pairs, which will be even faster. Some parts (dunno, maybe some ultra-realistic configuration of shielding on a Shuttle replica) can use an array of, say, 12 pairs to get very detailed gradients of shielding on some intricately covered nose piece. Everyone is happy. Only thing a bit more inconvenient is parsing that array from the config, but I don't think it will be an obstacle.

Edited by bac9
Link to comment
Share on other sites

Maybe your design needs work. Was there a heat shield between your ship and fiery plasma death? Maybe a picture of your ship is in order? Also what difficulty?

My design is a first stage core imitation of the falcon9, in this case was the center core of the falcon heavy.

I already did the same test with the 6.4 version many times, and I dint find problem (without heat shield), of course I explode some times when I reach 30km altitude with bad angle.. But never at 65km height with negative temperatures. Was a bug for sure, also the first time that I test 6.5 version.. Dont worry I will try it again tomorrow and see if I can repeat the bug, this time with screenshot and extra data.

Bac9 question seems more important now :)

Link to comment
Share on other sites

My design is a first stage core imitation of the falcon9, in this case was the center core of the falcon heavy.

I already did the same test with the 6.4 version many times, and I dint find problem (without heat shield), of course I explode some times when I reach 30km altitude with bad angle.. But never at 65km height with negative temperatures. Was a bug for sure, also the first time that I test 6.5 version.. Dont worry I will try it again tomorrow and see if I can repeat the bug, this time with screenshot and extra data.

Bac9 question seems more important now :)

make sure u didnt put all the .cfg in there. it might be cause u have the default easy and hard .cfg installed

Link to comment
Share on other sites

make sure u didnt put all the .cfg in there. it might be cause u have the default easy and hard .cfg installed

Totally incorrect! Please don't tell that to people because it is wrong.

The mod COMES with Default, Easy and Hard config files all installed. They are that way for a reason. Each file contains the appropriate settings for that difficulty setting grouped into an appropriately named node that the mod goes looking for internally.

Edit: Also, I'll have to look over Bac9's proposal and SparkyFox's logs tomorrow. I'm beat after hours of putting away a truckload of cat food which was donated to the shelter that I live and work at.

Edited by Starwaster
because red is too scary
Link to comment
Share on other sites

So the radially attached landing legs from Karbonite (kaRadialLeg) retract into a pod. I want that pod to behave like it has omnidirection reflective heat-shielding, but only when the landing leg is retracted.

Does anyone know how I can make an MM config that accomplishes this?

Link to comment
Share on other sites

So the radially attached landing legs from Karbonite (kaRadialLeg) retract into a pod. I want that pod to behave like it has omnidirection reflective heat-shielding, but only when the landing leg is retracted.

Does anyone know how I can make an MM config that accomplishes this?

Below is the section from DRE's inflatable heat shield which does something similar.

For heat shield, reflective should be whatever the shield's default state is. (if it starts retracted then you want it at full value. If extended, probably 0

Use ModuleAnimation2Value (DRE comes with it) to modify values in either a part or another PartModule. valueCurve is a set of keys, where the key is the time index for an animation (0 start of animation and 1.0 the end of it)


MODULE
{
name = ModuleHeatShield
direction = 0, -1, 0 // bottom of pod
reflective = 0.02 // 2% of heat is ignored at correct angle (pre-inflation)
conductivity = 0.01
}


MODULE
{
name = ModuleAnimation2Value
animationName = heatshield
valueModule = ModuleHeatShield
valueName = reflective
valueCurve
{
key = 0 0.02 0.0 0.0 //not negative because the shield is there, just smaller
key = 0.8 0.1 0.0 0.0
key = 1 0.25 0.0 0.0 //full reflection
}
}

Link to comment
Share on other sites

Did someone say comic sans?

Pain, suffering, death I feel. Something terrible has happened. Young sharpspoonful is in pain. Terrible pain.

ESA have their own version of KSP and Deadly Reentry it seems:

http://www.esa.int/spaceinvideos/Videos/2015/01/Integral_s_reentry_animation

ESA need some reentry glow and some nicer textures with perhaps a sky box :P

Anyways - love this mod (even if I do play with wimpy easy settings) - keep up the good work!

Clearly they've been cribbing off of our work! Nathan we better sue these guys!

(yeah, skybox needs some work)

Link to comment
Share on other sites

Looking at your config some more, you've got it on Hard right? Turn off Alternate Density Calc. Some of your other settings will produce inconsistent results with that. Really it was something I intended to be able to make a good config with RSS, but it's too easy to mess things up with it :(

Using Settings Menu / Debug Menu, set them up as follows:

http://imgur.com/a/KGelf

Hmm, well that was different.

It was pretty much exactly what I wanted, but I think I need to tweak it still.

I had a pre-atmo Pe of 31km, and when I entered the ablative shield was completely eaten away as I expected.

However my pod was destroyed at 26km, when the ablative shield wore off and the temperature rose almost instantly. The pod was moving at 1.1km/s. There no reentry heating effects either, in fact hypersonic effects were starting.

I did not try the beta yet, so this is still the regular version. I set the parameters as above (1, 1.12, 1, 0.6, 20).

EDIT: Other runs:

Pe of 37km

Destroyed at 29km, speed 1.3km/s

EDIT2: Just installed beta, pending testing...

EDIT3: Perfect!

To avoid issues, I just deleted everything when I upgraded, including custom.cfg.

I set the values as you recommended (1, 1, 1, 0.6, 1, no 'alternate density calc'), and it worked great!

37km Pe, the ablative shield burned to 138/250, and my pod safely landed!

Oddly enough though, my attached solar panel and temp sensor didn't burn up like usual.

Edited by Phoenix84
Link to comment
Share on other sites

Below is the section from DRE's inflatable heat shield which does something similar.

For heat shield, reflective should be whatever the shield's default state is. (if it starts retracted then you want it at full value. If extended, probably 0

Use ModuleAnimation2Value (DRE comes with it) to modify values in either a part or another PartModule. valueCurve is a set of keys, where the key is the time index for an animation (0 start of animation and 1.0 the end of it)


MODULE
{
name = ModuleHeatShield
direction = 0, -1, 0 // bottom of pod
reflective = 0.02 // 2% of heat is ignored at correct angle (pre-inflation)
conductivity = 0.01
}


MODULE
{
name = ModuleAnimation2Value
animationName = heatshield
valueModule = ModuleHeatShield
valueName = reflective
valueCurve
{
key = 0 0.02 0.0 0.0 //not negative because the shield is there, just smaller
key = 0.8 0.1 0.0 0.0
key = 1 0.25 0.0 0.0 //full reflection
}
}

Thanks a bunch for the tips, I THINK I got a working solution. I'm posting it here for others to verify and use.


@PART[kaRadialLeg]:AFTER[UmbraSpaceIndustries]:NEEDS[DeadlyReentry] {
MODULE {
name = ModuleHeatShield
direction = 0, 0, 0 // omnidirectional
reflective = 0.75 // 75% of heat is ignored (landing legs retracted into pod)
conductivity = 0.01
}
MODULE
{
name = ModuleAnimation2Value
animationName = KaLegToggle
valueModule = ModuleHeatShield
valueName = reflective
valueCurve
{
key = 0 0.75 0.0 0.0 // Landing legs retracted
key = 0.8 0.1 0.0 0.0
key = 1 0.02 0.0 0.0 // Landing legs exposed
}
}
}

Between some quickloaded trials, I got significantly reduced heat on the landing legs that corresponded to me changing the reflective value. So I suspect this is working. If anything notices a mistake with this, I'd appreciate being told, as I'm not particularly versed in making MM configs.

Link to comment
Share on other sites

Thanks a bunch for the tips, I THINK I got a working solution. I'm posting it here for others to verify and use.


@PART[kaRadialLeg]:AFTER[UmbraSpaceIndustries]:NEEDS[DeadlyReentry] {
MODULE {
name = ModuleHeatShield
direction = 0, 0, 0 // omnidirectional
reflective = 0.75 // 75% of heat is ignored (landing legs retracted into pod)
conductivity = 0.01
}
MODULE
{
name = ModuleAnimation2Value
animationName = KaLegToggle
valueModule = ModuleHeatShield
valueName = reflective
valueCurve
{
key = 0 0.75 0.0 0.0 // Landing legs retracted
key = 0.8 0.1 0.0 0.0
key = 1 0.02 0.0 0.0 // Landing legs exposed
}
}
}

Between some quickloaded trials, I got significantly reduced heat on the landing legs that corresponded to me changing the reflective value. So I suspect this is working. If anything notices a mistake with this, I'd appreciate being told, as I'm not particularly versed in making MM configs.

I would probably reduce reflection even further, down to 0.0 on full extension of the legs.

Other than that, that looks ok.

Link to comment
Share on other sites

I would probably reduce reflection even further, down to 0.0 on full extension of the legs.

Other than that, that looks ok.

Thanks! It's nice to have some confirmation that this works.

And I'll be sure to drop the exposed-leg reflection to 0.0 as suggested. I think I missed that because I was copy/pasting from the inflatable heat shield code.

Link to comment
Share on other sites

Did the output logs say anything

Nothing that points to why the problems you're describing would be happening.

You do seem to be a version behind though because I'm seeing a specific error that was fixed. (or suppressed actually, though in the beta version it is fixed)

The bug that caused that was more of a nuisance and wasn't known to cause ships unrelated to your reentry to explode so I'm skeptical that the cause of your problem is from that. Still, you could try the beta and see what happens.

Also, have you tried making a new save and testing for the problem there?

Link to comment
Share on other sites

im having the issue someoneposted ealier with abnormal heating. bascialy its like the sheilding isnt working. on reentry at 44km it burns up. i looked at the temp and sheilding it lost only 1 pont of sheilding and the temp keep rising yet it said the abient temp outside it was -30. also my chute burned off first even thou its on top of the capsule behind the sheild on the mk1 pod. its basicay like the abrative sheilding isnt even working now. ive checked the logs was no error. ill mess around more with it to see if it some problem i caused. this time gonna see if its the alternate heat modle maybe causing it as i had it checked on using default settings with the newest beta.

Link to comment
Share on other sites

im having the issue someoneposted ealier with abnormal heating. bascialy its like the sheilding isnt working. on reentry at 44km it burns up. i looked at the temp and sheilding it lost only 1 pont of sheilding and the temp keep rising yet it said the abient temp outside it was -30. also my chute burned off first even thou its on top of the capsule behind the sheild on the mk1 pod. its basicay like the abrative sheilding isnt even working now. ive checked the logs was no error. ill mess around more with it to see if it some problem i caused. this time gonna see if its the alternate heat modle maybe causing it as i had it checked on using default settings with the newest beta.

It's more likely that something in your settings is set incorrectly. Not enough information in what you're saying to know for sure.

Delete your custom.cfg file if it exists (in the DeadlyReentry folder) and try again

Link to comment
Share on other sites

I tried the beta but its kinda hard for me launch my shuttle and soyuz crafts now, the main shuttle engines are burning off on lift off but nothings over heating and on my soyuz craft, the last stage before soyuz is on its own sometimes burns and blows up a couple of seconds after igniting the engine, but thats when im about to leave the atmosphere, theres no overheat warning and i dont part clip, it didnt do that before the beta dre

i have the 3 klockheed Martian space shuttle engines attached to procedural fairings multi adapter

its ok about the adapter, i added a config file to make it not burn

Edited by SparkyFox
Link to comment
Share on other sites

Hi, des someone has settings for the latest FAR version? I have even tested the beta on hard and not even a unit of ablative shield is consumed.

On normal beta settings (multiplier = 20) everything explodes even on liftof

Thanks

Link to comment
Share on other sites

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...