diff --git a/code/ATMOSPHERICS/components/unary/cold_sink.dm b/code/ATMOSPHERICS/components/unary/cold_sink.dm index 8933452a51a..bd3c3b17965 100644 --- a/code/ATMOSPHERICS/components/unary/cold_sink.dm +++ b/code/ATMOSPHERICS/components/unary/cold_sink.dm @@ -1,4 +1,5 @@ //TODO: Put this under a common parent type with heaters to cut down on the copypasta +#define FREEZER_PERF_MULT 2.5 /obj/machinery/atmospherics/unary/freezer name = "gas cooling system" @@ -9,7 +10,7 @@ anchored = 1.0 - var/heatsink_temperature = 70 //T20C //the constant temperature resevoir into which the freezer pumps heat. Probably the hull of the station or something. + var/heatsink_temperature = T20C //the constant temperature resevoir into which the freezer pumps heat. Probably the hull of the station or something. var/internal_volume = 600 //L var/on = 0 @@ -17,7 +18,7 @@ idle_power_usage = 5 //5 Watts for thermostat related circuitry active_power_usage //50 kW. The power rating of the freezer - var/max_power_usage = 5000 //power rating when the usage is turned up to 1 //Reduced to 5kW for usability. + var/max_power_usage = 20000 //power rating when the usage is turned up to 100 var/power_setting = 100 var/set_temperature = T20C //thermostat @@ -135,9 +136,8 @@ //Assume the heat is being pumped into the hull which is fixed at heatsink_temperature //not /really/ proper thermodynamics but whatever - var/cop = air_contents.temperature/heatsink_temperature //heatpump coefficient of performance from thermodynamics -> power used = heat_transfer/cop + var/cop = FREEZER_PERF_MULT * air_contents.temperature/heatsink_temperature //heatpump coefficient of performance from thermodynamics -> power used = heat_transfer/cop heat_transfer = min(heat_transfer, cop * active_power_usage) //limit heat transfer by available power - heat_transfer *= 10 //Temp fix for cryo being unusable. var/removed = -air_contents.add_thermal_energy(-heat_transfer) //remove the heat if (debug) diff --git a/code/ATMOSPHERICS/components/unary/heat_source.dm b/code/ATMOSPHERICS/components/unary/heat_source.dm index 90db9699206..707e740f66e 100644 --- a/code/ATMOSPHERICS/components/unary/heat_source.dm +++ b/code/ATMOSPHERICS/components/unary/heat_source.dm @@ -18,7 +18,7 @@ idle_power_usage = 5 //5 Watts for thermostat related circuitry active_power_usage //50 kW. The power rating of the heater - var/max_power_usage = 50000 //power rating when the usage is turned up to 1 + var/max_power_usage = 20000 //power rating when the usage is turned up to 100 var/power_setting = 100 var/heating = 0 //mainly for icon updates diff --git a/code/game/machinery/cryo.dm b/code/game/machinery/cryo.dm index e8e9a77b61a..3974ebdd503 100644 --- a/code/game/machinery/cryo.dm +++ b/code/game/machinery/cryo.dm @@ -1,4 +1,4 @@ -#define HEAT_CAPACITY_HUMAN 24984 //249840 J/K, for a 72 kg person. Making this one-tenth of that as a quick workaround for cryo not cooling people enough. +#define HEAT_CAPACITY_HUMAN 100 //249840 J/K, for a 72 kg person. /obj/machinery/atmospherics/unary/cryo_cell name = "cryo cell" @@ -45,7 +45,7 @@ if(air_contents) temperature_archived = air_contents.temperature - //heat_gas_contents() + heat_gas_contents() expel_gas() if(abs(temperature_archived-air_contents.temperature) > 1) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index 1cbb13b05ff..37431115b6f 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -15,7 +15,7 @@ var/lastout = 0 //Amount of power it actually outputs to the powernet var/loaddemand = 0 //For use in restore() var/capacity = 5e6 //Maximum amount of power it can hold - var/charge = 2.0e6 //Current amount of power it holds + var/charge = 1.0e6 //Current amount of power it holds var/charging = 0 //1 if it's actually charging, 0 if not var/chargemode = 0 //1 if it's trying to charge, 0 if not. //var/chargecount = 0 diff --git a/code/modules/supermatter/supermatter.dm b/code/modules/supermatter/supermatter.dm index f3ee2000011..cb22fb197a5 100644 --- a/code/modules/supermatter/supermatter.dm +++ b/code/modules/supermatter/supermatter.dm @@ -16,7 +16,7 @@ */ //Controls how much power is produced by each collector in range - this is the main parameter for tweaking SM balance, as it basically controls how the power variable relates to the rest of the game. -#define POWER_FACTOR 0.7 //Obtained from testing. Aiming to make the ideal running output (500 kW) run the SM to ~85% of the safety level. +#define POWER_FACTOR 1.0 #define DECAY_FACTOR 700 //Affects how fast the supermatter power decays #define CRITICAL_TEMPERATURE 800 //K #define CHARGING_FACTOR 0.05 diff --git a/maps/tgstation2.dmm b/maps/tgstation2.dmm index 39d7ccfb414..3d0a1205078 100644 --- a/maps/tgstation2.dmm +++ b/maps/tgstation2.dmm @@ -11083,8 +11083,8 @@ "efn" = (/obj/machinery/atmospherics/unary/heat_exchanger{dir = 4},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 6},/area/engine/engine_waste) "efo" = (/obj/machinery/door/window/brigdoor{dir = 8; name = "Engine Waste"; req_access = null; req_access_txt = "0"; req_one_access_txt = "10;24"},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/manifold/visible,/turf/simulated/floor/plating{icon_state = "platebot"; nitrogen = 0.01; oxygen = 0.01},/area/engine/engine_waste) "efp" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 4},/obj/machinery/meter{frequency = 1443; id = "engine_waste_filter_two"; name = "Engine Waste - Filter 2"},/turf/simulated/floor/plating,/area/engine/engine_room) -"efq" = (/obj/machinery/atmospherics/omni/filter{on = 1; tag_east = 1; tag_north = 3; tag_south = 0; tag_west = 2},/turf/simulated/floor/plating,/area/engine/engine_room) -"efr" = (/obj/machinery/atmospherics/omni/filter{on = 1; tag_east = 1; tag_north = 0; tag_south = 2; tag_west = 6},/turf/simulated/floor/plating,/area/engine/engine_room) +"efq" = (/obj/machinery/atmospherics/omni/filter{on = 0; tag_east = 1; tag_north = 3; tag_south = 0; tag_west = 2},/turf/simulated/floor/plating,/area/engine/engine_room) +"efr" = (/obj/machinery/atmospherics/omni/filter{on = 0; tag_east = 1; tag_north = 0; tag_south = 2; tag_west = 6},/turf/simulated/floor/plating,/area/engine/engine_room) "efs" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow{dir = 10},/obj/machinery/meter{frequency = 1443; id = "engine_exhaust"; name = "Engine Exhaust"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engine/engine_room) "eft" = (/obj/machinery/atmospherics/pipe/simple/visible/cyan{tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6},/obj/machinery/meter{frequency = 1443; id = "engine_cooling"; name = "Engine Cooling"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 8},/area/engine/engine_room) "efu" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/engine/engine_waste)