Heat: authentic 1e7-unit heat + the ambient radiator land (task #9)
- Emitters: heatPortion closed form = heatCostToFire x 1e7 x (charge/seekV)^2 (PPC 1.1e8 -> +632K on its own sink); the missing projectile/missile heat adds (raw -- resources author pre-scaled 1e7 units). - The bank's AMBIENT RADIATOR @4ae73c reconstructed (the system's ONLY heat exit; conductance x 0.1 x HeatSinkCount -- _DAT_004ae974 float80 = 0.1) + the link-attach guard corrected (skip = the 0xBBE bank, not Condenser; the inversion blocked condenser->bank links and closed the system). - Constant corrections (all byte-verified float80s): coolant epsilons 0.0025/0.003/1e-4 (was a single 1e-4 serving three sites); CoolantCapacityScale 0.05 (was 1.738). - Verified: heat flows + exits; max-rate autofire overheats weapons into the authentic heatLoad range-cutout (thermal spam unsustainable by design). - KNOWN REMAINING: linked-sink routing scrambled (heat pools in Condenser1; authored map says PPC->C4/C6) -- the heat-stream offset audit, filed. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
fd055281a8
commit
4ed2bbc293
@@ -201,11 +201,19 @@ void
|
||||
damagePortion = (damageFraction * energyTotal * kDamageScale)
|
||||
* chargeRatio * chargeRatio; // 0x44c
|
||||
}
|
||||
// Heat stays on the bring-up scale until the heat-calibration audit [T3]:
|
||||
// the authentic heatPortion is heatCostToFire x 1e7 energy units (the
|
||||
// missile path already feeds that scale raw); switching the emitters too
|
||||
// is the heat audit's call, not the damage economy's.
|
||||
heatPortion = energy - damageFraction * energy; // 0x450
|
||||
// THE AUTHENTIC HEAT (task #9; the calibration audit verified the whole
|
||||
// HeatSink chain is 1e7-unit-native and formula-exact): the closed form
|
||||
// mirroring the damage fix -- heatPortion = (1 - dF) x energyTotal x
|
||||
// (charge/seekV)^2 = heatCostToFire x 1e7 at full charge (PPC = 1.1e8 ->
|
||||
// +632 K on its own 174000-mass sink, conducting to the 1.39e6 bank;
|
||||
// authored thresholds 77 start / 1000 degradation / 2000 failure).
|
||||
{
|
||||
Scalar vRecH = seekVoltage[seekVoltageRecommendedIndex];
|
||||
Scalar chargeRatioH = (vRecH > 0.0f) ? (currentLevel / vRecH) : 1.0f;
|
||||
heatPortion = (1.0f - damageFraction) * energyTotal
|
||||
* chargeRatioH * chargeRatioH; // 0x450
|
||||
}
|
||||
(void)energy;
|
||||
|
||||
// dump the heat portion into our INHERITED thermal accumulator if heatable/online.
|
||||
// E5: pendingHeat (HeatSink @0x1C8) is the field the heat sim absorbs each frame
|
||||
|
||||
Reference in New Issue
Block a user