From de69e9996a09d37244a8fa297333dd8958d324e7 Mon Sep 17 00:00:00 2001 From: kiwedespars <47008095+kiwedespars@users.noreply.github.com> Date: Sun, 21 Feb 2021 13:10:08 -0800 Subject: [PATCH 01/33] nerfs cqc --- code/datums/martial/cqc.dm | 4 ++-- code/game/objects/items/melee/misc.dm | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/code/datums/martial/cqc.dm b/code/datums/martial/cqc.dm index 96ba7bf965..5b401b4b6b 100644 --- a/code/datums/martial/cqc.dm +++ b/code/datums/martial/cqc.dm @@ -97,7 +97,7 @@ D.visible_message("[A] locks [D] into a restraining position!", \ "[A] locks you into a restraining position!") D.apply_damage(damage, STAMINA) - D.Stun(100) + D.Stun(10) restraining = TRUE addtimer(VARSET_CALLBACK(src, restraining, FALSE), 50, TIMER_UNIQUE) return TRUE @@ -175,7 +175,7 @@ return TRUE if(CHECK_MOBILITY(D, MOBILITY_MOVE) || !restraining) A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) - if(damage >= stunthreshold) + if(damage >= stunthreshold) I = D.get_active_held_item() D.visible_message("[A] strikes [D]'s jaw with their hand!", \ "[A] strikes your jaw, disorienting you!") diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm index 15d10c4d11..1e2ae93df9 100644 --- a/code/game/objects/items/melee/misc.dm +++ b/code/game/objects/items/melee/misc.dm @@ -3,9 +3,8 @@ /obj/item/melee/proc/check_martial_counter(mob/living/carbon/human/target, mob/living/carbon/human/user) if(target.check_martial_melee_block()) - target.visible_message("[target.name] blocks [src] and twists [user]'s arm behind [user.p_their()] back!", + target.visible_message("[target.name] blocks your attack!", "You block the attack!") - user.Stun(40) return TRUE /obj/item/melee/chainofcommand From 311d766bd5b50f3e0486162c86b76356f45494f8 Mon Sep 17 00:00:00 2001 From: Putnam Date: Wed, 24 Feb 2021 02:56:14 -0800 Subject: [PATCH 02/33] Adds a supernova event, with tweaks to allow this --- code/__DEFINES/dcs/signals.dm | 2 +- .../subsystem/processing/weather.dm | 5 + code/controllers/subsystem/sun.dm | 47 +++++- .../weather/weather_types/radiation_storm.dm | 2 +- .../game/gamemodes/bloodsucker/bloodsucker.dm | 3 +- .../bloodsucker/bloodsucker_sunlight.dm | 155 +++++++----------- code/modules/events/supernova.dm | 66 ++++++++ code/modules/power/solar.dm | 60 +++---- code/modules/power/tracker.dm | 6 +- 9 files changed, 194 insertions(+), 152 deletions(-) create mode 100644 code/modules/events/supernova.dm diff --git a/code/__DEFINES/dcs/signals.dm b/code/__DEFINES/dcs/signals.dm index 42199174e7..c12ec20de2 100644 --- a/code/__DEFINES/dcs/signals.dm +++ b/code/__DEFINES/dcs/signals.dm @@ -22,7 +22,7 @@ #define COMPONENT_GLOB_BLOCK_CINEMATIC 1 // signals from globally accessible objects -/// from SSsun when the sun changes position : (azimuth) +/// from SSsun when the sun changes position : (primary_sun, suns) #define COMSIG_SUN_MOVED "sun_moved" ////////////////////////////////////////////////////////////////// diff --git a/code/controllers/subsystem/processing/weather.dm b/code/controllers/subsystem/processing/weather.dm index ca067953cc..4035149ef2 100644 --- a/code/controllers/subsystem/processing/weather.dm +++ b/code/controllers/subsystem/processing/weather.dm @@ -70,3 +70,8 @@ PROCESSING_SUBSYSTEM_DEF(weather) A = W break return A + +/datum/controller/subsystem/processing/weather/proc/get_weather_by_type(datum/weather/weather_datum_type) + for(var/V in processing) + if(istype(V,weather_datum_type)) + return V diff --git a/code/controllers/subsystem/sun.dm b/code/controllers/subsystem/sun.dm index 442329cf46..d803cb9e5c 100644 --- a/code/controllers/subsystem/sun.dm +++ b/code/controllers/subsystem/sun.dm @@ -1,32 +1,63 @@ +#define OCCLUSION_DISTANCE 20 + +/datum/sun + var/azimuth = 0 // clockwise, top-down rotation from 0 (north) to 359 + var/power_mod = 1 // how much power this sun is outputting relative to standard + +/atom/proc/check_obscured(datum/sun/sun, distance = OCCLUSION_DISTANCE) + var/target_x = round(sin(sun.azimuth), 0.01) + var/target_y = round(cos(sun.azimuth), 0.01) + var/x_hit = x + var/y_hit = y + var/turf/hit + + for(var/run in 1 to distance) + x_hit += target_x + y_hit += target_y + hit = locate(round(x_hit, 1), round(y_hit, 1), z) + if(hit.opacity) + return TRUE + if(hit.x == 1 || hit.x == world.maxx || hit.y == 1 || hit.y == world.maxy) //edge of the map + break + return FALSE + SUBSYSTEM_DEF(sun) name = "Sun" wait = 1 MINUTES flags = SS_NO_TICK_CHECK + var/list/datum/sun/suns = list() + var/datum/sun/primary_sun var/azimuth = 0 ///clockwise, top-down rotation from 0 (north) to 359 var/azimuth_mod = 1 ///multiplier against base_rotation var/base_rotation = 6 ///base rotation in degrees per fire /datum/controller/subsystem/sun/Initialize(start_timeofday) - azimuth = rand(0, 359) + primary_sun = new + suns += primary_sun + primary_sun.azimuth = rand(0, 359) azimuth_mod = round(rand(50, 200)/100, 0.01) // 50% - 200% of standard rotation if(prob(50)) azimuth_mod *= -1 return ..() /datum/controller/subsystem/sun/fire(resumed = FALSE) - azimuth += azimuth_mod * base_rotation - azimuth = round(azimuth, 0.01) - if(azimuth >= 360) - azimuth -= 360 - if(azimuth < 0) - azimuth += 360 + for(var/S in suns) + var/datum/sun/sun = S + sun.azimuth += azimuth_mod * base_rotation + sun.azimuth = round(azimuth, 0.01) + if(sun.azimuth >= 360) + sun.azimuth -= 360 + if(sun.azimuth < 0) + sun.azimuth += 360 complete_movement() /datum/controller/subsystem/sun/proc/complete_movement() - SEND_SIGNAL(src, COMSIG_SUN_MOVED, azimuth) + SEND_SIGNAL(src, COMSIG_SUN_MOVED, primary_sun, suns) /datum/controller/subsystem/sun/vv_edit_var(var_name, var_value) . = ..() if(var_name == NAMEOF(src, azimuth)) complete_movement() + +#undef OCCLUSION_DISTANCE diff --git a/code/datums/weather/weather_types/radiation_storm.dm b/code/datums/weather/weather_types/radiation_storm.dm index 4638508d1c..337be3e005 100644 --- a/code/datums/weather/weather_types/radiation_storm.dm +++ b/code/datums/weather/weather_types/radiation_storm.dm @@ -22,7 +22,7 @@ target_trait = ZTRAIT_STATION immunity_type = "rad" - + var/radiation_intensity = 100 /datum/weather/rad_storm/telegraph() diff --git a/code/game/gamemodes/bloodsucker/bloodsucker.dm b/code/game/gamemodes/bloodsucker/bloodsucker.dm index c54de16e2e..a16e7eab59 100644 --- a/code/game/gamemodes/bloodsucker/bloodsucker.dm +++ b/code/game/gamemodes/bloodsucker/bloodsucker.dm @@ -87,7 +87,7 @@ // Init Sunlight (called from datum_bloodsucker.on_gain(), in case game mode isn't even Bloodsucker /datum/game_mode/proc/check_start_sunlight() // Already Sunlight (and not about to cancel) - if(istype(bloodsucker_sunlight) && !bloodsucker_sunlight.cancel_me) + if(istype(bloodsucker_sunlight)) return bloodsucker_sunlight = new () @@ -97,7 +97,6 @@ if(!istype(bloodsucker_sunlight)) return if(bloodsuckers.len <= 0) - bloodsucker_sunlight.cancel_me = TRUE qdel(bloodsucker_sunlight) bloodsucker_sunlight = null diff --git a/code/modules/antagonists/bloodsucker/bloodsucker_sunlight.dm b/code/modules/antagonists/bloodsucker/bloodsucker_sunlight.dm index 2cb50c6b3b..f26152f90e 100644 --- a/code/modules/antagonists/bloodsucker/bloodsucker_sunlight.dm +++ b/code/modules/antagonists/bloodsucker/bloodsucker_sunlight.dm @@ -7,98 +7,79 @@ // Over Time, tick down toward a "Solar Flare" of UV buffeting the station. This period is harmful to vamps. /obj/effect/sunlight //var/amDay = FALSE - var/cancel_me = FALSE var/amDay = FALSE var/time_til_cycle = 0 - var/nightime_duration = 900 //15 Minutes + var/nighttime_duration = 900 //15 Minutes + var/issued_XP = FALSE /obj/effect/sunlight/Initialize() . = ..() - INVOKE_ASYNC(src, .proc/countdown) - INVOKE_ASYNC(src, .proc/hud_tick) -/obj/effect/sunlight/proc/countdown() - set waitfor = FALSE +/obj/effect/sunlight/proc/start_countdown() + START_PROCESSING(SSweather, src) //it counts as weather right + time_til_cycle = nighttime_duration - while(!cancel_me) - - time_til_cycle = nightime_duration - - // Part 1: Night (all is well) - while(time_til_cycle > TIME_BLOODSUCKER_DAY_WARN) - sleep(10) - if(cancel_me) - return - //sleep(TIME_BLOODSUCKER_NIGHT - TIME_BLOODSUCKER_DAY_WARN) - warn_daylight(1,"Solar Flares will bombard the station with dangerous UV in [TIME_BLOODSUCKER_DAY_WARN / 60] minutes. Prepare to seek cover in a coffin or closet.") // time2text <-- use Help On - give_home_power() // Give VANISHING ACT power to all vamps with a lair! - - // Part 2: Night Ending - while(time_til_cycle > TIME_BLOODSUCKER_DAY_FINAL_WARN) - sleep(10) - if(cancel_me) - return - //sleep(TIME_BLOODSUCKER_DAY_WARN - TIME_BLOODSUCKER_DAY_FINAL_WARN) - message_admins("BLOODSUCKER NOTICE: Daylight beginning in [TIME_BLOODSUCKER_DAY_FINAL_WARN] seconds.)") - warn_daylight(2,"Solar Flares are about to bombard the station! You have [TIME_BLOODSUCKER_DAY_FINAL_WARN] seconds to find cover!",\ - "In [TIME_BLOODSUCKER_DAY_FINAL_WARN / 10], your master will be at risk of a Solar Flare. Make sure they find cover!") - - // (FINAL LIL WARNING) - while(time_til_cycle > 5) - sleep(10) - if(cancel_me) - return - //sleep(TIME_BLOODSUCKER_DAY_FINAL_WARN - 50) - warn_daylight(3,"Seek cover, for Sol rises!") - - // Part 3: Night Ending - while(time_til_cycle > 0) - sleep(10) - if(cancel_me) - return - //sleep(50) - warn_daylight(4,"Solar flares bombard the station with deadly UV light!
Stay in cover for the next [TIME_BLOODSUCKER_DAY / 60] minutes or risk Final Death!",\ - "Solar flares bombard the station with UV light!") - - // Part 4: Day - amDay = TRUE - message_admins("BLOODSUCKER NOTICE: Daylight Beginning (Lasts for [TIME_BLOODSUCKER_DAY / 60] minutes.)") - time_til_cycle = TIME_BLOODSUCKER_DAY - sleep(10) // One second grace period. - //var/daylight_time = TIME_BLOODSUCKER_DAY - var/issued_XP = FALSE - while(time_til_cycle > 0) +/obj/effect/sunlight/process() + // Update all Bloodsucker sunlight huds + for(var/datum/mind/M in SSticker.mode.bloodsuckers) + if(!istype(M) || !istype(M.current)) + continue + var/datum/antagonist/bloodsucker/bloodsuckerdatum = M.has_antag_datum(ANTAG_DATUM_BLOODSUCKER) + if(istype(bloodsuckerdatum)) + bloodsuckerdatum.update_sunlight(max(0, time_til_cycle), amDay) // This pings all HUDs + time_til_cycle-- + if(amDay) + if(time_til_cycle > 0 && time_til_cycle % 4 == 0) punish_vamps() - sleep(TIME_BLOODSUCKER_BURN_INTERVAL) - if(cancel_me) - return - //daylight_time -= TIME_BLOODSUCKER_BURN_INTERVAL - // Issue Level Up! if(!issued_XP && time_til_cycle <= 5) issued_XP = TRUE - vamps_rank_up() + // Cycle through all vamp antags and check if they're inside a closet. + for(var/datum/mind/M in SSticker.mode.bloodsuckers) + if(!istype(M) || !istype(M.current)) + continue + var/datum/antagonist/bloodsucker/bloodsuckerdatum = M.has_antag_datum(ANTAG_DATUM_BLOODSUCKER) + if(istype(bloodsuckerdatum)) + bloodsuckerdatum.RankUp() // Rank up! Must still be in a coffin to level! warn_daylight(5,"The solar flare has ended, and the daylight danger has passed...for now.",\ "The solar flare has ended, and the daylight danger has passed...for now.") amDay = FALSE - day_end() // Remove VANISHING ACT power from all vamps who have it! Clear Warnings (sunlight, locker protection) - nightime_duration += 100 //Each day makes the night a minute longer. - message_admins("BLOODSUCKER NOTICE: Daylight Ended. Resetting to Night (Lasts for [nightime_duration / 60] minutes.)") - - - -/obj/effect/sunlight/proc/hud_tick() - set waitfor = FALSE - while(!cancel_me) - // Update all Bloodsucker sunlight huds + issued_XP = FALSE for(var/datum/mind/M in SSticker.mode.bloodsuckers) if(!istype(M) || !istype(M.current)) continue var/datum/antagonist/bloodsucker/bloodsuckerdatum = M.has_antag_datum(ANTAG_DATUM_BLOODSUCKER) - if(istype(bloodsuckerdatum)) - bloodsuckerdatum.update_sunlight(max(0, time_til_cycle), amDay) // This pings all HUDs - sleep(10) - time_til_cycle -- + if(!istype(bloodsuckerdatum)) + continue + // Reset Warnings + bloodsuckerdatum.warn_sun_locker = FALSE + bloodsuckerdatum.warn_sun_burn = FALSE + // Remove Dawn Powers + for(var/datum/action/bloodsucker/P in bloodsuckerdatum.powers) + if(istype(P, /datum/action/bloodsucker/gohome)) + bloodsuckerdatum.powers -= P + P.Remove(M.current) + nighttime_duration += 100 //Each day makes the night a minute longer. + time_til_cycle = nighttime_duration + message_admins("BLOODSUCKER NOTICE: Daylight Ended. Resetting to Night (Lasts for [nighttime_duration / 60] minutes.)") + else + switch(time_til_cycle) + if(TIME_BLOODSUCKER_DAY_WARN) + //sleep(TIME_BLOODSUCKER_NIGHT - TIME_BLOODSUCKER_DAY_WARN) + warn_daylight(1,"Solar Flares will bombard the station with dangerous UV in [TIME_BLOODSUCKER_DAY_WARN / 60] minutes. Prepare to seek cover in a coffin or closet.") // time2text <-- use Help On + give_home_power() // Give VANISHING ACT power to all vamps with a lair! + if(TIME_BLOODSUCKER_DAY_FINAL_WARN) + message_admins("BLOODSUCKER NOTICE: Daylight beginning in [TIME_BLOODSUCKER_DAY_FINAL_WARN] seconds.)") + warn_daylight(2,"Solar Flares are about to bombard the station! You have [TIME_BLOODSUCKER_DAY_FINAL_WARN] seconds to find cover!",\ + "In [TIME_BLOODSUCKER_DAY_FINAL_WARN / 10], your master will be at risk of a Solar Flare. Make sure they find cover!") + if(5) + warn_daylight(3,"Seek cover, for Sol rises!") + if(0) + warn_daylight(4,"Solar flares bombard the station with deadly UV light!
Stay in cover for the next [TIME_BLOODSUCKER_DAY / 60] minutes or risk Final Death!",\ + "Solar flares bombard the station with UV light!") + amDay = TRUE + message_admins("BLOODSUCKER NOTICE: Daylight Beginning (Lasts for [TIME_BLOODSUCKER_DAY / 60] minutes.)") + time_til_cycle = TIME_BLOODSUCKER_DAY /obj/effect/sunlight/proc/warn_daylight(danger_level =0, vampwarn = "", vassalwarn = "") for(var/datum/mind/M in SSticker.mode.bloodsuckers) @@ -162,32 +143,6 @@ M.current.updatehealth() SEND_SIGNAL(M.current, COMSIG_ADD_MOOD_EVENT, "vampsleep", /datum/mood_event/daylight_2) -/obj/effect/sunlight/proc/day_end() - for(var/datum/mind/M in SSticker.mode.bloodsuckers) - if(!istype(M) || !istype(M.current)) - continue - var/datum/antagonist/bloodsucker/bloodsuckerdatum = M.has_antag_datum(ANTAG_DATUM_BLOODSUCKER) - if(!istype(bloodsuckerdatum)) - continue - // Reset Warnings - bloodsuckerdatum.warn_sun_locker = FALSE - bloodsuckerdatum.warn_sun_burn = FALSE - // Remove Dawn Powers - for(var/datum/action/bloodsucker/P in bloodsuckerdatum.powers) - if(istype(P, /datum/action/bloodsucker/gohome)) - bloodsuckerdatum.powers -= P - P.Remove(M.current) - -/obj/effect/sunlight/proc/vamps_rank_up() - set waitfor = FALSE - // Cycle through all vamp antags and check if they're inside a closet. - for(var/datum/mind/M in SSticker.mode.bloodsuckers) - if(!istype(M) || !istype(M.current)) - continue - var/datum/antagonist/bloodsucker/bloodsuckerdatum = M.has_antag_datum(ANTAG_DATUM_BLOODSUCKER) - if(istype(bloodsuckerdatum)) - bloodsuckerdatum.RankUp() // Rank up! Must still be in a coffin to level! - /obj/effect/sunlight/proc/give_home_power() // It's late...! Give the "Vanishing Act" gohome power to bloodsuckers. for(var/datum/mind/M in SSticker.mode.bloodsuckers) diff --git a/code/modules/events/supernova.dm b/code/modules/events/supernova.dm new file mode 100644 index 0000000000..bc04b8eade --- /dev/null +++ b/code/modules/events/supernova.dm @@ -0,0 +1,66 @@ +/datum/round_event_control/supernova + name = "Supernova" + typepath = /datum/round_event/supernova + weight = 10 + max_occurrences = 2 + min_players = 2 + +/datum/round_event/supernova + announceWhen = 40 + startWhen = 1 + endWhen = 300 + var/power = 1 + var/datum/sun/supernova + var/storm_count = 0 + +/datum/round_event/supernova/setup() + announceWhen = rand(4, 60) + supernova = new + SSsun.suns += supernova + if(prob(50)) + power = rand(5,100) / 100 + else + power = rand(5,5000) / 100 + supernova.azimuth = rand(0, 359) + supernova.power_mod = 0 + +/datum/round_event/supernova/announce() + var/message = "Our tachyon-doppler array has detected a supernova in your vicinity. Peak flux from the supernova estimated to be [round(power,0.1)] times current solar flux. [power > 4 ? "Short burts of radiation may be possible, so please prepare accordingly." : ""]" + if(prob(power * 25)) + priority_announce(message) + else + print_command_report(message) + + +/datum/round_event/supernova/start() + supernova.power_mod = 0.00000002 * power + var/explosion_size = rand(1000000000, 999999999) + for(var/array in GLOB.doppler_arrays) + var/obj/machinery/doppler_array/A = array + A.sense_explosion(epicenter, explosion_size/2, explosion_size, 0, 107000000 / power, explosion_size/2, explosion_size, 0) + if(power > 1 && SSticker.mode.bloodsucker_sunlight) + var/obj/effect/sunlight/sucker_light = SSticker.mode.bloodsucker_sunlight + sucker_light.time_til_cycle = 90 + sucker_light.warn_daylight(1,"A supernova will bombard the station with dangerous UV in [90 / 60] minutes. Prepare to seek cover in a coffin or closet.") + sucker_light.give_home_power() + +/datum/round_event/supernova/tick() + var/midpoint = (endWhen-startWhen)/2 + switch(activeFor) + if(startWhen to midpoint) + supernova.power_mod = min(supernova.power_mod*1.2, power) + if(endWhen-10 to endWhen) + supernova.power_mod /= 4 + if(prob(round(supernova.power_mod / 2)) && storm_count < 3 && !SSweather.get_weather_by_type(/datum/weather/rad_storm)) + SSweather.run_weather(/datum/weather/rad_storm/supernova) + storm_count++ + +/datum/round_event/supernova/end() + SSsun.suns -= supernova + qdel(supernova) + +/datum/weather/rad_storm/supernova + weather_duration_lower = 50 + weather_duration_lower = 100 + telegraph_duration = 100 + radiation_intensity = 50 diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index da99ecaf73..e29146a59b 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -1,5 +1,4 @@ #define SOLAR_GEN_RATE 1500 -#define OCCLUSION_DISTANCE 20 /obj/machinery/power/solar name = "solar panel" @@ -14,8 +13,8 @@ integrity_failure = 0.33 var/id - var/obscured = FALSE - var/sunfrac = 0 //[0-1] measure of obscuration -- multipllier against power generation + var/list/obscured = list() + var/total_flux = 0 // multipllier against power generation -- measured by obscuration of all suns var/azimuth_current = 0 //[0-360) degrees, which direction are we facing? var/azimuth_target = 0 //same but what way we're going to face next time we turn var/obj/machinery/power/solar_control/control @@ -133,40 +132,28 @@ ///trace towards sun to see if we're in shadow /obj/machinery/power/solar/proc/occlusion_setup() - obscured = TRUE - - var/distance = OCCLUSION_DISTANCE - var/target_x = round(sin(SSsun.azimuth), 0.01) - var/target_y = round(cos(SSsun.azimuth), 0.01) - var/x_hit = x - var/y_hit = y - var/turf/hit - - for(var/run in 1 to distance) - x_hit += target_x - y_hit += target_y - hit = locate(round(x_hit, 1), round(y_hit, 1), z) - if(hit.opacity) - return - if(hit.x == 1 || hit.x == world.maxx || hit.y == 1 || hit.y == world.maxy) //edge of the map - break - obscured = FALSE + obscured = list() + for(var/S in SSsun.suns) + if(check_obscured(S)) + obscured |= S ///calculates the fraction of the sunlight that the panel receives /obj/machinery/power/solar/proc/update_solar_exposure() needs_to_update_solar_exposure = FALSE - sunfrac = 0 - if(obscured) - return 0 - - var/sun_azimuth = SSsun.azimuth - if(azimuth_current == sun_azimuth) //just a quick optimization for the most frequent case - . = 1 - else - //dot product of sun and panel -- Lambert's Cosine Law - . = cos(azimuth_current - sun_azimuth) - . = clamp(round(., 0.01), 0, 1) - sunfrac = . + total_flux = 0 + for(var/S in SSsun.suns) + if(S in obscured) + continue + var/datum/sun/sun = S + var/sun_azimuth = sun.azimuth + var/cur_pow = 0 + if(azimuth_current == sun_azimuth) //just a quick optimization for the most frequent case + cur_pow = sun.power_mod + else + //dot product of sun and panel -- Lambert's Cosine Law + cur_pow = cos(azimuth_current - sun_azimuth) * sun.power_mod + cur_pow = clamp(round(cur_pow, 0.01), 0, 1) + total_flux += cur_pow /obj/machinery/power/solar/process() if(stat & BROKEN) @@ -177,10 +164,10 @@ update_turn() if(needs_to_update_solar_exposure) update_solar_exposure() - if(sunfrac <= 0) + if(total_flux <= 0) return - var/sgen = SOLAR_GEN_RATE * sunfrac * efficiency + var/sgen = SOLAR_GEN_RATE * total_flux * efficiency add_avail(sgen) if(control) control.gen += sgen @@ -387,7 +374,7 @@ track = mode if(mode == SOLAR_TRACK_AUTO) if(connected_tracker) - connected_tracker.sun_update(SSsun, SSsun.azimuth) + connected_tracker.sun_update(SSsun, SSsun.primary_sun, SSsun.suns) else track = SOLAR_TRACK_OFF return TRUE @@ -485,4 +472,3 @@ Congratulations, you should have a working solar array. If you are having troubl "} #undef SOLAR_GEN_RATE -#undef OCCLUSION_DISTANCE diff --git a/code/modules/power/tracker.dm b/code/modules/power/tracker.dm index 0627a55de0..86168979c2 100644 --- a/code/modules/power/tracker.dm +++ b/code/modules/power/tracker.dm @@ -41,10 +41,10 @@ control = null ///Tell the controller to turn the solar panels -/obj/machinery/power/tracker/proc/sun_update(datum/source, azimuth) - setDir(angle2dir(azimuth)) +/obj/machinery/power/tracker/proc/sun_update(datum/source, datum/sun/primary_sun, list/datum/sun/suns) + setDir(angle2dir(primary_sun.azimuth)) if(control && control.track == SOLAR_TRACK_AUTO) - control.set_panels(azimuth) + control.set_panels(primary_sun.azimuth) /obj/machinery/power/tracker/proc/Make(obj/item/solar_assembly/S) if(!S) From 23eaf250a9441b2e09bca2d6221e3601cafb87be Mon Sep 17 00:00:00 2001 From: Putnam Date: Wed, 24 Feb 2021 03:12:01 -0800 Subject: [PATCH 03/33] Make sure to hit the funny tick --- code/controllers/subsystem/sun.dm | 14 +++++++------- code/modules/events/supernova.dm | 1 + tgstation.dme | 1 + 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/code/controllers/subsystem/sun.dm b/code/controllers/subsystem/sun.dm index d803cb9e5c..746b1be7a9 100644 --- a/code/controllers/subsystem/sun.dm +++ b/code/controllers/subsystem/sun.dm @@ -4,6 +4,12 @@ var/azimuth = 0 // clockwise, top-down rotation from 0 (north) to 359 var/power_mod = 1 // how much power this sun is outputting relative to standard + +/datum/sun/vv_edit_var(var_name, var_value) + . = ..() + if(var_name == NAMEOF(src, azimuth)) + SSsun.complete_movement() + /atom/proc/check_obscured(datum/sun/sun, distance = OCCLUSION_DISTANCE) var/target_x = round(sin(sun.azimuth), 0.01) var/target_y = round(cos(sun.azimuth), 0.01) @@ -28,7 +34,6 @@ SUBSYSTEM_DEF(sun) var/list/datum/sun/suns = list() var/datum/sun/primary_sun - var/azimuth = 0 ///clockwise, top-down rotation from 0 (north) to 359 var/azimuth_mod = 1 ///multiplier against base_rotation var/base_rotation = 6 ///base rotation in degrees per fire @@ -45,7 +50,7 @@ SUBSYSTEM_DEF(sun) for(var/S in suns) var/datum/sun/sun = S sun.azimuth += azimuth_mod * base_rotation - sun.azimuth = round(azimuth, 0.01) + sun.azimuth = round(sun.azimuth, 0.01) if(sun.azimuth >= 360) sun.azimuth -= 360 if(sun.azimuth < 0) @@ -55,9 +60,4 @@ SUBSYSTEM_DEF(sun) /datum/controller/subsystem/sun/proc/complete_movement() SEND_SIGNAL(src, COMSIG_SUN_MOVED, primary_sun, suns) -/datum/controller/subsystem/sun/vv_edit_var(var_name, var_value) - . = ..() - if(var_name == NAMEOF(src, azimuth)) - complete_movement() - #undef OCCLUSION_DISTANCE diff --git a/code/modules/events/supernova.dm b/code/modules/events/supernova.dm index bc04b8eade..dd4d0e0212 100644 --- a/code/modules/events/supernova.dm +++ b/code/modules/events/supernova.dm @@ -35,6 +35,7 @@ /datum/round_event/supernova/start() supernova.power_mod = 0.00000002 * power var/explosion_size = rand(1000000000, 999999999) + var/turf/epicenter = get_turf_in_angle(supernova.azimuth, SSmapping.get_station_center(), world.maxx / 2) for(var/array in GLOB.doppler_arrays) var/obj/machinery/doppler_array/A = array A.sense_explosion(epicenter, explosion_size/2, explosion_size, 0, 107000000 / power, explosion_size/2, explosion_size, 0) diff --git a/tgstation.dme b/tgstation.dme index 40666bc7ac..a68cbf6d6b 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -2060,6 +2060,7 @@ #include "code\modules\events\spider_infestation.dm" #include "code\modules\events\spontaneous_appendicitis.dm" #include "code\modules\events\stray_cargo.dm" +#include "code\modules\events\supernova.dm" #include "code\modules\events\travelling_trader.dm" #include "code\modules\events\vent_clog.dm" #include "code\modules\events\wisdomcow.dm" From 123f686e7fb97f67dccd48fb92ed9a99834edf5a Mon Sep 17 00:00:00 2001 From: kiwedespars <47008095+kiwedespars@users.noreply.github.com> Date: Sat, 27 Feb 2021 22:18:44 -0800 Subject: [PATCH 04/33] makes chokehold mute --- code/datums/martial/cqc.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/datums/martial/cqc.dm b/code/datums/martial/cqc.dm index 5b401b4b6b..4277cb1316 100644 --- a/code/datums/martial/cqc.dm +++ b/code/datums/martial/cqc.dm @@ -196,7 +196,8 @@ log_combat(A, D, "knocked out (Chokehold)(CQC)") D.visible_message("[A] puts [D] into a chokehold!", \ "[A] puts you into a chokehold!") - D.SetSleeping(400) + if(D.silent <= 10) + D.silent = clamp(D.silent + 10, 0, 10) restraining = FALSE if(A.grab_state < GRAB_NECK) A.setGrabState(GRAB_NECK) @@ -213,7 +214,7 @@ to_chat(usr, "Slam: Grab Harm. Slam opponent into the ground, knocking them down.") to_chat(usr, "CQC Kick: Harm Harm. Knocks opponent away. Knocks out stunned or knocked down opponents.") - to_chat(usr, "Restrain: Grab Grab. Locks opponents into a restraining position, disarm to knock them out with a chokehold.") + to_chat(usr, "Restrain: Grab Grab. Locks opponents into a restraining position, disarm to mute them with a chokehold.") to_chat(usr, "Pressure: Disarm Grab. Decent stamina damage.") to_chat(usr, "Consecutive CQC: Disarm Disarm Harm. Mainly offensive move, huge damage and decent stamina damage.") From 38fb75c23535a05c1719af0fb3b4a0c66f4b9db8 Mon Sep 17 00:00:00 2001 From: Putnam Date: Tue, 2 Mar 2021 01:20:22 -0800 Subject: [PATCH 05/33] Prevents bloodsucker daytime-soon spam --- code/modules/events/supernova.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/events/supernova.dm b/code/modules/events/supernova.dm index dd4d0e0212..9766ab6212 100644 --- a/code/modules/events/supernova.dm +++ b/code/modules/events/supernova.dm @@ -39,7 +39,7 @@ for(var/array in GLOB.doppler_arrays) var/obj/machinery/doppler_array/A = array A.sense_explosion(epicenter, explosion_size/2, explosion_size, 0, 107000000 / power, explosion_size/2, explosion_size, 0) - if(power > 1 && SSticker.mode.bloodsucker_sunlight) + if(power > 1 && SSticker.mode.bloodsucker_sunlight?.time_til_cycle > 90) var/obj/effect/sunlight/sucker_light = SSticker.mode.bloodsucker_sunlight sucker_light.time_til_cycle = 90 sucker_light.warn_daylight(1,"A supernova will bombard the station with dangerous UV in [90 / 60] minutes. Prepare to seek cover in a coffin or closet.") From f875218284b235c9e61559f606523d55611e36f0 Mon Sep 17 00:00:00 2001 From: Sneakyrat6 Date: Sat, 6 Mar 2021 03:48:52 -0500 Subject: [PATCH 06/33] Fixes material component --- code/datums/components/material_container.dm | 54 +++++++++++++++++++- 1 file changed, 52 insertions(+), 2 deletions(-) diff --git a/code/datums/components/material_container.dm b/code/datums/components/material_container.dm index 7adc634621..e1886e2180 100644 --- a/code/datums/components/material_container.dm +++ b/code/datums/components/material_container.dm @@ -83,6 +83,8 @@ set waitfor = FALSE var/requested_amount var/active_held = user.get_active_held_item() // differs from I when using TK + + //handle stacks specially if(istype(I, /obj/item/stack) && precise_insertion) var/atom/current_parent = parent var/obj/item/stack/S = I @@ -91,10 +93,18 @@ return if(QDELETED(I) || QDELETED(user) || QDELETED(src) || parent != current_parent || user.physical_can_use_topic(current_parent) < UI_INTERACTIVE || user.get_active_held_item() != active_held) return + var/amt = insert_stack(S, requested_amount) + if(S.singular_name) + to_chat(user, "You insert [amt] [S.singular_name]\s into [parent].") + else + to_chat(user, "You insert [amt] into [parent].") + return + if(!user.temporarilyRemoveItemFromInventory(I)) to_chat(user, "[I] is stuck to you and cannot be placed into [parent].") return - var/inserted = insert_item(I, stack_amt = requested_amount) + + var/inserted = insert_item(I) if(inserted) to_chat(user, "You insert a material total of [inserted] into [parent].") qdel(I) @@ -103,8 +113,46 @@ else if(I == active_held) user.put_in_active_hand(I) +//Inserts a number of sheets from a stack, returns the amount of sheets used. +/datum/component/material_container/proc/insert_stack(obj/item/stack/S, amt, multiplier = 1) + if(isnull(amt)) + amt = S.amount + + if(amt <= 0) + return FALSE + + if(amt > S.amount) + amt = S.amount + + var/material_amt = get_item_material_amount(S) + if(!material_amt) + return FALSE + + //get max number of sheets we have room to add + var/mat_per_sheet = material_amt/S.amount + amt = min(amt, round((max_amount - total_amount) / (mat_per_sheet))) + if(!amt) + return FALSE + + //add the mats + for(var/MAT in materials) + materials[MAT] += S.mats_per_unit[MAT] * amt * multiplier + total_amount += S.mats_per_unit[MAT] * amt * multiplier + + //update last_inserted_id with mat making up majority of the stack + var/primary_mat + var/max_mat_value = 0 + for(var/MAT in materials) + if(S.mats_per_unit[MAT] > max_mat_value) + max_mat_value = S.mats_per_unit[MAT] + primary_mat = MAT + last_inserted_id = primary_mat + + S.use(amt) + return amt + /// Proc specifically for inserting items, returns the amount of materials entered. -/datum/component/material_container/proc/insert_item(obj/item/I, var/multiplier = 1, stack_amt) +/datum/component/material_container/proc/insert_item(obj/item/I, var/multiplier = 1) if(QDELETED(I)) return FALSE @@ -124,6 +172,7 @@ materials[MAT] += I.custom_materials[MAT] * multiplier total_amount += I.custom_materials[MAT] * multiplier if(I.custom_materials[MAT] > max_mat_value) + max_mat_value = I.custom_materials[MAT] primary_mat = MAT return primary_mat @@ -135,6 +184,7 @@ var/total_amount_saved = total_amount if(mat) materials[mat] += amt + total_amount += amt else for(var/i in materials) materials[i] += amt From 703567e59157de0d3d556a520d07857a38c668dd Mon Sep 17 00:00:00 2001 From: Sneakyrat6 Date: Sun, 7 Mar 2021 04:09:36 -0500 Subject: [PATCH 07/33] other fixes --- code/datums/components/material_container.dm | 53 ++++++++++-------- code/datums/components/remote_materials.dm | 6 +- code/game/mecha/mech_fabricator.dm | 2 +- code/modules/mining/machine_silo.dm | 4 +- .../modules/research/machinery/_production.dm | 2 +- .../research/machinery/circuit_imprinter.dm | 3 + code/modules/research/rdmachines.dm | 12 ++-- icons/obj/machines/research.dmi | Bin 32997 -> 32998 bytes icons/obj/robotics.dmi | Bin 8887 -> 8886 bytes 9 files changed, 48 insertions(+), 34 deletions(-) diff --git a/code/datums/components/material_container.dm b/code/datums/components/material_container.dm index e1886e2180..9e9d060ca5 100644 --- a/code/datums/components/material_container.dm +++ b/code/datums/components/material_container.dm @@ -79,39 +79,46 @@ user_insert(I, user) /// Proc used for when player inserts materials -/datum/component/material_container/proc/user_insert(obj/item/I, mob/living/user) +/datum/component/material_container/proc/user_insert(obj/item/I, mob/living/user, datum/component/remote_materials/remote = null) set waitfor = FALSE - var/requested_amount var/active_held = user.get_active_held_item() // differs from I when using TK + var/inserted = 0 //handle stacks specially - if(istype(I, /obj/item/stack) && precise_insertion) - var/atom/current_parent = parent + if(istype(I, /obj/item/stack)) + var/atom/current_parent = remote ? remote.parent : parent //is the user using a remote materials component? var/obj/item/stack/S = I - requested_amount = input(user, "How much do you want to insert?", "Inserting [S.singular_name]s") as num|null + + //try to get ammount to use + var/requested_amount + if(precise_insertion) + requested_amount = input(user, "How much do you want to insert?", "Inserting [S.singular_name]s") as num|null + else + requested_amount= S.amount + if(isnull(requested_amount) || (requested_amount <= 0)) return - if(QDELETED(I) || QDELETED(user) || QDELETED(src) || parent != current_parent || user.physical_can_use_topic(current_parent) < UI_INTERACTIVE || user.get_active_held_item() != active_held) + if(QDELETED(I) || QDELETED(user) || QDELETED(src) || user.get_active_held_item() != active_held) return - var/amt = insert_stack(S, requested_amount) - if(S.singular_name) - to_chat(user, "You insert [amt] [S.singular_name]\s into [parent].") - else - to_chat(user, "You insert [amt] into [parent].") - return + //are we still in range after the user input? + if((remote ? remote.parent : parent) != current_parent || user.physical_can_use_topic(current_parent) < UI_INTERACTIVE) + return + inserted = insert_stack(S, requested_amount) + else + if(!user.temporarilyRemoveItemFromInventory(I)) + to_chat(user, "[I] is stuck to you and cannot be placed into [parent].") + return + inserted = insert_item(I) + qdel(I) - if(!user.temporarilyRemoveItemFromInventory(I)) - to_chat(user, "[I] is stuck to you and cannot be placed into [parent].") - return - - var/inserted = insert_item(I) if(inserted) to_chat(user, "You insert a material total of [inserted] into [parent].") - qdel(I) if(after_insert) after_insert.Invoke(I, last_inserted_id, inserted) - else if(I == active_held) - user.put_in_active_hand(I) + if(remote && remote.after_insert) + remote.after_insert.Invoke(I, last_inserted_id, inserted) + //else if(I == active_held) + // user.put_in_active_hand(I) //Inserts a number of sheets from a stack, returns the amount of sheets used. /datum/component/material_container/proc/insert_stack(obj/item/stack/S, amt, multiplier = 1) @@ -134,10 +141,12 @@ if(!amt) return FALSE - //add the mats + //add the mats and keep track of how much was added + var/starting_total = total_amount for(var/MAT in materials) materials[MAT] += S.mats_per_unit[MAT] * amt * multiplier total_amount += S.mats_per_unit[MAT] * amt * multiplier + var/total_added = total_amount - starting_total //update last_inserted_id with mat making up majority of the stack var/primary_mat @@ -149,7 +158,7 @@ last_inserted_id = primary_mat S.use(amt) - return amt + return total_added /// Proc specifically for inserting items, returns the amount of materials entered. /datum/component/material_container/proc/insert_item(obj/item/I, var/multiplier = 1) diff --git a/code/datums/components/remote_materials.dm b/code/datums/components/remote_materials.dm index 01038c11d3..896f09034b 100644 --- a/code/datums/components/remote_materials.dm +++ b/code/datums/components/remote_materials.dm @@ -15,13 +15,15 @@ handles linking back and forth. var/category var/allow_standalone var/local_size = INFINITY + var/datum/callback/after_insert -/datum/component/remote_materials/Initialize(category, mapload, allow_standalone = TRUE, force_connect = FALSE) +/datum/component/remote_materials/Initialize(category, mapload, allow_standalone = TRUE, force_connect = FALSE, _after_insert) if (!isatom(parent)) return COMPONENT_INCOMPATIBLE src.category = category src.allow_standalone = allow_standalone + after_insert = _after_insert RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/OnAttackBy) @@ -103,7 +105,7 @@ handles linking back and forth. return COMPONENT_NO_AFTERATTACK else if(silo && istype(I, /obj/item/stack)) - if(silo.remote_attackby(parent, user, I)) + if(silo.remote_attackby(parent, user, I, src)) return COMPONENT_NO_AFTERATTACK /datum/component/remote_materials/proc/on_hold() diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 002753c5d4..bf85253cbd 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -65,7 +65,7 @@ /obj/machinery/mecha_part_fabricator/Initialize(mapload) stored_research = new - rmat = AddComponent(/datum/component/remote_materials, "mechfab", mapload && link_on_init) + rmat = AddComponent(/datum/component/remote_materials, "mechfab", mapload && link_on_init, _after_insert=CALLBACK(src, .proc/AfterMaterialInsert)) RefreshParts() //Recalculating local material sizes if the fab isn't linked return ..() diff --git a/code/modules/mining/machine_silo.dm b/code/modules/mining/machine_silo.dm index b0055204f9..34b349b198 100644 --- a/code/modules/mining/machine_silo.dm +++ b/code/modules/mining/machine_silo.dm @@ -47,7 +47,7 @@ GLOBAL_LIST_EMPTY(silo_access_logs) return ..() -/obj/machinery/ore_silo/proc/remote_attackby(obj/machinery/M, mob/user, obj/item/stack/I) +/obj/machinery/ore_silo/proc/remote_attackby(obj/machinery/M, mob/user, obj/item/stack/I, remote = null) var/datum/component/material_container/materials = GetComponent(/datum/component/material_container) // stolen from /datum/component/material_container/proc/OnAttackBy if(user.a_intent != INTENT_HELP) @@ -63,7 +63,7 @@ GLOBAL_LIST_EMPTY(silo_access_logs) return // assumes unlimited space... var/amount = I.amount - materials.user_insert(I, user) + materials.user_insert(I, user, remote) silo_log(M, "deposited", amount, "sheets", item_mats) return TRUE diff --git a/code/modules/research/machinery/_production.dm b/code/modules/research/machinery/_production.dm index 5a50120833..346c3399f6 100644 --- a/code/modules/research/machinery/_production.dm +++ b/code/modules/research/machinery/_production.dm @@ -27,7 +27,7 @@ stored_research = new host_research = SSresearch.science_tech update_research() - materials = AddComponent(/datum/component/remote_materials, "lathe", mapload) + materials = AddComponent(/datum/component/remote_materials, "lathe", mapload, _after_insert=CALLBACK(src, .proc/AfterMaterialInsert)) RefreshParts() /obj/machinery/rnd/production/Destroy() diff --git a/code/modules/research/machinery/circuit_imprinter.dm b/code/modules/research/machinery/circuit_imprinter.dm index b80e96a1e9..7a5e08624b 100644 --- a/code/modules/research/machinery/circuit_imprinter.dm +++ b/code/modules/research/machinery/circuit_imprinter.dm @@ -31,3 +31,6 @@ /obj/machinery/rnd/production/circuit_imprinter/offstation offstation_security_levels = FALSE circuit = /obj/item/circuitboard/machine/circuit_imprinter/offstation + +/obj/machinery/rnd/production/circuit_imprinter/AfterMaterialInsert() //doesnt use have an animation like lathes do + return diff --git a/code/modules/research/rdmachines.dm b/code/modules/research/rdmachines.dm index 2237284a64..f39f5b1584 100644 --- a/code/modules/research/rdmachines.dm +++ b/code/modules/research/rdmachines.dm @@ -94,13 +94,13 @@ ..() /obj/machinery/rnd/proc/AfterMaterialInsert(item_inserted, id_inserted, amount_inserted) - var/stack_name + var/mat_name if(istype(item_inserted, /obj/item/stack/ore/bluespace_crystal)) - stack_name = "bluespace" + mat_name = "bluespace" use_power(MINERAL_MATERIAL_AMOUNT / 10) else - var/obj/item/stack/S = item_inserted - stack_name = S.name + var/datum/material/M = id_inserted + mat_name = M.name use_power(min(1000, (amount_inserted / 100))) - add_overlay("protolathe_[stack_name]") - addtimer(CALLBACK(src, /atom/proc/cut_overlay, "protolathe_[stack_name]"), 10) + add_overlay("protolathe_[mat_name]") + addtimer(CALLBACK(src, /atom/proc/cut_overlay, "protolathe_[mat_name]"), 10) diff --git a/icons/obj/machines/research.dmi b/icons/obj/machines/research.dmi index 7dcd4e6bcb3409b82745f7560b169bde68a03a85..8f9594c5dcbbd4378de0e23dd1ddc91a08648e78 100644 GIT binary patch delta 567 zcmV-70?7U4fdb}%0+1ws9C}n(bVOxyV{&P5bZKvH004NLy;i|)qc9LX!&g}C)kFc3 zEj@5qrCR0C9`*;2gPmZl@mRJ=w)^#a$f~#t4o;OI%P5iF_|1DW9(Y9GUw&-g(B^d; zADK2BBr4Hrv5cb=r?x>Q%Ck6X7(X=j{Kr^g87k33&2`;zTk%$ZX)Z0(4{=1fHmF2t z9PKq}+4;9WqOxCzA(D?rW$QSiOptd}qUEB%ciwR%0MzGfl?Drf*oI9C>!ATIIAG}k z=dSoQzH-NrW+yJGm-ZltG2_(FpKLF1;A51AYw!rXCCdQ>y+4cL;^?~-x8$Lmv>;~? zv=bdOiqxLwz9m(Er-|fUJ42B`aEg>5rX@2tNaReq2qi6%mdkq;i&jJu@&1SDN_d=0 zmpw^}2WxDAx~EP~#U6YGG+^2~V5OmEzQLD0xh6j2nRcJ3rJ$5xI)VLuQq>1|r{Nd# zOxgUuiVeg2xRq-~A6H=KBViDfh6e?y`iHGR`6M}D!?bsQB0I33o8*j40$xVLwjMht zKuM2oi10LN;pH9AKA_pp*kE8HLBT1�dur_v$>Y@#RM`JlE&wmk*Xia?2{E;h;&| z`XuJr#i4f18gSPFI$G5rtp?$}HtDzE41DUUrrS+c@Z)u#D9w$pkj@Ouv9m5w2Xxz@ z8UZovw-R6}_>omLv`RB$z+>U6PddXn&KGN(F0%L$y}WJE=5-tY1+qnnui2UpDziue FoqmBI6@~x+ delta 566 zcmV-60?Ga6fdb`$0+1ws8+ue&bVOxyV{&P5bZKvH004NLy;i|);xG_BCtqQ;SA$3b z+i>8rqFQli5BmerG&aOq$79(JZ1?N;z^ZXKn3zgLmLrhf%$xVdp5&2yfBvz1CEJ%> zdgR6mRAfVz^F^AR1al49kRnf$hKobv&VQ@}$H|5~)WX!AaFu9(wGqm3^N=P?7)v%J zOOw5UmY;uzBP#cW7*OJJRK7|R#wEOy4Oz@fdgq-c5>bDyRvUCE!8LqTSPzYG!2_!R zxbVfV=#4u~3_l6Qg0u$-)?TJwf3m%#k&o;CRV{ZQrzAX}WK;54A&;R;b00<~phY#Q z$T!(>tDz3uhx?F!b_SH_+DV&{r z=;<;#SYug7M{f_l0U9yVJ+L-d^U!q7pL{#lbfVoC>KJM*xtZa9KdR~j{ATbM54@|2 z|2j4d@8g!f6@6Suy)ThLP!=B)rRpEHLLHLifh{+|x$eP#er{)H|c#1G_#KF?PI!`Nl{ZS6{h8+EJVg*V#UTK2|18p0U zSmalS+AV9qT}$j(RiknSW$@Z$-=ZrBsjHgqZM1_Q9|$vTgbg*)n}G%O)-~#g(>CZv zL=69}C0cPP0 delta 105 zcmV-v0G9u@MYlzeBmwo2C8b!wRrIgr?+?kJf;XytLArS?g@=^9WdRlPv&$@~DPyE5 zu(0kPOF$OXfRQg3S_~K~7tRuf6nQRLsq*bP_{o(!UKXC|Pud!e=MK74FTVlRL>=H@ LKa{YuApw;kTUIbq From 395bdaf5f918f393e7215464ee0fce60d2cf0d22 Mon Sep 17 00:00:00 2001 From: Sneakyrat6 Date: Sun, 7 Mar 2021 04:13:18 -0500 Subject: [PATCH 08/33] removes code i commented out --- code/datums/components/material_container.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/datums/components/material_container.dm b/code/datums/components/material_container.dm index 9e9d060ca5..8e1ed523d7 100644 --- a/code/datums/components/material_container.dm +++ b/code/datums/components/material_container.dm @@ -117,8 +117,6 @@ after_insert.Invoke(I, last_inserted_id, inserted) if(remote && remote.after_insert) remote.after_insert.Invoke(I, last_inserted_id, inserted) - //else if(I == active_held) - // user.put_in_active_hand(I) //Inserts a number of sheets from a stack, returns the amount of sheets used. /datum/component/material_container/proc/insert_stack(obj/item/stack/S, amt, multiplier = 1) From 0db08088c4cb23d997f4c921ac3e948ff3cc9c91 Mon Sep 17 00:00:00 2001 From: Sneakyrat6 Date: Sun, 7 Mar 2021 22:43:55 -0500 Subject: [PATCH 09/33] Fixes material insertion animations not working when there is no silo --- code/datums/components/remote_materials.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/components/remote_materials.dm b/code/datums/components/remote_materials.dm index 896f09034b..b1d23ea3a8 100644 --- a/code/datums/components/remote_materials.dm +++ b/code/datums/components/remote_materials.dm @@ -69,7 +69,7 @@ handles linking back and forth. /datum/material/plastic, ) - mat_container = parent.AddComponent(/datum/component/material_container, allowed_mats, local_size, allowed_types=/obj/item/stack) + mat_container = parent.AddComponent(/datum/component/material_container, allowed_mats, local_size, allowed_types=/obj/item/stack, _after_insert = after_insert) /datum/component/remote_materials/proc/set_local_size(size) local_size = size From 5f6d47850951aceea8d9161033ecce9fa23c400c Mon Sep 17 00:00:00 2001 From: Putnam Date: Sun, 7 Mar 2021 20:14:11 -0800 Subject: [PATCH 10/33] Added a "desired mode chaos" system --- code/controllers/configuration/configuration.dm | 5 +++++ .../configuration/entries/game_options.dm | 12 ++++++++++++ .../subsystem/persistence/recent_votes_etc.dm | 15 +++++++++++++++ code/game/gamemodes/bloodsucker/bloodsucker.dm | 1 + code/game/gamemodes/brother/traitor_bro.dm | 1 + code/game/gamemodes/changeling/changeling.dm | 1 + code/game/gamemodes/changeling/traitor_chan.dm | 1 + code/game/gamemodes/clock_cult/clock_cult.dm | 1 + code/game/gamemodes/clown_ops/clown_ops.dm | 2 +- code/game/gamemodes/cult/cult.dm | 1 + .../gamemodes/devil/devil agent/devil_agent.dm | 1 + code/game/gamemodes/devil/devil_game_mode.dm | 1 + .../game/gamemodes/eldritch_cult/eldritch_cult.dm | 1 + code/game/gamemodes/extended/extended.dm | 1 + code/game/gamemodes/game_mode.dm | 8 ++++++++ code/game/gamemodes/gangs/gangs.dm | 1 + code/game/gamemodes/meteor/meteor.dm | 1 + code/game/gamemodes/monkey/monkey.dm | 1 + code/game/gamemodes/nuclear/nuclear.dm | 1 + code/game/gamemodes/overthrow/overthrow.dm | 1 + code/game/gamemodes/revolution/revolution.dm | 1 + code/game/gamemodes/traitor/double_agents.dm | 1 + code/game/gamemodes/traitor/traitor.dm | 1 + code/game/gamemodes/wizard/wizard.dm | 1 + 24 files changed, 60 insertions(+), 1 deletion(-) diff --git a/code/controllers/configuration/configuration.dm b/code/controllers/configuration/configuration.dm index 9d5110daf5..03d866dd8d 100644 --- a/code/controllers/configuration/configuration.dm +++ b/code/controllers/configuration/configuration.dm @@ -425,6 +425,7 @@ Example config: var/list/min_pop = Get(/datum/config_entry/keyed_list/min_pop) var/list/max_pop = Get(/datum/config_entry/keyed_list/max_pop) var/list/repeated_mode_adjust = Get(/datum/config_entry/number_list/repeated_mode_adjust) + var/desired_chaos_level = 9 - SSpersistence.get_recent_chaos() for(var/T in gamemode_cache) var/datum/game_mode/M = new T() if(!(M.config_tag in modes)) @@ -449,6 +450,10 @@ Example config: adjustment += repeated_mode_adjust[recent_round] recent_round = SSpersistence.saved_modes.Find(M.config_tag,recent_round+1,0) final_weight *= ((100-adjustment)/100) + if(Get(/datum/config_entry/flag/weigh_by_recent_chaos)) + var/chaos_level = M.get_chaos() + var/exponent = Get(/datum/config_entry/number/chaos_exponent) + final_weight /= (abs(chaos_level - desired_chaos_level) + 1) ** exponent runnable_modes[M] = final_weight return runnable_modes diff --git a/code/controllers/configuration/entries/game_options.dm b/code/controllers/configuration/entries/game_options.dm index 4034722417..76a5f5060c 100644 --- a/code/controllers/configuration/entries/game_options.dm +++ b/code/controllers/configuration/entries/game_options.dm @@ -7,6 +7,13 @@ /datum/config_entry/keyed_list/probability/ValidateListEntry(key_name) return key_name in config.modes +/datum/config_entry/keyed_list/chaos_level + key_mode = KEY_MODE_TEXT + value_mode = VALUE_MODE_NUM + +/datum/config_entry/keyed_list/chaos_level/ValidateListEntry(key_name) + return key_name in config.modes + /datum/config_entry/keyed_list/max_pop key_mode = KEY_MODE_TEXT value_mode = VALUE_MODE_NUM @@ -596,3 +603,8 @@ /// Dirtyness multiplier for making turfs dirty /datum/config_entry/number/turf_dirty_multiplier config_entry_value = 1 + +/datum/config_entry/flag/weigh_by_recent_chaos + +/datum/config_entry/number/chaos_exponent + config_entry_value = 1 diff --git a/code/controllers/subsystem/persistence/recent_votes_etc.dm b/code/controllers/subsystem/persistence/recent_votes_etc.dm index f1b902d6ab..3c36c7581e 100644 --- a/code/controllers/subsystem/persistence/recent_votes_etc.dm +++ b/code/controllers/subsystem/persistence/recent_votes_etc.dm @@ -3,6 +3,7 @@ */ /datum/controller/subsystem/persistence var/list/saved_modes = list(1,2,3) + var/list/saved_chaos = list(5,5,5) var/list/saved_dynamic_rules = list(list(),list(),list()) var/list/saved_storytellers = list("foo","bar","baz") var/list/average_dynamic_threat = 50 @@ -33,6 +34,14 @@ file_data["data"] = saved_modes fdel(json_file) WRITE_FILE(json_file, json_encode(file_data)) + saved_chaos[3] = saved_chaos[2] + saved_chaos[2] = saved_chaos[1] + saved_chaos[1] = SSticker.mode.get_chaos() + json_file = file("data/RecentChaos.json") + file_data = list() + file_data["data"] = saved_chaos + fdel(json_file) + WRITE_FILE(json_file, json_encode(file_data)) /datum/controller/subsystem/persistence/proc/CollectStoryteller(var/datum/game_mode/dynamic/mode) saved_storytellers.len = 3 @@ -105,3 +114,9 @@ if(!json) return saved_maps = json["maps"] + +/datum/controller/subsystem/persistence/proc/get_recent_chaos() + var/sum = 0 + for(var/n in saved_chaos) + sum += n + return sum/length(saved_chaos) diff --git a/code/game/gamemodes/bloodsucker/bloodsucker.dm b/code/game/gamemodes/bloodsucker/bloodsucker.dm index c54de16e2e..31eaaca166 100644 --- a/code/game/gamemodes/bloodsucker/bloodsucker.dm +++ b/code/game/gamemodes/bloodsucker/bloodsucker.dm @@ -24,6 +24,7 @@ traitor_name = "Bloodsucker" antag_flag = ROLE_BLOODSUCKER false_report_weight = 1 + chaos = 4 restricted_jobs = list("AI","Cyborg") protected_jobs = list("Chaplain", "Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster") required_players = 20 diff --git a/code/game/gamemodes/brother/traitor_bro.dm b/code/game/gamemodes/brother/traitor_bro.dm index 718ed2c103..eda6b5f9e2 100644 --- a/code/game/gamemodes/brother/traitor_bro.dm +++ b/code/game/gamemodes/brother/traitor_bro.dm @@ -6,6 +6,7 @@ name = "traitor+brothers" config_tag = "traitorbro" required_players = 25 + chaos = 5 restricted_jobs = list("AI", "Cyborg") protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster") diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index 8029685bf7..20ef83a54c 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -10,6 +10,7 @@ GLOBAL_VAR(changeling_team_objective_type) //If this is not null, we hand our th config_tag = "changeling" antag_flag = ROLE_CHANGELING false_report_weight = 10 + chaos = 5 restricted_jobs = list("AI", "Cyborg") protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster") //citadel change - adds HoP, CE, CMO, and RD to ling role blacklist required_players = 15 diff --git a/code/game/gamemodes/changeling/traitor_chan.dm b/code/game/gamemodes/changeling/traitor_chan.dm index b010b08bc3..88a1cde8ce 100644 --- a/code/game/gamemodes/changeling/traitor_chan.dm +++ b/code/game/gamemodes/changeling/traitor_chan.dm @@ -2,6 +2,7 @@ name = "traitor+changeling" config_tag = "traitorchan" false_report_weight = 10 + chaos = 6 traitors_possible = 3 //hard limit on traitors if scaling is turned off restricted_jobs = list("AI", "Cyborg") required_players = 25 diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 29455afe56..d8ebf6f20c 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -134,6 +134,7 @@ Credit where due: config_tag = "clockwork_cult" antag_flag = ROLE_SERVANT_OF_RATVAR false_report_weight = 10 + chaos = 8 required_players = 24 //Fixing this directly for now since apparently config machine for forcing modes broke. required_enemies = 3 recommended_enemies = 5 diff --git a/code/game/gamemodes/clown_ops/clown_ops.dm b/code/game/gamemodes/clown_ops/clown_ops.dm index 108c67ad27..659d2de105 100644 --- a/code/game/gamemodes/clown_ops/clown_ops.dm +++ b/code/game/gamemodes/clown_ops/clown_ops.dm @@ -1,7 +1,7 @@ /datum/game_mode/nuclear/clown_ops name = "clown ops" config_tag = "clownops" - + chaos = 8 announce_span = "danger" announce_text = "Clown empire forces are approaching the station in an attempt to HONK it!\n\ Operatives: Secure the nuclear authentication disk and use your bananium fission explosive to HONK the station.\n\ diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index 8ec4123201..ba9fad7a84 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -38,6 +38,7 @@ config_tag = "cult" antag_flag = ROLE_CULTIST false_report_weight = 10 + chaos = 8 restricted_jobs = list("AI", "Cyborg") protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster") required_players = 30 diff --git a/code/game/gamemodes/devil/devil agent/devil_agent.dm b/code/game/gamemodes/devil/devil agent/devil_agent.dm index 789cff5c8f..ccfd6f1dd5 100644 --- a/code/game/gamemodes/devil/devil agent/devil_agent.dm +++ b/code/game/gamemodes/devil/devil agent/devil_agent.dm @@ -1,6 +1,7 @@ /datum/game_mode/devil/devil_agents name = "Devil Agents" config_tag = "devil_agents" + chaos = 5 required_players = 25 required_enemies = 3 recommended_enemies = 8 diff --git a/code/game/gamemodes/devil/devil_game_mode.dm b/code/game/gamemodes/devil/devil_game_mode.dm index 0f2e8f7858..9bf7fc0e82 100644 --- a/code/game/gamemodes/devil/devil_game_mode.dm +++ b/code/game/gamemodes/devil/devil_game_mode.dm @@ -3,6 +3,7 @@ config_tag = "devil" antag_flag = ROLE_DEVIL false_report_weight = 1 + chaos = 3 protected_jobs = list("Lawyer", "Curator", "Chaplain", "Head of Security", "Captain", "AI") required_players = 0 required_enemies = 1 diff --git a/code/game/gamemodes/eldritch_cult/eldritch_cult.dm b/code/game/gamemodes/eldritch_cult/eldritch_cult.dm index a3e3c54dce..1693163fa2 100644 --- a/code/game/gamemodes/eldritch_cult/eldritch_cult.dm +++ b/code/game/gamemodes/eldritch_cult/eldritch_cult.dm @@ -3,6 +3,7 @@ config_tag = "heresy" antag_flag = ROLE_HERETIC false_report_weight = 5 + chaos = 5 restricted_jobs = list("AI", "Cyborg") protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster") //citadel change - adds HoP, CE, CMO, and RD to heretic role blacklist required_players = 15 diff --git a/code/game/gamemodes/extended/extended.dm b/code/game/gamemodes/extended/extended.dm index 976f3e3eca..a6abcbefbd 100644 --- a/code/game/gamemodes/extended/extended.dm +++ b/code/game/gamemodes/extended/extended.dm @@ -3,6 +3,7 @@ config_tag = "secret_extended" false_report_weight = 5 required_players = 0 + chaos = 0 announce_span = "notice" announce_text = "Just have fun and enjoy the game!" diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 8bef236c5e..10c0154412 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -17,6 +17,7 @@ var/config_tag = null var/votable = 1 var/probability = 0 + var/chaos = 5 // 0-9, used for weighting round-to-round var/false_report_weight = 0 //How often will this show up incorrectly in a centcom report? var/station_was_nuked = 0 //see nuclearbomb.dm and malfunction.dm var/nuke_off_station = 0 //Used for tracking where the nuke hit @@ -623,3 +624,10 @@ /// Mode specific info for ghost game_info /datum/game_mode/proc/ghost_info() return + +/datum/game_mode/proc/get_chaos() + var/chaos_levels = CONFIG_GET(keyed_list/chaos_level) + if(config_tag in chaos_levels) + return chaos_levels[config_tag] + else + return chaos diff --git a/code/game/gamemodes/gangs/gangs.dm b/code/game/gamemodes/gangs/gangs.dm index 0dc4a520ef..100669c487 100644 --- a/code/game/gamemodes/gangs/gangs.dm +++ b/code/game/gamemodes/gangs/gangs.dm @@ -6,6 +6,7 @@ GLOBAL_LIST_EMPTY(gangs) name = "gang war" config_tag = "gang" antag_flag = ROLE_GANG + chaos = 9 restricted_jobs = list("AI", "Cyborg") protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster") required_players = 15 diff --git a/code/game/gamemodes/meteor/meteor.dm b/code/game/gamemodes/meteor/meteor.dm index afeebb770b..78fe6d9324 100644 --- a/code/game/gamemodes/meteor/meteor.dm +++ b/code/game/gamemodes/meteor/meteor.dm @@ -2,6 +2,7 @@ name = "meteor" config_tag = "meteor" false_report_weight = 1 + chaos = 9 var/meteordelay = 2000 var/nometeors = 0 var/rampupdelta = 5 diff --git a/code/game/gamemodes/monkey/monkey.dm b/code/game/gamemodes/monkey/monkey.dm index 76460ffbb8..c91252258a 100644 --- a/code/game/gamemodes/monkey/monkey.dm +++ b/code/game/gamemodes/monkey/monkey.dm @@ -11,6 +11,7 @@ required_players = 20 required_enemies = 1 recommended_enemies = 1 + chaos = 9 restricted_jobs = list("Cyborg", "AI") diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index 48a298984c..dcf84e84db 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -2,6 +2,7 @@ name = "nuclear emergency" config_tag = "nuclear" false_report_weight = 10 + chaos = 9 required_players = 28 // 30 players - 3 players to be the nuke ops = 25 players remaining required_enemies = 2 recommended_enemies = 5 diff --git a/code/game/gamemodes/overthrow/overthrow.dm b/code/game/gamemodes/overthrow/overthrow.dm index dca0c1ade1..6a118567df 100644 --- a/code/game/gamemodes/overthrow/overthrow.dm +++ b/code/game/gamemodes/overthrow/overthrow.dm @@ -3,6 +3,7 @@ name = "overthrow" config_tag = "overthrow" antag_flag = ROLE_OVERTHROW + chaos = 5 restricted_jobs = list("AI", "Cyborg") protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster") required_players = 20 // the core idea is of a swift, bloodless coup, so it shouldn't be as chaotic as revs. diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index 9eed18d906..419a74d616 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -12,6 +12,7 @@ config_tag = "revolution" antag_flag = ROLE_REV false_report_weight = 10 + chaos = 8 restricted_jobs = list("AI", "Cyborg") protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director", "Quartermaster") required_players = 20 diff --git a/code/game/gamemodes/traitor/double_agents.dm b/code/game/gamemodes/traitor/double_agents.dm index fc669d4855..c64e508cef 100644 --- a/code/game/gamemodes/traitor/double_agents.dm +++ b/code/game/gamemodes/traitor/double_agents.dm @@ -10,6 +10,7 @@ required_enemies = 5 recommended_enemies = 8 reroll_friendly = 0 + chaos = 7 traitor_name = "Nanotrasen Internal Affairs Agent" antag_flag = ROLE_INTERNAL_AFFAIRS diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index 8b1b18660a..d42fe615cd 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -17,6 +17,7 @@ recommended_enemies = 4 reroll_friendly = 1 enemy_minimum_age = 0 + chaos = 2 announce_span = "danger" announce_text = "There are Syndicate agents on the station!\n\ diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index 23f065318e..d8cb851aad 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -12,6 +12,7 @@ recommended_enemies = 1 enemy_minimum_age = 7 round_ends_with_antag_death = 1 + chaos = 9 announce_span = "danger" announce_text = "There is a space wizard attacking the station!\n\ Wizard: Accomplish your objectives and cause mayhem on the station.\n\ From 27a128fe5379f44d6906d8dab8ddef9f50b0ec88 Mon Sep 17 00:00:00 2001 From: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Date: Tue, 9 Mar 2021 03:25:57 +1100 Subject: [PATCH 11/33] Allows the augment manipulator to paint limbs like roundstart prosthetics. --- code/game/machinery/aug_manipulator.dm | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/aug_manipulator.dm b/code/game/machinery/aug_manipulator.dm index 6fdeae61a1..e496973d75 100644 --- a/code/game/machinery/aug_manipulator.dm +++ b/code/game/machinery/aug_manipulator.dm @@ -8,7 +8,19 @@ max_integrity = 200 var/obj/item/bodypart/storedpart var/initial_icon_state - var/static/list/style_list_icons = list("standard" = 'icons/mob/augmentation/augments.dmi', "engineer" = 'icons/mob/augmentation/augments_engineer.dmi', "security" = 'icons/mob/augmentation/augments_security.dmi', "mining" = 'icons/mob/augmentation/augments_mining.dmi') + var/static/list/style_list_icons = list("standard" = 'icons/mob/augmentation/augments.dmi', + "engineer" = 'icons/mob/augmentation/augments_engineer.dmi', + "security" = 'icons/mob/augmentation/augments_security.dmi', + "mining" = 'icons/mob/augmentation/augments_mining.dmi', + "Talon" = 'icons/mob/augmentation/cosmetic_prosthetic/talon.dmi', + "Nanotrasen" = 'icons/mob/augmentation/cosmetic_prosthetic/nanotrasen.dmi', + "Hephaesthus" = 'icons/mob/augmentation/cosmetic_prosthetic/hephaestus.dmi', + "Bishop" = 'icons/mob/augmentation/cosmetic_prosthetic/bishop.dmi', + "Xion" = 'icons/mob/augmentation/cosmetic_prosthetic/xion.dmi', + "Grayson" = 'icons/mob/augmentation/cosmetic_prosthetic/grayson.dmi', + "Cybersolutions" = 'icons/mob/augmentation/cosmetic_prosthetic/cybersolutions.dmi', + "Ward" = 'icons/mob/augmentation/cosmetic_prosthetic/ward.dmi' + ) /obj/machinery/aug_manipulator/examine(mob/user) . = ..() From bdcd2904e6cfd13f149a479d244b4bf14568e1e7 Mon Sep 17 00:00:00 2001 From: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Date: Tue, 9 Mar 2021 03:56:51 +1100 Subject: [PATCH 12/33] Fixes going over the defined limit of roundstart prosthetics --- code/modules/client/preferences.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 9afc852f6b..16e1b45843 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -1626,7 +1626,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) for(var/modified_limb in modified_limbs) if(modified_limbs[modified_limb][1] == LOADOUT_LIMB_PROSTHETIC && modified_limb != limb_type) number_of_prosthetics += 1 - if(number_of_prosthetics > MAXIMUM_LOADOUT_PROSTHETICS) + if(number_of_prosthetics == MAXIMUM_LOADOUT_PROSTHETICS) to_chat(user, "You can only have up to two prosthetic limbs!") else //save the actual prosthetic data From b7a013b7ba077d96d1608442c92ece0b83aa573f Mon Sep 17 00:00:00 2001 From: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Date: Tue, 9 Mar 2021 04:25:57 +1100 Subject: [PATCH 13/33] Fixes a small spriting error in the right arm of the ward prosthetic --- .../augmentation/cosmetic_prosthetic/ward.dmi | Bin 1400 -> 1396 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/augmentation/cosmetic_prosthetic/ward.dmi b/icons/mob/augmentation/cosmetic_prosthetic/ward.dmi index b2622ef6a18caf213efb91559d551e7be815cba5..3fbd7a7bb63960fc6351906072a46d6bc9f89548 100644 GIT binary patch delta 1133 zcmV-z1d{vs3iJxF7Xg1rNkl+j8R|42CU4h=Xyq&HF#>3Y_e8S|s5()Xt8+ zi(XV%NSthbTz41@!!QiPFkS(4DES<9|5~jMn=3$9|GoFkF4p_k;&cAgTmgh?2HuDE zMvyr9pZ;A?dH`2cju7fD&aX+J7E1ux_ZV<&uK=M|7+w_rFk*lB?tcW7o#VKsa;!E- zV;@#~Pm88r;}`t8#>3ix#7on)Ej^9jmjf;Sf#%0lGHoWQ-U@tJdc?NiX(J{tu;JNo1+4D3=_d^~;ox^yZHfi&6*dcUR z?#1IYIPxUE2R=$CEfwwla3~`G5AFWV;LiYBN0v|y0Hx#V6YA$v8}Lmhg_!sRAjv+^ z`_wUmIrOBK=-GK}{p1bMp(U7tp`L#wEGGX$6q zodIoD3BG?1DE|4#8G!fT^AFAr*UWJ<0PiwF0x)0aBTs|i-5)0mA=*$<`yW=+Ap+fN zrDX_FdwJ0?48t%CV=J7l(W3wFEASVP6=oVlrJV)-QUxzyCtcUuTi{<}c*gW7v9G{i z;Pv|k{eNeHzrgE*4a)G|0)MH2Z$mwSody1kAklxPle(YVS>Rtn;FnQ-L%OTLzmPcn zzUcpI0(%Pl3q|Fx&BP{g-UNQ*-2tfoz5j!7WMz_od6wkutbfn*fiuYRyCl$O{eC`j z25`M*d7e)oTdB-%#7X+NX$C;>w90z+wNu(G6nGCQ1o@pvh#_=)6ruQ+GcG0r z+N~{iHiNvQcG89ilIyss))OcNeBcwvtGHu6UX-D$X&vvE!2O(;Phf#f0H!IQRI-ob z*_O+^BH9{hiBQ;6%l7;rlZ7RI70jwq&xe1R5}~{uNXm9WETGvpqxx?#Zz`}AZJk%` z#7(N;)^!98ae@d_WbIJwLI6=ou(Sa0e=C5I?$eR|k`W*+ArtUlI*Qc1F$!I9i>1iM zI9aH1bAW6U=kA}RF@O|3+=TdwId+pZ0CV({)C2k3P<#(yZhvWvLyo`W+a44f2=Qg9 zc0^^C7jsu(2?x*>C$Z$?Idk-S8vYg6bWKF1 z#9ts&wmK0myFJ@pUrsQ7E<;m5?gPl?DO@KRlYs2RJjr^@jRchVdVBm`Hw+s%5oq|~ zs&pL3aU92S9LIlg9LISXwmJnk3QRAa0bVyc#yAYT?tMnK9D{V<)j_m#7|XFqo43;r zp{H^$9;d;XC-F1zUOH)MX!oZ>5&6Gp_bàEdoLOB4G4y!NUI0sumG@TP-;S+!& z`@k5>jv16#^bD|+!h0yn0znDzSFgw9Tq;zw_$b326NrE1YAAJ;hmcywo*a++(<+2t-h=qdXjp}IOCZKe z5gPXc>VOLyC8A)Qt5Dy%Sq!c3()|2W423&^Xq>B%rjX;jJ}JrDRoL}ubUn0+iZ?@m z@zfd6W|e>7`+(vf&zu3o2(kX)>~OD~Hv@>FA|wFgeLV9tNHP2h!VsbjCAI%)MI9p1 zy;fR=5Ve;V9mjDT$8pxe=^7UO|5$;40$E|kASxX!@K06n0(Q}Ly`u&GIff;sj}pfU z{1d!>Z_xh_7WgN4ebAr`A1&}tHSleyCvdR9UlD&K`f}0#AoEy(e-43PM)eKpp#uL* z;q?1S|5p<@QsAGNRQ}dXG>P*r@H?*#K>P3gKS*a*CJ7ivN#3sd_c)$7gDSsE0)5r* z$1`UD_j{G+`2?z!%KT(Z-vUN>dk=w6AcXffICBq-0}LUscbXCc6*zGM-9X55pqAjT zhx~sKUkQYqMLVinW>CKHK_gr`=uAnP0gxiCvXOo5lr{?!yoZvK{7xj~ly-X*q4?)B zE+zxot<82egSw**(uN00*l|;>ComO=iBF)e;(_^iQH8Fib$q`Bp69%L0yAs^Fbwsi zl6@SnwpwP3Xj_yyLSauW+v|f&6_)r_u&RGbdp^ue5z5%3|w9#RF5T}M!t2gopF)((?h2p}s7PA$OuUkhNS`*dc%Qv^s$$N>Czj50NE&O#SF z@>FDHoGjG1H9)qBYxfV*7(j|19zuMRIqxQG0M_USsR!z}q4*xa+WyiQhZ_HmZ+mG_ zY#_v^+7XpmKACqFmar4OQ}AN@)u&N;5^GPRj^j9v<2a7vIIqg_`u-|h-*CPD|00000NkvXXu0mjf DT4f~K From 6947ada9aba7cb648fb7f4dc014d803ff8c1b374 Mon Sep 17 00:00:00 2001 From: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Date: Tue, 9 Mar 2021 04:41:55 +1100 Subject: [PATCH 14/33] yo man they forgot to install your WHOLE ASS --- .../cosmetic_prosthetic/cybersolutions.dmi | Bin 1390 -> 1464 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/augmentation/cosmetic_prosthetic/cybersolutions.dmi b/icons/mob/augmentation/cosmetic_prosthetic/cybersolutions.dmi index eeed0d0c0107044d551c1ccbb75835c00773fd96..d0a9559c56cbf8c2839db810823cbabc25a39827 100644 GIT binary patch delta 1181 zcmV;O1Y-N{3b+ffECGLaNklfshO6BLol~AUH%W-Xo=_pL_<7$o~0U z0ci*ymGy-$2$TTuOJL$XL>E*4Pd#4rdGs;zC1Uht3|C*)w+VlMTYRB!U<6W}1om8f zL;a=lfU zQWye#1%8UdJfIf$7#jqJKphOc0=U4(`?)@w;1ca?2{5(@Byofw0Q;V9gM1t)&fO(v zh4X;>1qM>s2?auVpOXYA9hTxvmmnzs=^85v#rQl0VgY|~h8hS`e;VS_6?{psOds8< zmi_rg(bq7*Fbu;m48t(~c815MXCIH6>kh1g+4SV4!uXHaDiA%^%?pf828s$)%@Hqn zukV!9Uko-`P&zJD@(=B)NyktZIQYmKLpK1Sl7AR(=wR`ws=pnW$-fbNpTEuAdd*OM zF?HkY9?*Zk6?jYgE=FHH?K%RnD)5Hf7^_pMt&#St{C)m5fABRybu=nTZV>n`QJejy zjMkEToIvg^W34q(OSD>U!!QiPFbu;m3`6AEpTE%G^aT6ih?_j00UteU5kCbUZ}37t zg=e4Q^<2Uw8l>1WbWju+*RlE+Aq$M0z{XAR(y)IuUOb;-tnRIR3-tU3He~iNuLJi%#|gwZ=7uTWL1Z=1703sdLT@o~Y*-{D zko|v`JZDPss2(EbmNzQQyUY&D7uFSK7=~dOhG7_nu^tW2J*>acV0@_QwE+zV9rT=i zkW_zAO|K8g+5kYdQAu?NRsT<|-w#>wzW_SU!RsYw?OI>)|J3@J2jz35p<^9VfI&VC zM)&{J`dKw^09bblT+-Yv&Hq#D>;4z)_*H-GlHzWu>6Z`Kj9KWQaKyn{0<$JC?Y6AI z9+fFp{XeySj+#jfd1TzP96>WMRsT<^-(t_f7}pt@9%G6o~F||{$N{_PtytG4_To1 zXI|jh`y~SD68rgUlBRI_iDG8#xeNwl+xP#Nvje@o)RIgI zE!*jLZU3lT>4_YZ^5FAoWf+EG{7bCY>s#VbkPGM|1P~n{I7BW!U`bzo@)wvlmviJfr$@5j^gmC9k2R4dLq6Ak*{O8`m(-N0Nj7zbNL2FV2Kxj0~cSF z{+9BB!lJLpE2COLAGEm-4jmDdpNzm7uL7C)ED&RiyucDfMqt9=G=b#?+|UO24qm2s z<9X`BQ)Dq9e5h zCQqy}bOjI^`BS>0gVm>M{x&g_exSEYua}<`r2ui5r|EJ zSL8-&PNlX+`tS1B`Fs7rmjunxs3f^U;HyN}*>9XcCCU2<}u9g_@@1~!N}3(=d2 zu+~2hTqofwFr|BT5L`zG$0%)t&e`V$75xRkRu_L5C4sptl6wktdDI8t2MXM5`33sI zh{B6e5t#2M5NXUEQ@jOYHIzG$58g_7#L(EWNQyxAU-Fzwl6&D-G|Ecw}YTf{_?i9GFxm%k5r`Ff~ zFWB;{*hR(NQq$i)U^Ql;gQ(nt3kb}bz_{J80tZy4SoQzZ`k6G781l%tXPH1VFjfCg zso!JI!AR^rb=Ybhlnbc!d+a%!eZXd*I)8tfK(TQJU$>3g!<=2AjYcze(xC)cd*)ff!xt^FY$VO-G^^#F$}{n48t%C!}x#r Y34328qWj#Dr2qf`07*qoM6N<$f+idw6aWAK From 3fa43b7f6148d57d165a439346e15cc1bb8619f8 Mon Sep 17 00:00:00 2001 From: Letter N <24603524+LetterN@users.noreply.github.com> Date: Tue, 9 Mar 2021 10:09:02 +0800 Subject: [PATCH 15/33] oops forgot this reg --- code/modules/mob/inventory.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index 0baa78f0ea..3eaefebc56 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -334,7 +334,9 @@ I.moveToNullspace() else I.forceMove(newloc) - I.dropped(src, silent) + on_item_dropped(I) + if(I.dropped(src) == ITEM_RELOCATED_BY_DROPPED) + return FALSE return TRUE //This is a SAFE proc. Use this instead of equip_to_slot()! From 6496b418d435ad0fc52f92bfe495ca88c6237c94 Mon Sep 17 00:00:00 2001 From: Suicidalpickles <32374784+Suicidalpickles@users.noreply.github.com> Date: Mon, 8 Mar 2021 18:31:34 -0800 Subject: [PATCH 16/33] Update paramedic.dm --- code/modules/jobs/job_types/paramedic.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/jobs/job_types/paramedic.dm b/code/modules/jobs/job_types/paramedic.dm index c8188cae8a..331bad9bfe 100644 --- a/code/modules/jobs/job_types/paramedic.dm +++ b/code/modules/jobs/job_types/paramedic.dm @@ -4,7 +4,7 @@ department_head = list("Chief Medical Officer") department_flag = MEDSCI faction = "Station" - total_positions = 3 + total_positions = 2 spawn_positions = 2 supervisors = "the chief medical officer" selection_color = "#74b5e0" From 3ccc6af460e075c05c435e0ea8828adb396b9262 Mon Sep 17 00:00:00 2001 From: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Date: Wed, 10 Mar 2021 00:23:35 +1100 Subject: [PATCH 17/33] absolutely fixes all the augments because wow these actually were broke as hell --- icons/mob/augmentation/augments.dmi | Bin 2234 -> 2234 bytes icons/mob/augmentation/augments_mining.dmi | Bin 1935 -> 1936 bytes icons/mob/augmentation/augments_security.dmi | Bin 1863 -> 1863 bytes .../cosmetic_prosthetic/bishop.dmi | Bin 3523 -> 4988 bytes .../cosmetic_prosthetic/cybersolutions.dmi | Bin 1464 -> 2051 bytes .../cosmetic_prosthetic/grayson.dmi | Bin 1168 -> 1812 bytes .../cosmetic_prosthetic/hephaestus.dmi | Bin 3296 -> 4774 bytes .../cosmetic_prosthetic/nanotrasen.dmi | Bin 2606 -> 4109 bytes .../cosmetic_prosthetic/talon.dmi | Bin 2839 -> 4337 bytes .../augmentation/cosmetic_prosthetic/ward.dmi | Bin 1396 -> 1973 bytes .../augmentation/cosmetic_prosthetic/xion.dmi | Bin 2957 -> 4425 bytes 11 files changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/augmentation/augments.dmi b/icons/mob/augmentation/augments.dmi index e311b6605d561337fc4f9e138d1f966cbcc7efb0..0e09afd4825cfa3abba30a2668b9f93a13eabc62 100644 GIT binary patch delta 136 zcmV;30C)eo5xNnO#XYto`S`7-nfa~*!6g#-IT qWMm#(#!<02&H#&T4vurcC-35t)$JpGB!4J#Kwzpjgf_Ek0Z<2+07OLq delta 136 zcmV;30C)eo5xNnO#XUAI`S`7-nfa~*!6g#ALe8^h7%Q6?q0&T;=S q8JP!{aa1ghGr(fV!Ep}w(7tVglW7b@arFvwyC<^A4RG1 zXCdD}!S$WGs>|Uh#mCu*Lvub!f#4d9a}%P8Fq8>`vARyAu#UobN{X6H3uB!vSi8x* zHngpXrMyPdStipJpkrv_h0?B2uRS!3OpbaXgvi+R?6xni>Z#F-g=Zlv)bF7`1Fccw g(`hgs9UtXCnW}r4Pe0-d(s<;CXkbbjvsVE)2LC--y8r+H delta 177 zcmV;i08amq504L!kpaDtk|uu?@i1SZ)HRwyRY=SB`t#!^OtV`8zy2Xjo2o}qR<+8X zm3#vQHxBBqZl|*pA7>*@&GjM$g6lA@O^7DKR3-?<>Nb(WItueCDOxf;%yqV5{UP(( z(6J(x@*2%xnM^l;j-iPcN`HlV?V)32a?}eUM8-|8?s##{NS)rSCEFmO#HX9F_fy$) f8H`8gNBK*ps;KkjM|=U%cI1X1XiQhLSOGW&PWe^f diff --git a/icons/mob/augmentation/augments_security.dmi b/icons/mob/augmentation/augments_security.dmi index e954c6e22a0b862c67a0650b962ee228c6d375f7..a8fd8e9a5afee3be70b85ff22257e13b8ed1ae95 100644 GIT binary patch delta 61 zcmV-D0K)&r4#y6Vz5!{GzgjG&S9g4I%}AZzEIiwxo=-Oe?WeNoG8m7}kMfsHRZ-{5 TkN5)9dgO+~H$Z8#MF9c^rJ)_G delta 61 zcmV-D0K)&r4#y6Vz5z{r_#HX9F_fy$)8H`8gNBK*ps;Kkj TM|=U%cI1X1XiQhLMF9c^=Hedd diff --git a/icons/mob/augmentation/cosmetic_prosthetic/bishop.dmi b/icons/mob/augmentation/cosmetic_prosthetic/bishop.dmi index 8641ef2d3cc8ffc4393b5e3e4c479262c431832d..722edadf1bf4587f84901233d11bb039f4f37c54 100644 GIT binary patch literal 4988 zcmc&&XH-+$w%&9EDWW0*(nLW~KqWMVAVu*gp-2-X5l}iorG*lTz!fPfAff>YptR78 zh|~}S1XKhxbW9>dYN%2ZNb)xK{yJmaH{QSVGBWnsYp%WaoNLZ+esit;$O?8@L`Yf) z005CI=B73Pzy;m{zXbWg>-@z!E3jz_w{;9My%Xqu-}`QmcK{LqP&ujJ@j`K$;vFk` zVM!*NHqJw*%ua|hg%lyhDkZU3y%5AWlZz!3)G`eknbr0>O8bbd|7&X3Js~wIRSky< z!wgGa{zaV%!Q!+ZA??2<9>k_p(2kM5Sjv7hDjjG+eiYqbXbdL zsD3aJydu8;jPdk>g8OvYdi zdc|4o#HV)Wguyd|_S&Uy=iTbF^$t<2l{**kE-_*sam<#AH;))#4yXE$wX^_< z<}lxKII!==LoOrbGyFhWyA)t5;SPvjN%?OAd^wMTtSH?>{f$*O+*4O}FuCxMy=Ixt zJmb$FvU;@;U_lD9vkOFI^4Z!Y6nPiyM5+~VvyZS+qH?z{E@y{IV zD31|Ii%?p+$KBnXQDv2f$Dh%HKwfSD7RnMYa&ok2MOTgUw-J70Si9pYDrx4*_u0|D z)r=xGJIeI6bsc#zM>uhCXh`5;o9pO;3?Z-Z<#&$TD7!p8fSN_->C>_ZKq5Q(`m89z z)vbMf;+X7gixJ_wjpRgArG(~@bej_PA^L`Ag1K_KgOR!nU=SE_*Xx_T?kiXw8R<+Z z+uyYiGL{2V5v>?W%B?rxBP^^%_5BbU;kf-CaMsA@C63*CBoGnY>d}%dbKVo zEb)q`EKg!}MnG?tNX%5H291R2y@zaDh#b1}C{PBu+x@@+w|2O3bZsmY04R)&rgmm-QkHz{7XiI?|8ZtPmH{RyZ?vcADVeZyB<=vEekB;r8O9;x?ju3_BBk ziMU!y@B?!60{M>~J!*bDgHhGT{rR>8*qK>c(wW>y#;YhDW!MQaUcFI zbkDB?UYMfuvZCbjPv!A#<9!f|b7+4Lymv*0P-xZe6ZXg#O4~%~ z4@4UbXY?k=Bsv;e@Lg3YEs;W@AioxSDKa7r$+JPN<97v1hd|LPBa)egh(?uTuMPC~^O{-55B_Wn z)xcmdnp#@%=E_R%wV&!G6CyT+s<5!z@(0Xr92`TGc0-GSI>)dB?g4P4%a;XmV4f5+ z;m@-{6Qec0!}Wp1eVEN9>Sb`GgVGd}oOwB6K>JPa1e>+}{9D^>kkCR~&#UwI7Dgdg zYr#cD_e=u?4vIS?8`kNcl|4K>;s6X6G)wBybs*VpUOCAkC_+Pb^lu-(}^G4ezVOjO9y0}n4Rua;C9oqta@@%2^9Wo-c)Pp}7_WV&(^2DlX7 ziRmDJ8kv~H%?8UA+D>7w10bj5TnLjma^y(ZA+5GdHHY|s0}Yk0U%%#2vCMscJ5&oT z*??R~KC86d*Vh-L=1}b#)RYH`00&}7vs!2u`~I6gB4w^}1>tz7#VY)Bo0rk{ zTzTFY_RqjxS86j_RZY!ADXpvKajC>3UUu{S}RSz9?f3)|TxR4KC90^D5j#)|EjK1NYf_^4wCNcw&uw zxLjOZ#Ezxk_(7KmD4-XMA=acNsnK?J*5Gsy=0gIy95-w1 zdZ2Z3x<@gDAO=II1|!rOWw&iH56ig+?#OHAnCG&CzxfPAj^m-;yeb8xvIuKj<|BjUO4g zL6VO##9AVVQ3jRsEH&B280S|Lay$HG+X2BW8w|9Hx7&n?%*Bt@NAHyPRkzFri`X~G z9)ArE?bfR%iKqV`Ma$7zz$hS~iaoPbVDpJlbrT+aL>JuZfcuVhJZZN5@sacKEbqCy zy5$dz^ZPq%YHC{NIMe2180Zd~MEn8u9KcS(IOhg{U*3elAET-WDhLcmDE$syu%#Z)D6 z!8iQkg1p@)8RG7*b>?umBs^LG-&k!akDA?ceepbqto|u1NzRD%%U*^M55gJ z=V>S$ZlVuUk?6A2HbZ+2s=ci4+tm8 z-2kW^^Y@L~Ig1S5$d9_K25x4*PCmflz=b9`ze0O~BR`R~CmIpR+A({3`+wnZxMM^( z$QAG2oh8i`CwI~SIm$xB293ufE2`vQcz$;akMSLO)k4N}kl-ypUOXKw$jgnID=h|H zF5ZY-Tqe=8GBZDd?)=n#Inf1SZrn&#zr6((9;Fb1M&=HP4F2W8b5zU?{WxnimXxiX zU3=xGD`)ElY3@F|P>0i0$%CT53>d#(zx+*y+A?{64`G$x{ir$g@Ud3s-pK5G^M$HH zAkw&F0mDecjTa;9P_S`S5I4FY_pm_qu@moO!18AzwPMMlcfXf%*qEC}+cmn^EpfMi58zvPcl7IWQkhxzs} zdwJ7><3x-?pJb#$PQkMegA9_*Nvh-xns@rl=|P~;2C!H93843{7sK+Ko8ji+@&}rMv9HbDSKW zTR}kwK$ikG4)FS$>M4&OPu0ZSTwhyLklM?QdONm%FaLKE$vu2Q4Evrnjcij%EDm;E~c2 zEWg%VAY1GJeP>k^P&yf9#uC1m=ym6RJ=a|uwtT#=;!?XVehW>rNcczL?fqTHZx{edel{J>j$&K|jOMYN_N{ha z;8u9JG?`3pjW%;^MjcbIe*VFLr3JLmR&GVQaksU#Ny*7|fX_+G$ee3_nADaOE!jfz zCb8JCuM*LaejUmoyy*A!AE`f^Mcl;zz{kf20Ki#?sYi{&<$)D~>Or+po@LbN8kM!! zV$vplr>39UOn`Zj7slwfKC!fO$*d^o1vyI}G4QatZ@L%TyCqkRy5Qf?Nh*@RutgoN zp1ylYqkL2}=>~=C*UJ0ZvDzV5pOa2q>%aYcP9}kGiHAz1gp)}3lrx}7r&4eK>9nPq zQ37ZqWZKFbHY9|V8vX6(zb!C`5Owd(ZF`ZkBL`)_Fkf%QS)B?|)90-V3w&!u?;7js znr`)#?%g4gR&2#g7alNKue9Bdg4T-4Xsfo0#x*oH`ky|1x`Dcc_(NBM0q}-3Vo6Df z;~(G6MRFSkGU@SLLoZAqrl35olXg)ltz~+J%a8M#nq;B1){;(}LV=F4YfjX)Lc?Yxg=^&ae3feDh=_3ur@NB!>FckS9Wg*5ZTQ>i+X zt#e39T9}>n-eN`d_xI-&74d_C z>wJ$_b9;{+>_~i6Y(-n8$bIXiM}r$ z&UO)QZrtGE(*7Czc^4ty-x8X-I^9d75F!9cxyS-_;Otbh?$%aIub2j3Pa1x_qDTbx z82cfq7ijL;JA ziIkv}h_qjXpfqW3eSf_3&O5K2vpaWZ@6O!W``!E9nRruU{fjhQG$0V@BFsR?9FRqS zZfYu^O&s-*1VmD}rEQRo+XF^{V>Zo#XW!U2`Gr z2wLIi2$Lc!r3>Ll^z``&oX%lk4vt5;d`na&{-5)lOl*UmT*)>`(1qW>`Sg-;!!ze^ zOfE znda6w(+RF5L$~G0lE-A2h@hmhrN9%X9Ff1$tYgdAgcf!5((NYs=N`YZkF7>nTPo=A zb4&QEMHm#yn%^PZD9AP`MQSh_ON=55JNKt^6>s>T*4_&YWTMmVr{6gLJd2x+Uz>(D zO(2$XD6N;m)!;5zwyX}sX>N*V9ZSs> z4!Y)t9Zq?K@%V!eFpK?~8c2hB_-5BSN8JI)*3nT;_+~pGbjVTiMoeHAIP+|wV7VU8Z9Wg-FB49BFQB4Z**ai1ceB(_08HYYw#keWg(;wMh$=T z(YQK3f9=)iOA1$xYfJB`{{hkeK=A)izgRg2zk)AlA{z5F_$dKk)zs87!=iKRekT^tKMMO)ggz-BfY%Yebw;Y`i4lIskf zq3=F^GS3j45L2Ui3B&@vGr3gY8x9Wx&c(arq!a z>Z@|$6EJDuHCKEUQ@>07`dlw5q>3Eoxc`3Rki*(O*RmkkV{+%>u^#<9x&>s^2#@=(T?3^;p-0YN3c$Lvl<#2Vw&B+ z%5jrFZOGqiBIy_yEXvLG`5C*1hm(r$*`eusH+Nlvf>_cGVwADUKNh-DHTmJ54s1o* zrYyRWEHrUCf^q#WpVmK(FD#@Q2t`ASiz1*>&Y1fkz}KS2d7947d~*asuHUlH3-cb) zLS(deQ-XIBjjq|J8mBaOuyRbq{tvVA?Q$f!pB>Y(g3aJC52O2!Is1Pg{;wGyM0=ep zS)s;C+Re|e#i1!YolDouvW0Nl9@XIETLDSZE8Uow$N+-1G9)Od0$8<$g+()~ySMi( zD;8bS+M1~i0LhCN!dP=8fjl^wxD9C(o+*U8A8kfTg}J(xNpdAurt+#m>uswKdwDb> z=M`$(h=Zvu;t3@*wW{goVx7N+oREJ(NerGLN8G&U3Y3FsicP7rji_RwJ!^h+rMn+g zf;XO#$W1eL5LiY|FW*@8o}!Ru?Q~*Ole~`Lr9U{TK%}^gyT$Bl-vRGryHsnZeSCOQ zc-0b~Fz{vkK9@6liizmPVp$C`blQ{>w?8=8*%cd7)HTrq0N<|n#n_SjXSm(n+$eE4 zoS6P^)Y-_;p6vMh^~0*}nko)np8f`pQQzb*arwc|v$M7M8Tp-+alk6(&sA0?0H}_S zn`PjlK3_Aj@~WkqwR@t;k3QPpa^Us2G3<@PQ6Nc8(;)OG39~-7R?|y~{d7mfd#p7Y za1`q7JGX5TVElmbU4iI4kZ$U~*RB{!UqqfBu5MJ-b|$#*;0Y-jU#&g$P?`;M3w59t z;sp8KPkRHa^Hiv8vKJ42E%oHMEOj=ob$^(V7d96bs-(m?I~C3opqJ^ z39eZ|^G08m(1pk@zBdwtg2#J5%gx1I8|eyT0FekLFgge1e^B$7? zMy1ml8L~QdaOh@-S=f3a1j8(=+(M6gT28UuIm&RG-Ju#An0B!_*3;o#58_%1m}!2y z6u_|_)FuTfRl0=^rFZOW>J$KMfGUn2*7y(Y%!(zGDMR|%pW#>9F1NL}gS&U6qYfy% z5fl|X(aDQ%W#C&`qn}Rv^ZVaNY~i-{ujGy_|A^ldyDcj7FtT<9!G8}Kl~3*$IH*cN z!Ot8#$fGYty|-RWdePC-+vjMj^4c^la}#dFOaw7)S^05sL6j>Y=g|NQ5pGSwfFCV0 z7YAAbSC>p@*eoXs2+$fwDPqTm+s|G;efwE4re00kpnTHS$*EcObZ19)VqI=vk8a6+ zVXqIOR0nb0kdBJOodR*uTtMkVq_IUO5d-E0o_k6DQ{nt~Nod3hzYzhE9f=nJE97eM z5gq9+n1=P-HZtPRHd-Dp)dzVNB*XKPm!4z*+zMQJ`ubo{w$VUi+4C$24$_PC|erJ>rXm!4=Aw2KA^g|*{j zZP%%N1b8%dF{E9Rln%_918ghoGR>s2?(g>n185Araf}%KZ~)pqSt83XC5z$%NAd_C zzbd60RP>5l*?#|eGvJajGhb0D3 zHys;>0FU2-jP%+KzGz`GWrwr6MY~jf?D3bUIX4ft?$^*9Li)0d`><}D4<31ps}xw0 z0=?yF@2J7|Ek&uQs1^fTH^Mcu@Uc-*;2@J=d#osWwKuWfB~9qnkNpfG0k%ZDA1u;+ z`#qtBQ=Da}W1<#7K=%l;7arL75s7>ZpI5d4Rq^J8-LJ^QVKd^gB;^l>+@ zzl(}$qm%qbf;gXI3`E>eSH@ua6@4QUxx!H#k-WG*SuPLu&Pqi6{w1!;%dqp%XPGvE z!Rc*pq7(IO?t%AZvCaqF=%z&2*-<`0ELmgUZSUv=o z41VQ}F0y>JwnQ$!dKWpT>!bdN7>_O9WUOyQm;ylO7=O;jsDQPn!5WW<7m(_Fk%uen z2S{~?L}^CBPX%~wYuec*%8I}&R%LCaH##O`xC5t)n%yPi%QtSyKGg58mE5s7Q z*Tw{ZalcRv31cXe(z9GEpm$k0h&rLfRvBasR9v>i=Y@rX$H%J2ktotazsvZ}0cgWo zj0thwF0(#j-%rkouQ58b>&qG8$Cq{=wZfrd8O8Ft8Wn*bybTj$`k|qU0|NtTBknQ^ z3f3*Y&#*~nB#mIvd&zh=`GS0hC?OciR>aT{kus9v2TrKx+g_HiOrj)dR(~qJBRTon zDq8B~*Yp`!n(FvykA&-dbYu`-;H%(}SUUpyw#E`fYntg6gS$IS&!^|596!5+14vm~ z3TB%mfd?4pHTRK(v^0Uuxu{97-XR8x++10fqvMHg5^S_U3O2uGg}i%v4emi-(!$w-`JvUH-`)2_`-tQ@`zB}% zz|rKe`JEZXkIzE9xShZ8@6-{Us^f~2t4^5a0gt-{)4RJI)DHtCBPA)RF~0Eo%c*zd z>D-IwW;Cw2cMu}=+;OHFneRs_yS|yyj*T;$bFSk4!|~w^9OHMrH!AlM4mg#8V7kUS Juc7ehzX96;o^b#G diff --git a/icons/mob/augmentation/cosmetic_prosthetic/cybersolutions.dmi b/icons/mob/augmentation/cosmetic_prosthetic/cybersolutions.dmi index d0a9559c56cbf8c2839db810823cbabc25a39827..2545387155079ddbf32afff89f173ae34fd43fd2 100644 GIT binary patch literal 2051 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 Q9Dg|LVC#%|Y~z#kH!=31`Tzg` delta 1453 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 delta 1148 zcmV-?1cUpO4v+~YiBL{Q4GJ0x0000DNk~Le0001>0001>1Oos70D0kh9smFUDv>26 ze<2|u7Z(@6z`#2C)(!vw00DGTPE!Ct=GbNc004!0R9JLGWpiV4X>fFDZ*Bkpc$`yK zaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainGjE%TBGg33tGfE(w;*!LYR3K9+ zCqA(#SBZ-=C9|j)q=}0&ttc@!6~s0~e^!-~nodwv5m9Cp5oK0JYGMjOMadbd#U;2@ zDJ!`8xq!n20Q1C81f23-j{pDzgGod|RA_o$ z)~y`X~W-wxNg*;kVx?)-je$iZ5y zZKrB`KPr6bEh9fFeCew#{5W&t(-v*v z$6;7$)E11nGu@c^al@DXhDLte@TIrR{D_HBKYUxEwB@4YO8X1lIuiGae|b)NM&cf5 zx9V6_k+fqh?rG~$I?_<1yOFpT{2YQ-32M0a!^dyZWONNCxM#?)X>YNhlZoJ-AtNd( z>L1ijU_W^EBCO%Vw|Q8@y*jjEAJ%US+HKLJ(1s1+s*26>Uyrm^RiOogp1-zji0x|I-8-ne<6k$LxxZmH){N| z&2q01N+HQqEAa?3$K2b$yu=+G=K~YyDm8*6XrkN6`US`I2d;{pE`YmayKZRrb8e4{ z`Y#l^luDksztr#&bfF82V(!lIlD-~|H5|?T)X*0}T?&2fQ@7W{Ifk_>TzAtUz9dOc+;c81voyWFvSmI=tW#|W!k{??Q zE5<5ItX(7!j^{2XwHl3OiKiNrnf)AUw+S7QZir%k(IX80AzD;aNc{r$0jE>%cpeS_ O0000r* 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 diff --git a/icons/mob/augmentation/cosmetic_prosthetic/nanotrasen.dmi b/icons/mob/augmentation/cosmetic_prosthetic/nanotrasen.dmi index 18c7738ba390387d611ab5d4542a51f6e18b0f56..dc344e7b87ee378c2a0c74d2f605072dfdb4bd24 100644 GIT binary patch literal 4109 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 D+C#8p literal 2606 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 U+Tut<8 diff --git a/icons/mob/augmentation/cosmetic_prosthetic/ward.dmi b/icons/mob/augmentation/cosmetic_prosthetic/ward.dmi index 3fbd7a7bb63960fc6351906072a46d6bc9f89548..4651c57d74f65f9e472fe69ea01266cd1169d8cf 100644 GIT binary patch delta 1947 zcmZXVdpy&N8^<@3YB*=9Q--L7MlNg3LTqD_>Woae6biX!GxtN=cPeMcEnQqD!%3~_ z;?htH*$N#;G|MSS9bw3)VyAxeB zp*m0y2&CzHnBV~df!8cZvH`NDBc+D}*ILXqBP8%aEY{c8@9XOm3WXsdA!~YqM6$KD zjfjZga5zjR)65JV62kEDp(ZEiQz%&^QWye(C@d@_kw^>%gU92=#Ka_N!P5R_97~!ntOCLuk5D5&MVY*Jc_n6aGmoEcos6FN_%1$%6zf2h3QrZ} z8yn}HF;&lnGB2WLkx~~n+!HcU|LtDM9d}!Fgrj!)t&h*OUhIK#HtyW?;&4Z5Pfyp- zN}vA^fxBAF$ygb@tG(a%0iZeDI}>3vaxd5x$U3xmc=b<@{eJdh;kL=mVhi!{g&QD{ z8p4%;_e^5X7H4~m*uv7xt9D%k98*xp=h3bzv)=`QUe=>eA;W&_OyY;xRV3TqJdu8d zR|4yP*`75FYsF6(g&(44*RDLR$;$*KzQ$!YaH4dZ;*TrSZ!x~d z@dWwpPSNeTexCs5DdENr;ecS>!c@SPc=K`t!?LSg*E~ubb^meef0n;1#_gp0OB`d{A+mK%)A{SS$T-b~rbni@@n1ZfkjkG?UBSVUubAwIUE17mD*fww z49zlI(vdGnSKAva{r%<507ExRC-G-YCxb!;9;$X^H>qYlm^Iq*A#}MYMEI$C0|K2O zwU781$|%3~mQn_;u{XS%9H8ckj%7i@NvP}S{QTQ{Q9LJD2iEL`i^ovH7z;(4L{8y@G=mu z+zW86{v8>>I8c~v+)~JA>^|#opKm$6^)HIf8jxt#_wSdP{W7~(lH4V`|d$3SuJ z{MBV%Dqr0)sPwc`I}wjQaJTERc6N|zIy=+tEQs;ISXJ5O6#DVAly3^tNPW7vc$7eM zvl+av0#rsl^U_n5jhx)XvcvxI%vkvKR3}~|QsubdgkDFn_!rp)#V%=pbMSh-oPt+s zfw_O24x?MUznQmeWkh;a@G|�nJht3`v~)LLoLn*w}q&05N6RuXyC#4jkdEOP8gR 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 From a7cb3297761e0bd634d6158e04ff5babf6ac5d21 Mon Sep 17 00:00:00 2001 From: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Date: Wed, 10 Mar 2021 00:26:45 +1100 Subject: [PATCH 18/33] forgot these --- .../cosmetic_prosthetic/bishop.dmi | Bin 4988 -> 4989 bytes .../cosmetic_prosthetic/nanotrasen.dmi | Bin 4109 -> 4109 bytes .../cosmetic_prosthetic/talon.dmi | Bin 4337 -> 4337 bytes .../augmentation/cosmetic_prosthetic/xion.dmi | Bin 4425 -> 4425 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/augmentation/cosmetic_prosthetic/bishop.dmi b/icons/mob/augmentation/cosmetic_prosthetic/bishop.dmi index 722edadf1bf4587f84901233d11bb039f4f37c54..056fea5d4e54f888f5a1ea086d34702b66163e74 100644 GIT binary patch delta 71 zcmV-N0J#7BCjBOmBmupVB|QP$kz-XdU+W2D667{_-g^Ze?QYiMfX;Hdo8-7ErafUy dGD_(DKbb?_RZz8!{sQF_-!5^rLddb{lM=QABMATi delta 70 zcmV-M0J;DDCj2IlBmumUB|QOrkz-XctM!C2338h|@4W(#cK5L2fU=zK#y+l!X-^oF cj1oHkPv%f}6;y4bzvBLU+5{ZI-3 delta 172 zcmV;d08{^sAdMi9N`J*t9P|}J+MFh!1};bY`W+k!LiNUjAOGRL5^ncL+e6c}`i+!h zTEIYkI&1Zbo&y-TUbG4r$H426*)f8Ff~=#t(8@>3V4&7&AU9(M1JzGWB1Ja1#S3C0 zMs~tc5R)jfLrN@&iC94A?I2^vU*kkM3397D?mZKYb~9_WLm?+Q-AuAy71LM1%rY9# a`G2y6d*49QwfYM*h~I9@()UfV>LU+&(^4`3 diff --git a/icons/mob/augmentation/cosmetic_prosthetic/talon.dmi b/icons/mob/augmentation/cosmetic_prosthetic/talon.dmi index 961eb42a6977ddbfbe16e78382b074142052d039..e659e761ce86d06598f84670d768d37b174b29e9 100644 GIT binary patch delta 188 zcmV;t07L)rA@L!QJb%L=5XSLYpW;aN(zID!NI!310ww{cW3WH-l%u~;y3jD=BSF)>2x7_$*t$5`zV(_(fX q)*R5lr@N_-t86+E=E9?d*8P$-^kWCzpyeA#VBaq5fRKr?>;(`h1z9Bk delta 188 zcmV;t07L)rA@L!QJb%J45XSL2d5WXm#cJ0qQjrerD}-pSy+GPPa_H+jI0yynje#G3 zjxRM_uD5=KZs_$Ba|vk$1MT6c)hl==FmOI;MHpt{&!ezo1OrvHE-#f1OKvs+c|q3(F{>^S@*b*Rg|c==B@rM&E8X2}jAX>;({`FIg=B diff --git a/icons/mob/augmentation/cosmetic_prosthetic/xion.dmi b/icons/mob/augmentation/cosmetic_prosthetic/xion.dmi index 87280c0fa0af6d200c058824205f7fe8d659d1d3..c27ad213c7c6c254658f954ed0716b4174c01378 100644 GIT binary patch delta 172 zcmV;d08{_TBFQ3R%9%Mo_~5 delta 172 zcmV;d08{_TBFQ33V4&7&AU9(M1JzGWB1Ja1#S3C0 zMs~tc5R)jfLrN@&iC94A?I2^vU*kkM3397D?mZKYb~9_WLm?+Q-AuAy71LM1%rY9# a`G2y6d*49QwfYM*h~I9@()UfV>R%Af98&85 From 25651e91441d93e104fbd57f388c2e2c12c67919 Mon Sep 17 00:00:00 2001 From: R3dtail <45108567+R3dtail@users.noreply.github.com> Date: Tue, 9 Mar 2021 14:38:24 -0600 Subject: [PATCH 19/33] Readability/Grammar alteration --- code/game/objects/items/defib.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index 25a5bcc800..90912f7409 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -721,24 +721,24 @@ /obj/item/disk/medical/defib_heal name = "Defibrillator Healing Disk" - desc = "An upgrade which increases the healing power of the defibrillator" + desc = "An upgrade which increases the healing power of the defibrillator." icon_state = "heal_disk" custom_materials = list(/datum/material/iron=16000, /datum/material/glass = 18000, /datum/material/gold = 6000, /datum/material/silver = 6000) /obj/item/disk/medical/defib_shock name = "Defibrillator Anti-Shock Disk" - desc = "A safety upgrade that guarantees only the patient will get shocked" + desc = "A safety upgrade that guarantees only the patient will get shocked." icon_state = "zap_disk" custom_materials = list(/datum/material/iron=16000, /datum/material/glass = 18000, /datum/material/gold = 6000, /datum/material/silver = 6000) /obj/item/disk/medical/defib_decay name = "Defibrillator Body-Decay Extender Disk" - desc = "An upgrade allowing the defibrillator to work on more decayed bodies" + desc = "An upgrade allowing the defibrillator to work on bodies that have decayed further." icon_state = "body_disk" custom_materials = list(/datum/material/iron=16000, /datum/material/glass = 18000, /datum/material/gold = 16000, /datum/material/silver = 6000, /datum/material/titanium = 2000) /obj/item/disk/medical/defib_speed name = "Defibrillator Fast Charge Disk" - desc = "An upgrade to the defibrillator capacitors, which let it charge faster" + desc = "An upgrade to the defibrillator capacitors, which lets it charge faster." icon_state = "fast_disk" custom_materials = list(/datum/material/iron=16000, /datum/material/glass = 8000, /datum/material/gold = 26000, /datum/material/silver = 26000) From 8334e8c2c004049bb6a0f22434e4bb02fa4cc6e5 Mon Sep 17 00:00:00 2001 From: Auris456852 <37984520+Auris456852@users.noreply.github.com> Date: Wed, 10 Mar 2021 00:35:00 +0200 Subject: [PATCH 20/33] Corrects Hexacamphor --- code/modules/reagents/chemistry/recipes/drugs.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index 8de4b1248f..cd55d00cf1 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -88,9 +88,9 @@ mix_message = "The mixture boils off a yellow, smelly vapor..."//Sulfur burns off, leaving the camphor /datum/chemical_reaction/anaphroplus - name = "pentacamphor" + name = "hexacamphor" id = /datum/reagent/drug/anaphrodisiacplus results = list(/datum/reagent/drug/anaphrodisiacplus = 1) - required_reagents = list(/datum/reagent/drug/aphrodisiac = 5, /datum/reagent/acetone = 1) - required_temp = 300 + required_reagents = list(/datum/reagent/drug/anaphrodisiac = 6, /datum/reagent/acetone = 1) + required_temp = 400 mix_message = "The mixture thickens and heats up slighty..." From cc81a6d65e36c8e21faa0266ad6d8ba79ae98c52 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Wed, 10 Mar 2021 00:14:05 +0000 Subject: [PATCH 21/33] Automatic changelog compile [ci skip] --- html/changelog.html | 10 ++++++++++ html/changelogs/.all_changelog.yml | 5 +++++ html/changelogs/AutoChangeLog-pr-14351.yml | 4 ---- html/changelogs/AutoChangeLog-pr-14358.yml | 4 ---- 4 files changed, 15 insertions(+), 8 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-14351.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14358.yml diff --git a/html/changelog.html b/html/changelog.html index 5d6b9c63c8..f8fc2f8ca3 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -50,6 +50,16 @@ -->
+

