diff --git a/rust/src/milla/constants.rs b/rust/src/milla/constants.rs index b75aa905166..550ec73fcc1 100644 --- a/rust/src/milla/constants.rs +++ b/rust/src/milla/constants.rs @@ -120,7 +120,7 @@ pub(crate) const PLASMA_BURN_MIN_TEMP: f32 = 100.0 + T0C; pub(crate) const PLASMA_BURN_OPTIMAL_TEMP: f32 = 1370.0 + T0C; /// How much of the plasma are we willing to burn each tick? -pub(crate) const PLASMA_BURN_MAX_RATIO: f32 = 0.05; +pub(crate) const PLASMA_BURN_MAX_RATIO: f32 = 0.01; /// How much of the plasma do we burn anyway if the ratio would make it really small? pub(crate) const PLASMA_BURN_MIN_MOLES: f32 = 0.001; @@ -148,10 +148,10 @@ pub(crate) const TEST_TOLERANCE: f32 = 0.1; pub(crate) const SPACE_COOLING_THRESHOLD: f32 = T20C; /// Lose this amount of heat energy per tick if above SPACE_COOLING_THRESHOLD. -pub(crate) const SPACE_COOLING_FLAT: f32 = 2000.0; +pub(crate) const SPACE_COOLING_FLAT: f32 = 200.0; -/// Lose this ratio of heat energy per tick if above SPACE_COOLING_THRESHOLD. -pub(crate) const SPACE_COOLING_RATIO: f32 = 0.002; +/// Lose this ratio of heat energy per Kelvin per tick if above SPACE_COOLING_THRESHOLD. +pub(crate) const SPACE_COOLING_TEMPERATURE_RATIO: f32 = 0.4; /// Tiles with less than this much gas will become empty. pub(crate) const MINIMUM_NONZERO_MOLES: f32 = 0.1; diff --git a/rust/src/milla/simulate.rs b/rust/src/milla/simulate.rs index befff52558e..2cdc5ab964d 100644 --- a/rust/src/milla/simulate.rs +++ b/rust/src/milla/simulate.rs @@ -681,7 +681,7 @@ pub(crate) fn apply_tile_mode( if my_next_tile.temperature() > SPACE_COOLING_THRESHOLD { let excess_thermal_energy = my_next_tile.thermal_energy - SPACE_COOLING_THRESHOLD * my_next_tile.heat_capacity(); - let cooling = (SPACE_COOLING_FLAT + SPACE_COOLING_RATIO * excess_thermal_energy) + let cooling = (SPACE_COOLING_FLAT + SPACE_COOLING_TEMPERATURE_RATIO * my_next_tile.temperature()) .min(excess_thermal_energy); my_next_tile.thermal_energy -= cooling; } diff --git a/rustlibs.dll b/rustlibs.dll index a4b6dd3858c..9ff2cf0ca90 100644 Binary files a/rustlibs.dll and b/rustlibs.dll differ diff --git a/rustlibs_prod.dll b/rustlibs_prod.dll index 67b578febb5..fde6bd0f899 100644 Binary files a/rustlibs_prod.dll and b/rustlibs_prod.dll differ diff --git a/tools/ci/librustlibs_ci.so b/tools/ci/librustlibs_ci.so index b18b7e696cb..96e744b5efb 100644 Binary files a/tools/ci/librustlibs_ci.so and b/tools/ci/librustlibs_ci.so differ