From 9e5098192fee965f825e3b4d2328011cf5717680 Mon Sep 17 00:00:00 2001 From: cuberound <122645057+cuberound@users.noreply.github.com> Date: Sun, 21 Jun 2026 17:49:26 +0200 Subject: [PATCH 01/25] notbananacannotpry (#12448) # About the pull request remvoes few unused lines and standardises on check can pry is not used and prying is not so simple and each thing that can be pryed has its own check # Explain why it's good for the game meh prob is not but cleaner file # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: code: isbanana is no longer /:cl: --- code/__DEFINES/typecheck/items.dm | 6 ------ code/game/machinery/air_alarm.dm | 2 +- code/game/machinery/colony_floodlights.dm | 2 +- code/game/machinery/constructable_frame.dm | 2 +- code/game/objects/items/frames/camera.dm | 2 +- 5 files changed, 4 insertions(+), 10 deletions(-) diff --git a/code/__DEFINES/typecheck/items.dm b/code/__DEFINES/typecheck/items.dm index 5c4d099b8112..4438cd918aa0 100644 --- a/code/__DEFINES/typecheck/items.dm +++ b/code/__DEFINES/typecheck/items.dm @@ -1,9 +1,7 @@ #define iswelder(O) (istype(O, /obj/item/tool/weldingtool)) -#define iscoil(O) (istype(O, /obj/item/stack/cable_coil)) #define iswire(O) (istype(O, /obj/item/stack/cable_coil)) #define isweapon(O) (O && is_type_in_list(O, GLOB.weapons)) #define isgun(O) (istype(O, /obj/item/weapon/gun)) -#define isbanana(O) (istype(O, /obj/item/reagent_container/food/snacks/grown/banana)) #define istool(O) (O && is_type_in_list(O, GLOB.common_tools)) #define ispowerclamp(O) (istype(O, /obj/item/powerloader_clamp)) #define isstorage(O) (istype(O, /obj/item/storage)) @@ -27,7 +25,3 @@ GLOBAL_LIST_INIT(common_tools, list( /obj/item/device/multitool, /obj/item/tool/crowbar )) - -/obj/item/proc/can_pry() - if(pry_capable > IS_PRY_CAPABLE_SIMPLE || HAS_TRAIT(src, TRAIT_TOOL_CROWBAR)) - return TRUE diff --git a/code/game/machinery/air_alarm.dm b/code/game/machinery/air_alarm.dm index 9189936be0ff..3b917baf393c 100644 --- a/code/game/machinery/air_alarm.dm +++ b/code/game/machinery/air_alarm.dm @@ -984,7 +984,7 @@ table tr:first-child th:first-child { border: none;} return if(1) - if(iscoil(W)) + if(iswire(W)) var/obj/item/stack/cable_coil/C = W if(C.use(5)) to_chat(user, SPAN_NOTICE("You wire \the [src].")) diff --git a/code/game/machinery/colony_floodlights.dm b/code/game/machinery/colony_floodlights.dm index c899b643453d..f6f02fefc737 100644 --- a/code/game/machinery/colony_floodlights.dm +++ b/code/game/machinery/colony_floodlights.dm @@ -283,7 +283,7 @@ GLOBAL_LIST_INIT(all_breaker_switches, list()) to_chat(user, SPAN_WARNING("You need more welding fuel to complete this task.")) return TRUE - else if(iscoil(I)) + else if(iswire(I)) var/obj/item/stack/cable_coil/coil = I if(!skillcheck(user, SKILL_ENGINEER, SKILL_ENGINEER_TRAINED)) to_chat(user, SPAN_WARNING("You have no clue how to repair [src].")) diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index f6ae18e6a339..6b6f9558c339 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -53,7 +53,7 @@ return switch(state) if(CONSTRUCTION_STATE_BEGIN) - if(iscoil(P)) + if(iswire(P)) if(!skillcheck(user, SKILL_CONSTRUCTION, required_skill)) to_chat(user, SPAN_WARNING("You are not trained to build machines...")) return diff --git a/code/game/objects/items/frames/camera.dm b/code/game/objects/items/frames/camera.dm index c951e8dfeb5b..67f5765aa2d9 100644 --- a/code/game/objects/items/frames/camera.dm +++ b/code/game/objects/items/frames/camera.dm @@ -58,7 +58,7 @@ if(2) // State 2 - if(iscoil(W)) + if(iswire(W)) var/obj/item/stack/cable_coil/C = W if(C.use(2)) to_chat(user, SPAN_NOTICE("You add wires to the assembly.")) From a23eb58e8d77c91ff5d35ab83fb98cb21bb7c3a3 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Sun, 21 Jun 2026 15:56:30 +0000 Subject: [PATCH 02/25] Automatic changelog for PR #12448 [ci skip] --- html/changelogs/AutoChangeLog-pr-12448.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12448.yml diff --git a/html/changelogs/AutoChangeLog-pr-12448.yml b/html/changelogs/AutoChangeLog-pr-12448.yml new file mode 100644 index 000000000000..90b8abbc5c74 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12448.yml @@ -0,0 +1,4 @@ +author: "cuberound" +delete-after: True +changes: + - code_imp: "isbanana is no longer" \ No newline at end of file From b4baaa23f0a72ba756540863b864c4c9d3bfe932 Mon Sep 17 00:00:00 2001 From: Sutures <101909198+noelle-lavenza@users.noreply.github.com> Date: Sun, 21 Jun 2026 12:25:23 -0400 Subject: [PATCH 03/25] Optimize flamer fire spread (#11992) # About the pull request The fire spread proc now requires a reagent to be passed in, which avoids creating a new reagent for every recursive call. `fire_spread_recur()` now uses `CHECK_TICK` instead of `spawn(0)`, so instead of delaying each wave by a single tick, it'll proceed as fast as possible without overloading the server. `fire_spread_recur()` now only checks the directions it'll try to spread to, rather than all directions. `fire_spread_recur()` and `fire_spread()` now use `set waitfor = FALSE` to avoid blocking callers. This is preferable to an explicit `spawn(0)` because it will only spawn if the server is overloaded, which avoids giving the scheduler a bunch of spawned procs to handle. Split out of #11946. # Explain why it's good for the game Improves performance a good bit, there's no pause/delay when an incendiary OB hits. # Testing Photographs and Procedure I do have screenshots and videos, I just am too lazy to upload them right now.
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: MoondancerPony refactor: made fire spread (from OB, flamers, etc) much faster /:cl: --- code/modules/cm_marines/dropship_ammo.dm | 22 +++--- code/modules/cm_marines/orbital_cannon.dm | 3 +- .../modules/projectiles/guns/flamer/flamer.dm | 72 ++++++++----------- 3 files changed, 45 insertions(+), 52 deletions(-) diff --git a/code/modules/cm_marines/dropship_ammo.dm b/code/modules/cm_marines/dropship_ammo.dm index c4048302bdb5..2a46e12a2b44 100644 --- a/code/modules/cm_marines/dropship_ammo.dm +++ b/code/modules/cm_marines/dropship_ammo.dm @@ -261,12 +261,12 @@ /obj/structure/ship_ammo/laser_battery/detonate_on(turf/impact, obj/structure/dropship_equipment/weapon/fired_from) set waitfor = 0 - var/list/turf_list = RANGE_TURFS(3, impact) //This is its area of effect + var/list/turf_list = shuffle(RANGE_TURFS(3, impact)) //This is its area of effect playsound(impact, 'sound/effects/pred_vision.ogg', 20, 1) - for(var/i=1 to 16) //This is how many tiles within that area of effect will be randomly ignited - var/turf/U = pick(turf_list) - turf_list -= U - fire_spread_recur(U, create_cause_data(fired_from.name, source_mob), 1, null, 5, 75, "#EE6515")//Very, very intense, but goes out very quick + var/datum/reagent/fire_reagent = create_fire_reagent(5, 75, "#EE6515") + for(var/i in 1 to 16) //This is how many tiles within that area of effect will be randomly ignited + var/turf/target_turf = turf_list[i] + fire_spread(target_turf, create_cause_data(fired_from.name, source_mob), 1, fire_reagent)//Very, very intense, but goes out very quick if(!ammo_count && !QDELETED(src)) qdel(src) //deleted after last laser beam is fired and impact the ground. @@ -316,8 +316,9 @@ /obj/structure/ship_ammo/rocket/banshee/detonate_on(turf/impact, obj/structure/dropship_equipment/weapon/fired_from) impact.ceiling_debris_check(3) + var/datum/reagent/fire_reagent = create_fire_reagent(15, 50, "#00b8ff") addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(cell_explosion), impact, 175, 20, EXPLOSION_FALLOFF_SHAPE_LINEAR, null, create_cause_data(initial(name), source_mob)), 0.5 SECONDS) //Small explosive power with a small fall off for a big explosion range - addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(fire_spread), impact, create_cause_data(initial(name), source_mob), 4, 15, 50, "#00b8ff"), 0.5 SECONDS) //Very intense but the fire doesn't last very long + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(fire_spread), impact, create_cause_data(initial(name), source_mob), 4, fire_reagent), 0.5 SECONDS) //Very intense but the fire doesn't last very long QDEL_IN(src, 0.5 SECONDS) /obj/structure/ship_ammo/rocket/keeper @@ -357,8 +358,9 @@ /obj/structure/ship_ammo/rocket/napalm/detonate_on(turf/impact, obj/structure/dropship_equipment/weapon/fired_from) impact.ceiling_debris_check(3) + var/datum/reagent/fire_reagent = create_fire_reagent(60, 30, "#EE6515") addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(cell_explosion), impact, 200, 25, EXPLOSION_FALLOFF_SHAPE_LINEAR, null, create_cause_data(initial(name), source_mob)), 0.5 SECONDS) - addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(fire_spread), impact, create_cause_data(initial(name), source_mob), 6, 60, 30, "#EE6515"), 0.5 SECONDS) //Color changed into napalm's color to better convey how intense the fire actually is. + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(fire_spread), impact, create_cause_data(initial(name), source_mob), 6, fire_reagent), 0.5 SECONDS) //Color changed into napalm's color to better convey how intense the fire actually is. QDEL_IN(src, 0.5 SECONDS) /obj/structure/ship_ammo/rocket/thermobaric @@ -371,7 +373,8 @@ /obj/structure/ship_ammo/rocket/thermobaric/detonate_on(turf/impact, obj/structure/dropship_equipment/weapon/fired_from) impact.ceiling_debris_check(3) - addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(fire_spread), impact, create_cause_data(initial(name), source_mob), 4, 25, 50, "#c96500"), 0.5 SECONDS) //Very intense but the fire doesn't last very long + var/datum/reagent/fire_reagent = create_fire_reagent(25, 50, "#c96500") + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(fire_spread), impact, create_cause_data(initial(name), source_mob), 4, fire_reagent), 0.5 SECONDS) //Very intense but the fire doesn't last very long for(var/mob/living/carbon/victim in orange(5, impact)) victim.throw_atom(impact, 3, 15, src, TRUE) // Implosion throws affected towards center of vacuum QDEL_IN(src, 0.5 SECONDS) @@ -425,7 +428,8 @@ /obj/structure/ship_ammo/minirocket/incendiary/detonate_on(turf/impact, obj/structure/dropship_equipment/weapon/fired_from) ..() spawn(5) - fire_spread(impact, create_cause_data(initial(name), source_mob), 3, 25, 20, "#EE6515") + var/datum/reagent/fire_reagent = create_fire_reagent(25, 20, "#EE6515") + fire_spread(impact, create_cause_data(initial(name), source_mob), 3, fire_reagent) /obj/structure/ship_ammo/sentry name = "\improper A/C-49-P Air Deployable Sentry" diff --git a/code/modules/cm_marines/orbital_cannon.dm b/code/modules/cm_marines/orbital_cannon.dm index c9de051fc7a6..0bd03ff08f60 100644 --- a/code/modules/cm_marines/orbital_cannon.dm +++ b/code/modules/cm_marines/orbital_cannon.dm @@ -532,7 +532,8 @@ GLOBAL_LIST_EMPTY(orbital_cannon_cancellation) handle_ob_shake(target) sleep(clear_delay) - fire_spread(target, cause_data, distance, fire_level, burn_level, fire_color, fire_type, TURF_PROTECTION_OB) + var/datum/reagent/fire_reagent = create_fire_reagent(fire_level, burn_level, fire_color, fire_type) + fire_spread(target, cause_data, distance, fire_reagent, TURF_PROTECTION_OB) qdel(src) /obj/structure/ob_ammo/warhead/cluster diff --git a/code/modules/projectiles/guns/flamer/flamer.dm b/code/modules/projectiles/guns/flamer/flamer.dm index b4928ff6c07f..38496cfe9212 100644 --- a/code/modules/projectiles/guns/flamer/flamer.dm +++ b/code/modules/projectiles/guns/flamer/flamer.dm @@ -899,38 +899,30 @@ GLOBAL_LIST_EMPTY(flamer_particles) else weather_smothering_strength = 0 -/proc/fire_spread_recur(turf/target, datum/cause_data/cause_data, remaining_distance, direction, fire_lvl, burn_lvl, f_color, burn_sprite = "dynamic", aerial_flame_level) - var/direction_angle = dir2angle(direction) +/proc/create_fire_reagent(fire_lvl, burn_lvl, f_color, burn_sprite = "dynamic") + var/datum/reagent/fire_reag = new() + fire_reag.intensityfire = burn_lvl + fire_reag.durationfire = fire_lvl + fire_reag.burn_sprite = burn_sprite + fire_reag.burncolor = f_color + return fire_reag + +/proc/fire_spread_recur(turf/target, datum/cause_data/cause_data, remaining_distance, direction, datum/reagent/fire_reagent, aerial_flame_level) + set waitfor = FALSE var/obj/flamer_fire/foundflame = locate() in target if(!foundflame) - var/datum/reagent/fire_reag = new() - fire_reag.intensityfire = burn_lvl - fire_reag.durationfire = fire_lvl - fire_reag.burn_sprite = burn_sprite - fire_reag.burncolor = f_color - new/obj/flamer_fire(target, cause_data, fire_reag) + new/obj/flamer_fire(target, cause_data, fire_reagent) if(target.density) return - for(var/spread_direction in GLOB.alldirs) - + for(var/spread_angle in list(-45, 0, 45)) + var/spread_direction = turn(direction, spread_angle) var/spread_power = remaining_distance - - var/spread_direction_angle = dir2angle(spread_direction) - - var/angle = 180 - abs( abs( direction_angle - spread_direction_angle ) - 180 ) // the angle difference between the spread direction and initial direction - - switch(angle) //this reduces power when the explosion is going around corners - if (45) - spread_power *= 0.75 - if (90 to 180) //turns out angles greater than 90 degrees almost never happen. This bit also prevents trying to spread backwards - continue - - switch(spread_direction) - if(NORTH,SOUTH,EAST,WEST) - spread_power-- - else - spread_power -= 1.414 //diagonal spreading + if(abs(spread_angle) == 45) // diagonal + spread_power -= sqrt(2) + spread_power *= 0.75 //this reduces power when the explosion is going around corners + else // cardinal + spread_power -= 1 if (spread_power < 1) continue @@ -942,37 +934,33 @@ GLOBAL_LIST_EMPTY(flamer_particles) if(aerial_flame_level) if(picked_turf.get_pylon_protection_level() >= aerial_flame_level) - break - var/area/picked_area = get_area(picked_turf) + continue + var/area/picked_area = picked_turf.loc // get_area() is slower here when we know we have a turf if(CEILING_IS_PROTECTED(picked_area?.ceiling, get_ceiling_protection_level(aerial_flame_level))) - break - - spawn(0) - fire_spread_recur(picked_turf, cause_data, spread_power, spread_direction, fire_lvl, burn_lvl, f_color, burn_sprite, aerial_flame_level) + continue -/proc/fire_spread(turf/target, datum/cause_data/cause_data, range, fire_lvl, burn_lvl, f_color, burn_sprite = "dynamic", aerial_flame_level = TURF_PROTECTION_NONE) - var/datum/reagent/fire_reag = new() - fire_reag.intensityfire = burn_lvl - fire_reag.durationfire = fire_lvl - fire_reag.burn_sprite = burn_sprite - fire_reag.burncolor = f_color + CHECK_TICK // before the recursive call + fire_spread_recur(picked_turf, cause_data, spread_power, spread_direction, fire_reagent, aerial_flame_level) - new/obj/flamer_fire(target, cause_data, fire_reag) - for(var/direction in GLOB.alldirs) +/proc/fire_spread(turf/target, datum/cause_data/cause_data, range, fire_reagent, aerial_flame_level = TURF_PROTECTION_NONE) + set waitfor = FALSE + new/obj/flamer_fire(target, cause_data, fire_reagent) + for(var/turf/picked_turf in orange(1, target)) + var/direction = get_dir(target, picked_turf) var/spread_power = range switch(direction) if(NORTH,SOUTH,EAST,WEST) spread_power-- else spread_power -= 1.414 //diagonal spreading - var/turf/picked_turf = get_step(target, direction) if(aerial_flame_level) if(picked_turf.get_pylon_protection_level() >= aerial_flame_level) continue var/area/picked_area = get_area(picked_turf) if(CEILING_IS_PROTECTED(picked_area?.ceiling, get_ceiling_protection_level(aerial_flame_level))) continue - fire_spread_recur(picked_turf, cause_data, spread_power, direction, fire_lvl, burn_lvl, f_color, burn_sprite, aerial_flame_level) + fire_spread_recur(picked_turf, cause_data, spread_power, direction, fire_reagent, aerial_flame_level) + CHECK_TICK // don't overrun spreading in just one direction // So it doens't do the spinny animation /obj/flamer_fire/onZImpact(turf/impact_turf, height) From 3dc7108364e04c4d4a895606d54e517660f6557c Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Sun, 21 Jun 2026 16:32:13 +0000 Subject: [PATCH 04/25] Automatic changelog for PR #11992 [ci skip] --- html/changelogs/AutoChangeLog-pr-11992.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11992.yml diff --git a/html/changelogs/AutoChangeLog-pr-11992.yml b/html/changelogs/AutoChangeLog-pr-11992.yml new file mode 100644 index 000000000000..8790bca9e114 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11992.yml @@ -0,0 +1,4 @@ +author: "MoondancerPony" +delete-after: True +changes: + - refactor: "made fire spread (from OB, flamers, etc) much faster" \ No newline at end of file From 39c44a5921181af3019ca97c40b3b9df3e38d1b6 Mon Sep 17 00:00:00 2001 From: forest2001 <41653574+realforest2001@users.noreply.github.com> Date: Mon, 22 Jun 2026 04:53:39 +0300 Subject: [PATCH 05/25] Stops almayer crash breaking unbreakable APCs. (#12455) # About the pull request If it can't be broken without direct intervention it should not break. Main purpose for this is the AI Core APC which cannot be repaired. # Explain why it's good for the game # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: add: Almayer crash no longer breaks hardened APCs. /:cl: Co-authored-by: forest2001 --- code/controllers/subsystem/hijack.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/controllers/subsystem/hijack.dm b/code/controllers/subsystem/hijack.dm index 9c9a4447b1c6..b9daf9c2e9ca 100644 --- a/code/controllers/subsystem/hijack.dm +++ b/code/controllers/subsystem/hijack.dm @@ -797,7 +797,7 @@ SUBSYSTEM_DEF(hijack) var/cause_data = create_cause_data("ship explosion") for(var/obj/structure/machinery/power/apc/apc as anything in apcs) var/turf/apc_turf = get_turf(apc) - if(apc_turf && prob(chance)) + if(apc_turf && apc.crash_break_probability && prob(chance)) cell_explosion(apc_turf, 30, 5, explosion_cause_data=cause_data, enviro=TRUE) CHECK_TICK From 1a8adc618d3c528d3d686e9dca50e2cf017f12a4 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 02:04:39 +0000 Subject: [PATCH 06/25] Automatic changelog for PR #12455 [ci skip] --- html/changelogs/AutoChangeLog-pr-12455.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12455.yml diff --git a/html/changelogs/AutoChangeLog-pr-12455.yml b/html/changelogs/AutoChangeLog-pr-12455.yml new file mode 100644 index 000000000000..df9abaf913d1 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12455.yml @@ -0,0 +1,4 @@ +author: "realforest2001" +delete-after: True +changes: + - rscadd: "Almayer crash no longer breaks hardened APCs." \ No newline at end of file From f37dedee1561807ae2a7cb2a60c3c8e8ec3564c8 Mon Sep 17 00:00:00 2001 From: forest2001 <41653574+realforest2001@users.noreply.github.com> Date: Mon, 22 Jun 2026 04:53:44 +0300 Subject: [PATCH 07/25] Queen and hive backend (#12442) # About the pull request Changes some queen locked procs to xeno generic. Also adjusts some backend bits for the hive to allow them to be changed easier. Part of the project to break the pathogen PR down to smaller chunks for review purposes. # Explain why it's good for the game Stability for the future. # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: code: Changed some queen procs to xenomorph base. add: Changed Queen naming convention (thought I did this ages ago) code: Changed the tier_slot_multiplier var name to divisor because it was stupidly named. /:cl: --------- Co-authored-by: forest2001 --- .../mob/living/carbon/xenomorph/Embryo.dm | 9 +- .../mob/living/carbon/xenomorph/Evolution.dm | 10 +- .../mob/living/carbon/xenomorph/XenoProcs.dm | 6 +- .../xenomorph/abilities/general_abilities.dm | 286 +++++++++++++++++ .../living/carbon/xenomorph/castes/Queen.dm | 292 +----------------- .../living/carbon/xenomorph/hive_status.dm | 38 ++- .../mob/living/carbon/xenomorph/life.dm | 2 +- 7 files changed, 341 insertions(+), 302 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/Embryo.dm b/code/modules/mob/living/carbon/xenomorph/Embryo.dm index f29b97fc8fd9..51be269699d2 100644 --- a/code/modules/mob/living/carbon/xenomorph/Embryo.dm +++ b/code/modules/mob/living/carbon/xenomorph/Embryo.dm @@ -300,8 +300,10 @@ notify_ghosts(header = "Burst Imminent", message = "A [new_xeno.hive.prefix]Larva is about to chestburst out of [affected_mob][area_text]!", source = affected_mob) stage = 7 // Begin the autoburst countdown +/mob/living/carbon/xenomorph/proc/cause_unbearable_pain(mob/living/carbon/victim) + return -/mob/living/carbon/xenomorph/larva/proc/cause_unbearable_pain(mob/living/carbon/victim) +/mob/living/carbon/xenomorph/larva/cause_unbearable_pain(mob/living/carbon/victim) if(loc != victim) return victim.emote("scream") @@ -311,7 +313,10 @@ to_chat(victim, message) addtimer(CALLBACK(src, PROC_REF(cause_unbearable_pain), victim), rand(1, 3) SECONDS, TIMER_UNIQUE|TIMER_NO_HASH_WAIT) -/mob/living/carbon/xenomorph/larva/proc/chest_burst(mob/living/carbon/victim) +/mob/living/carbon/xenomorph/proc/chest_burst(mob/living/carbon/victim) + return + +/mob/living/carbon/xenomorph/larva/chest_burst(mob/living/carbon/victim) set waitfor = 0 if(victim.chestburst || loc != victim) return diff --git a/code/modules/mob/living/carbon/xenomorph/Evolution.dm b/code/modules/mob/living/carbon/xenomorph/Evolution.dm index 2b3aa1ea2ebe..bd33ced38533 100644 --- a/code/modules/mob/living/carbon/xenomorph/Evolution.dm +++ b/code/modules/mob/living/carbon/xenomorph/Evolution.dm @@ -66,6 +66,12 @@ GLOBAL_LIST_EMPTY(deevolved_ckeys) to_chat(src, SPAN_WARNING("The Hive cannot support this caste yet! ([floor((caste_datum.minimum_evolve_time - ROUND_TIME) / 10)] seconds remaining)")) return + if(hive.restricted_castes && (castepick in hive.restricted_castes)) + var/max_num = hive.restricted_castes[castepick] + if(hive.get_caste_count(castepick) >= max_num) + to_chat(src, SPAN_WARNING("The Hive has reached capacity for this caste!")) + return + if(!evolve_checks()) return @@ -518,10 +524,10 @@ GLOBAL_LIST_EMPTY(deevolved_ckeys) if(xeno.counts_for_slots) totalXenos++ - if(tier == 1 && (((used_tier_2_slots + used_tier_3_slots) / totalXenos) * hive.tier_slot_multiplier) >= 0.5 && castepick != XENO_CASTE_QUEEN) + if(tier == 1 && (((used_tier_2_slots + used_tier_3_slots) / totalXenos) * hive.tier_slot_divisor) >= 0.5 && castepick != XENO_CASTE_QUEEN) to_chat(src, SPAN_WARNING("The hive cannot support another Tier 2, wait for either more aliens to be born or someone to die.")) return FALSE - else if(tier == 2 && ((used_tier_3_slots / totalXenos) * hive.tier_slot_multiplier) >= 0.20 && castepick != XENO_CASTE_QUEEN) + else if(tier == 2 && ((used_tier_3_slots / totalXenos) * hive.tier_slot_divisor) >= 0.20 && castepick != XENO_CASTE_QUEEN) to_chat(src, SPAN_WARNING("The hive cannot support another Tier 3, wait for either more aliens to be born or someone to die.")) return FALSE diff --git a/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm b/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm index 7896d44e0e7d..a8d19062ff71 100644 --- a/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm +++ b/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm @@ -782,6 +782,10 @@ to_chat(src, SPAN_XENOBOLDNOTICE("There are no weeds here! Nesting hosts requires hive weeds.")) return + if(supplier_weeds.hivenumber != hivenumber) + to_chat(src, SPAN_XENOBOLDNOTICE("The weeds here do not belong to us!")) + return + if(supplier_weeds.weed_strength < WEED_LEVEL_HIVE) to_chat(src, SPAN_XENOBOLDNOTICE("The weeds here are not strong enough for nesting hosts.")) return @@ -807,7 +811,7 @@ to_chat(src, SPAN_XENONOTICE("There is already a host nested here!")) return - var/obj/structure/bed/nest/applicable_nest = new(get_turf(host_to_nest)) + var/obj/structure/bed/nest/applicable_nest = new(get_turf(host_to_nest), hivenumber) applicable_nest.dir = dir_to_nest if(!applicable_nest.buckle_mob(host_to_nest, src)) qdel(applicable_nest) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/general_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/general_abilities.dm index 9c22bf65e5c8..04fa1f7fe9b9 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/general_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/general_abilities.dm @@ -570,3 +570,289 @@ seethroughComp.toggle_active() apply_cooldown() + + + +/mob/living/carbon/xenomorph/proc/set_orders() + set category = "Alien.Hivemind-Control" + set name = "Set Hive Orders (50)" + set desc = "Give some specific orders to the hive. They can see this on the status pane." + + if(!check_state()) + return + if(last_special > world.time) + return + if(!check_plasma(50)) + return + use_plasma(50) + + var/txt = strip_html(input("Set the hive's orders to what? Leave blank to clear it.", "Hive Orders","")) + if(txt) + xeno_message("The Queen's will overwhelms your instincts...", 3, hivenumber) + xeno_message("\""+txt+"\"", 3, hivenumber) + xeno_maptext(txt, "Hive Orders Updated", hivenumber) + hive.hive_orders = txt + log_hiveorder("[key_name(usr)] has set the Hive Order to: [txt]") + else + hive.hive_orders = "" + + last_special = world.time + 15 SECONDS + +/mob/living/carbon/xenomorph/proc/hive_message() + set category = "Alien.Hivemind" + set name = "Word of the Queen (50)" + set desc = "Send a message to all aliens in the hive that is big and visible." + if(client.prefs.muted & MUTE_IC) + to_chat(src, SPAN_DANGER("You cannot send Announcements (muted).")) + return + if(health <= 0) + to_chat(src, SPAN_WARNING("You can't do that while unconscious.")) + return FALSE + if(!check_plasma(50)) + return FALSE + + // Get a reference to the ability to utilize cooldowns + var/datum/action/xeno_action/onclick/queen_word/word_ability + for(var/datum/action/xeno_action/action in actions) + if(istype(action, /datum/action/xeno_action/onclick/queen_word)) + word_ability = action + if(!word_ability.action_cooldown_check()) + return FALSE + break + + var/input = stripped_multiline_input(src, "This message will be broadcast throughout the hive.", "Word of the Queen", "") + if(!input) + return FALSE + + use_plasma(50) + if(word_ability) + word_ability.apply_cooldown() + + xeno_announcement(input, hivenumber, "The words of the [name] reverberate in our head...") + + message_admins("[key_name_admin(src)] has created a Word of the Queen report:") + log_admin("[key_name_admin(src)] Word of the Queen: [input]") + return TRUE + +/mob/living/carbon/xenomorph/proc/claw_toggle() + set name = "Permit/Disallow Harming" + set desc = "Allows you to permit the hive to harm/slash." + set category = "Alien.Hivemind-Control" + + if(stat) + to_chat(src, SPAN_WARNING("You can't do that now.")) + return + + if(!hive) + to_chat(src, SPAN_WARNING("You can't do that now.")) + CRASH("[src] attempted to toggle slashing without a linked hive") + + if(hive.hive_flags_locked) + to_chat(src, SPAN_WARNING("You can't do that now.")) + return + + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_TOGGLE_SLASH)) + to_chat(src, SPAN_WARNING("You must wait a bit before you can toggle this again.")) + return + + var/current_setting = null + if(CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_SLASH_ALLOW_ALL)) + current_setting = "Allowed" + else if(!(hive.hive_flags & XENO_SLASH_INFECTED) && (hive.hive_flags & XENO_SLASH_NORMAL)) + current_setting = "Restricted - Infected Hosts" + else if(!(hive.hive_flags & XENO_SLASH_ALLOW_ALL)) + current_setting = "Forbidden" + + var/choice = tgui_input_list(src, "Choose which level of harming hosts to permit to your hive.", "Harming", list("Forbidden", "Restricted - Infected Hosts", "Allowed"), theme="hive_status", default=current_setting) + if(!choice) + return + + if(choice == "Allowed") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already allow harming.")) + return + to_chat(src, SPAN_XENONOTICE("You allow harming.")) + xeno_message(SPAN_XENOANNOUNCE("The Queen has permitted the harming of hosts! Go hog wild!"), hivenumber=hivenumber) + hive.hive_flags |= XENO_SLASH_ALLOW_ALL + else if(choice == "Restricted - Infected Hosts") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already forbid harming of infected hosts.")) + return + to_chat(src, SPAN_XENONOTICE("You forbid harming of infected hosts.")) + xeno_message(SPAN_XENOANNOUNCE("The Queen has restricted the harming of hosts. You can no longer slash infected hosts."), hivenumber=hivenumber) + hive.hive_flags &= ~XENO_SLASH_INFECTED + hive.hive_flags |= XENO_SLASH_NORMAL + else if(choice == "Forbidden") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already forbid harming entirely.")) + return + to_chat(src, SPAN_XENONOTICE("You forbid harming entirely.")) + xeno_message(SPAN_XENOANNOUNCE("The Queen has forbidden the harming of hosts. You can no longer slash your enemies."), hivenumber=hivenumber) + hive.hive_flags &= ~XENO_SLASH_ALLOW_ALL + + TIMER_COOLDOWN_START(src, COOLDOWN_TOGGLE_SLASH, 30 SECONDS) + +/mob/living/carbon/xenomorph/proc/construction_toggle() + set name = "Permit/Disallow Construction Placement" + set desc = "Allows you to permit the hive to place construction nodes freely." + set category = "Alien.Hivemind-Control" + + if(stat) + to_chat(src, SPAN_WARNING("You can't do that now.")) + return + + if(!hive) + to_chat(src, SPAN_WARNING("You can't do that now.")) + CRASH("[src] attempted to toggle construction without a linked hive") + + if(hive.hive_flags_locked) + to_chat(src, SPAN_WARNING("You can't do that now.")) + return + + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_TOGGLE_CONSTRUCTION)) + to_chat(src, SPAN_WARNING("You must wait a bit before you can toggle this again.")) + return + + var/current_setting = null + if(CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_CONSTRUCTION_ALLOW_ALL)) + current_setting = "Anyone" + else if(!(hive.hive_flags & XENO_CONSTRUCTION_NORMAL) && CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_CONSTRUCTION_QUEEN|XENO_CONSTRUCTION_LEADERS)) + current_setting = "Leaders" + else if(!(hive.hive_flags & (XENO_CONSTRUCTION_LEADERS|XENO_CONSTRUCTION_NORMAL)) && (hive.hive_flags & XENO_CONSTRUCTION_QUEEN)) + current_setting = "Queen" + + var/choice = tgui_input_list(src, "Choose which level of construction placement freedom to permit to your hive.", "Construction", list("Queen", "Leaders", "Anyone"), theme="hive_status", default=current_setting) + if(!choice) + return + + if(choice == "Anyone") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already allow construction placement to all builder castes.")) + return + to_chat(src, SPAN_XENONOTICE("You allow construction placement to all builder castes.")) + xeno_message("The Queen has permitted the placement of construction nodes to all builder castes!", hivenumber=hivenumber) + hive.hive_flags |= XENO_CONSTRUCTION_ALLOW_ALL + else if(choice == "Leaders") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already restrict construction placement to leaders only.")) + return + to_chat(src, SPAN_XENONOTICE("You restrict construction placement to leaders only.")) + xeno_message("The Queen has restricted the placement of construction nodes to leading builder castes only.", hivenumber=hivenumber) + hive.hive_flags &= ~XENO_CONSTRUCTION_NORMAL + hive.hive_flags |= XENO_CONSTRUCTION_QUEEN|XENO_CONSTRUCTION_LEADERS + else if(choice == "Queen") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already forbid construction placement entirely.")) + return + to_chat(src, SPAN_XENONOTICE("You forbid construction placement entirely.")) + xeno_message("The Queen has forbidden the placement of construction nodes to all but herself.", hivenumber=hivenumber) + hive.hive_flags &= ~(XENO_CONSTRUCTION_LEADERS|XENO_CONSTRUCTION_NORMAL) + hive.hive_flags |= XENO_CONSTRUCTION_QUEEN + + TIMER_COOLDOWN_START(src, COOLDOWN_TOGGLE_CONSTRUCTION, 30 SECONDS) + +/mob/living/carbon/xenomorph/proc/destruction_toggle() + set name = "Permit/Disallow Special Structure Destruction" + set desc = "Allows you to permit the hive to destroy special structures freely." + set category = "Alien.Hivemind-Control" + + if(stat) + to_chat(src, SPAN_WARNING("You can't do that now.")) + return + + if(!hive) + to_chat(src, SPAN_WARNING("You can't do that now.")) + CRASH("[src] attempted to toggle deconstruction without a linked hive") + + if(hive.hive_flags_locked) + to_chat(src, SPAN_WARNING("You can't do that now.")) + return + + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_TOGGLE_DECONSTRUCTION)) + to_chat(src, SPAN_WARNING("You must wait a bit before you can toggle this again.")) + return + + var/current_setting = null + if(CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_DECONSTRUCTION_ALLOW_ALL)) + current_setting = "Anyone" + else if(!(hive.hive_flags & XENO_DECONSTRUCTION_NORMAL) && CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_DECONSTRUCTION_QUEEN|XENO_DECONSTRUCTION_LEADERS)) + current_setting = "Leaders" + else if(!(hive.hive_flags & (XENO_DECONSTRUCTION_LEADERS|XENO_DECONSTRUCTION_NORMAL)) && (hive.hive_flags & XENO_DECONSTRUCTION_QUEEN)) + current_setting = "Queen" + + var/choice = tgui_input_list(src, "Choose which level of destruction freedom to permit to your hive.", "Deconstruction", list("Queen", "Leaders", "Anyone"), theme="hive_status", default=current_setting) + if(!choice) + return + + if(choice == "Anyone") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already allow special structure destruction to all builder castes and leaders.")) + return + to_chat(src, SPAN_XENONOTICE("You allow special structure destruction to all builder castes and leaders.")) + xeno_message("The Queen has permitted the destruction of special structures to all builder castes and leaders!", hivenumber=hivenumber) + hive.hive_flags |= XENO_DECONSTRUCTION_ALLOW_ALL + else if(choice == "Leaders") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already restrict special structure destruction to leaders only.")) + return + to_chat(src, SPAN_XENONOTICE("You restrict special structure destruction to leaders only.")) + xeno_message("The Queen has restricted the destruction of special structures to leaders only.", hivenumber=hivenumber) + hive.hive_flags &= ~XENO_DECONSTRUCTION_NORMAL + hive.hive_flags |= XENO_DECONSTRUCTION_QUEEN|XENO_DECONSTRUCTION_LEADERS + else if(choice == "Queen") + if(current_setting == choice) + to_chat(src, SPAN_XENOWARNING("You already forbid special structure destruction entirely.")) + return + to_chat(src, SPAN_XENONOTICE("You forbid special structure destruction entirely.")) + xeno_message("The Queen has forbidden the destruction of special structures to all but herself.", hivenumber=hivenumber) + hive.hive_flags &= ~(XENO_DECONSTRUCTION_LEADERS|XENO_DECONSTRUCTION_NORMAL) + hive.hive_flags |= XENO_DECONSTRUCTION_QUEEN + + TIMER_COOLDOWN_START(src, COOLDOWN_TOGGLE_DECONSTRUCTION, 30 SECONDS) + +/mob/living/carbon/xenomorph/proc/unnesting_toggle() + set name = "Permit/Disallow Unnesting" + set desc = "Allows you to restrict unnesting to drones." + set category = "Alien.Hivemind-Control" + + if(stat) + to_chat(src, SPAN_WARNING("You can't do that now.")) + + if(!hive) + to_chat(src, SPAN_WARNING("You can't do that now.")) + CRASH("[src] attempted to toggle unnesting without a linked hive") + + if(hive.hive_flags_locked) + to_chat(src, SPAN_WARNING("You can't do that now.")) + return + + if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_TOGGLE_UNNESTING)) + to_chat(src, SPAN_WARNING("You must wait a bit before you can toggle this again.")) + return + + var/current_setting = null + if(!(hive.hive_flags & XENO_UNNESTING_RESTRICTED)) + current_setting = "Anyone" + else if(hive.hive_flags & XENO_UNNESTING_RESTRICTED) + current_setting = "Drone castes" + + var/choice = tgui_input_list(src, "Choose which level of unnesting freedom to permit to your hive.", "Unnesting", list("Drone castes", "Anyone"), theme="hive_status", default=current_setting) + if(!choice) + return + + if(choice == "Anyone") + if(!(hive.hive_flags & XENO_UNNESTING_RESTRICTED)) + to_chat(src, SPAN_XENOWARNING("You have already allowed everyone to unnest hosts.")) + return + to_chat(src, SPAN_XENONOTICE("You have allowed everyone to unnest hosts.")) + xeno_message("The Queen has allowed everyone to unnest hosts.", hivenumber=hivenumber) + hive.hive_flags &= ~XENO_UNNESTING_RESTRICTED + else + if(hive.hive_flags & XENO_UNNESTING_RESTRICTED) + to_chat(src, SPAN_XENOWARNING("You have already forbidden anyone to unnest hosts, except for the drone caste.")) + return + to_chat(src, SPAN_XENONOTICE("You have forbidden anyone to unnest hosts, except for the drone caste.")) + xeno_message("The Queen has forbidden anyone to unnest hosts, except for the drone caste.", hivenumber=hivenumber) + hive.hive_flags |= XENO_UNNESTING_RESTRICTED + + TIMER_COOLDOWN_START(src, COOLDOWN_TOGGLE_UNNESTING, 30 SECONDS) diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm b/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm index af3bf4cd6ca8..d0d141e3125a 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm @@ -335,8 +335,8 @@ /mob/living/carbon/xenomorph/proc/construction_toggle, /mob/living/carbon/xenomorph/proc/destruction_toggle, /mob/living/carbon/xenomorph/proc/unnesting_toggle, - /mob/living/carbon/xenomorph/queen/proc/set_orders, - /mob/living/carbon/xenomorph/queen/proc/hive_message, + /mob/living/carbon/xenomorph/proc/set_orders, + /mob/living/carbon/xenomorph/proc/hive_message, /mob/living/carbon/xenomorph/proc/rename_tunnel, /mob/living/carbon/xenomorph/proc/set_hugger_reserve_for_morpher, ) @@ -493,13 +493,13 @@ if(XENO_NORMAL) name = "[name_prefix]Queen" //Regular if(XENO_MATURE) - name = "[name_prefix]Elder Queen" //Mature + name = "[name_prefix]Empress" //Mature if(XENO_ELDER) name = "[name_prefix]Elder Empress" //Elite if(XENO_ANCIENT) name = "[name_prefix]Ancient Empress" //Ancient if(XENO_PRIME) - name = "[name_prefix]Prime Empress" //Primordial + name = "[name_prefix]Prime Empress" //Prime else age = XENO_NORMAL if(client) @@ -674,290 +674,6 @@ if(queen_age_temp_timer_id != TIMER_ID_NULL) . += "Temporary Maturity: [time2text(timeleft(queen_age_temp_timer_id), "mm:ss")] remaining" -/mob/living/carbon/xenomorph/queen/proc/set_orders() - set category = "Alien.Hivemind-Control" - set name = "Set Hive Orders (50)" - set desc = "Give some specific orders to the hive. They can see this on the status pane." - - if(!check_state()) - return - if(last_special > world.time) - return - if(!check_plasma(50)) - return - use_plasma(50) - - var/txt = strip_html(input("Set the hive's orders to what? Leave blank to clear it.", "Hive Orders","")) - if(txt) - xeno_message("The Queen's will overwhelms your instincts...", 3, hivenumber) - xeno_message("\""+txt+"\"", 3, hivenumber) - xeno_maptext(txt, "Hive Orders Updated", hivenumber) - hive.hive_orders = txt - log_hiveorder("[key_name(usr)] has set the Hive Order to: [txt]") - else - hive.hive_orders = "" - - last_special = world.time + 15 SECONDS - -/mob/living/carbon/xenomorph/queen/proc/hive_message() - set category = "Alien.Hivemind" - set name = "Word of the Queen (50)" - set desc = "Send a message to all aliens in the hive that is big and visible." - if(client.prefs.muted & MUTE_IC) - to_chat(src, SPAN_DANGER("You cannot send Announcements (muted).")) - return - if(health <= 0) - to_chat(src, SPAN_WARNING("You can't do that while unconscious.")) - return FALSE - if(!check_plasma(50)) - return FALSE - - // Get a reference to the ability to utilize cooldowns - var/datum/action/xeno_action/onclick/queen_word/word_ability - for(var/datum/action/xeno_action/action in actions) - if(istype(action, /datum/action/xeno_action/onclick/queen_word)) - word_ability = action - if(!word_ability.action_cooldown_check()) - return FALSE - break - - var/input = stripped_multiline_input(src, "This message will be broadcast throughout the hive.", "Word of the Queen", "") - if(!input) - return FALSE - - use_plasma(50) - if(word_ability) - word_ability.apply_cooldown() - - xeno_announcement(input, hivenumber, "The words of the [name] reverberate in our head...") - - message_admins("[key_name_admin(src)] has created a Word of the Queen report:") - log_admin("[key_name_admin(src)] Word of the Queen: [input]") - return TRUE - -/mob/living/carbon/xenomorph/proc/claw_toggle() - set name = "Permit/Disallow Harming" - set desc = "Allows you to permit the hive to harm/slash." - set category = "Alien.Hivemind-Control" - - if(stat) - to_chat(src, SPAN_WARNING("You can't do that now.")) - return - - if(!hive) - to_chat(src, SPAN_WARNING("You can't do that now.")) - CRASH("[src] attempted to toggle slashing without a linked hive") - - if(hive.hive_flags_locked) - to_chat(src, SPAN_WARNING("You can't do that now.")) - return - - if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_TOGGLE_SLASH)) - to_chat(src, SPAN_WARNING("You must wait a bit before you can toggle this again.")) - return - - var/current_setting = null - if(CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_SLASH_ALLOW_ALL)) - current_setting = "Allowed" - else if(!(hive.hive_flags & XENO_SLASH_INFECTED) && (hive.hive_flags & XENO_SLASH_NORMAL)) - current_setting = "Restricted - Infected Hosts" - else if(!(hive.hive_flags & XENO_SLASH_ALLOW_ALL)) - current_setting = "Forbidden" - - var/choice = tgui_input_list(src, "Choose which level of harming hosts to permit to your hive.", "Harming", list("Forbidden", "Restricted - Infected Hosts", "Allowed"), theme="hive_status", default=current_setting) - if(!choice) - return - - if(choice == "Allowed") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already allow harming.")) - return - to_chat(src, SPAN_XENONOTICE("You allow harming.")) - xeno_message(SPAN_XENOANNOUNCE("The Queen has permitted the harming of hosts! Go hog wild!"), hivenumber=hivenumber) - hive.hive_flags |= XENO_SLASH_ALLOW_ALL - else if(choice == "Restricted - Infected Hosts") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already forbid harming of infected hosts.")) - return - to_chat(src, SPAN_XENONOTICE("You forbid harming of infected hosts.")) - xeno_message(SPAN_XENOANNOUNCE("The Queen has restricted the harming of hosts. You can no longer slash infected hosts."), hivenumber=hivenumber) - hive.hive_flags &= ~XENO_SLASH_INFECTED - hive.hive_flags |= XENO_SLASH_NORMAL - else if(choice == "Forbidden") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already forbid harming entirely.")) - return - to_chat(src, SPAN_XENONOTICE("You forbid harming entirely.")) - xeno_message(SPAN_XENOANNOUNCE("The Queen has forbidden the harming of hosts. You can no longer slash your enemies."), hivenumber=hivenumber) - hive.hive_flags &= ~XENO_SLASH_ALLOW_ALL - - TIMER_COOLDOWN_START(src, COOLDOWN_TOGGLE_SLASH, 30 SECONDS) - -/mob/living/carbon/xenomorph/proc/construction_toggle() - set name = "Permit/Disallow Construction Placement" - set desc = "Allows you to permit the hive to place construction nodes freely." - set category = "Alien.Hivemind-Control" - - if(stat) - to_chat(src, SPAN_WARNING("You can't do that now.")) - return - - if(!hive) - to_chat(src, SPAN_WARNING("You can't do that now.")) - CRASH("[src] attempted to toggle construction without a linked hive") - - if(hive.hive_flags_locked) - to_chat(src, SPAN_WARNING("You can't do that now.")) - return - - if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_TOGGLE_CONSTRUCTION)) - to_chat(src, SPAN_WARNING("You must wait a bit before you can toggle this again.")) - return - - var/current_setting = null - if(CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_CONSTRUCTION_ALLOW_ALL)) - current_setting = "Anyone" - else if(!(hive.hive_flags & XENO_CONSTRUCTION_NORMAL) && CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_CONSTRUCTION_QUEEN|XENO_CONSTRUCTION_LEADERS)) - current_setting = "Leaders" - else if(!(hive.hive_flags & (XENO_CONSTRUCTION_LEADERS|XENO_CONSTRUCTION_NORMAL)) && (hive.hive_flags & XENO_CONSTRUCTION_QUEEN)) - current_setting = "Queen" - - var/choice = tgui_input_list(src, "Choose which level of construction placement freedom to permit to your hive.", "Construction", list("Queen", "Leaders", "Anyone"), theme="hive_status", default=current_setting) - if(!choice) - return - - if(choice == "Anyone") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already allow construction placement to all builder castes.")) - return - to_chat(src, SPAN_XENONOTICE("You allow construction placement to all builder castes.")) - xeno_message("The Queen has permitted the placement of construction nodes to all builder castes!", hivenumber=hivenumber) - hive.hive_flags |= XENO_CONSTRUCTION_ALLOW_ALL - else if(choice == "Leaders") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already restrict construction placement to leaders only.")) - return - to_chat(src, SPAN_XENONOTICE("You restrict construction placement to leaders only.")) - xeno_message("The Queen has restricted the placement of construction nodes to leading builder castes only.", hivenumber=hivenumber) - hive.hive_flags &= ~XENO_CONSTRUCTION_NORMAL - hive.hive_flags |= XENO_CONSTRUCTION_QUEEN|XENO_CONSTRUCTION_LEADERS - else if(choice == "Queen") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already forbid construction placement entirely.")) - return - to_chat(src, SPAN_XENONOTICE("You forbid construction placement entirely.")) - xeno_message("The Queen has forbidden the placement of construction nodes to all but herself.", hivenumber=hivenumber) - hive.hive_flags &= ~(XENO_CONSTRUCTION_LEADERS|XENO_CONSTRUCTION_NORMAL) - hive.hive_flags |= XENO_CONSTRUCTION_QUEEN - - TIMER_COOLDOWN_START(src, COOLDOWN_TOGGLE_CONSTRUCTION, 30 SECONDS) - -/mob/living/carbon/xenomorph/proc/destruction_toggle() - set name = "Permit/Disallow Special Structure Destruction" - set desc = "Allows you to permit the hive to destroy special structures freely." - set category = "Alien.Hivemind-Control" - - if(stat) - to_chat(src, SPAN_WARNING("You can't do that now.")) - return - - if(!hive) - to_chat(src, SPAN_WARNING("You can't do that now.")) - CRASH("[src] attempted to toggle deconstruction without a linked hive") - - if(hive.hive_flags_locked) - to_chat(src, SPAN_WARNING("You can't do that now.")) - return - - if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_TOGGLE_DECONSTRUCTION)) - to_chat(src, SPAN_WARNING("You must wait a bit before you can toggle this again.")) - return - - var/current_setting = null - if(CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_DECONSTRUCTION_ALLOW_ALL)) - current_setting = "Anyone" - else if(!(hive.hive_flags & XENO_DECONSTRUCTION_NORMAL) && CHECK_MULTIPLE_BITFIELDS(hive.hive_flags, XENO_DECONSTRUCTION_QUEEN|XENO_DECONSTRUCTION_LEADERS)) - current_setting = "Leaders" - else if(!(hive.hive_flags & (XENO_DECONSTRUCTION_LEADERS|XENO_DECONSTRUCTION_NORMAL)) && (hive.hive_flags & XENO_DECONSTRUCTION_QUEEN)) - current_setting = "Queen" - - var/choice = tgui_input_list(src, "Choose which level of destruction freedom to permit to your hive.", "Deconstruction", list("Queen", "Leaders", "Anyone"), theme="hive_status", default=current_setting) - if(!choice) - return - - if(choice == "Anyone") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already allow special structure destruction to all builder castes and leaders.")) - return - to_chat(src, SPAN_XENONOTICE("You allow special structure destruction to all builder castes and leaders.")) - xeno_message("The Queen has permitted the destruction of special structures to all builder castes and leaders!", hivenumber=hivenumber) - hive.hive_flags |= XENO_DECONSTRUCTION_ALLOW_ALL - else if(choice == "Leaders") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already restrict special structure destruction to leaders only.")) - return - to_chat(src, SPAN_XENONOTICE("You restrict special structure destruction to leaders only.")) - xeno_message("The Queen has restricted the destruction of special structures to leaders only.", hivenumber=hivenumber) - hive.hive_flags &= ~XENO_DECONSTRUCTION_NORMAL - hive.hive_flags |= XENO_DECONSTRUCTION_QUEEN|XENO_DECONSTRUCTION_LEADERS - else if(choice == "Queen") - if(current_setting == choice) - to_chat(src, SPAN_XENOWARNING("You already forbid special structure destruction entirely.")) - return - to_chat(src, SPAN_XENONOTICE("You forbid special structure destruction entirely.")) - xeno_message("The Queen has forbidden the destruction of special structures to all but herself.", hivenumber=hivenumber) - hive.hive_flags &= ~(XENO_DECONSTRUCTION_LEADERS|XENO_DECONSTRUCTION_NORMAL) - hive.hive_flags |= XENO_DECONSTRUCTION_QUEEN - - TIMER_COOLDOWN_START(src, COOLDOWN_TOGGLE_DECONSTRUCTION, 30 SECONDS) - -/mob/living/carbon/xenomorph/proc/unnesting_toggle() - set name = "Permit/Disallow Unnesting" - set desc = "Allows you to restrict unnesting to drones." - set category = "Alien.Hivemind-Control" - - if(stat) - to_chat(src, SPAN_WARNING("You can't do that now.")) - - if(!hive) - to_chat(src, SPAN_WARNING("You can't do that now.")) - CRASH("[src] attempted to toggle unnesting without a linked hive") - - if(hive.hive_flags_locked) - to_chat(src, SPAN_WARNING("You can't do that now.")) - return - - if(TIMER_COOLDOWN_CHECK(src, COOLDOWN_TOGGLE_UNNESTING)) - to_chat(src, SPAN_WARNING("You must wait a bit before you can toggle this again.")) - return - - var/current_setting = null - if(!(hive.hive_flags & XENO_UNNESTING_RESTRICTED)) - current_setting = "Anyone" - else if(hive.hive_flags & XENO_UNNESTING_RESTRICTED) - current_setting = "Drone castes" - - var/choice = tgui_input_list(src, "Choose which level of unnesting freedom to permit to your hive.", "Unnesting", list("Drone castes", "Anyone"), theme="hive_status", default=current_setting) - if(!choice) - return - - if(choice == "Anyone") - if(!(hive.hive_flags & XENO_UNNESTING_RESTRICTED)) - to_chat(src, SPAN_XENOWARNING("You have already allowed everyone to unnest hosts.")) - return - to_chat(src, SPAN_XENONOTICE("You have allowed everyone to unnest hosts.")) - xeno_message("The Queen has allowed everyone to unnest hosts.", hivenumber=hivenumber) - hive.hive_flags &= ~XENO_UNNESTING_RESTRICTED - else - if(hive.hive_flags & XENO_UNNESTING_RESTRICTED) - to_chat(src, SPAN_XENOWARNING("You have already forbidden anyone to unnest hosts, except for the drone caste.")) - return - to_chat(src, SPAN_XENONOTICE("You have forbidden anyone to unnest hosts, except for the drone caste.")) - xeno_message("The Queen has forbidden anyone to unnest hosts, except for the drone caste.", hivenumber=hivenumber) - hive.hive_flags |= XENO_UNNESTING_RESTRICTED - - TIMER_COOLDOWN_START(src, COOLDOWN_TOGGLE_UNNESTING, 30 SECONDS) - /mob/living/carbon/xenomorph/queen/handle_screech_act(mob/self, mob/living/carbon/xenomorph/queen/queen) return COMPONENT_SCREECH_ACT_CANCEL diff --git a/code/modules/mob/living/carbon/xenomorph/hive_status.dm b/code/modules/mob/living/carbon/xenomorph/hive_status.dm index ec58bd42843f..0b0e295c43c5 100644 --- a/code/modules/mob/living/carbon/xenomorph/hive_status.dm +++ b/code/modules/mob/living/carbon/xenomorph/hive_status.dm @@ -21,9 +21,9 @@ var/color = null var/ui_color = null // Color for hive status collapsible buttons and xeno count list var/prefix = "" - var/queen_leader_limit = 2 - var/list/open_xeno_leader_positions = list(1, 2) // Ordered list of xeno leader positions (indexes in xeno_leader_list) that are not occupied - var/list/xeno_leader_list[2] // Ordered list (i.e. index n holds the nth xeno leader) + var/queen_leader_limit = 4 + var/list/open_xeno_leader_positions = list(1, 2, 3, 4) // Ordered list of xeno leader positions (indexes in xeno_leader_list) that are not occupied + var/list/xeno_leader_list[4] // Ordered list (i.e. index n holds the nth xeno leader) var/stored_larva = 0 ///used by /datum/hive_status/proc/increase_larva_after_burst() to support non-integer increases to larva @@ -49,7 +49,8 @@ var/allowed_nest_distance = 15 //How far away do we allow nests from an ovied Queen. Default 15 tiles. var/obj/effect/alien/resin/special/pylon/core/hive_location = null //Set to ref every time a core is built, for defining the hive location - var/tier_slot_multiplier = 1 + /// Slots are divided by this value to reach final value. + var/tier_slot_divisor = 1 var/larva_gestation_multiplier = 1 var/bonus_larva_spawn_chance = 1 var/hijack_burrowed_surge = FALSE //at hijack, start spawning lots of burrowed @@ -87,7 +88,7 @@ XENO_STRUCTURE_PYLON = 2, ) - var/global/list/hive_structure_types = list( + var/list/hive_structure_types = list( XENO_STRUCTURE_CORE = /datum/construction_template/xenomorph/core, XENO_STRUCTURE_CLUSTER = /datum/construction_template/xenomorph/cluster, XENO_STRUCTURE_EGGMORPH = /datum/construction_template/xenomorph/eggmorph, @@ -100,6 +101,8 @@ /// Lazylist of possible caste defines the hive disallows evolution to var/list/blacklisted_castes = null + /// List of caste defines associated with a maximum capacity number. + var/list/restricted_castes = null var/datum/hive_status_ui/hive_ui var/datum/mark_menu_ui/mark_ui @@ -377,7 +380,7 @@ /datum/hive_status/proc/recalculate_hive() //No leaders for a Hive without a Queen! - queen_leader_limit = living_xeno_queen ? 4 : 0 + queen_leader_limit = living_xeno_queen ? initial(queen_leader_limit) : 0 if (length(xeno_leader_list) > queen_leader_limit) var/diff = 0 @@ -517,6 +520,23 @@ return xeno_counts +/// Returns number of xenos in the given hive that are the searched caste. +/datum/hive_status/proc/get_caste_count(caste_to_check) + if(!caste_to_check) + return + var/caste_count = 0 + for(var/mob/living/carbon/xenomorph/xeno as anything in totalXenos) + //don't show xenos in the thunderdome when admins test stuff. + if(should_block_game_interaction(xeno)) + var/area/cur_area = get_area(xeno) + if(!(cur_area.flags_atom & AREA_ALLOW_XENO_JOIN)) + continue + + if(xeno.caste && xeno.counts_for_slots && (xeno.caste.caste_type == caste_to_check)) + caste_count++ + + return caste_count + /// Returns the full minimap icon as base64 string. /datum/hive_status/proc/get_xeno_icons() // Must match hardcoded xeno counts order. @@ -743,10 +763,10 @@ effective_total++ // Tier 3 slots are always 20% of the total xenos in the hive - slots[TIER_3][OPEN_SLOTS] = max(0, ceil(0.20*effective_total/tier_slot_multiplier) - used_tier_3_slots) + slots[TIER_3][OPEN_SLOTS] = max(0, ceil(0.20*effective_total/tier_slot_divisor) - used_tier_3_slots) // Tier 2 slots are between 30% and 50% of the hive, depending // on how many T3s there are. - slots[TIER_2][OPEN_SLOTS] = max(0, ceil(0.5*effective_total/tier_slot_multiplier) - used_tier_2_slots - used_tier_3_slots) + slots[TIER_2][OPEN_SLOTS] = max(0, ceil(0.5*effective_total/tier_slot_divisor) - used_tier_2_slots - used_tier_3_slots) return slots @@ -815,6 +835,8 @@ /datum/hive_status/proc/abandon_on_hijack() var/area/hijacked_dropship = get_area(living_xeno_queen) + if(!hijacked_dropship) + return FALSE var/shipside_humans_weighted_count = 0 var/xenos_count = 0 for(var/name_ref in hive_structures) diff --git a/code/modules/mob/living/carbon/xenomorph/life.dm b/code/modules/mob/living/carbon/xenomorph/life.dm index 706dbdf36e8e..c23a39ece7e2 100644 --- a/code/modules/mob/living/carbon/xenomorph/life.dm +++ b/code/modules/mob/living/carbon/xenomorph/life.dm @@ -599,6 +599,6 @@ Make sure their actual health updates immediately.*/ return TRUE //weeds, yes! if(need_weeds) return FALSE //needs weeds, doesn't have any - if(hive && hive.living_xeno_queen && !is_mainship_level(hive.living_xeno_queen.loc.z) && is_mainship_level(loc.z)) + if((hive && !hive.allow_no_queen_actions) && hive.living_xeno_queen && (!is_mainship_level(hive.living_xeno_queen.loc.z) && is_mainship_level(loc.z))) return FALSE //We are on the ship, but the Queen isn't return TRUE //we have off-weed healing, and either we're on Almayer with the Queen, or we're on non-Almayer, or the Queen is dead, good enough! From da486921c00fff9088b35f538b22cb4169eb47b5 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 02:19:19 +0000 Subject: [PATCH 08/25] Automatic changelog for PR #12442 [ci skip] --- html/changelogs/AutoChangeLog-pr-12442.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12442.yml diff --git a/html/changelogs/AutoChangeLog-pr-12442.yml b/html/changelogs/AutoChangeLog-pr-12442.yml new file mode 100644 index 000000000000..cf4b1de2bb08 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12442.yml @@ -0,0 +1,6 @@ +author: "realforest2001" +delete-after: True +changes: + - code_imp: "Changed some queen procs to xenomorph base." + - rscadd: "Changed Queen naming convention (thought I did this ages ago)" + - code_imp: "Changed the tier_slot_multiplier var name to divisor because it was stupidly named." \ No newline at end of file From 42ec92eeaa22af073472059cc4ada12ac3606b42 Mon Sep 17 00:00:00 2001 From: forest2001 <41653574+realforest2001@users.noreply.github.com> Date: Mon, 22 Jun 2026 04:53:48 +0300 Subject: [PATCH 09/25] Abomination prey items and cleaning of nulls. (#12441) # About the pull request Adds abomination pelt and skull for Yautja skinning. Also adds code to delete instances of skull and pelt that have no icon state, so any xeno that isn't setup to have one won't spawn blank items. Part of the project to break the pathogen PR down to smaller chunks for review purposes. # Explain why it's good for the game Consistency. # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: add: Added Abomination pelt and skull items. code: Added code to delete instances of skull and pelt that have no icon. /:cl: --------- Co-authored-by: forest2001 Co-authored-by: fira --- code/modules/cm_preds/yaut_items.dm | 30 ++++++++++++++++++ .../carbon/xenomorph/castes/Predalien.dm | 3 ++ icons/obj/items/hunter/prey_items.dmi | Bin 20428 -> 21507 bytes 3 files changed, 33 insertions(+) diff --git a/code/modules/cm_preds/yaut_items.dm b/code/modules/cm_preds/yaut_items.dm index 2d25953291cf..820d6105d6b7 100644 --- a/code/modules/cm_preds/yaut_items.dm +++ b/code/modules/cm_preds/yaut_items.dm @@ -1598,6 +1598,11 @@ GLOBAL_VAR_INIT(youngblood_timer_yautja, 0) icon = 'icons/obj/items/hunter/prey_items.dmi' unacidable = TRUE +/obj/item/skull/Initialize(mapload, ...) + . = ..() + if(!icon_state) + return INITIALIZE_HINT_QDEL + /obj/item/skull/queen name = "Queen skull" desc = "Skull of a prime hive ruler, mother to many." @@ -1699,6 +1704,16 @@ GLOBAL_VAR_INIT(youngblood_timer_yautja, 0) desc = "Skull of a highly acidic xenomorph, a venomous ranged attacker." icon_state = "spitter_skull" +/obj/item/skull/abomination + name = "Abomination skull" + desc = "Skull of a mysterious hybrid xenomorph, a horror on the field." + icon_state = "predalien_skull" + +/obj/item/skull/abomination/get_examine_text(mob/user) + . = ..() + if(isyautja(user)) + . += SPAN_RED("Not even this relic can be tolerated. Destroy it.") + // PELTS /obj/item/pelt @@ -1706,6 +1721,11 @@ GLOBAL_VAR_INIT(youngblood_timer_yautja, 0) icon = 'icons/obj/items/hunter/prey_items.dmi' unacidable = TRUE +/obj/item/pelt/Initialize(mapload, ...) + . = ..() + if(!icon_state) + return INITIALIZE_HINT_QDEL + /obj/item/pelt/queen name = "Queen pelt" desc = "The pelt of a prime hive ruler, mother to many." @@ -1811,6 +1831,16 @@ GLOBAL_VAR_INIT(youngblood_timer_yautja, 0) desc = "The hide of a juvenile Xenomorph, a grim trophy from a fledgling that never reached its full potential." icon_state = "larva_pelt" +/obj/item/pelt/abomination + name = "Abomination pelt" + desc = "The pelt of a mysterious hybrid xenomorph, a horror on the field." + icon_state = "predalien_pelt" + +/obj/item/pelt/abomination/get_examine_text(mob/user) + . = ..() + if(isyautja(user)) + . += SPAN_RED("Not even this relic can be tolerated. Destroy it.") + /// TOOLS /obj/item/tool/crowbar/yautja diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Predalien.dm b/code/modules/mob/living/carbon/xenomorph/castes/Predalien.dm index 1a1a63a4bb3e..8a3ad059710f 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/Predalien.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/Predalien.dm @@ -67,6 +67,9 @@ /datum/action/xeno_action/onclick/toggle_gut_targeting, ) + skull = /obj/item/skull/abomination + pelt = /obj/item/pelt/abomination + weed_food_icon = 'icons/mob/xenos/weeds_64x64.dmi' weed_food_states = list("Predalien_1","Predalien_2","Predalien_3") weed_food_states_flipped = list("Predalien_1","Predalien_2","Predalien_3") diff --git a/icons/obj/items/hunter/prey_items.dmi b/icons/obj/items/hunter/prey_items.dmi index 654120767a8f0fda7950d871caba1ea52df4854d..da22076cd39dd9abbccb4c091235ed1bb9c81058 100644 GIT binary patch literal 21507 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 Date: Mon, 22 Jun 2026 04:04:48 +0200 Subject: [PATCH 10/25] [TM v.1.3] Warrior "Bulwark" Strain. (Feedback link in description) (#10541) # **If you want to discuss, give suggestions or feedback:** click link: https://discord.com/channels/150315577943130112/1405554749838721085/1405554749838721085 **Discord Contributors:** _(did not code, but should credit them)_ - **TheBadPerson - Jack Sidower/EKSS** for suggesting names for abilities. - **Dave** man, you really tryied to give a lot of cool ideas, but they did not fit this strain, but would be cool for crusher or crusher strains. - **igloo | WA-L7** helping with default stats for bulwark and suggestions. - **Rosa Teagarden (And KIN)** for suggesting reflective ability. - **Rena** for commenting on defender quirks, that inspired me to make abilities to work on each other. - **thwomp** for suggesting to give it similar tail sweep (defender ability) - **TheBadPerson - Jack Sidower/EKSS** thanks for support, but not everything need to be LoL ripoff, i already made it look like one (but suggestions and motivation was welcome) **And all other people on discord channel giving feedback, without it this strain would struggle to become as it is** # About the pull request Adds new warrior strain "Bulwark" This strain aims to be evolution between defender and crusher, mostly focusing on defensive direction and siege-like properties. **Document:** https://hackmd.io/@YLxQa9NUQ-e6H5YHujbzoA/SypFAIZ2Ze - [x] Requires #12143 - [x] Requires #12147
Changes Tracker:
Changes: [v0.1] - Changed Plate Slam plasma draining to set amount of plasma - Plate Slam now can knock down enemies depending on their body position, if standing you knockdown and pin target for 7 seconds, if target was already prone you pin it down for 10 seconds.
Changes: [v0.2] - Now Shielder can attack and haul with encased plates active. - Replaced "placeholder" sprites for shielder abilities with new sprites. - Fixed Reflective shield consuming plasma when not encased in plates. - Fixed "Floored" effect, now it only apply on targets that are under shield slam ability. - Swapped reflective shield and plates slam priority position. (mist request) - Plate Slam now have windup of 3s instead of 5s
Changes: [v0.3] - Renamed "Shielder" strain to "Bulwark" (name won the community vote) - Bulwark now gain additional status info, it will now show reduced melee damage, it also shows usage timer for reflective shield. - Removed Reduced attack damage from strain, but applyied it to encased plates ability, when encased you deal -8 slash damage. - Encased plates slowness reduced from 1 to 0.5 - Encased plates toggle time decreased from 3s to 2s. - Reflective shield is now channeled ability (similar to lurker invisibility), 1 second used is 2seconds cooldown, can be stopped early by using same ability twice or disengaging encased plates. - Plate Slam windup time decreased from 3s to 2s. - Plate Slam can now be deactivated early by using reflective plates. (you can still do that by deactivating encased plates) - Plate Slam "floored" visual now apply and dissapear correctly when using ability. - Fixed Tail sweep cooldown, now when missing tail sweep you get applied intended 30% of cooldown. - Fixed Plasmaless strains having Plasma (ravager strains) - Updated strain description to match new changes.
Changes: [v0.35] - Removed Plate Slam ability, caused too many runtime issues, people didn't like ability either. - Added safety check for people trying to evolve when having reflective shield active.
Changes: [v0.4] - Fixed Reflective Shield ability not reflecting bullets correctly. - Changed Reflective Shield Reflection chances, Front is 80%, sides is 65% and back is 30%. (from 80% front, 64% sides and 28% back) - Default tackles are changed, minimum tackle is back to 2 and maximum is 5. (from 4 min and 5 max) - Encased Plates now increase minimum tackle from 2 to 4, max tackle is unchanged. - Cleaned files from more plate slam code remains. - Added guide inside PR description.
Changes: [v0.5] - New 5th ability called Siegeborn, when activating it you gain heal_over_time after taking specific amount of damage, when used during reflective shield mode it will instead improve reflection angle from 90 to 30 degree cone. (ability icon changes when conditions are met) - Encasing Plates toggle cooldown decreased from 2s to 1s. - Slashing during Encased plates now have extra damage visual. - Disengaging Encased plates during Reflective Shield now stops ability instead of forcing you to deactivate it first. - Tail Sweep ability now trips people around you (like dancer tail trip) instead of throwing them away to courage closer combat style. - Reflective shield plasma cost reduced from 100 to 80 plasma. - Reflective Shield now cannot reflect sniper bullets instead of Tier 10 penetration bullets. - Bulwark health got increased from 500 to 600, defender have 500hp and crusher have 700hp, 600hp should be best middle ground between the two. - x2 Cooldown on Plate Bash during encased plates got removed.
Changes: [v0.55] - Removed 5th ability, amount abilities will be same amount as base warrior offers for less complexity (requested by maintainer) - Improved Reflective Shield reflection angle from 90 degrees to 50 degrees, increased accuracy of bullets from 40 to 80 (doubled) - Cleaned and improved some code.
Changes: [v0.6] (experimental) - Bulwark gains +10 armor, meaning it have 30 base armor. - Passive directional armor now have +10 front and +10 side armor. - When Encased plates are active, you lose -10 side armor and gain +10 front armor, 50 front armor is slightly above crusher and 30 side and back is defender armor.
Changes: [v0.65] (mist request) - Separated Reflective code from bulwark to be its own proc, this proc can now be assigned to anything desired. - New Reflective proc is used for Reflective Walls (fixes their reflection without changing previous values)
Changes: [v0.7] (mist & google requests) - Reduced Duration of reflective shield from 10s to 6s. - Reflection chances are changed, now you reflect 100% projectiles ONLY from front (no sides and back reflection) - Reflective walls and bulwark ability cannot reflect LZ turrets anymore. - Bulwark gain trait that no longer gives directional lock slowdown (TRAIT_NO_DIR_LOCK_SLOWDOWN). - Increased Encased plates slowdown from 0.5 to 1. - Tail sweep now can be used with encased plates and reflective active in exchange of deactivating stances.
Changes: [v0.75] - Changed Bulwark Sprite color palette to look more like warrior (Zenith suggested colors) - Tail Sweep now reflect grenades 1 tile further away. - Fixed Reflective Shield reflecting when laying down or unconscious (aka explosions) - Fixed Reflective shield timer, now cooldowns are applied correctly. - Reflective Shield cannot reflect LZ turrets anymore. - Now Reflective cooldown is 1s used for 3s cooldown. - Fixed reflective shield reflecting on sides. - Added new visual for reflective shield.
Changes: [v0.8] - Turrents no longer get reflected by Reflective shield. - Boiler Gas blobs no longer get reflected by Reflective shield. - Encased plates slowdown increased from 1.0 to 1.4 - Updated strain description to cover changes.
Changes: [v0.85] - Decreased slowdown on encased plates from 1.4 to 1.35 - Reflective shield now have 1s used as 2 second cooldown but minimum cooldown time is +6 seconds, meaning 8s minimum cooldown and 18s max cooldown.
Changes: [v0.9] - Strain decription now is slightly more grammar- corrected. - Using Reflective Shield now locks your direction to the last one you were looking (use with care). - You cannot use any intents or attack targets when reflective shield is active. (abilities excluded) - Activating Reflective Shield now drops pulled people to prevent locking direction from breaking.
Changes: [v0.95] - You can now rotate on Reflective Shield by using alt + (button direction) with 0.3 second delay.
Changes: [v1.0] - Reflective Shield cannot reflect flamer sentry projectiles. (not intended)
Changes: [v1.1] (community feedback channel requests) - Reflective shield now uses sprite instead of filter to show front reflection on sprite instead on whole surface. - Disengaging Reflective Shield in any means no longer disables directional lock. (player need to manually disable it my attacking or alt + same dir button)
Changes: [v1.2] (fix patch) - Reflective Shield cannot reflect shotgun sentries anymore.
Changes: [v1.3] (experimental) - Bulwark takes now 50% more weapon melee damage.
# Explain why it's good for the game As long as i played, warrior is a part of a defensive evolution tree defender -> crusher, as defensive evolution line, for some reason its way more offensive, with makes it a high skill caste that not everyone can play without getting killed after a bad lunge. > If i could give meaning to normal warrior, warrior is like a berserker, that fight with its sword close range, in this case bulwark is like knight with sword and shield. This PR aims to add new strain that is way more beginner friendly, require less skill to survive but still require some to utilize its full potential, meaning the more you undestand it, the more you benefit from it. # Testing Photographs and Procedure She is still eepin. image but she told me, if you want videos they are on discord link above. # "Bulwark" Guide:
>Click to see guide: This is guide to Bulwark strain that explain how it works so people grasp it better. Bulwark strain contain the following: - 4 Passives - Encased plates - Plate bash - Tail sweep - Reflective Shield Basic rules first before we break down abilities: - NEVER show your back to enemy, if get behind you, your armor is weak there, this is like asking to get killed. - You should almost ALWAYS use directional lock, what is directional lock? this is option where you can "lock" your character to look in specific direction, how to activate it? simple, hold Alt and press any direction you would walk to, lets say you go south, you hold Alt and press S, now you are locked to south unless you do same action or click somewhere on screen to break direction lock. - You CAN attack targets when you have encased plates up, just remember you deal slightly less damage to target. - Directional Armor works ONLY on projectiles, by base you have always 30 armor. - No diectional slowdown, you can slide around with no penality.
>Click Here to see Image that explains how directional armor and reflection works. image
Let me break down the passives: - 50% less damage from cades, as it suggests, when you slash cade it deal 10 environmental damage, this passive reduces that damage to 5. - 75% chance to strike target behind cades, this passive allows your slashes and tailstab to go through wired cades that normally have specific chance to let slashes/tailstab through, this passive increases that chance. - Directional armor +10 front, +10 to sides, by base this strain have 30 armor with is not a lot but this passive makes so when attacked from front or sides you have higher armor (40 front and 40 side armor), remember you should NEVER let your back get attacked by enemy. Encased Plates: This ability will increase your front armor by +10 and reduce side armor by -10, in this state you can slash targets, but your damage is reduced by 8 and your walking speed is slightly reduced, but as positive you can open holes in walls you can make (yes your slashes can make hole in walls) Plate Bash: This ability changes depending if stance (encased plates) are active or not, when not active plate bash will launch you to enemy 3 tiles away and bash them 1 tile away, when encased plates are active, you lose ability to launch yourself to enemy but you will launch them instead 3 tiles away, this ability always deal 20 damage. Tail Sweep: You will trip enemies around you and briefly stun them in adjecent tiles, when grenade is in adjecent tile it will instead launch that grenade back 4 tiles away in opposing direction of player and have shortened cooldown, if grenade and enemy are hit by ability, you will receive normal cooldown, this ability always deal 15 damage. Reflective Shield: Signature move of this evolution, reflective shield behaves similar like reflective walls, but its mostly depending on direction bullets are fired from and reflect them back at direction of attacker for half the damage bullet would do, it will reflect 100% bullets from front, angle at with bullets are reflected back is -25 to 25 (50 degree cone) This ability can be disabled early by pressing same ability twice. You are unable to use intents and you will drop pulled targets (abilities are excluded from this rule) Reflective Shield CANNOT reflects sniper bullets, rockets and anti-reflective ammo (like SHARP darts), xeno projectiles and turrets.
# Changelog :cl: Venuska1117 add: Add new Warrior Strain "Bulwark". add: Bulwark have 600 health, tackles of 2 min - 5max, gains 200 plasma, +10 explosive and +10 normal armor for decreased speed and takes 50% more melee damage. add: Bulwark have 4 passive abilities, 50% less damage from wired cades (5 damage instead of 10), 75% for slashes or tailstab to go through wired cades and hit target behind them, +10 front armor and +10 side armor and no direct lock slowdown. add: Encased Plates, this ability when activated it will reduce your movement speed by 1.35, increases minimum tackles needed to tackle someone down by +2 and decreased slash damage by 8, in exchange you gain +10 front armor and lose -10 side armor (stacks with passive), immunity to knockdowns and ability to open holes in walls. add: Plate Bash, this ability will launch you toward targets if its in range of 2 tiles (3 tiles), it will hit them 1 tile away and shake their screen, if encased plates are active, this ability changes to only work on adjecent targets but in exchange you send them 3 tiles away, knockdown and stun target. add: Tail Sweep, this ability will hit all adjecent tiles (including corners) around you and trip enemies down and briefly stun them, if grenade is present instead of target, you will send grenade 4 tiles away and your cooldown will be decreased to 1/3rd of full cooldown, if both target and grenade are hit, normal cooldown value will be applied. add: Reflective Shield, this ability will lock your looking direction when casted to reflect bullets towards target in 50 degree cone (-25 to 25 angle), reflected bullets will only deal half of their original damage, your reflection chance is 100% from front ONLY but you lose ability to attack or help (you can still use abilities) and drop pulled targets, this ability can be disabled early like how lurker invisibility works 1s used is 2s cooldown but you gain +6s to cooldown, minimum 6s cooldown and 18s max, this ability CANNOT reflects sniper bullets, rockets and anti-reflective ammo (like SHARP darts), xeno projectiles and turrets. balance: Fix Reflective walls, now they reflect bullets properly (uses new bulwark reflective proc). /:cl: --------- Co-authored-by: Venuska1117 --- code/__DEFINES/conflict.dm | 2 + code/__DEFINES/traits.dm | 9 + code/__DEFINES/xeno.dm | 6 + code/_onclick/adjacent.dm | 4 +- code/_onclick/item_attack.dm | 4 + code/datums/ammo/bullet/shotgun.dm | 7 + code/datums/ammo/bullet/special_ammo.dm | 2 +- code/datums/ammo/misc.dm | 2 +- code/game/atoms_movable.dm | 3 + .../objects/structures/barricade/barricade.dm | 8 +- code/game/turfs/walls/wall_types.dm | 30 +- .../mob/living/carbon/xenomorph/Evolution.dm | 2 +- .../living/carbon/xenomorph/XenoAttacks.dm | 2 +- .../mob/living/carbon/xenomorph/Xenomorph.dm | 32 +- .../xenomorph/abilities/general_powers.dm | 4 + .../abilities/warrior/warrior_abilities.dm | 53 +++ .../abilities/warrior/warrior_macros.dm | 28 ++ .../living/carbon/xenomorph/attack_alien.dm | 10 +- .../living/carbon/xenomorph/castes/Warrior.dm | 11 +- .../strains/castes/ravager/berserker.dm | 2 +- .../strains/castes/ravager/hedgehog.dm | 2 +- .../strains/castes/warrior/bulwark.dm | 393 ++++++++++++++++++ code/modules/mob/mob.dm | 2 + code/modules/mob/mob_movement.dm | 3 +- .../modules/projectiles/magazines/sentries.dm | 2 +- code/modules/projectiles/projectile.dm | 136 ++++-- colonialmarines.dme | 1 + icons/mob/hud/actions_xeno.dmi | Bin 62945 -> 66263 bytes icons/mob/hud/hud.dmi | Bin 20398 -> 21678 bytes icons/mob/xenos/castes/tier_2/warrior.dmi | Bin 30580 -> 41128 bytes sound/effects/grenade_hit.ogg | Bin 0 -> 21216 bytes sound/effects/tail_swing.ogg | Bin 0 -> 22264 bytes 32 files changed, 685 insertions(+), 75 deletions(-) create mode 100644 code/modules/mob/living/carbon/xenomorph/strains/castes/warrior/bulwark.dm create mode 100644 sound/effects/grenade_hit.ogg create mode 100644 sound/effects/tail_swing.ogg diff --git a/code/__DEFINES/conflict.dm b/code/__DEFINES/conflict.dm index 0e915bf200bf..cf6d0a2cf8a2 100644 --- a/code/__DEFINES/conflict.dm +++ b/code/__DEFINES/conflict.dm @@ -50,6 +50,8 @@ #define PROJECTILE_SHRAPNEL (1<<0) /// Apply additional effects upon hitting clicked target #define PROJECTILE_BULLSEYE (1<<1) +/// Reflected projectiles +#define PROJECTILE_REFLECTED (1<<2) //Gun defines for gun related thing. More in the projectile folder. diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index 40c38d270b89..7c55f81361ff 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -169,6 +169,8 @@ #define TRAIT_VALKYRIE_ARMORED "trait_valkyrie_armored" /// Prevents mob from riding mobs when buckled onto something #define TRAIT_CANT_RIDE "cant_ride" +/// Makes mob immune to dir lock slowdown. +#define TRAIT_NO_DIR_LOCK_SLOWDOWN "no_dir_lock_slowdown" // SPECIES TRAITS /// Knowledge of Yautja technology @@ -265,6 +267,11 @@ #define TRAIT_ABILITY_BURROWED "t_ability_burrowed" /// Xenos with this trait can toggle long sight while resting. #define TRAIT_ABILITY_SIGHT_IGNORE_REST "t_ability_sight_ignore_rest" +/// Used by shielder to check stance. +#define TRAIT_ABILITY_ENCLOSED_PLATES "t_ability_enclosed_plates" +/// Used by shielder for reflective plates. +#define TRAIT_ABILITY_REFLECTIVE_PLATES "t_ability_reflective_plates" + //-- item traits -- // TOOL TRAITS @@ -344,6 +351,8 @@ GLOBAL_LIST_INIT(mob_traits, list( TRAIT_DEXTROUS, TRAIT_REAGENT_SCANNER, TRAIT_ABILITY_BURROWED, + TRAIT_ABILITY_ENCLOSED_PLATES, + TRAIT_ABILITY_REFLECTIVE_PLATES, TRAIT_VULTURE_USER, TRAIT_IN_TUTORIAL, TRAIT_SPEC_KIT, diff --git a/code/__DEFINES/xeno.dm b/code/__DEFINES/xeno.dm index b6377a47337b..9af7e845818b 100644 --- a/code/__DEFINES/xeno.dm +++ b/code/__DEFINES/xeno.dm @@ -421,6 +421,9 @@ // Lurker strain flags #define LURKER_VAMPIRE "Vampire" +// Warrior strain flags +#define WARRIOR_BULWARK "Bulwark" + // Ravager strain flags #define RAVAGER_HEDGEHOG "Hedgehog" #define RAVAGER_BERSERKER "Berserker" @@ -449,6 +452,7 @@ // Damage - this is applied as a flat nerf/buff to the xeno's average damage #define XENO_DAMAGE_MOD_VERY_SMALL 5 +#define XENO_DAMAGE_MOD_BULWARK 8 #define XENO_DAMAGE_MOD_SMALL 10 #define XENO_DAMAGE_MOD_MED 15 #define XENO_DAMAGE_MOD_LARGE 20 @@ -747,6 +751,8 @@ // dancer defines #define DANCER_DODGE_TIME 7 SECONDS +// bulwark defines +#define BULWARK_REFLECTIVE_TIME 6 SECONDS // drone fruits diff --git a/code/_onclick/adjacent.dm b/code/_onclick/adjacent.dm index e853760b103a..41ccad15fe3d 100644 --- a/code/_onclick/adjacent.dm +++ b/code/_onclick/adjacent.dm @@ -273,7 +273,7 @@ Quick adjacency (to turf): var/list/cur_dense_blockers = list() for(var/atom/blocker in blockers["fd1"]) if(blocker.flags_barrier & HANDLE_BARRIER_CHANCE) - if(blocker.handle_barrier_chance()) + if(blocker.handle_barrier_chance(attacker)) return blocker else guaranteed_hit = 1 @@ -282,7 +282,7 @@ Quick adjacency (to turf): for(var/atom/blocker in blockers["fd2"]) if(blocker.flags_barrier & HANDLE_BARRIER_CHANCE) - if(blocker.handle_barrier_chance()) + if(blocker.handle_barrier_chance(attacker)) return blocker else guaranteed_hit++ diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 1c180ba16b25..13b08bf3672f 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -105,6 +105,10 @@ if(isxeno(M)) var/mob/living/carbon/xenomorph/X = M power = armor_damage_reduction(GLOB.xeno_melee, power, X.armor_deflection + X.armor_deflection_buff - X.armor_deflection_debuff, 20, 0, 0, X.armor_integrity) + + if(X.melee_vulnerability_mult != 0) + power *= X.melee_vulnerability_mult + var/armor_punch = armor_break_calculation(GLOB.xeno_melee, power, X.armor_deflection + X.armor_deflection_buff - X.armor_deflection_debuff, 20, 0, 0, X.armor_integrity) X.apply_armorbreak(armor_punch) if(hitsound) diff --git a/code/datums/ammo/bullet/shotgun.dm b/code/datums/ammo/bullet/shotgun.dm index b06d42ce42b9..345152076e28 100644 --- a/code/datums/ammo/bullet/shotgun.dm +++ b/code/datums/ammo/bullet/shotgun.dm @@ -209,6 +209,10 @@ /datum/ammo/bullet/shotgun/buckshot/on_hit_mob(mob/M,obj/projectile/P) knockback(M,P) +/datum/ammo/bullet/shotgun/buckshot/turret + flags_ammo_behavior = AMMO_NO_DEFLECT //New Exclusive ammo for shotgun turrets. + bonus_projectiles_type = /datum/ammo/bullet/shotgun/spread/turret + //buckshot variant only used by the masterkey shotgun attachment. /datum/ammo/bullet/shotgun/buckshot/masterkey bonus_projectiles_type = /datum/ammo/bullet/shotgun/spread/masterkey @@ -238,6 +242,9 @@ /datum/ammo/bullet/shotgun/spread/masterkey damage = 20 +/datum/ammo/bullet/shotgun/spread/turret + flags_ammo_behavior = AMMO_NO_DEFLECT //New Exclusive buckshot pellets for shotgun turrets. + /* 8 GAUGE SHOTGUN AMMO */ diff --git a/code/datums/ammo/bullet/special_ammo.dm b/code/datums/ammo/bullet/special_ammo.dm index 19abf007c2e7..7f5d4d9dd1d8 100644 --- a/code/datums/ammo/bullet/special_ammo.dm +++ b/code/datums/ammo/bullet/special_ammo.dm @@ -151,7 +151,7 @@ /datum/ammo/bullet/turret name = "autocannon bullet" icon_state = "redbullet" //Red bullets to indicate friendly fire restriction - flags_ammo_behavior = AMMO_BALLISTIC|AMMO_IGNORE_COVER + flags_ammo_behavior = AMMO_BALLISTIC|AMMO_IGNORE_COVER|AMMO_NO_DEFLECT accurate_range = 22 accuracy_var_low = PROJECTILE_VARIANCE_TIER_8 diff --git a/code/datums/ammo/misc.dm b/code/datums/ammo/misc.dm index 516faadeb21b..8f7659dd9871 100644 --- a/code/datums/ammo/misc.dm +++ b/code/datums/ammo/misc.dm @@ -66,7 +66,7 @@ landingsmoke = null /datum/ammo/flamethrower/sentry_flamer - flags_ammo_behavior = AMMO_IGNORE_ARMOR|AMMO_IGNORE_COVER|AMMO_FLAME + flags_ammo_behavior = AMMO_IGNORE_ARMOR|AMMO_IGNORE_COVER|AMMO_FLAME|AMMO_NO_DEFLECT flamer_reagent_id = "napalmx" accuracy = HIT_ACCURACY_TIER_8 diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index 2310024e96fc..68ea2b137818 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -376,6 +376,9 @@ * Called from [/atom/movable/proc/keyLoop], this exists to be overwritten by living mobs with a check to see if we're actually alive enough to change directions */ /atom/movable/proc/keybind_face_direction(direction) + if(HAS_TRAIT(src, TRAIT_ABILITY_REFLECTIVE_PLATES)) + if(!do_after(src, 3 DECISECONDS, INTERRUPT_INCAPACITATED, BUSY_ICON_GENERIC)) + setDir(direction) setDir(direction) /atom/movable/proc/onTransitZ(old_z,new_z) diff --git a/code/game/objects/structures/barricade/barricade.dm b/code/game/objects/structures/barricade/barricade.dm index 20285725c564..38c0916ea634 100644 --- a/code/game/objects/structures/barricade/barricade.dm +++ b/code/game/objects/structures/barricade/barricade.dm @@ -221,9 +221,15 @@ return ..() -/obj/structure/barricade/handle_barrier_chance() +/obj/structure/barricade/handle_barrier_chance(mob/living/attacker) if(!anchored) return FALSE + + if(isxeno(attacker)) + var/mob/living/carbon/xenomorph/xeno = attacker + if(xeno.strain && istype(xeno.strain, /datum/xeno_strain/bulwark)) + return prob(25) //Bulwark can attack through wired cade with 75% chance. + return prob(max(30,(100.0*health)/maxhealth)) /obj/structure/barricade/attack_animal(mob/user as mob) diff --git a/code/game/turfs/walls/wall_types.dm b/code/game/turfs/walls/wall_types.dm index 0b3a6b272860..ee1240f917dd 100644 --- a/code/game/turfs/walls/wall_types.dm +++ b/code/game/turfs/walls/wall_types.dm @@ -1477,8 +1477,11 @@ var/explosive_multiplier = 0.3 var/reflection_multiplier = 0.5 -/turf/closed/wall/resin/reflective/bullet_act(obj/projectile/P) - if(src in P.permutated) +/turf/closed/wall/resin/reflective/bullet_act(obj/projectile/proj_bullet) + if(proj_bullet.projectile_flags & PROJECTILE_REFLECTED) + return + + if(proj_bullet.ammo.flags_ammo_behavior & AMMO_NO_DEFLECT) return //Ineffective if someone is sitting on the wall @@ -1486,26 +1489,15 @@ return ..() if(!prob(chance_to_reflect)) - if(P.ammo.damage_type == BRUTE) - P.damage *= brute_multiplier + if(proj_bullet.ammo.damage_type == BRUTE) + proj_bullet.damage *= brute_multiplier return ..() - if(P.runtime_iff_group || P.ammo.flags_ammo_behavior & AMMO_NO_DEFLECT) - // Bullet gets absorbed if it has IFF or can't be reflected. - return - var/obj/projectile/new_proj = new(src, construction_data ? construction_data : create_cause_data(initial(name))) - new_proj.generate_bullet(P.ammo) - new_proj.damage = P.damage * reflection_multiplier // don't make it too punishing - new_proj.accuracy = HIT_ACCURACY_TIER_7 // 35% chance to hit something - - // Move back to who fired you. - RegisterSignal(new_proj, COMSIG_BULLET_PRE_HANDLE_TURF, PROC_REF(bullet_ignore_turf)) - new_proj.permutated |= src + var/atom/target = proj_bullet.firer + if(!target) + return ..() - var/angle = Get_Angle(src, P.firer) + rand(30, -30) - var/atom/target = get_angle_target_turf(src, angle, get_dist(src, P.firer)) - new_proj.projectile_flags |= PROJECTILE_SHRAPNEL - new_proj.fire_at(target, P.firer, src, reflect_range, speed = P.ammo.shell_speed) + proj_bullet.reflect_projectile_at_firer(src, proj_bullet, proj_bullet.firer, target, damage_multiplier = reflection_multiplier, accuracy_override = HIT_ACCURACY_TIER_7, range_override = reflect_range, angle_variance = 30) return TRUE diff --git a/code/modules/mob/living/carbon/xenomorph/Evolution.dm b/code/modules/mob/living/carbon/xenomorph/Evolution.dm index bd33ced38533..83d058a76002 100644 --- a/code/modules/mob/living/carbon/xenomorph/Evolution.dm +++ b/code/modules/mob/living/carbon/xenomorph/Evolution.dm @@ -285,7 +285,7 @@ GLOBAL_LIST_EMPTY(deevolved_ckeys) to_chat(src, SPAN_WARNING("We must be at full health to evolve.")) return FALSE - if(agility || fortify || crest_defense || stealth) + if(agility || fortify || crest_defense || stealth || HAS_TRAIT(src, TRAIT_ABILITY_ENCLOSED_PLATES) || HAS_TRAIT(src, TRAIT_ABILITY_REFLECTIVE_PLATES)) to_chat(src, SPAN_WARNING("We cannot evolve while in this stance.")) return FALSE diff --git a/code/modules/mob/living/carbon/xenomorph/XenoAttacks.dm b/code/modules/mob/living/carbon/xenomorph/XenoAttacks.dm index cf25fadeef89..816ba1fb8c7f 100644 --- a/code/modules/mob/living/carbon/xenomorph/XenoAttacks.dm +++ b/code/modules/mob/living/carbon/xenomorph/XenoAttacks.dm @@ -109,7 +109,7 @@ //Hot hot Aliens on Aliens action. //Actually just used for eating people. /mob/living/carbon/xenomorph/attack_alien(mob/living/carbon/xenomorph/xeno) - if (xeno.fortify || HAS_TRAIT(xeno, TRAIT_ABILITY_BURROWED)) + if(xeno.fortify || HAS_TRAIT(xeno, TRAIT_ABILITY_BURROWED) || HAS_TRAIT(xeno, TRAIT_ABILITY_REFLECTIVE_PLATES)) return XENO_NO_DELAY_ACTION if(HAS_TRAIT(src, TRAIT_ABILITY_BURROWED)) diff --git a/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm b/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm index 0f330a9bee1d..f04a028b62cf 100644 --- a/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm +++ b/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm @@ -136,6 +136,8 @@ var/armor_integrity_last_damage_time = 0 var/armor_integrity_immunity_time = 0 + var/melee_vulnerability_mult = 0 + var/pull_multiplier = 1 var/aura_strength = 0 // Pheromone strength var/weed_level = WEED_LEVEL_STANDARD @@ -211,6 +213,8 @@ var/plasmapool_modifier = 1 var/plasmagain_modifier = 0 var/tackle_chance_modifier = 0 + var/tackle_min_modifier = 0 + var/tackle_max_modifier = 0 var/regeneration_multiplier = 1 var/speed_modifier = 0 var/phero_modifier = 0 @@ -221,6 +225,9 @@ var/attack_speed_modifier = 0 var/armor_integrity_modifier = 0 + ///Used to add plasma to strain if caste have 0 plasma_max + var/add_plasma = 0 + var/list/modifier_sources COOLDOWN_DECLARE(next_strain_reset) @@ -248,6 +255,7 @@ /// Caste-based spit windup var/spit_windup = FALSE /// Caste-based spit windup duration (if applicable) + var/spit_delay = 0 var/tileoffset = 0 // How much your view will be offset in the direction that you zoom? var/viewsize = 0 //What size your view will be changed to when you zoom? var/banished = FALSE // Banished xenos can be attacked by all other xenos @@ -318,13 +326,16 @@ var/obj/effect/alien/resin/fruit/selected_fruit = null var/list/built_structures = list() - // Designer stuff + /// Designer related var/obj/effect/alien/resin/design/selected_design = null var/list/available_design = list() var/list/current_design = list() var/max_design_nodes = 0 var/selected_design_mark + var/front_armor + var/side_armor + var/icon_xeno var/icon_xenonid var/xenonid_pixel_x @@ -607,6 +618,9 @@ if(fire_immunity & FIRE_IMMUNITY_XENO_FRENZY) . |= COMPONENT_XENO_FRENZY +/mob/living/carbon/xenomorph/proc/get_reflection_chance(obj/projectile/bullet) + return + //Off-load this proc so it can be called freely //Since Xenos change names like they change shoes, we need somewhere to hammer in all those legos //We set their name first, then update their real_name AND their mind name @@ -939,8 +953,8 @@ recalculate_tackle() /mob/living/carbon/xenomorph/proc/recalculate_tackle() - tackle_min = caste.tackle_min - tackle_max = caste.tackle_max + tackle_min = caste.tackle_min + tackle_min_modifier + tackle_max = caste.tackle_max + tackle_max_modifier tackle_chance = caste.tackle_chance + tackle_chance_modifier tacklestrength_min = caste.tacklestrength_min tacklestrength_max = caste.tacklestrength_max @@ -961,19 +975,23 @@ health = maxHealth /mob/living/carbon/xenomorph/proc/recalculate_plasma() - if(!plasma_max) + var/new_plasma_max = (plasmapool_modifier * caste.plasma_max) + add_plasma + if(!plasma_max && new_plasma_max <= 0) return - var/new_plasma_max = plasmapool_modifier * caste.plasma_max plasma_gain = plasmagain_modifier + caste.plasma_gain if(hive) new_plasma_max += hive.hive_stat_modifier_flat["plasmapool"] new_plasma_max *= hive.hive_stat_modifier_multiplier["plasmapool"] plasma_gain += hive.hive_stat_modifier_flat["plasmagain"] plasma_gain *= hive.hive_stat_modifier_multiplier["plasmagain"] - if (new_plasma_max == plasma_max) + if(new_plasma_max == plasma_max) return - var/plasma_ratio = plasma_stored / plasma_max + + var/plasma_ratio = 0 + if(plasma_max > 0) + plasma_ratio = plasma_stored / plasma_max + plasma_max = new_plasma_max plasma_stored = floor(plasma_max * plasma_ratio + 0.5) //Restore our plasma ratio, so if we're full, we continue to be full, etc. Rounding up (hence the +0.5) if(plasma_stored > plasma_max) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm index b570e4f068db..8bbbdd50c027 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm @@ -110,6 +110,10 @@ to_chat(src, SPAN_WARNING("We cannot rest while our crest is down!")) return + if(HAS_TRAIT(src, TRAIT_ABILITY_ENCLOSED_PLATES)) + to_chat(src, SPAN_WARNING("We cannot rest when we are encased in plates!")) + return + return ..() /mob/living/carbon/xenomorph/set_lying_down() diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_abilities.dm index 2e175bbc2482..458cb3d3489a 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_abilities.dm @@ -40,3 +40,56 @@ var/base_punch_damage_synth = 30 var/base_punch_damage_pred = 25 var/damage_variance = 5 + +///Bulwark Strain + +/datum/action/xeno_action/onclick/toggle_plates + name = "Toggle Encasing Plates" + action_icon_state = "encased_plates" + macro_path = /datum/action/xeno_action/verb/verb_toggle_plates + action_type = XENO_ACTION_ACTIVATE + xeno_cooldown = 1 SECONDS + ability_primacy = XENO_PRIMARY_ACTION_1 + + var/speed_debuff = 1.35 + +/datum/action/xeno_action/activable/plate_bash + name = "Plate Bash" + action_icon_state = "plate_bash" + macro_path = /datum/action/xeno_action/verb/verb_plate_bash + action_type = XENO_ACTION_CLICK + ability_primacy = XENO_PRIMARY_ACTION_2 + xeno_cooldown = 4 SECONDS + + var/base_damage = 20 + +/datum/action/xeno_action/onclick/tail_swing + name = "Tail Swing" + action_icon_state = "tail_swing" + macro_path = /datum/action/xeno_action/verb/verb_tail_swing + action_type = XENO_ACTION_ACTIVATE + ability_primacy = XENO_PRIMARY_ACTION_3 + plasma_cost = 20 + xeno_cooldown = 10 SECONDS + + var/swing_range = 1 + +/datum/action/xeno_action/onclick/reflective_shield + name = "Reflective Shield" + action_icon_state = "reflective_shield" + macro_path = /datum/action/xeno_action/verb/verb_reflective_shield + action_type = XENO_ACTION_CLICK + ability_primacy = XENO_PRIMARY_ACTION_4 + + /// used to calculate reflective plates refunding. + var/duration = BULWARK_REFLECTIVE_TIME + /// reflective plates addtimer ID (for deletion) + var/reflective_shield_timer_id = TIMER_ID_NULL + /// Used to countdown BULWARK_REFLECTIVE_TIME. + var/reflective_start_time = -1 + /// How much refund we want to get back? 1 is 1s used to 1s cooldown, 2 is 1s used 2s cooldown. + var/reflective_refund_multiplier = 2 + /// Used in calculation, finalized number will be displayed as cooldown. + var/reflective_recharge_time = null + /// Cooldown after activation to prevent accidental double click. + var/reflective_safe_click_cooldown = 0 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_macros.dm b/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_macros.dm index 63d97bb69aa2..f6bd989d7c46 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_macros.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_macros.dm @@ -19,3 +19,31 @@ set hidden = TRUE var/action_name = "Punch" handle_xeno_macro(src, action_name) + +/datum/action/xeno_action/verb/verb_toggle_plates() + set category = "Alien" + set name = "Toggle Encasing Plates" + set hidden = TRUE + var/action_name = "Toggle Plates Defense" + handle_xeno_macro(src, action_name) + +/datum/action/xeno_action/verb/verb_plate_bash() + set category = "Alien" + set name = "Plate Bash" + set hidden = TRUE + var/action_name = "Plate Bash" + handle_xeno_macro(src, action_name) + +/datum/action/xeno_action/verb/verb_tail_swing() + set category = "Alien" + set name = "Tail Swing" + set hidden = TRUE + var/action_name = "Tail Swing" + handle_xeno_macro(src, action_name) + +/datum/action/xeno_action/verb/verb_reflective_shield() + set category = "Alien" + set name = "Reflective Shield" + set hidden = TRUE + var/action_name = "Reflective Plates" + handle_xeno_macro(src, action_name) diff --git a/code/modules/mob/living/carbon/xenomorph/attack_alien.dm b/code/modules/mob/living/carbon/xenomorph/attack_alien.dm index 9af59c6201dc..41e43e8cc72f 100644 --- a/code/modules/mob/living/carbon/xenomorph/attack_alien.dm +++ b/code/modules/mob/living/carbon/xenomorph/attack_alien.dm @@ -9,7 +9,7 @@ // this proc could use refactoring at some point /mob/living/carbon/human/attack_alien(mob/living/carbon/xenomorph/attacking_xeno, dam_bonus, unblockable = FALSE) - if(attacking_xeno.fortify || HAS_TRAIT(attacking_xeno, TRAIT_ABILITY_BURROWED)) + if(attacking_xeno.fortify || HAS_TRAIT(attacking_xeno, TRAIT_ABILITY_BURROWED) || HAS_TRAIT(attacking_xeno, TRAIT_ABILITY_REFLECTIVE_PLATES)) return XENO_NO_DELAY_ACTION if(HAS_TRAIT(src, TRAIT_HAULED)) @@ -403,7 +403,10 @@ if(is_wired) xeno.visible_message(SPAN_DANGER("The barbed wire slices into [xeno]!"), SPAN_DANGER("The barbed wire slices into us!"), null, 5, CHAT_TYPE_XENO_COMBAT) - xeno.apply_damage(10, enviro=TRUE) + if(istype(xeno.strain, /datum/xeno_strain/bulwark)) + xeno.apply_damage(5, enviro=TRUE) + else + xeno.apply_damage(10, enviro=TRUE) return XENO_ATTACK_ACTION /obj/structure/barricade/handle_tail_stab(mob/living/carbon/xenomorph/xeno, blunt_stab) @@ -1141,8 +1144,7 @@ to_chat(xeno, SPAN_WARNING("It's already damaged.")) return XENO_NO_DELAY_ACTION xeno.animation_attack_on(src) - xeno.visible_message(SPAN_DANGER("[xeno] slashes away at [src]!"), - SPAN_DANGER("We slash and claw at the bright light!"), max_distance = 5, message_flags = CHAT_TYPE_XENO_COMBAT) + xeno.visible_message("[xeno] slashes away at [src]!","We slash and claw at the bright light!", max_distance = 5, message_flags = CHAT_TYPE_XENO_COMBAT) health = max(health - rand(xeno.melee_damage_lower, xeno.melee_damage_upper), 0) if(!health) set_damaged() diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Warrior.dm b/code/modules/mob/living/carbon/xenomorph/castes/Warrior.dm index 50a2a8e1d05e..0a79fbf32e9a 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/Warrior.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/Warrior.dm @@ -15,6 +15,8 @@ behavior_delegate_type = /datum/behavior_delegate/warrior_base + available_strains = list(/datum/xeno_strain/bulwark) + evolves_to = list(XENO_CASTE_PRAETORIAN, XENO_CASTE_CRUSHER) deevolves_to = list(XENO_CASTE_DEFENDER) caste_desc = "A powerful front line combatant." @@ -78,12 +80,19 @@ var/emote_cooldown = 0 var/lunging = FALSE // whether or not the warrior is currently lunging (holding) a target +/mob/living/carbon/xenomorph/warrior/handle_special_state() + return HAS_TRAIT(src, TRAIT_ABILITY_ENCLOSED_PLATES) + +/mob/living/carbon/xenomorph/warrior/handle_special_wound_states(severity) + if(HAS_TRAIT(src, TRAIT_ABILITY_ENCLOSED_PLATES)) + return "Warrior_plates_[severity]" + /mob/living/carbon/xenomorph/warrior/throw_item(atom/target) toggle_throw_mode(THROW_MODE_OFF) /mob/living/carbon/xenomorph/warrior/stop_pulling() var/datum/behavior_delegate/warrior_base/warrior_delegate = behavior_delegate - if(isliving(pulling) && warrior_delegate.lunging) + if(isliving(pulling) && istype(warrior_delegate) && warrior_delegate.lunging) warrior_delegate.lunging = FALSE // To avoid extreme cases of stopping a lunge then quickly pulling and stopping to pull someone else var/mob/living/lunged = pulling lunged.set_effect(0, STUN) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/berserker.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/berserker.dm index 80e265d2fedd..d33475028b00 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/berserker.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/berserker.dm @@ -18,7 +18,7 @@ behavior_delegate_type = /datum/behavior_delegate/ravager_berserker /datum/xeno_strain/berserker/apply_strain(mob/living/carbon/xenomorph/ravager/ravager) - ravager.plasma_max = 0 + ravager.plasmapool_modifier = XENO_NO_PLASMA ravager.health_modifier -= XENO_HEALTH_MOD_MED ravager.armor_modifier += XENO_ARMOR_MOD_VERY_SMALL ravager.speed_modifier += XENO_SPEED_FASTMOD_TIER_3 diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/hedgehog.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/hedgehog.dm index 1497e50ef22d..8632830e2172 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/hedgehog.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/hedgehog.dm @@ -18,7 +18,7 @@ behavior_delegate_type = /datum/behavior_delegate/ravager_hedgehog /datum/xeno_strain/hedgehog/apply_strain(mob/living/carbon/xenomorph/ravager/ravager) - ravager.plasma_max = 0 + ravager.plasmapool_modifier = XENO_NO_PLASMA ravager.small_explosives_stun = TRUE ravager.explosivearmor_modifier += XENO_EXPOSIVEARMOR_MOD_SMALL ravager.damage_modifier -= XENO_DAMAGE_MOD_SMALL diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/warrior/bulwark.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/warrior/bulwark.dm new file mode 100644 index 000000000000..6bbecc671e41 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/warrior/bulwark.dm @@ -0,0 +1,393 @@ +/datum/xeno_strain/bulwark + name = WARRIOR_BULWARK + description = "You give up all of your normal abilities, as well as some damage, speed, tackle reliability, and you take 50% more melee damage, in exchange for plasma, slightly stronger explosive resistance, and directional defenses. You take 50% less damage from wired cades, have a 75% chance to strike enemies behind wired cades, and gain bonus directional armor with no directional-lock slowdown. Encasing Plates lets you enter a defensive stance that slows your movement and reduces tackle efficiency, but increases directional armor, makes you immune to knockbacks, and allows you to tear openings in walls. Plate Bash dashes up to 3 tiles and strikes a target; while encased, it instead launches the target up to 3 tiles away and knocks them down. Tail Swing trips enemies around you; if used on a grenade instead, it reflects it up to 3 tiles away with a reduced cooldown. Reflective Shield allows you to reflect bullets coming from the front back toward enemies for up to 6 seconds with a 100% reflection chance. While active, it locks your facing direction to the direction it was activated in. You can stop this ability at any time, but its minimum cooldown is 6 seconds, and each additional 1 second of use adds 2 seconds to the cooldown." + flavor_description = "Where there's a sword, there's a shield." + icon_state_prefix = "Bulwark" + + actions_to_remove = list( + /datum/action/xeno_action/activable/warrior_punch, + /datum/action/xeno_action/activable/lunge, + /datum/action/xeno_action/activable/fling, + ) + actions_to_add = list( + /datum/action/xeno_action/onclick/toggle_plates, //1st + /datum/action/xeno_action/activable/plate_bash, //2nd + /datum/action/xeno_action/onclick/tail_swing, //3rd + /datum/action/xeno_action/onclick/reflective_shield, //4th + ) + + behavior_delegate_type = /datum/behavior_delegate/warrior_bulwark + +/datum/xeno_strain/bulwark/apply_strain(mob/living/carbon/xenomorph/warrior/warrior) + warrior.explosivearmor_modifier += XENO_EXPLOSIVE_ARMOR_TIER_1 + warrior.health_modifier += XENO_HEALTH_MOD_VERY_LARGE + warrior.armor_modifier += XENO_ARMOR_MOD_SMALL + warrior.add_plasma += XENO_PLASMA_TIER_2 + warrior.speed += XENO_SPEED_TIER_1 + warrior.tackle_max_modifier += 1 + warrior.melee_vulnerability_mult += 1.5 + + warrior.recalculate_everything() + +// +// bulwark config +// + +#define BULWARK_DIR_ARMOR 10 +#define BULWARK_GRENADE_SWEEP_THROW 3 +#define BULWARK_REFLECTION_CHANCE_FRONT 100 +#define BULWARK_REFLECTED_BULLET_DAMAGE 0.5 +#define BULWARK_REFLECTED_BULLET_ACCURACY 80 + +// +// Passive benefits +// + +/datum/behavior_delegate/warrior_bulwark + name = "Bulwark Warrior Behavior Delegate" + + var/frontal_armor = BULWARK_DIR_ARMOR + var/sided_armor = BULWARK_DIR_ARMOR + +/datum/behavior_delegate/warrior_bulwark/append_to_stat() + . = list() + . += "Front Armor: +[frontal_armor]" + . += "Side Armor: +[sided_armor]" + if(HAS_TRAIT(bound_xeno, TRAIT_ABILITY_ENCLOSED_PLATES)) + . += "Encased Plates: -[XENO_DAMAGE_MOD_BULWARK] Claws Damage." + var/datum/action/xeno_action/onclick/reflective_shield/ability_used = get_action(bound_xeno, /datum/action/xeno_action/onclick/reflective_shield) + if(ability_used.reflective_start_time != -1) + var/time_left = null + time_left = (BULWARK_REFLECTIVE_TIME - (world.time - ability_used.reflective_start_time)) / 10 + . += "Reflective Plates Remaining Time: [time_left] second\s." + return + +/datum/behavior_delegate/warrior_bulwark/add_to_xeno() + RegisterSignal(bound_xeno, COMSIG_XENO_PRE_CALCULATE_ARMOURED_DAMAGE_PROJECTILE, PROC_REF(apply_directional_armor)) + ADD_TRAIT(bound_xeno, TRAIT_NO_DIR_LOCK_SLOWDOWN, TRAIT_SOURCE_ABILITY("no_dir_lock_slowdown")) + +/datum/behavior_delegate/warrior_bulwark/proc/apply_directional_armor(mob/living/carbon/xenomorph/xeno_player, list/damagedata) + SIGNAL_HANDLER + var/projectile_direction = damagedata["direction"] + if(xeno_player.dir & REVERSE_DIR(projectile_direction)) + damagedata["armor"] += frontal_armor + else + for(var/side_direction in get_perpen_dir(xeno_player.dir)) + if(projectile_direction == side_direction) + damagedata["armor"] += sided_armor + return + +/datum/behavior_delegate/warrior_bulwark/on_update_icons() + if(bound_xeno.stat == DEAD) + return + + if(!HAS_TRAIT(bound_xeno, TRAIT_ABILITY_REFLECTIVE_PLATES)) + if(HAS_TRAIT(bound_xeno, TRAIT_ABILITY_ENCLOSED_PLATES) && bound_xeno.health > 0) + bound_xeno.icon_state = "[bound_xeno.get_strain_icon()] Warrior Shield" + return TRUE + + if(HAS_TRAIT(bound_xeno, TRAIT_ABILITY_REFLECTIVE_PLATES) && bound_xeno.health > 0) + bound_xeno.icon_state = "[bound_xeno.get_strain_icon()] Warrior Shield Reflective" + return TRUE + +/datum/behavior_delegate/warrior_bulwark/melee_attack_additional_effects_target(mob/living/carbon/carbon_target) + if(HAS_TRAIT(bound_xeno, TRAIT_ABILITY_ENCLOSED_PLATES)) + bound_xeno.flick_attack_overlay(carbon_target, "punch") // We shmwack them with plates! + +// +// 1st ability +// + +/datum/action/xeno_action/onclick/toggle_plates/use_ability() + var/mob/living/carbon/xenomorph/xeno_player = owner + if(!istype(xeno_player)) + return + + XENO_ACTION_CHECK(xeno_player) + + var/datum/action/xeno_action/onclick/reflective_shield/ability_used = get_action(xeno_player, /datum/action/xeno_action/onclick/reflective_shield) + if(HAS_TRAIT(xeno_player, TRAIT_ABILITY_ENCLOSED_PLATES)) + if(HAS_TRAIT(xeno_player, TRAIT_ABILITY_REFLECTIVE_PLATES)) + to_chat(xeno_player, SPAN_WARNING("We break our reflective stance!")) + ability_used.reflective_safe_click_cooldown = -1 + ability_used.remove_reflective_shield() + disengage_plates() + else + engage_plates() + + return ..() + +/datum/action/xeno_action/onclick/toggle_plates/proc/engage_plates() + var/mob/living/carbon/xenomorph/xeno_player = owner + if(!istype(xeno_player)) + return + + var/datum/behavior_delegate/warrior_bulwark/behavior = xeno_player.behavior_delegate + if(!istype(behavior)) + return + + ADD_TRAIT(xeno_player, TRAIT_ABILITY_ENCLOSED_PLATES, TRAIT_SOURCE_ABILITY("enclosed_plates")) + to_chat(xeno_player, SPAN_XENOWARNING("We raise our plates and form a shield.")) + xeno_player.ability_speed_modifier += speed_debuff + xeno_player.mob_size = MOB_SIZE_BIG //knockback immune + button.icon_state = "template_active" + behavior.frontal_armor += BULWARK_DIR_ARMOR + behavior.sided_armor -= BULWARK_DIR_ARMOR + xeno_player.damage_modifier -= XENO_DAMAGE_MOD_BULWARK + xeno_player.tackle_min_modifier += 2 + + xeno_player.recalculate_tackle() + xeno_player.update_icons() + apply_cooldown() + +/datum/action/xeno_action/onclick/toggle_plates/proc/disengage_plates() + var/mob/living/carbon/xenomorph/xeno_player = owner + if(!istype(xeno_player)) + return + + var/datum/behavior_delegate/warrior_bulwark/behavior = xeno_player.behavior_delegate + if(!istype(behavior)) + return + + REMOVE_TRAIT(xeno_player, TRAIT_ABILITY_ENCLOSED_PLATES, TRAIT_SOURCE_ABILITY("enclosed_plates")) + to_chat(xeno_player, SPAN_XENOWARNING("We lower our plates.")) + xeno_player.ability_speed_modifier -= speed_debuff + xeno_player.mob_size = MOB_SIZE_XENO //no longer knockback immune + button.icon_state = "template_xeno" + behavior.frontal_armor -= BULWARK_DIR_ARMOR + behavior.sided_armor += BULWARK_DIR_ARMOR + xeno_player.damage_modifier += XENO_DAMAGE_MOD_BULWARK + xeno_player.tackle_min_modifier -= 2 + + xeno_player.recalculate_tackle() + xeno_player.update_icons() + apply_cooldown() + +// +// 2nd ability +// + +/datum/action/xeno_action/activable/plate_bash/use_ability(atom/target_atom) + var/mob/living/carbon/xenomorph/xeno_player = owner + + if(!iscarbon(target_atom)) + return + + if(!isxeno_human(target_atom) || xeno_player.can_not_harm(target_atom)) + return + + XENO_ACTION_CHECK_USE_PLASMA(xeno_player) + + var/mob/living/carbon/carbon_target = target_atom + if(carbon_target.stat == DEAD) + return + + var/distance = get_dist(xeno_player, carbon_target) + var/max_distance = 2 + if(distance > max_distance) + return + + if(!HAS_TRAIT(xeno_player, TRAIT_ABILITY_ENCLOSED_PLATES)) + xeno_player.throw_atom(get_step_towards(carbon_target, xeno_player), 2, SPEED_SLOW, xeno_player, tracking=TRUE) + if(!xeno_player.Adjacent(carbon_target)) + on_cooldown_end() + return + + carbon_target.last_damage_data = create_cause_data(xeno_player.caste_type, xeno_player) + var/facing = get_dir(xeno_player, carbon_target) + + if(HAS_TRAIT(xeno_player, TRAIT_ABILITY_ENCLOSED_PLATES)) + xeno_player.throw_carbon(carbon_target, facing, 3, SPEED_VERY_FAST, shake_camera = TRUE, immobilize = TRUE) + carbon_target.KnockDown(1) + else + xeno_player.throw_carbon(carbon_target, facing, 1, SPEED_SLOW, shake_camera = TRUE, immobilize = FALSE) + + apply_custom_cooldown() + + if(carbon_target.stat != DEAD && (!(carbon_target.status_flags & XENO_HOST) || !HAS_TRAIT(carbon_target, TRAIT_NESTED))) + carbon_target.apply_armoured_damage(get_xeno_damage_slash(carbon_target, base_damage), ARMOR_MELEE, BRUTE, "chest", 5) + + xeno_player.visible_message(SPAN_XENOWARNING("[xeno_player] dashes at [carbon_target] with its armored plates!"), + SPAN_XENOWARNING("We dash at [carbon_target] with our armored plates!")) + + xeno_player.face_atom(carbon_target) + xeno_player.animation_attack_on(carbon_target) + xeno_player.flick_attack_overlay(carbon_target, "punch") + playsound(carbon_target,'sound/weapons/alien_claw_block.ogg', 50, 1) + + return ..() + +// +// 3rd ability +// + +/datum/action/xeno_action/onclick/tail_swing/use_ability() + var/mob/living/carbon/xenomorph/xeno_player = owner + + var/datum/action/xeno_action/onclick/reflective_shield/ability_used = get_action(xeno_player, /datum/action/xeno_action/onclick/reflective_shield) + var/datum/action/xeno_action/onclick/toggle_plates/plates_used = get_action(xeno_player, /datum/action/xeno_action/onclick/toggle_plates) + + if(HAS_TRAIT(xeno_player, TRAIT_ABILITY_ENCLOSED_PLATES)) + if(HAS_TRAIT(xeno_player, TRAIT_ABILITY_REFLECTIVE_PLATES)) + to_chat(xeno_player, SPAN_WARNING("We break our reflective stance!")) + ability_used.reflective_safe_click_cooldown = -1 + ability_used.remove_reflective_shield() + to_chat(xeno_player, SPAN_WARNING("We break our defensive stance!")) + plates_used.disengage_plates() + + xeno_player.visible_message(SPAN_XENOWARNING("[xeno_player] swings its tail in a wide circle!"), + SPAN_XENOWARNING("We swing our tail in a wide circle!")) + + XENO_ACTION_CHECK_USE_PLASMA(xeno_player) + + xeno_player.spin_circle() + playsound(xeno_player,'sound/effects/tail_swing.ogg', 25, 1) + + var/hit_enemy = FALSE + for(var/mob/living/carbon/carbon_target in orange(swing_range, get_turf(xeno_player))) + if(!isxeno_human(carbon_target) || xeno_player.can_not_harm(carbon_target)) + continue + if(carbon_target.stat == DEAD) + continue + if(HAS_TRAIT(carbon_target, TRAIT_NESTED)) + continue + + hit_enemy = TRUE + xeno_player.flick_attack_overlay(carbon_target, "punch") + carbon_target.last_damage_data = create_cause_data(xeno_player.caste_type, xeno_player) + carbon_target.apply_armoured_damage(get_xeno_damage_slash(xeno_player, 15), ARMOR_MELEE, BRUTE) + shake_camera(carbon_target, 2, 1) + + if(carbon_target.mob_size < MOB_SIZE_BIG) + carbon_target.apply_effect(get_xeno_stun_duration(carbon_target, 1), WEAKEN) + + to_chat(carbon_target, SPAN_XENOWARNING("You are tripped by [xeno_player]'s tail swing!")) + playsound(carbon_target,'sound/weapons/alien_claw_block.ogg', 50, 1) + + var/hit_grenade = FALSE + for(var/obj/item/explosive/grenade/grenade in orange(swing_range, get_turf(xeno_player))) + hit_grenade = TRUE + var/direction = get_dir(xeno_player, grenade) + var/turf/target_destination = get_ranged_target_turf(grenade, direction, BULWARK_GRENADE_SWEEP_THROW) + if(target_destination) + grenade.throw_atom(target_destination, BULWARK_GRENADE_SWEEP_THROW, SPEED_FAST, grenade) + playsound(xeno_player,'sound/effects/grenade_hit.ogg', 50, 1) + + if(!hit_enemy && hit_grenade) + xeno_cooldown *= 0.3 + + if(!hit_enemy && !hit_grenade) + xeno_cooldown *= 0.3 + + apply_custom_cooldown() + + return ..() + +// +// 4th ability +// + +/datum/action/xeno_action/onclick/reflective_shield/use_ability() + var/mob/living/carbon/xenomorph/warrior/xeno_player = owner + + XENO_ACTION_CHECK(xeno_player) + + if(HAS_TRAIT(xeno_player, TRAIT_ABILITY_REFLECTIVE_PLATES)) + remove_reflective_shield() + return + + if(!HAS_TRAIT(xeno_player, TRAIT_ABILITY_ENCLOSED_PLATES)) + xeno_player.balloon_alert(xeno_player, "we need to tense up our plates!", text_color = "#7d32bb", delay = 1 SECONDS) + return + + if(!check_and_use_plasma_owner(80)) + return + + xeno_player.stop_pulling() + ADD_TRAIT(xeno_player, TRAIT_ABILITY_REFLECTIVE_PLATES, TRAIT_SOURCE_ABILITY("reflective_plates")) + xeno_player.flags_atom |= DIRLOCK + xeno_player.update_icons() + xeno_player.create_shield(BULWARK_REFLECTIVE_TIME, "shield2") + button.icon_state = "template_active" + reflective_start_time = world.time + reflective_safe_click_cooldown = world.time + 1 SECONDS + + to_chat(xeno_player, SPAN_XENOWARNING("We adjust our plates and prepare for incoming frontal attacks!")) + xeno_player.visible_message(SPAN_XENOWARNING("[xeno_player] locks its stance, focusing on incoming frontal attacks!")) + + if(reflective_shield_timer_id != TIMER_ID_NULL) + deltimer(reflective_shield_timer_id) + + reflective_shield_timer_id = addtimer(CALLBACK(src, PROC_REF(remove_reflective_shield)), BULWARK_REFLECTIVE_TIME, TIMER_STOPPABLE) + + apply_cooldown() + return ..() + +/datum/action/xeno_action/onclick/reflective_shield/proc/remove_reflective_shield() + var/mob/living/carbon/xenomorph/warrior/xeno_player = owner + + var/datum/action/xeno_action/onclick/reflective_shield/ability_used = get_action(xeno_player, /datum/action/xeno_action/onclick/reflective_shield) + if(!istype(ability_used)) + return + + if(!HAS_TRAIT(xeno_player, TRAIT_ABILITY_REFLECTIVE_PLATES)) + return + + if(world.time < ability_used.reflective_safe_click_cooldown) + to_chat(xeno_player, SPAN_XENOWARNING("We need a moment before breaking our reflective stance!")) + return + + REMOVE_TRAIT(xeno_player, TRAIT_ABILITY_REFLECTIVE_PLATES, TRAIT_SOURCE_ABILITY("reflective_plates")) + xeno_player.update_icons() + xeno_player.remove_suit_layer() + button.icon_state = "template_xeno" + to_chat(xeno_player, SPAN_XENOWARNING("We adjust our plates and stance back to normal.")) + + if(ability_used.reflective_shield_timer_id != TIMER_ID_NULL) + deltimer(ability_used.reflective_shield_timer_id) + ability_used.reflective_shield_timer_id = TIMER_ID_NULL + + if(ability_used.reflective_start_time > 0) + var/used_ratio = round((world.time - ability_used.reflective_start_time) / ability_used.duration, 0.1) + ability_used.reflective_recharge_time = (BULWARK_REFLECTIVE_TIME * used_ratio * ability_used.reflective_refund_multiplier) + 6 SECONDS + + ability_used.reflective_start_time = -1 + apply_cooldown_override(ability_used.reflective_recharge_time) + +/mob/living/carbon/xenomorph/warrior/get_reflection_chance(obj/projectile/bullet) + var/datum/behavior_delegate/warrior_bulwark/behavior = src.behavior_delegate + if(!istype(behavior)) + return + + if(!HAS_TRAIT(src, TRAIT_ABILITY_REFLECTIVE_PLATES)) + return + + if(body_position == LYING_DOWN || stat == UNCONSCIOUS) + return //we don't want to reflect bullets when we are laying down/unconscious. + + if(bullet.ammo.flags_ammo_behavior & (AMMO_SNIPER|AMMO_ROCKET|AMMO_XENO|AMMO_NO_DEFLECT|AMMO_SKIPS_ALIENS)) + return //we don't want to reflect sniper bullets, rockets, anti-reflection bullets, xeno bullets and friendly bullets. + + var/projectile_dir = 0 + + if(!bullet.firer) + return + + projectile_dir = bullet.dir + + if(src.dir & REVERSE_DIR(projectile_dir)) + return BULWARK_REFLECTION_CHANCE_FRONT + + for(var/side_dir in get_perpen_dir(src.dir)) + if(projectile_dir == side_dir) + return 0 + + return + +// +// Custom Proc(s) +// + +/datum/action/xeno_action/proc/apply_custom_cooldown() + apply_cooldown() + xeno_cooldown = initial(xeno_cooldown) //We revert cooldown back to original value (after it got applied) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 779969ddf073..324a1f61bd27 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -725,6 +725,8 @@ note dizziness decrements automatically in the mob's Life() proc. if(!canface()) return 0 if(dir != ndir) + if(HAS_TRAIT(src, TRAIT_ABILITY_REFLECTIVE_PLATES)) + return flags_atom &= ~DIRLOCK setDir(ndir) if(buckled && !buckled.anchored) diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index f180e11be404..c8c3d6c08d4c 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -186,7 +186,8 @@ CLIENT_VERB(drop_item) move_delay += mob.next_move_slowdown mob.next_move_slowdown = 0 if((mob.flags_atom & DIRLOCK) && mob.dir != direct) - move_delay += MOVE_REDUCTION_DIRECTION_LOCKED // by Geeves + if(!HAS_TRAIT(mob, TRAIT_NO_DIR_LOCK_SLOWDOWN)) + move_delay += MOVE_REDUCTION_DIRECTION_LOCKED // by Geeves mob.cur_speed = clamp(10/(move_delay + 0.5), MIN_SPEED, MAX_SPEED) next_movement = world.time + MINIMAL_MOVEMENT_INTERVAL // We pre-set this now for the crawling case. If crawling do_after fails, next_movement would be set after the attempt end instead of now. diff --git a/code/modules/projectiles/magazines/sentries.dm b/code/modules/projectiles/magazines/sentries.dm index 7287b71e16f0..199516286a7d 100644 --- a/code/modules/projectiles/magazines/sentries.dm +++ b/code/modules/projectiles/magazines/sentries.dm @@ -34,7 +34,7 @@ desc = "An ammo drum of 50 12g buckshot drums for the UA 12-G Shotgun Sentry. Just feed it into the sentry gun's ammo port when its ammo is depleted." caliber = "12g" max_rounds = 50 - default_ammo = /datum/ammo/bullet/shotgun/buckshot + default_ammo = /datum/ammo/bullet/shotgun/buckshot/turret /obj/item/ammo_magazine/sentry/wy name = "H20 ammo drum (10x42mm Caseless)" diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 98852846bba6..f9fc7ec260e4 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -360,7 +360,7 @@ var/turf/current_turf = get_turf(src) var/turf/next_turf = popleft(path) - // Terminal projectiles (about to hit) are handled first for retarget logic + // Terminal projectiles (about to hit) are handled firer for retarget logic if((speed * world.tick_lag) >= get_dist(current_turf, target_turf)) SEND_SIGNAL(src, COMSIG_BULLET_TERMINAL) @@ -420,6 +420,8 @@ return FALSE if(turf.density) // Handle wall hit + if(turf in permutated) + return FALSE var/ammo_flags = ammo.flags_ammo_behavior | projectile_override_flags if(SEND_SIGNAL(src, COMSIG_BULLET_PRE_HANDLE_TURF, turf) & COMPONENT_BULLET_PASS_THROUGH) @@ -506,19 +508,33 @@ if(SEND_SIGNAL(src, COMSIG_BULLET_POST_HANDLE_OBJ, obj, .) & COMPONENT_BULLET_PASS_THROUGH) return FALSE -/obj/projectile/proc/handle_mob(mob/living/living) +/obj/projectile/proc/handle_mob(mob/living/target_living) // If we've already handled this atom, don't do it again - if(SEND_SIGNAL(src, COMSIG_BULLET_PRE_HANDLE_MOB, living, .) & COMPONENT_BULLET_PASS_THROUGH) + if(SEND_SIGNAL(src, COMSIG_BULLET_PRE_HANDLE_MOB, target_living, .) & COMPONENT_BULLET_PASS_THROUGH) return FALSE - if((MODE_HAS_MODIFIER(/datum/gamemode_modifier/disable_attacking_corpses) && living.stat == DEAD) || (living in permutated)) + if((MODE_HAS_MODIFIER(/datum/gamemode_modifier/disable_attacking_corpses) && target_living.stat == DEAD) || (target_living in permutated)) return FALSE - permutated |= living - if((ammo.flags_ammo_behavior & AMMO_XENO) && (isfacehugger(living) || living.stat == DEAD)) //xeno ammo is NEVER meant to hit or damage dead people. If you want to add a xeno ammo that DOES then make a new flag that makes it ignore this check. + + if(isxeno(target_living)) + var/mob/living/carbon/xenomorph/xeno = target_living + var/directional_chance = xeno.get_reflection_chance(src) + if(directional_chance > 0 && prob(directional_chance)) + src.reflect_projectile_at_firer( + reflector = xeno, + new_firer = xeno, + damage_multiplier = BULWARK_REFLECTED_BULLET_DAMAGE, + accuracy_override = BULWARK_REFLECTED_BULLET_ACCURACY, + angle_variance = 25 + ) + return TRUE + + permutated |= target_living + if((ammo.flags_ammo_behavior & AMMO_XENO) && (isfacehugger(target_living) || target_living.stat == DEAD)) //xeno ammo is NEVER meant to hit or damage dead people. If you want to add a xeno ammo that DOES then make a new flag that makes it ignore this check. return FALSE - var/hit_chance = living.get_projectile_hit_chance(src) + var/hit_chance = target_living.get_projectile_hit_chance(src) if(hit_chance) // Calculated from combination of both ammo accuracy and gun accuracy @@ -526,86 +542,86 @@ var/direct_hit = FALSE // Wasn't the clicked target - if(original != living) + if(original != target_living) def_zone = rand_zone() // Xenos get a RNG limb miss chance regardless of being clicked target or not, see below - else if(isxeno(living) && hit_roll > hit_chance - 20) + else if(isxeno(target_living) && hit_roll > hit_chance - 20) def_zone = rand_zone() // Other targets do the same roll with penalty - a near hit will hit but redirected to another limb - else if(!isxeno(living) && hit_roll > hit_chance - 20 - GLOB.base_miss_chance[def_zone]) + else if(!isxeno(target_living) && hit_roll > hit_chance - 20 - GLOB.base_miss_chance[def_zone]) def_zone = rand_zone() else direct_hit = TRUE if(firer) - SEND_SIGNAL(firer, COMSIG_BULLET_DIRECT_HIT, living) + SEND_SIGNAL(firer, COMSIG_BULLET_DIRECT_HIT, target_living) // At present, Xenos have no inherent effects or localized damage stemming from limb targeting // Therefore we exempt the shooter from direct hit accuracy penalties as well, // simply to avoid them from resetting target to chest every time they want to shoot a xeno - if(!direct_hit || !isxeno(living)) // For normal people or direct hits we apply the limb accuracy penalty + if(!direct_hit || !isxeno(target_living)) // For normal people or direct hits we apply the limb accuracy penalty hit_chance -= GLOB.base_miss_chance[def_zone] // else for direct hits on xenos, we skip it, pretending it's a chest shot with zero penalty #if DEBUG_HIT_CHANCE - to_world(SPAN_DEBUG("([living]) Hit chance: [hit_chance] | Roll: [hit_roll]")) + to_world(SPAN_DEBUG("([target_living]) Hit chance: [hit_chance] | Roll: [hit_roll]")) #endif - if(hit_chance > hit_roll && !(living.status_flags & RECENTSPAWN)) + if(hit_chance > hit_roll && !(target_living.status_flags & RECENTSPAWN)) #if DEBUG_HIT_CHANCE - to_world(SPAN_DEBUG("([living]) Hit.")) + to_world(SPAN_DEBUG("([target_living]) Hit.")) #endif var/ammo_flags = ammo.flags_ammo_behavior | projectile_override_flags // If the ammo should hit the surface of the target and there is a mob blocking // The current turf is the "surface" of the target if(ammo_flags & AMMO_STRIKES_SURFACE) - var/turf/turf = get_turf(living) + var/turf/turf = get_turf(target_living) // We "hit" the current turf but strike the actual blockage ammo.on_hit_turf(get_turf(src),src) turf.bullet_act(src) - else if(living && living.loc && (living.bullet_act(src) != -1)) - ammo.on_hit_mob(living,src, firer) + else if(target_living && target_living.loc && (target_living.bullet_act(src) != -1)) + ammo.on_hit_mob(target_living,src, firer) // If we are a xeno shooting something - if(istype(ammo, /datum/ammo/xeno) && isxeno(firer) && living.stat != DEAD && ammo.apply_delegate) + if(istype(ammo, /datum/ammo/xeno) && isxeno(firer) && target_living.stat != DEAD && ammo.apply_delegate) var/mob/living/carbon/xenomorph/xeno = firer if(xeno.behavior_delegate) var/datum/behavior_delegate/MD = xeno.behavior_delegate - MD.ranged_attack_additional_effects_target(living) - MD.ranged_attack_additional_effects_self(living) + MD.ranged_attack_additional_effects_target(target_living) + MD.ranged_attack_additional_effects_self(target_living) // If the thing we're hitting is a Xeno - if(istype(living, /mob/living/carbon/xenomorph)) - var/mob/living/carbon/xenomorph/xeno = living + if(istype(target_living, /mob/living/carbon/xenomorph)) + var/mob/living/carbon/xenomorph/xeno = target_living if(xeno.behavior_delegate) xeno.behavior_delegate.on_hitby_projectile(ammo) . = TRUE - else if(living.body_position != LYING_DOWN) - animatation_displace_reset(living) + else if(target_living.body_position != LYING_DOWN) + animatation_displace_reset(target_living) if(ammo.sound_miss) - playsound_client(living.client, ammo.sound_miss, get_turf(living), 75, TRUE) - living.visible_message(SPAN_AVOIDHARM("[src] misses [living]!"), + playsound_client(target_living.client, ammo.sound_miss, get_turf(target_living), 75, TRUE) + target_living.visible_message(SPAN_AVOIDHARM("[src] misses [target_living]!"), SPAN_AVOIDHARM("[src] narrowly misses you!"), null, 4, CHAT_TYPE_TAKING_HIT) - var/log_message = "[src] narrowly missed [key_name(living)]" + var/log_message = "[src] narrowly missed [key_name(target_living)]" var/mob/living/carbon/shotby = firer if(istype(shotby)) - living.attack_log += "\[[time_stamp()]\] [src], fired by [key_name(firer)], narrowly missed [key_name(living)]" - shotby.attack_log += "\[[time_stamp()]\] [src], fired by [key_name(shotby)], narrowly missed [key_name(living)]" - log_message = "[src], fired by [key_name(firer)], narrowly missed [key_name(living)]" + target_living.attack_log += "\[[time_stamp()]\] [src], fired by [key_name(firer)], narrowly missed [key_name(target_living)]" + shotby.attack_log += "\[[time_stamp()]\] [src], fired by [key_name(shotby)], narrowly missed [key_name(target_living)]" + log_message = "[src], fired by [key_name(firer)], narrowly missed [key_name(target_living)]" log_attack(log_message) #if DEBUG_HIT_CHANCE - to_world(SPAN_DEBUG("([living]) Missed.")) + to_world(SPAN_DEBUG("([target_living]) Missed.")) #endif - if(SEND_SIGNAL(src, COMSIG_BULLET_POST_HANDLE_MOB, living, .) & COMPONENT_BULLET_PASS_THROUGH) + if(SEND_SIGNAL(src, COMSIG_BULLET_POST_HANDLE_MOB, target_living, .) & COMPONENT_BULLET_PASS_THROUGH) return FALSE /obj/projectile/proc/check_canhit(turf/current_turf, turf/next_turf, list/ignore_list) @@ -1365,6 +1381,60 @@ . = ..() source_pill = null +/** + * explained: + * * reflector - what shoots projectiles back. + * * new_firer - who shoots projectiles back. + * * damage_multiplier - how much bullet damage get reflected, default is 0.5 (50%). + * * accuracy_override - used to override shoot bullet accuracy. + * * angle_variance - how big reflection cone should be, default is 25, final cone will be 50 degrees (-25 and 25) + * * range_override - how far reflected bullet will travel, overridies original projectile value with new one. + * * projectile_flag_override - should only be used if you want to change bullet to other type than shrapnel. + * * ignore_safety - if set to TRUE, allows "target" to reflect reflected bullets. + */ +/obj/projectile/proc/reflect_projectile_at_firer(atom/reflector, atom/new_firer, damage_multiplier = 0.5, accuracy_override, angle_variance = 25, range_override, projectile_flag_override = NONE, ignore_safety = FALSE) + if(!ammo) + return + + if(!firer) + return + + if(!ignore_safety) + if(projectile_flags & PROJECTILE_REFLECTED) // So we cannot reflect reflected, could create infinite* loop. + return + + var/turf/source_turf = get_turf(reflector) + if(!source_turf) + return + + var/obj/projectile/new_proj = new(source_turf,create_cause_data("[reflector]")) + new_proj.generate_bullet(ammo) + new_proj.damage = damage * damage_multiplier + + if(!isnull(accuracy_override)) + new_proj.accuracy = accuracy_override + else + new_proj.accuracy = accuracy + + if(projectile_flag_override) + new_proj.projectile_flags |= projectile_flag_override + else + new_proj.projectile_flags |= PROJECTILE_SHRAPNEL //we make it shrapnel unless overrided. + + new_proj.projectile_flags |= PROJECTILE_REFLECTED + new_proj.permutated |= src + new_proj.permutated |= reflector + + var/angle = Get_Angle(source_turf, firer) + angle += rand(-angle_variance, angle_variance) + var/atom/target = get_angle_target_turf(source_turf,angle,get_dist_sqrd(source_turf, firer)) + + if(!range_override) + range_override = max(ammo.max_range, 1) + + new_proj.fire_at(target,new_firer ? new_firer : firer,reflector,range_override,speed = ammo.shell_speed) + return new_proj + #undef DEBUG_HIT_CHANCE #undef DEBUG_HUMAN_DEFENSE #undef DEBUG_XENO_DEFENSE diff --git a/colonialmarines.dme b/colonialmarines.dme index ef428f6aba0c..3f892dfd5550 100644 --- a/colonialmarines.dme +++ b/colonialmarines.dme @@ -2302,6 +2302,7 @@ #include "code\modules\mob\living\carbon\xenomorph\strains\castes\ravager\berserker.dm" #include "code\modules\mob\living\carbon\xenomorph\strains\castes\ravager\hedgehog.dm" #include "code\modules\mob\living\carbon\xenomorph\strains\castes\runner\acider.dm" +#include "code\modules\mob\living\carbon\xenomorph\strains\castes\warrior\bulwark.dm" #include "code\modules\mob\living\silicon\death.dm" #include "code\modules\mob\living\silicon\login.dm" #include "code\modules\mob\living\silicon\say.dm" diff --git a/icons/mob/hud/actions_xeno.dmi b/icons/mob/hud/actions_xeno.dmi index 4409d45a1470b8cef346d4af3bccf4ad12aaf7a2..1bb981218850d4d9e2e15f5eda1e490beaeea24a 100644 GIT binary patch literal 66263 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 ts>u$r;h?!($@KSufZd$(0d;U2 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 diff --git a/icons/mob/hud/hud.dmi b/icons/mob/hud/hud.dmi index bde26859a1599740d656f0f5a89fcd47c5871eb5..6f909a4d05ec46dbbe75100210b537a61b94307b 100644 GIT binary patch literal 21678 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 G)c*ip;OkZZ literal 30580 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Ž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 literal 0 HcmV?d00001 From 89de74ff092c1af8bec1e08ee207038085b2f822 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 02:35:38 +0000 Subject: [PATCH 11/25] Automatic changelog for PR #12441 [ci skip] --- html/changelogs/AutoChangeLog-pr-12441.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12441.yml diff --git a/html/changelogs/AutoChangeLog-pr-12441.yml b/html/changelogs/AutoChangeLog-pr-12441.yml new file mode 100644 index 000000000000..443c1ae68ed6 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12441.yml @@ -0,0 +1,5 @@ +author: "realforest2001" +delete-after: True +changes: + - rscadd: "Added Abomination pelt and skull items." + - code_imp: "Added code to delete instances of skull and pelt that have no icon." \ No newline at end of file From 9b66319f45262f82dfb7e68504b0fd76f94cf4d2 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 02:37:53 +0000 Subject: [PATCH 12/25] Automatic changelog for PR #10541 [ci skip] --- html/changelogs/AutoChangeLog-pr-10541.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-10541.yml diff --git a/html/changelogs/AutoChangeLog-pr-10541.yml b/html/changelogs/AutoChangeLog-pr-10541.yml new file mode 100644 index 000000000000..572ccf8455fc --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-10541.yml @@ -0,0 +1,11 @@ +author: "Venuska1117" +delete-after: True +changes: + - rscadd: "Add new Warrior Strain \"Bulwark\"." + - rscadd: "Bulwark have 600 health, tackles of 2 min - 5max, gains 200 plasma, +10 explosive and +10 normal armor for decreased speed and takes 50% more melee damage." + - rscadd: "Bulwark have 4 passive abilities, 50% less damage from wired cades (5 damage instead of 10), 75% for slashes or tailstab to go through wired cades and hit target behind them, +10 front armor and +10 side armor and no direct lock slowdown." + - rscadd: "Encased Plates, this ability when activated it will reduce your movement speed by 1.35, increases minimum tackles needed to tackle someone down by +2 and decreased slash damage by 8, in exchange you gain +10 front armor and lose -10 side armor (stacks with passive), immunity to knockdowns and ability to open holes in walls." + - rscadd: "Plate Bash, this ability will launch you toward targets if its in range of 2 tiles (3 tiles), it will hit them 1 tile away and shake their screen, if encased plates are active, this ability changes to only work on adjecent targets but in exchange you send them 3 tiles away, knockdown and stun target." + - rscadd: "Tail Sweep, this ability will hit all adjecent tiles (including corners) around you and trip enemies down and briefly stun them, if grenade is present instead of target, you will send grenade 4 tiles away and your cooldown will be decreased to 1/3rd of full cooldown, if both target and grenade are hit, normal cooldown value will be applied." + - rscadd: "Reflective Shield, this ability will lock your looking direction when casted to reflect bullets towards target in 50 degree cone (-25 to 25 angle), reflected bullets will only deal half of their original damage, your reflection chance is 100% from front ONLY but you lose ability to attack or help (you can still use abilities) and drop pulled targets, this ability can be disabled early like how lurker invisibility works 1s used is 2s cooldown but you gain +6s to cooldown, minimum 6s cooldown and 18s max, this ability CANNOT reflects sniper bullets, rockets and anti-reflective ammo (like SHARP darts), xeno projectiles and turrets." + - balance: "Fix Reflective walls, now they reflect bullets properly (uses new bulwark reflective proc)." \ No newline at end of file From dc469e2bbf4c1f433ac2b3e99e782f22ab1aa806 Mon Sep 17 00:00:00 2001 From: Drathek <76988376+Drulikar@users.noreply.github.com> Date: Sun, 21 Jun 2026 21:06:26 -0500 Subject: [PATCH 13/25] Fix custom smoke spawning runtime (#12472) # About the pull request This PR does just a couple things (follow up to #11963 ): - Deletes a test smoke immediately - Makes the area check for new smoke to be null safe (because above spawns it with no loc) # Explain why it's good for the game Fixes image # Testing Photographs and Procedure
Screenshots & Videos image
# Changelog :cl: Drathek fix: Fixed a runtime with custom smoke spawning /:cl: --- code/game/objects/effects/effect_system/smoke.dm | 2 +- code/modules/projectiles/guns/flamer/flamer.dm | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/objects/effects/effect_system/smoke.dm b/code/game/objects/effects/effect_system/smoke.dm index df33523d468a..25a1ce72d83a 100644 --- a/code/game/objects/effects/effect_system/smoke.dm +++ b/code/game/objects/effects/effect_system/smoke.dm @@ -47,7 +47,7 @@ src.time_to_live += rand(-1,1) var/area/my_area = get_area(src) - if(my_area.flags_area & AREA_HEAVILY_VENTILATED) + if(my_area?.flags_area & AREA_HEAVILY_VENTILATED) var/new_amount = rand(1,3) src.time_to_live = min(new_amount, src.time_to_live) diff --git a/code/modules/projectiles/guns/flamer/flamer.dm b/code/modules/projectiles/guns/flamer/flamer.dm index 38496cfe9212..8a1147ef368b 100644 --- a/code/modules/projectiles/guns/flamer/flamer.dm +++ b/code/modules/projectiles/guns/flamer/flamer.dm @@ -328,6 +328,7 @@ else var/obj/effect/particle_effect/smoke/chem/checker = new() var/atom/blocked = LinkBlocked(checker, source_turf, turf) + qdel(checker) if(blocked) break From 8828cd553d19b2912649060092d7208e18f28891 Mon Sep 17 00:00:00 2001 From: NHC <155458128+TheManWithNoHands@users.noreply.github.com> Date: Mon, 22 Jun 2026 04:06:33 +0200 Subject: [PATCH 14/25] Fix: Sunglasses dupe in loudout menu (#12478) # About the pull request Fixes https://github.com/cmss13-devs/cmss13/issues/12317 , and sorts the code a bit so new hippy glasses are in the glasses block. # Explain why it's good for the game Fixes are nice, and neatly sorted code is extra nice. # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: NHC fix: Removed duped sunglasses from loudout menu /:cl: --- code/modules/client/preferences_gear.dm | 60 ++++++++++++------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/code/modules/client/preferences_gear.dm b/code/modules/client/preferences_gear.dm index a51820fc72c9..0594decac440 100644 --- a/code/modules/client/preferences_gear.dm +++ b/code/modules/client/preferences_gear.dm @@ -224,6 +224,36 @@ GLOBAL_LIST_EMPTY(roles_with_gear) display_name = "Sunglasses" path = /obj/item/clothing/glasses/sunglasses +// Hippie Shades + +/datum/gear/eyewear/sunglasses/hippie_shades + display_name = "Suntex-Sightware rounded shades, pink" + path = /obj/item/clothing/glasses/sunglasses/hippie + +/datum/gear/eyewear/sunglasses/hippie_shades/green + display_name = "Suntex-Sightware rounded shades, green" + path = /obj/item/clothing/glasses/sunglasses/hippie/green + +/datum/gear/eyewear/sunglasses/hippie_shades/sunrise + display_name = "Suntex-Sightware rounded shades, sunrise" + path = /obj/item/clothing/glasses/sunglasses/hippie/sunrise + +/datum/gear/eyewear/sunglasses/hippie_shades/sunset + display_name = "Suntex-Sightware rounded shades, sunset" + path = /obj/item/clothing/glasses/sunglasses/hippie/sunset + +/datum/gear/eyewear/sunglasses/hippie_shades/nightblue + display_name = "Suntex-Sightware rounded shades, nightblue" + path = /obj/item/clothing/glasses/sunglasses/hippie/nightblue + +/datum/gear/eyewear/sunglasses/hippie_shades/midnight + display_name = "Suntex-Sightware rounded shades, midnight" + path = /obj/item/clothing/glasses/sunglasses/hippie/midnight + +/datum/gear/eyewear/sunglasses/hippie_shades/bloodred + display_name = "Suntex-Sightware rounded shades, bloodred" + path = /obj/item/clothing/glasses/sunglasses/hippie/bloodred + /datum/gear/mask category = "Masks and scarves" slot = WEAR_FACE @@ -1362,36 +1392,6 @@ GLOBAL_LIST_EMPTY(roles_with_gear) display_name = "cowboy hat, light-brown" path = /obj/item/clothing/head/cowboy/light -// Hippie Shades - -/datum/gear/eyewear/sunglasses/hippie_shades/pink - display_name = "Suntex-Sightware rounded shades, pink" - path = /obj/item/clothing/glasses/sunglasses/hippie - -/datum/gear/eyewear/sunglasses/hippie_shades/green - display_name = "Suntex-Sightware rounded shades, green" - path = /obj/item/clothing/glasses/sunglasses/hippie/green - -/datum/gear/eyewear/sunglasses/hippie_shades/sunrise - display_name = "Suntex-Sightware rounded shades, sunrise" - path = /obj/item/clothing/glasses/sunglasses/hippie/sunrise - -/datum/gear/eyewear/sunglasses/hippie_shades/sunset - display_name = "Suntex-Sightware rounded shades, sunset" - path = /obj/item/clothing/glasses/sunglasses/hippie/sunset - -/datum/gear/eyewear/sunglasses/hippie_shades/nightblue - display_name = "Suntex-Sightware rounded shades, nightblue" - path = /obj/item/clothing/glasses/sunglasses/hippie/nightblue - -/datum/gear/eyewear/sunglasses/hippie_shades/midnight - display_name = "Suntex-Sightware rounded shades, midnight" - path = /obj/item/clothing/glasses/sunglasses/hippie/midnight - -/datum/gear/eyewear/sunglasses/hippie_shades/bloodred - display_name = "Suntex-Sightware rounded shades, bloodred" - path = /obj/item/clothing/glasses/sunglasses/hippie/bloodred - // Civilian shoes /datum/gear/civilian/shoes From dfd372f95ac28de8d8f595610ccdfda760015d62 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 03:05:17 +0000 Subject: [PATCH 15/25] Automatic changelog for PR #12472 [ci skip] --- html/changelogs/AutoChangeLog-pr-12472.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12472.yml diff --git a/html/changelogs/AutoChangeLog-pr-12472.yml b/html/changelogs/AutoChangeLog-pr-12472.yml new file mode 100644 index 000000000000..27e3e935b6e2 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12472.yml @@ -0,0 +1,4 @@ +author: "Drathek" +delete-after: True +changes: + - bugfix: "Fixed a runtime with custom smoke spawning" \ No newline at end of file From dad0a25762a7a2dc05176a547158fe85c939147c Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 03:05:30 +0000 Subject: [PATCH 16/25] Automatic changelog for PR #12478 [ci skip] --- html/changelogs/AutoChangeLog-pr-12478.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12478.yml diff --git a/html/changelogs/AutoChangeLog-pr-12478.yml b/html/changelogs/AutoChangeLog-pr-12478.yml new file mode 100644 index 000000000000..b47f8db7cd87 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12478.yml @@ -0,0 +1,4 @@ +author: "NHC" +delete-after: True +changes: + - bugfix: "Removed duped sunglasses from loudout menu" \ No newline at end of file From 3af90e55443228081618d0d859fa57d70b09e6ec Mon Sep 17 00:00:00 2001 From: virtualgirlie <55900616+virtualgirlie@users.noreply.github.com> Date: Sun, 21 Jun 2026 22:06:51 -0400 Subject: [PATCH 17/25] Fixes a typo in the Tyrargo Rift announcements (#12471) # About the pull request Removes an apostrophe where it is unnecessary in the Tyrargo Rift announcements. # Explain why it's good for the game It makes the announcement look more realistic. # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: spellcheck: changed "enemy boiler's" to "enemy boilers" /:cl: --- code/game/gamemodes/colonialmarines/colonialmarines.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index abe9b0e10913..d23cc82505a4 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -469,7 +469,7 @@ addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(marine_announcement), "Almayer, this is the Tyrargo Museum civilian evacuation site. We are under assault by a XX-121 cluster, but we are holding our own.\n\nWe have heavy XX-121 waves inbound from the north-east and are under heavy suppression, our evacuation craft are pinned by long range boiler strikes and the western city exits are too dangerous to move towards with ground based evacuation vehicles, we’re requesting you secure the western approach so you can suppress the enemy forces to allow civilian evacuation, over.", "Tyrargo Civilian Evac, 1st Air Cav Headquarters", 'sound/AI/commandreport.ogg'), 15 MINUTES) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(xeno_announcement), "Be on guard my children. I have sensed that the petrid sewers of this so called city could be flooded by the hosts at a moments notice if the hosts restore power to the area. The button to release this putrid water is found in the metal structure the hosts call the sewer treatement plant.", "everything", QUEEN_MOTHER_ANNOUNCE), 15 MINUTES) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(marine_announcement), "Attention: Analysis of city layout plans have identified a possible tactical advantage. A release valve can be triggered within the City Sewer Treatment Plant, this valve will flood the lower sewer tunnels with water, expunging a significant amount of xenobiological growth.\n\nHowever, this valve must be powered by repairing a special APC located within the underground power-substation, located east of the underground sewer treatment plant.", "ARES 3.2 Strategic Notice", 'sound/AI/commandreport.ogg'), 20 MINUTES) - addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(marine_announcement), "Almayer. We’re seeing increased XX-121 activity at the Tyrargo evac site. Additional strains are inbound from the north.\n\nEnemy Boiler’s have moved close enough to suppress our air support, we’re re-orienting the Longstreet tanks to cover our flanks. Requesting immediate suppression of enemy forces near our location via the western city entrance, over. ", "Tyrargo Civilian Evac, 1st Air Cav Headquarters", 'sound/AI/commandreport.ogg'), 35 MINUTES) + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(marine_announcement), "Almayer. We’re seeing increased XX-121 activity at the Tyrargo evac site. Additional strains are inbound from the north.\n\nEnemy Boilers have moved close enough to suppress our air support, we’re re-orienting the Longstreet tanks to cover our flanks. Requesting immediate suppression of enemy forces near our location via the western city entrance, over. ", "Tyrargo Civilian Evac, 1st Air Cav Headquarters", 'sound/AI/commandreport.ogg'), 35 MINUTES) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(marine_announcement), "All elements, more XX-121 clusters are encroaching from our east. We’re under heavy attack from all quarters and have lost half of our Longstreet tank support to Crushers.\n\nWe’ve exhausted our HEAP munitions and have had to switch to soft-point munitions. We can’t take this for much longer, requesting urgent support from Almayer forces, over.", "Tyrargo Civilian Evac, 1st Air Cav Headquarters", 'sound/AI/commandreport.ogg'), 60 MINUTES) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(marine_announcement), "This is Tyrargo. The xenos have begun to encroach from our southern flank. We only have a single tank left. We’re withdrawing to the middle corridor and have relocated the civilians to the inner perimeter.\n\nSituation is dire, we’re getting wasted. We need that support, over.", "Tyrargo Civilian Evac, 1st Air Cav Headquarters", 'sound/AI/commandreport.ogg'), 80 MINUTES) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(marine_announcement), "All elements! This is the Tyrargo evac site, our situation is critical. The bugs have us surrounded on all fronts, our armoured support is destroyed and we’re now being pinned by enemy Ravagers.\n\nWe need urgent fire support, we can’t take it much longer.", "Tyrargo Civilian Evac, 1st Air Cav Headquarters", 'sound/AI/commandreport.ogg'), 100 MINUTES) From d39cae548b9e5c21a11b44163f759d5f9d7f2370 Mon Sep 17 00:00:00 2001 From: harry Date: Mon, 22 Jun 2026 03:07:20 +0100 Subject: [PATCH 18/25] twitch links migrate to cmdb (#12458) title, fixes not being able to link/unlink :cl: server: twitch linking functionality is deprecated in game /:cl: --------- Co-authored-by: harryob <55142896+harryob@users.noreply.github.com> --- code/controllers/subsystem/cmtv.dm | 48 ++++++++++++++----- code/datums/entities/twitch_link.dm | 73 ----------------------------- colonialmarines.dme | 1 - 3 files changed, 36 insertions(+), 86 deletions(-) delete mode 100644 code/datums/entities/twitch_link.dm diff --git a/code/controllers/subsystem/cmtv.dm b/code/controllers/subsystem/cmtv.dm index 03104a886720..73c644fb00e2 100644 --- a/code/controllers/subsystem/cmtv.dm +++ b/code/controllers/subsystem/cmtv.dm @@ -484,27 +484,44 @@ SUBSYSTEM_DEF(cmtv) camera_operator.view = "32x24" /datum/controller/subsystem/cmtv/proc/is_subscriber(client/potential_subscriber) - if(!CONFIG_GET(string/cmtv_api) || !CONFIG_GET(string/cmtv_api_key)) - return FALSE + var/static/lookup_cache = list() + + var/cmtv_subscriber_api = CONFIG_GET(string/cmtv_subscriber_api) + var/cmtv_subscriber_api_key = CONFIG_GET(string/cmtv_subscriber_api_key) - WAIT_DB_READY + if(!CONFIG_GET(string/cmtv_api) || !CONFIG_GET(string/cmtv_api_key) || !cmtv_subscriber_api || !cmtv_subscriber_api_key) + return FALSE UNTIL(initialized) if(!potential_subscriber) return FALSE - var/list/datum/view_record/twitch_link/links = DB_VIEW(/datum/view_record/twitch_link, DB_AND( - DB_COMP("ckey", DB_EQUALS, potential_subscriber.ckey), - DB_COMP("twitch_id", DB_ISNOT) - )) + var/twitch_id = lookup_cache[potential_subscriber.ckey] + if(!twitch_id) + var/datum/http_request/request = new + request.prepare(RUSTG_HTTP_METHOD_GET, "[cmtv_subscriber_api]?ckey=[potential_subscriber.ckey]", null, list("Authorization" = "Bearer [cmtv_subscriber_api_key]")) + request.begin_async() - if(!length(links)) - return FALSE + UNTIL(request.is_complete()) + + var/datum/http_response/response = request.into_response() + + var/decoded + try + decoded = json_decode(response.body) + catch + log_debug("cmtv_subscriber_api returned an invalid response.") + return FALSE + + twitch_id = decoded["twitch_id"] + if(!twitch_id) + return FALSE - for(var/datum/view_record/twitch_link/link as anything in links) - if(link.twitch_id in subscribers) - return TRUE + lookup_cache[potential_subscriber.ckey] = twitch_id + + if(twitch_id in subscribers) + return TRUE return FALSE @@ -657,6 +674,13 @@ SUBSYSTEM_DEF(cmtv) /datum/config_entry/string/cmtv_api_key protection = CONFIG_ENTRY_HIDDEN | CONFIG_ENTRY_LOCKED +/datum/config_entry/string/cmtv_subscriber_api + protection = CONFIG_ENTRY_LOCKED + +/datum/config_entry/string/cmtv_subscriber_api_key + protection = CONFIG_ENTRY_HIDDEN | CONFIG_ENTRY_LOCKED + + /atom/movable/screen/cmtv plane = ESCAPE_MENU_PLANE clear_with_screen = FALSE diff --git a/code/datums/entities/twitch_link.dm b/code/datums/entities/twitch_link.dm deleted file mode 100644 index 5c1ccc4e30a3..000000000000 --- a/code/datums/entities/twitch_link.dm +++ /dev/null @@ -1,73 +0,0 @@ - -/datum/entity/twitch_link - var/ckey - var/access_code - var/twitch_id - -/datum/entity_meta/twitch_link - entity_type = /datum/entity/twitch_link - table_name = "twitch_link" - field_types = list( - "ckey" = DB_FIELDTYPE_STRING_LARGE, - "access_code" = DB_FIELDTYPE_STRING_MEDIUM, - "twitch_id" = DB_FIELDTYPE_STRING_LARGE, - ) - -/datum/view_record/twitch_link - var/ckey - var/access_code - var/twitch_id - var/id - -/datum/entity_view_meta/twitch_link - root_record_type = /datum/entity/twitch_link - destination_entity = /datum/view_record/twitch_link - - fields = list( - "ckey", - "access_code", - "twitch_id", - "id", - ) - -/datum/config_entry/string/twitch_link_url - protection = CONFIG_ENTRY_LOCKED - -CLIENT_VERB(link_twitch) - set name = "Twitch Link" - set category = "OOC" - - var/url = CONFIG_GET(string/twitch_link_url) - if(!url) - to_chat(src, SPAN_WARNING("Twitch linking is not enabled on this server.")) - return - - if(IsGuestKey(key, TRUE)) - to_chat(src, SPAN_WARNING("You must be connected as a BYOND key to connect to Twitch.")) - return - - if(length(DB_VIEW(/datum/view_record/twitch_link, - DB_AND( - DB_COMP("ckey", DB_EQUALS, ckey), - DB_COMP("twitch_id", DB_IS) - )) - )) - to_chat(src, SPAN_WARNING("You have already linked this CKEY to Twitch. Contact support to remove this.")) - return - - var/datum/view_record/twitch_link/existing_link = locate() in DB_VIEW( - DB_COMP("ckey", DB_EQUALS, ckey) - ) - - if(existing_link) - to_chat(src, SPAN_LARGE(SPAN_NOTICE("Please click
here to link your CKEY to Twitch."))) - return - - var/datum/entity/twitch_link/new_link = DB_ENTITY(/datum/entity/twitch_link) - new_link.access_code = generate_access_code() - new_link.ckey = ckey - - new_link.save() - new_link.detach() - - to_chat(src, SPAN_LARGE(SPAN_NOTICE("Please click here to link your CKEY to Twitch."))) diff --git a/colonialmarines.dme b/colonialmarines.dme index 3f892dfd5550..af6e0cf6ead6 100644 --- a/colonialmarines.dme +++ b/colonialmarines.dme @@ -618,7 +618,6 @@ #include "code\datums\entities\player_sticky_ban.dm" #include "code\datums\entities\player_times.dm" #include "code\datums\entities\ticket.dm" -#include "code\datums\entities\twitch_link.dm" #include "code\datums\entities\logs\player_times_log.dm" #include "code\datums\factions\clf.dm" #include "code\datums\factions\cmb.dm" From 13677cea5bbc230efdfaf9c924c494dd98429e1b Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 03:51:13 +0000 Subject: [PATCH 19/25] Automatic changelog for PR #12471 [ci skip] --- html/changelogs/AutoChangeLog-pr-12471.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12471.yml diff --git a/html/changelogs/AutoChangeLog-pr-12471.yml b/html/changelogs/AutoChangeLog-pr-12471.yml new file mode 100644 index 000000000000..9e978adcde40 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12471.yml @@ -0,0 +1,4 @@ +author: "virtualgirlie" +delete-after: True +changes: + - spellcheck: "changed \"enemy boiler's\" to \"enemy boilers\"" \ No newline at end of file From 79d17fef3913a2350e6b8b4244c74262c29ee429 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 03:57:21 +0000 Subject: [PATCH 20/25] Automatic changelog for PR #12458 [ci skip] --- html/changelogs/AutoChangeLog-pr-12458.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12458.yml diff --git a/html/changelogs/AutoChangeLog-pr-12458.yml b/html/changelogs/AutoChangeLog-pr-12458.yml new file mode 100644 index 000000000000..0e86266b88d8 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12458.yml @@ -0,0 +1,4 @@ +author: "hry-gh" +delete-after: True +changes: + - server: "twitch linking functionality is deprecated in game" \ No newline at end of file From 369b3bb62a3f547339aa1169f43aa8665726d4e5 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 04:53:07 +0000 Subject: [PATCH 21/25] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-10541.yml | 11 ----- html/changelogs/AutoChangeLog-pr-11992.yml | 4 -- html/changelogs/AutoChangeLog-pr-12274.yml | 4 -- html/changelogs/AutoChangeLog-pr-12441.yml | 5 -- html/changelogs/AutoChangeLog-pr-12442.yml | 6 --- html/changelogs/AutoChangeLog-pr-12448.yml | 4 -- html/changelogs/AutoChangeLog-pr-12455.yml | 4 -- html/changelogs/AutoChangeLog-pr-12458.yml | 4 -- html/changelogs/AutoChangeLog-pr-12471.yml | 4 -- html/changelogs/AutoChangeLog-pr-12472.yml | 4 -- html/changelogs/AutoChangeLog-pr-12478.yml | 4 -- html/changelogs/archive/2026-06.yml | 56 ++++++++++++++++++++++ 12 files changed, 56 insertions(+), 54 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-10541.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-11992.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12274.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12441.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12442.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12448.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12455.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12458.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12471.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12472.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-12478.yml diff --git a/html/changelogs/AutoChangeLog-pr-10541.yml b/html/changelogs/AutoChangeLog-pr-10541.yml deleted file mode 100644 index 572ccf8455fc..000000000000 --- a/html/changelogs/AutoChangeLog-pr-10541.yml +++ /dev/null @@ -1,11 +0,0 @@ -author: "Venuska1117" -delete-after: True -changes: - - rscadd: "Add new Warrior Strain \"Bulwark\"." - - rscadd: "Bulwark have 600 health, tackles of 2 min - 5max, gains 200 plasma, +10 explosive and +10 normal armor for decreased speed and takes 50% more melee damage." - - rscadd: "Bulwark have 4 passive abilities, 50% less damage from wired cades (5 damage instead of 10), 75% for slashes or tailstab to go through wired cades and hit target behind them, +10 front armor and +10 side armor and no direct lock slowdown." - - rscadd: "Encased Plates, this ability when activated it will reduce your movement speed by 1.35, increases minimum tackles needed to tackle someone down by +2 and decreased slash damage by 8, in exchange you gain +10 front armor and lose -10 side armor (stacks with passive), immunity to knockdowns and ability to open holes in walls." - - rscadd: "Plate Bash, this ability will launch you toward targets if its in range of 2 tiles (3 tiles), it will hit them 1 tile away and shake their screen, if encased plates are active, this ability changes to only work on adjecent targets but in exchange you send them 3 tiles away, knockdown and stun target." - - rscadd: "Tail Sweep, this ability will hit all adjecent tiles (including corners) around you and trip enemies down and briefly stun them, if grenade is present instead of target, you will send grenade 4 tiles away and your cooldown will be decreased to 1/3rd of full cooldown, if both target and grenade are hit, normal cooldown value will be applied." - - rscadd: "Reflective Shield, this ability will lock your looking direction when casted to reflect bullets towards target in 50 degree cone (-25 to 25 angle), reflected bullets will only deal half of their original damage, your reflection chance is 100% from front ONLY but you lose ability to attack or help (you can still use abilities) and drop pulled targets, this ability can be disabled early like how lurker invisibility works 1s used is 2s cooldown but you gain +6s to cooldown, minimum 6s cooldown and 18s max, this ability CANNOT reflects sniper bullets, rockets and anti-reflective ammo (like SHARP darts), xeno projectiles and turrets." - - balance: "Fix Reflective walls, now they reflect bullets properly (uses new bulwark reflective proc)." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-11992.yml b/html/changelogs/AutoChangeLog-pr-11992.yml deleted file mode 100644 index 8790bca9e114..000000000000 --- a/html/changelogs/AutoChangeLog-pr-11992.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "MoondancerPony" -delete-after: True -changes: - - refactor: "made fire spread (from OB, flamers, etc) much faster" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12274.yml b/html/changelogs/AutoChangeLog-pr-12274.yml deleted file mode 100644 index 275f0e8abf01..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12274.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "cuberound" -delete-after: True -changes: - - qol: "xenos can see reamining durability of special structures on examine" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12441.yml b/html/changelogs/AutoChangeLog-pr-12441.yml deleted file mode 100644 index 443c1ae68ed6..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12441.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "realforest2001" -delete-after: True -changes: - - rscadd: "Added Abomination pelt and skull items." - - code_imp: "Added code to delete instances of skull and pelt that have no icon." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12442.yml b/html/changelogs/AutoChangeLog-pr-12442.yml deleted file mode 100644 index cf4b1de2bb08..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12442.yml +++ /dev/null @@ -1,6 +0,0 @@ -author: "realforest2001" -delete-after: True -changes: - - code_imp: "Changed some queen procs to xenomorph base." - - rscadd: "Changed Queen naming convention (thought I did this ages ago)" - - code_imp: "Changed the tier_slot_multiplier var name to divisor because it was stupidly named." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12448.yml b/html/changelogs/AutoChangeLog-pr-12448.yml deleted file mode 100644 index 90b8abbc5c74..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12448.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "cuberound" -delete-after: True -changes: - - code_imp: "isbanana is no longer" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12455.yml b/html/changelogs/AutoChangeLog-pr-12455.yml deleted file mode 100644 index df9abaf913d1..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12455.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "realforest2001" -delete-after: True -changes: - - rscadd: "Almayer crash no longer breaks hardened APCs." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12458.yml b/html/changelogs/AutoChangeLog-pr-12458.yml deleted file mode 100644 index 0e86266b88d8..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12458.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "hry-gh" -delete-after: True -changes: - - server: "twitch linking functionality is deprecated in game" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12471.yml b/html/changelogs/AutoChangeLog-pr-12471.yml deleted file mode 100644 index 9e978adcde40..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12471.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "virtualgirlie" -delete-after: True -changes: - - spellcheck: "changed \"enemy boiler's\" to \"enemy boilers\"" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12472.yml b/html/changelogs/AutoChangeLog-pr-12472.yml deleted file mode 100644 index 27e3e935b6e2..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12472.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Drathek" -delete-after: True -changes: - - bugfix: "Fixed a runtime with custom smoke spawning" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-12478.yml b/html/changelogs/AutoChangeLog-pr-12478.yml deleted file mode 100644 index b47f8db7cd87..000000000000 --- a/html/changelogs/AutoChangeLog-pr-12478.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "NHC" -delete-after: True -changes: - - bugfix: "Removed duped sunglasses from loudout menu" \ No newline at end of file diff --git a/html/changelogs/archive/2026-06.yml b/html/changelogs/archive/2026-06.yml index eba1ae22092f..14c4a8236610 100644 --- a/html/changelogs/archive/2026-06.yml +++ b/html/changelogs/archive/2026-06.yml @@ -246,3 +246,59 @@ 2026-06-20: Antlers: - bugfix: Hyperdyne corporate survivors no longer get aired out by LZ turrets +2026-06-22: + Drathek: + - bugfix: Fixed a runtime with custom smoke spawning + MoondancerPony: + - refactor: made fire spread (from OB, flamers, etc) much faster + NHC: + - bugfix: Removed duped sunglasses from loudout menu + Venuska1117: + - rscadd: Add new Warrior Strain "Bulwark". + - rscadd: Bulwark have 600 health, tackles of 2 min - 5max, gains 200 plasma, +10 + explosive and +10 normal armor for decreased speed and takes 50% more melee + damage. + - rscadd: Bulwark have 4 passive abilities, 50% less damage from wired cades (5 + damage instead of 10), 75% for slashes or tailstab to go through wired cades + and hit target behind them, +10 front armor and +10 side armor and no direct + lock slowdown. + - rscadd: Encased Plates, this ability when activated it will reduce your movement + speed by 1.35, increases minimum tackles needed to tackle someone down by +2 + and decreased slash damage by 8, in exchange you gain +10 front armor and lose + -10 side armor (stacks with passive), immunity to knockdowns and ability to + open holes in walls. + - rscadd: Plate Bash, this ability will launch you toward targets if its in range + of 2 tiles (3 tiles), it will hit them 1 tile away and shake their screen, if + encased plates are active, this ability changes to only work on adjecent targets + but in exchange you send them 3 tiles away, knockdown and stun target. + - rscadd: Tail Sweep, this ability will hit all adjecent tiles (including corners) + around you and trip enemies down and briefly stun them, if grenade is present + instead of target, you will send grenade 4 tiles away and your cooldown will + be decreased to 1/3rd of full cooldown, if both target and grenade are hit, + normal cooldown value will be applied. + - rscadd: Reflective Shield, this ability will lock your looking direction when + casted to reflect bullets towards target in 50 degree cone (-25 to 25 angle), + reflected bullets will only deal half of their original damage, your reflection + chance is 100% from front ONLY but you lose ability to attack or help (you can + still use abilities) and drop pulled targets, this ability can be disabled early + like how lurker invisibility works 1s used is 2s cooldown but you gain +6s to + cooldown, minimum 6s cooldown and 18s max, this ability CANNOT reflects sniper + bullets, rockets and anti-reflective ammo (like SHARP darts), xeno projectiles + and turrets. + - balance: Fix Reflective walls, now they reflect bullets properly (uses new bulwark + reflective proc). + cuberound: + - qol: xenos can see reamining durability of special structures on examine + - code_imp: isbanana is no longer + hry-gh: + - server: twitch linking functionality is deprecated in game + realforest2001: + - rscadd: Added Abomination pelt and skull items. + - code_imp: Added code to delete instances of skull and pelt that have no icon. + - rscadd: Almayer crash no longer breaks hardened APCs. + - code_imp: Changed some queen procs to xenomorph base. + - rscadd: Changed Queen naming convention (thought I did this ages ago) + - code_imp: Changed the tier_slot_multiplier var name to divisor because it was + stupidly named. + virtualgirlie: + - spellcheck: changed "enemy boiler's" to "enemy boilers" From f2473b626988ca675528f1ad79c2387008d08055 Mon Sep 17 00:00:00 2001 From: Ammoniacres <168367356+Ammoniacres@users.noreply.github.com> Date: Sun, 21 Jun 2026 22:08:28 -0400 Subject: [PATCH 22/25] FIX: Lets maintenance jacks open unpowered doors without Synth/Yautja Superstrong. (#12373) # About the pull request Title. Swaps the order of checks so that the check for super-strength doesn't come first, letting regular-unpowered door conditions be checked first. # Explain why it's good for the game Bug fix! # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: fix: fixed unpowered doors being unable to be opened by maintenance jacks (for humans) /:cl: --- code/game/objects/items/tools/maintenance_tools.dm | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/code/game/objects/items/tools/maintenance_tools.dm b/code/game/objects/items/tools/maintenance_tools.dm index 95437a42524c..a6f377e22c52 100644 --- a/code/game/objects/items/tools/maintenance_tools.dm +++ b/code/game/objects/items/tools/maintenance_tools.dm @@ -591,7 +591,12 @@ if(attacked_door.locked) //Bolted to_chat(user, SPAN_DANGER("You can't pry open [attacked_door] while it is bolted shut.")) return - + if(!attacked_door.density && !attacked_door.arePowerSystemsOn()) //If its open and unpowered + attacked_door.close(TRUE) + return + if(attacked_door.density && !attacked_door.arePowerSystemsOn()) // if its closed and unpowered + attacked_door.open(TRUE) + return if(requires_superstrength_pry) if(!HAS_TRAIT(user, TRAIT_SUPER_STRONG)) //basically IS_PRY_CAPABLE_CROWBAR return @@ -600,15 +605,8 @@ return if(user.action_busy) return - if(!attacked_door.density && !attacked_door.arePowerSystemsOn()) //If its open and unpowered - attacked_door.close(TRUE) - return - if(attacked_door.density && !attacked_door.arePowerSystemsOn()) // if its closed and unpowered - attacked_door.open(TRUE) - return if(!attacked_door.density) //If its open return - user.visible_message(SPAN_DANGER("[user] jams [src] into [attacked_door] and starts to pry it open."), SPAN_DANGER("You jam [src] into [attacked_door] and start to pry it open.")) playsound(src, "pry", 15, TRUE) From 2fd21770fa63e97f6986ca8827cd5b608cb7df16 Mon Sep 17 00:00:00 2001 From: BlitzArde <125638858+BlitzArde@users.noreply.github.com> Date: Sun, 21 Jun 2026 22:08:23 -0400 Subject: [PATCH 23/25] Fix: Corrected hazmat joe disturbances sound file (#12420) # About the pull request One of the hazmat files was forgotten and instead the emote was just a duplicate of another sound file with different text. Thanks to Blundir, the correct file has been obtained and replaced. Sound file is below so you can hear the correct one. # Testing Photographs and Procedure
Screenshots & Videos https://files.catbox.moe/hiuni7.ogg
# Changelog :cl: BlitzArde, Blundir soundtweak: Replaced the disturbances hazmat joe sound file /:cl: --- sound/voice/joe/disturbance_haz.ogg | Bin 39485 -> 61144 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/sound/voice/joe/disturbance_haz.ogg b/sound/voice/joe/disturbance_haz.ogg index cfe4110d5dfccf1046992cce2c78ceebe7cc0ffb..366cd7d6d5377a62936eb0e18a1d09171674dc70 100644 GIT binary patch delta 57543 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 From 7ecc75816be0987cb640ce6e747abdb5e3276dd1 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 05:11:27 +0000 Subject: [PATCH 24/25] Automatic changelog for PR #12420 [ci skip] --- html/changelogs/AutoChangeLog-pr-12420.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12420.yml diff --git a/html/changelogs/AutoChangeLog-pr-12420.yml b/html/changelogs/AutoChangeLog-pr-12420.yml new file mode 100644 index 000000000000..169690e97921 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12420.yml @@ -0,0 +1,4 @@ +author: "BlitzArde, Blundir" +delete-after: True +changes: + - soundtweak: "Replaced the disturbances hazmat joe sound file" \ No newline at end of file From 1638a7a9f1c9ea636952f4fec2789d7ffae41458 Mon Sep 17 00:00:00 2001 From: "cmss13-ci[bot]" <180991813+cmss13-ci[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 05:12:25 +0000 Subject: [PATCH 25/25] Automatic changelog for PR #12373 [ci skip] --- html/changelogs/AutoChangeLog-pr-12373.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12373.yml diff --git a/html/changelogs/AutoChangeLog-pr-12373.yml b/html/changelogs/AutoChangeLog-pr-12373.yml new file mode 100644 index 000000000000..665345299bb5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12373.yml @@ -0,0 +1,4 @@ +author: "Ammoniacres" +delete-after: True +changes: + - bugfix: "fixed unpowered doors being unable to be opened by maintenance jacks (for humans)" \ No newline at end of file