10 March 2021

+

Hatterhat updated:

+
    +
  • The femur breaker now actually breaks legs by applying a compound fracture.
  • +
+

Putnam3145 updated:

+
    +
  • uncapped TEG power, buffing high-temp TEGs
  • +
+

09 March 2021

LetterN updated:

    diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 40cc8ac653..863b0129a3 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -28696,3 +28696,8 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. 2021-03-09: LetterN: - refactor: tg hardsync, mostly contains tgui +2021-03-10: + Hatterhat: + - rscadd: The femur breaker now actually breaks legs by applying a compound fracture. + Putnam3145: + - balance: uncapped TEG power, buffing high-temp TEGs diff --git a/html/changelogs/AutoChangeLog-pr-14351.yml b/html/changelogs/AutoChangeLog-pr-14351.yml deleted file mode 100644 index 297f51503a..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14351.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Putnam3145" -delete-after: True -changes: - - balance: "uncapped TEG power, buffing high-temp TEGs" diff --git a/html/changelogs/AutoChangeLog-pr-14358.yml b/html/changelogs/AutoChangeLog-pr-14358.yml deleted file mode 100644 index 3ab6ec654e..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14358.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Hatterhat" -delete-after: True -changes: - - rscadd: "The femur breaker now actually breaks legs by applying a compound fracture." From bbce4421d3342c520bdee6f95999066c9f2074e7 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Wed, 10 Mar 2021 00:25:53 +0000 Subject: [PATCH 22/33] Automatic changelog compile [ci skip] --- html/changelog.html | 10 ++++++++++ html/changelogs/.all_changelog.yml | 5 +++++ html/changelogs/AutoChangeLog-pr-14351.yml | 4 ---- html/changelogs/AutoChangeLog-pr-14358.yml | 4 ---- 4 files changed, 15 insertions(+), 8 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-14351.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14358.yml diff --git a/html/changelog.html b/html/changelog.html index 5d6b9c63c8..f8fc2f8ca3 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -50,6 +50,16 @@ -->
    +

    10 March 2021

    +

    Hatterhat updated:

    +
      +
    • The femur breaker now actually breaks legs by applying a compound fracture.
    • +
    +

    Putnam3145 updated:

    +
      +
    • uncapped TEG power, buffing high-temp TEGs
    • +
    +

    09 March 2021

    LetterN updated:

      diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 40cc8ac653..863b0129a3 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -28696,3 +28696,8 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. 2021-03-09: LetterN: - refactor: tg hardsync, mostly contains tgui +2021-03-10: + Hatterhat: + - rscadd: The femur breaker now actually breaks legs by applying a compound fracture. + Putnam3145: + - balance: uncapped TEG power, buffing high-temp TEGs diff --git a/html/changelogs/AutoChangeLog-pr-14351.yml b/html/changelogs/AutoChangeLog-pr-14351.yml deleted file mode 100644 index 297f51503a..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14351.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Putnam3145" -delete-after: True -changes: - - balance: "uncapped TEG power, buffing high-temp TEGs" diff --git a/html/changelogs/AutoChangeLog-pr-14358.yml b/html/changelogs/AutoChangeLog-pr-14358.yml deleted file mode 100644 index 3ab6ec654e..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14358.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Hatterhat" -delete-after: True -changes: - - rscadd: "The femur breaker now actually breaks legs by applying a compound fracture." From e459938f78d162de3b715d61593df760da824fd6 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Tue, 9 Mar 2021 22:39:43 -0600 Subject: [PATCH 23/33] Automatic changelog generation for PR #14379 [ci skip] --- html/changelogs/AutoChangeLog-pr-14379.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-14379.yml diff --git a/html/changelogs/AutoChangeLog-pr-14379.yml b/html/changelogs/AutoChangeLog-pr-14379.yml new file mode 100644 index 0000000000..062af7faf8 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-14379.yml @@ -0,0 +1,4 @@ +author: "necromanceranne" +delete-after: True +changes: + - bugfix: "Fixes going over the defined limit of roundstart prosthetics" From 0b109929c01569f4553812794090e419dd5feb4d Mon Sep 17 00:00:00 2001 From: Putnam Date: Tue, 9 Mar 2021 21:07:41 -0800 Subject: [PATCH 24/33] Adds recommended configs --- config/game_options.txt | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/config/game_options.txt b/config/game_options.txt index 7776d87d4e..b9d763e5b0 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -72,6 +72,14 @@ ALERT_DELTA Destruction of the station is imminent. All crew are instructed to o ## Uncomment to not send a roundstart intercept report. Gamemodes may override this. #NO_INTERCEPT_REPORT +## Comment to disable weighting modes by how chaotic recent mode rolls were. +WEIGH_BY_RECENT_CHAOS + +## The weight adjustment will be proportional to this power relative to the "ideal" weight range. +## e.g. if we have a weight range of 0-5, and an exponent of 1, 6 will be weighted 1/2, 7 1/3 etc. +## if exponent is 2, it'll be 1/4, 1/9 etc. +CHAOS_EXPONENT 1 + ## Probablities for game modes chosen in 'secret' and 'random' modes. ## Default probablity is 1, increase to make that mode more likely to be picked. ## Set to 0 to disable that mode. @@ -154,6 +162,11 @@ FORCE_ANTAG_COUNT CLOCKWORK_CULT #FORCE_ANTAG_COUNT WIZARD #FORCE_ANTAG_COUNT MONKEY +## A config for how much each game mode's chaos level is. +## All of them have reasonable defaults, but this can be used to adjust them. +## 0-9, where 0 is lowest chaos (should only be extended) and 9 is highest (wizard? nukies?) +#CHAOS_LEVEL EXTENDED 0 + ## Uncomment these for overrides of the minimum / maximum number of players in a round type. ## If you set any of these occasionally check to see if you still need them as the modes ## will still be actively rebalanced around the SUGGESTED populations, not your overrides. From f64fe21df30a3ebe6f8c1e1f3bdca762488fb577 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 10 Mar 2021 00:27:03 -0600 Subject: [PATCH 25/33] Automatic changelog generation for PR #14380 [ci skip] --- html/changelogs/AutoChangeLog-pr-14380.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-14380.yml diff --git a/html/changelogs/AutoChangeLog-pr-14380.yml b/html/changelogs/AutoChangeLog-pr-14380.yml new file mode 100644 index 0000000000..7b24a4ab2c --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-14380.yml @@ -0,0 +1,5 @@ +author: "necromanceranne" +delete-after: True +changes: + - bugfix: "Properly segments all the augment sprites so that they correctly display." + - bugfix: "Properly labels the augment limb icon sprites." From 40dfd40bcd84759401a6e7e718bf6803db1dc866 Mon Sep 17 00:00:00 2001 From: Putnam Date: Wed, 10 Mar 2021 00:04:35 -0800 Subject: [PATCH 26/33] Made it not weight almost entirely based on chaos. --- code/controllers/configuration/configuration.dm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/code/controllers/configuration/configuration.dm b/code/controllers/configuration/configuration.dm index 03d866dd8d..752b1ab78e 100644 --- a/code/controllers/configuration/configuration.dm +++ b/code/controllers/configuration/configuration.dm @@ -453,7 +453,14 @@ Example config: if(Get(/datum/config_entry/flag/weigh_by_recent_chaos)) var/chaos_level = M.get_chaos() var/exponent = Get(/datum/config_entry/number/chaos_exponent) - final_weight /= (abs(chaos_level - desired_chaos_level) + 1) ** exponent + var/delta = chaos_level - desired_chaos_level + if(desired_chaos_level > 5) + delta = abs(min(delta, 0)) + else if(desired_chaos_level < 5) + delta = max(delta, 0) + else + delta = abs(delta) + final_weight /= (delta + 1) ** exponent runnable_modes[M] = final_weight return runnable_modes From 563b4a1d8fee13c37bd00bd19e2a0ea6f141f53c Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 10 Mar 2021 02:31:53 -0600 Subject: [PATCH 27/33] Automatic changelog generation for PR #14371 [ci skip] --- html/changelogs/AutoChangeLog-pr-14371.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-14371.yml diff --git a/html/changelogs/AutoChangeLog-pr-14371.yml b/html/changelogs/AutoChangeLog-pr-14371.yml new file mode 100644 index 0000000000..78bb11d051 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-14371.yml @@ -0,0 +1,10 @@ +author: "Sneakyrat" +delete-after: True +changes: + - bugfix: "Fixes precise insertion ui(when it asks you how many sheets you want to put in the mat container) so you can actually choose how much to put in and it will still work if your stack is bigger than the remaining space" + - bugfix: "Fixes precise insertion not working for remote mat containers" + - bugfix: "Fixes Protolathe/mechfab insert material animations not working" + - bugfix: "Fixes the material insertion animation for protolathes occurring on the circuit printer" + - bugfix: "Fixes the material insertion animation not actually playing when it was started" + - bugfix: "Fixes the material insertion animation for iron not being made" + - bugfix: "Fixes the material insertion animation sometimes not picking the right material for sheets that have multiple different materials in them" From a4f47925007a540dd0f0f2d7228f98e8a1cdce9f Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 10 Mar 2021 02:32:55 -0600 Subject: [PATCH 28/33] Automatic changelog generation for PR #14306 [ci skip] --- html/changelogs/AutoChangeLog-pr-14306.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-14306.yml diff --git a/html/changelogs/AutoChangeLog-pr-14306.yml b/html/changelogs/AutoChangeLog-pr-14306.yml new file mode 100644 index 0000000000..61151e1e45 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-14306.yml @@ -0,0 +1,5 @@ +author: "Putnam3145" +delete-after: True +changes: + - rscadd: "Supernova event" + - refactor: "Bloodsucker day/night cycle now processes on a subsystem instead of using while and sleep (!!)" From 2dc51f3a52b4981274b2a320bcc3db7f8e95f5ac Mon Sep 17 00:00:00 2001 From: Hatterhat Date: Wed, 10 Mar 2021 08:49:56 -0600 Subject: [PATCH 29/33] oops! all wrong .dmis! --- modular_citadel/icons/mob/mam_tails.dmi | Bin 67547 -> 69728 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/modular_citadel/icons/mob/mam_tails.dmi b/modular_citadel/icons/mob/mam_tails.dmi index a67c1b718cd17244680b7d9ef92df4fac6125715..7073328655609d92c124d91e89f1f875fdd0ec4a 100644 GIT binary patch literal 69728 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 V{G}~g2mXZUX&c`xyy5ite*k;Hz(D{2 literal 67547 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

      &-1>nD-{Z#09J2(LkFTO^)C-P|dIJQQFaW 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 N*lqn=)f#qB{~O$uH}(Jk From 71d93c4db4de03bea822a65505073ba24977bd58 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 10 Mar 2021 15:02:14 -0600 Subject: [PATCH 30/33] Automatic changelog generation for PR #14376 [ci skip] --- html/changelogs/AutoChangeLog-pr-14376.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-14376.yml diff --git a/html/changelogs/AutoChangeLog-pr-14376.yml b/html/changelogs/AutoChangeLog-pr-14376.yml new file mode 100644 index 0000000000..3d664b514e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-14376.yml @@ -0,0 +1,4 @@ +author: "Putnam3145" +delete-after: True +changes: + - rscadd: "A chaos-weighting system for secret" From fb56be792e53d286cc64fb3db8ec8fec39fdad53 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Thu, 11 Mar 2021 00:14:32 +0000 Subject: [PATCH 31/33] Automatic changelog compile [ci skip] --- html/changelog.html | 24 ++++++++++++++++++++++ html/changelogs/.all_changelog.yml | 23 +++++++++++++++++++++ html/changelogs/AutoChangeLog-pr-14306.yml | 5 ----- html/changelogs/AutoChangeLog-pr-14371.yml | 10 --------- html/changelogs/AutoChangeLog-pr-14376.yml | 4 ---- html/changelogs/AutoChangeLog-pr-14379.yml | 4 ---- html/changelogs/AutoChangeLog-pr-14380.yml | 5 ----- 7 files changed, 47 insertions(+), 28 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-14306.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14371.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14376.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14379.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-14380.yml diff --git a/html/changelog.html b/html/changelog.html index f8fc2f8ca3..5aa56b1cfe 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -50,6 +50,30 @@ -->

      +

      11 March 2021

      +

      Putnam3145 updated:

      +
        +
      • Supernova event
      • +
      • Bloodsucker day/night cycle now processes on a subsystem instead of using while and sleep (!!)
      • +
      • A chaos-weighting system for secret
      • +
      +

      Sneakyrat updated:

      +
        +
      • Fixes precise insertion ui(when it asks you how many sheets you want to put in the mat container) so you can actually choose how much to put in and it will still work if your stack is bigger than the remaining space
      • +
      • Fixes precise insertion not working for remote mat containers
      • +
      • Fixes Protolathe/mechfab insert material animations not working
      • +
      • Fixes the material insertion animation for protolathes occurring on the circuit printer
      • +
      • Fixes the material insertion animation not actually playing when it was started
      • +
      • Fixes the material insertion animation for iron not being made
      • +
      • Fixes the material insertion animation sometimes not picking the right material for sheets that have multiple different materials in them
      • +
      +

      necromanceranne updated:

      +
        +
      • Properly segments all the augment sprites so that they correctly display.
      • +
      • Properly labels the augment limb icon sprites.
      • +
      • Fixes going over the defined limit of roundstart prosthetics
      • +
      +

      10 March 2021

      Hatterhat updated:

        diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 863b0129a3..1613073ede 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -28701,3 +28701,26 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. - rscadd: The femur breaker now actually breaks legs by applying a compound fracture. Putnam3145: - balance: uncapped TEG power, buffing high-temp TEGs +2021-03-11: + Putnam3145: + - rscadd: Supernova event + - refactor: Bloodsucker day/night cycle now processes on a subsystem instead of + using while and sleep (!!) + - rscadd: A chaos-weighting system for secret + Sneakyrat: + - bugfix: Fixes precise insertion ui(when it asks you how many sheets you want to + put in the mat container) so you can actually choose how much to put in and + it will still work if your stack is bigger than the remaining space + - bugfix: Fixes precise insertion not working for remote mat containers + - bugfix: Fixes Protolathe/mechfab insert material animations not working + - bugfix: Fixes the material insertion animation for protolathes occurring on the + circuit printer + - bugfix: Fixes the material insertion animation not actually playing when it was + started + - bugfix: Fixes the material insertion animation for iron not being made + - bugfix: Fixes the material insertion animation sometimes not picking the right + material for sheets that have multiple different materials in them + necromanceranne: + - bugfix: Properly segments all the augment sprites so that they correctly display. + - bugfix: Properly labels the augment limb icon sprites. + - bugfix: Fixes going over the defined limit of roundstart prosthetics diff --git a/html/changelogs/AutoChangeLog-pr-14306.yml b/html/changelogs/AutoChangeLog-pr-14306.yml deleted file mode 100644 index 61151e1e45..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14306.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Putnam3145" -delete-after: True -changes: - - rscadd: "Supernova event" - - refactor: "Bloodsucker day/night cycle now processes on a subsystem instead of using while and sleep (!!)" diff --git a/html/changelogs/AutoChangeLog-pr-14371.yml b/html/changelogs/AutoChangeLog-pr-14371.yml deleted file mode 100644 index 78bb11d051..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14371.yml +++ /dev/null @@ -1,10 +0,0 @@ -author: "Sneakyrat" -delete-after: True -changes: - - bugfix: "Fixes precise insertion ui(when it asks you how many sheets you want to put in the mat container) so you can actually choose how much to put in and it will still work if your stack is bigger than the remaining space" - - bugfix: "Fixes precise insertion not working for remote mat containers" - - bugfix: "Fixes Protolathe/mechfab insert material animations not working" - - bugfix: "Fixes the material insertion animation for protolathes occurring on the circuit printer" - - bugfix: "Fixes the material insertion animation not actually playing when it was started" - - bugfix: "Fixes the material insertion animation for iron not being made" - - bugfix: "Fixes the material insertion animation sometimes not picking the right material for sheets that have multiple different materials in them" diff --git a/html/changelogs/AutoChangeLog-pr-14376.yml b/html/changelogs/AutoChangeLog-pr-14376.yml deleted file mode 100644 index 3d664b514e..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14376.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Putnam3145" -delete-after: True -changes: - - rscadd: "A chaos-weighting system for secret" diff --git a/html/changelogs/AutoChangeLog-pr-14379.yml b/html/changelogs/AutoChangeLog-pr-14379.yml deleted file mode 100644 index 062af7faf8..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14379.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "necromanceranne" -delete-after: True -changes: - - bugfix: "Fixes going over the defined limit of roundstart prosthetics" diff --git a/html/changelogs/AutoChangeLog-pr-14380.yml b/html/changelogs/AutoChangeLog-pr-14380.yml deleted file mode 100644 index 7b24a4ab2c..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14380.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "necromanceranne" -delete-after: True -changes: - - bugfix: "Properly segments all the augment sprites so that they correctly display." - - bugfix: "Properly labels the augment limb icon sprites." From 35fd1b36cc731684a34b029e28b5efa6ff0d1135 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 10 Mar 2021 18:34:50 -0600 Subject: [PATCH 32/33] Automatic changelog generation for PR #14392 [ci skip] --- html/changelogs/AutoChangeLog-pr-14392.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-14392.yml diff --git a/html/changelogs/AutoChangeLog-pr-14392.yml b/html/changelogs/AutoChangeLog-pr-14392.yml new file mode 100644 index 0000000000..6bff88c974 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-14392.yml @@ -0,0 +1,4 @@ +author: "R3dtail" +delete-after: True +changes: + - spellcheck: "Adds Periods and moves some words around." From 90badba5c21d3a9f931d444f6777ff9ceff820fc Mon Sep 17 00:00:00 2001 From: Changelogs Date: Fri, 12 Mar 2021 00:26:10 +0000 Subject: [PATCH 33/33] Automatic changelog compile [ci skip] --- html/changelog.html | 24 +++------------------- html/changelogs/.all_changelog.yml | 3 +++ html/changelogs/AutoChangeLog-pr-14392.yml | 4 ---- 3 files changed, 6 insertions(+), 25 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-14392.yml diff --git a/html/changelog.html b/html/changelog.html index 5aa56b1cfe..68b5c86a75 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -50,28 +50,10 @@ -->
        -

        11 March 2021

        -

        Putnam3145 updated:

        +

        12 March 2021

        +

        R3dtail updated:

          -
        • Supernova event
        • -
        • Bloodsucker day/night cycle now processes on a subsystem instead of using while and sleep (!!)
        • -
        • A chaos-weighting system for secret
        • -
        -

        Sneakyrat updated:

        -
          -
        • Fixes precise insertion ui(when it asks you how many sheets you want to put in the mat container) so you can actually choose how much to put in and it will still work if your stack is bigger than the remaining space
        • -
        • Fixes precise insertion not working for remote mat containers
        • -
        • Fixes Protolathe/mechfab insert material animations not working
        • -
        • Fixes the material insertion animation for protolathes occurring on the circuit printer
        • -
        • Fixes the material insertion animation not actually playing when it was started
        • -
        • Fixes the material insertion animation for iron not being made
        • -
        • Fixes the material insertion animation sometimes not picking the right material for sheets that have multiple different materials in them
        • -
        -

        necromanceranne updated:

        -
          -
        • Properly segments all the augment sprites so that they correctly display.
        • -
        • Properly labels the augment limb icon sprites.
        • -
        • Fixes going over the defined limit of roundstart prosthetics
        • +
        • Adds Periods and moves some words around.

        10 March 2021

        diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 863b0129a3..956640bb13 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -28701,3 +28701,6 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. - rscadd: The femur breaker now actually breaks legs by applying a compound fracture. Putnam3145: - balance: uncapped TEG power, buffing high-temp TEGs +2021-03-12: + R3dtail: + - spellcheck: Adds Periods and moves some words around. diff --git a/html/changelogs/AutoChangeLog-pr-14392.yml b/html/changelogs/AutoChangeLog-pr-14392.yml deleted file mode 100644 index 6bff88c974..0000000000 --- a/html/changelogs/AutoChangeLog-pr-14392.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "R3dtail" -delete-after: True -changes: - - spellcheck: "Adds Periods and moves some words around."