test: add three probes to bisect the remaining failure

Routing the network components changed nothing, so the fault is further
down. The wiki documents no network components at all, so there is
nothing to look up and the remaining possibilities have to be separated
empirically.

Each probe drives its own indicator, and an indicator draws while its
toggle is off, so a visible icon means that probe failed:

  A (mine)  ThresholdToggle misbehaves, no network involved
  B (crew)  a mod-defined category carries nothing, broadcast and
            received on the same part
  C (EMP)   receiving fails even for thermal_load_dissipation, which
            this very radiator already broadcasts

Also switch the real thresholds from MinAmount = 0.5 to the
MaxAmount = 0 / Invert form the thermal pump uses. The signals are only
ever 0 or 1 so it is equivalent, and it removes a variable.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011oLWY1G6S8U35bi2FxVWni
This commit is contained in:
2026-08-29 00:21:17 +02:00
co-authored by Claude Opus 5
parent e6b98ef68f
commit 323ee90f3d
2 changed files with 106 additions and 4 deletions
+73 -3
View File
@@ -42,25 +42,95 @@ AutoRad_ForceVentSignal
AllowUncategorized = false
}
// "value is not zero", written the way vanilla writes it (the thermal pump's
// UtilizationToggle). The signals are only ever 0 or 1, so this is equivalent
// to a 0.5 threshold while sticking to a form the game demonstrably honours.
AutoRad_IsHolding
{
Type = ThresholdToggle
ValueFrom = AutoRad_HoldSignal
MinAmount = 0.5
MinAmount = 0
MaxAmount = 0
Invert = true
}
AutoRad_ThermalAmmoInUse
{
Type = ThresholdToggle
ValueFrom = AutoRad_ThermalAmmoSignal
MinAmount = 0.5
MinAmount = 0
MaxAmount = 0
Invert = true
}
AutoRad_ForceVent
{
Type = ThresholdToggle
ValueFrom = AutoRad_ForceVentSignal
MinAmount = 0.5
MinAmount = 0
MaxAmount = 0
Invert = true
}
// --- Self-test probes -------------------------------------------------------
//
// Three versions of this mod have now loaded cleanly and done nothing, each for
// a different reason, so these bisect the remaining possibilities directly.
// Each drives an indicator, and an indicator is drawn while its toggle is OFF,
// so in every case a visible icon means that probe FAILED.
// A: does ThresholdToggle behave as expected at all? No network involved.
AutoRad_ProbeOne { Type = StaticValue; Value = 1 }
AutoRad_ProbeThresholdOK
{
Type = ThresholdToggle
ValueFrom = AutoRad_ProbeOne
MinAmount = 0
MaxAmount = 0
Invert = true
}
// B: can a mod-defined category carry a value at all? The radiator broadcasts
// and receives this one itself, so no second part is involved.
AutoRad_ProbeBroadcast
{
Type = NetworkValue
ValueSource = AutoRad_ProbeOne
Categories = [ auto_radiator_selftest ]
IncludeInBlueprints = false
}
AutoRad_ProbeReceive
{
Type = NetworkValueReceiver
Categories = [ auto_radiator_selftest ]
Mode = Max
AllowUncategorized = false
}
AutoRad_ProbeSelfLoopOK
{
Type = ThresholdToggle
ValueFrom = AutoRad_ProbeReceive
MinAmount = 0
MaxAmount = 0
Invert = true
}
// C: does receiving work for a category vanilla already broadcasts? The
// radiator's own NetworkedThermalDissipationLoadValue publishes this one.
AutoRad_ProbeVanillaCat
{
Type = NetworkValueReceiver
Categories = [ thermal_load_dissipation ]
Mode = Max
AllowUncategorized = false
}
AutoRad_ProbeVanillaCatOK
{
Type = ThresholdToggle
ValueFrom = AutoRad_ProbeVanillaCat
MinAmount = 0
MaxAmount = 0
Invert = true
}
AutoRad_VentAllowed