U2{
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
O2H03ST9lh%WBv!tYYM&q
literal 11144
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
nz~Fx
Date: Tue, 6 Dec 2022 19:25:43 +0100
Subject: [PATCH 09/50] Bump decode-uri-component from 0.2.0 to 0.2.2 in /tgui
(#19861)
Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases)
- [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2)
---
updated-dependencies:
- dependency-name: decode-uri-component
dependency-type: indirect
...
Signed-off-by: dependabot[bot]
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
tgui/yarn.lock | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tgui/yarn.lock b/tgui/yarn.lock
index cdd565e8956..8835571affe 100644
--- a/tgui/yarn.lock
+++ b/tgui/yarn.lock
@@ -2525,9 +2525,9 @@ decamelize@^1.2.0:
integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
decode-uri-component@^0.2.0:
- version "0.2.0"
- resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz"
- integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
+ version "0.2.2"
+ resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9"
+ integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==
deep-is@^0.1.3:
version "0.1.4"
From 6d38a64ec71707a362434b794669421468f6260b Mon Sep 17 00:00:00 2001
From: S34N <12197162+S34NW@users.noreply.github.com>
Date: Wed, 7 Dec 2022 01:52:34 +0000
Subject: [PATCH 10/50] Dufflebag rebalancing (#19744)
* Adds duffel delay
* whitespace
* zip solution
* open bag on unzip
* zipping heck
* AltShiftClick
---
.../objects/items/weapons/storage/backpack.dm | 57 +++++++++++++++++--
.../objects/items/weapons/storage/storage.dm | 7 +++
2 files changed, 60 insertions(+), 4 deletions(-)
diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm
index 55f7af96cee..94274e0d975 100644
--- a/code/game/objects/items/weapons/storage/backpack.dm
+++ b/code/game/objects/items/weapons/storage/backpack.dm
@@ -356,16 +356,65 @@
new /obj/item/crowbar(src)
/*
- * Duffelbags - My thanks to MrSnapWalk for the original icon and Neinhaus for the job variants - Dave.
+ * Duffelbags
*/
/obj/item/storage/backpack/duffel
name = "duffelbag"
- desc = "A large grey duffelbag designed to hold more items than a regular bag."
+ desc = "A large grey duffelbag designed to hold more items than a regular bag. It slows you down when unzipped."
icon_state = "duffel"
item_state = "duffel"
max_combined_w_class = 30
- slowdown = 1
+ /// Is the bag zipped up?
+ var/zipped = TRUE
+ /// How long it takes to toggle the zip state of this bag
+ var/zip_time = 0.7 SECONDS
+
+/obj/item/storage/backpack/duffel/examine(mob/user)
+ . = ..()
+ . += "It is currently [zipped ? "zipped" : "unzipped"]. Alt+Shift+Click to [zipped ? "un-" : ""]zip it!"
+
+/obj/item/storage/backpack/duffel/AltShiftClick(mob/user)
+ . = ..()
+ handle_zipping(user)
+
+/obj/item/storage/backpack/duffel/proc/handle_zipping(mob/user)
+ if(!zip_time || do_after(user, zip_time, target = src))
+ playsound(src, 'sound/items/zip.ogg', 75, TRUE)
+ zipped = !zipped
+
+ if(!zipped && zip_time) // Handle slowdown and stuff now that we just zipped it
+ slowdown = 1
+ show_to(user)
+ return
+
+ slowdown = 0
+ hide_from_all()
+ for(var/obj/item/storage/container in src)
+ container.hide_from_all() // Hide everything inside the bag too
+
+// The following three procs handle refusing access to contents if the duffel is zipped
+
+/obj/item/storage/backpack/duffel/handle_item_insertion(obj/item/I, prevent_warning)
+ if(zipped)
+ to_chat(usr, "[src] is zipped shut!")
+ return FALSE
+
+ return ..()
+
+/obj/item/storage/backpack/duffel/remove_from_storage(obj/item/I, atom/new_location)
+ if(zipped)
+ to_chat(usr, "[src] is zipped shut!")
+ return FALSE
+
+ return ..()
+
+/obj/item/storage/backpack/duffel/show_to(mob/user)
+ if(zipped)
+ to_chat(usr, "[src] is zipped shut!")
+ return FALSE
+
+ return ..()
/obj/item/storage/backpack/duffel/syndie
name = "suspicious looking duffelbag"
@@ -374,7 +423,7 @@
item_state = "duffel-syndiammo"
origin_tech = "syndicate=1"
silent = TRUE
- slowdown = 0
+ zip_time = 0
resistance_flags = FIRE_PROOF
/obj/item/storage/backpack/duffel/syndie/med
diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm
index 9dd44b8e65f..abb6c7ad622 100644
--- a/code/game/objects/items/weapons/storage/storage.dm
+++ b/code/game/objects/items/weapons/storage/storage.dm
@@ -212,6 +212,13 @@
if(user.s_active == src)
user.s_active = null
+/**
+ * Hides the current container interface from all viewers.
+ */
+/obj/item/storage/proc/hide_from_all()
+ for(var/mob/M in mobs_viewing)
+ hide_from(M)
+
/**
* Checks all mobs currently viewing the storage inventory, and hides it if they shouldn't be able to see it.
*/
From 631fbc7b207a5f90e6083cc233b33bc8ba8c2d67 Mon Sep 17 00:00:00 2001
From: Octus <62493359+OctusGit@users.noreply.github.com>
Date: Wed, 7 Dec 2022 20:04:31 -0600
Subject: [PATCH 11/50] Nerfs the WT-550's size. (#19791)
* i fucking despise IB
* compromise
---
code/modules/projectiles/guns/projectile/automatic.dm | 1 +
1 file changed, 1 insertion(+)
diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm
index 2e47ab0c484..b144897574f 100644
--- a/code/modules/projectiles/guns/projectile/automatic.dm
+++ b/code/modules/projectiles/guns/projectile/automatic.dm
@@ -116,6 +116,7 @@
desc = "An outdated personal defense weapon utilized by law enforcement. The WT-550 Automatic Rifle fires 4.6x30mm rounds."
icon_state = "wt550"
item_state = "wt550"
+ w_class = WEIGHT_CLASS_BULKY
mag_type = /obj/item/ammo_box/magazine/wt550m9
fire_sound = 'sound/weapons/gunshots/gunshot_rifle.ogg'
magin_sound = 'sound/weapons/gun_interactions/batrifle_magin.ogg'
From 1343a6358b53b573471debd736b1afd71f4cd450 Mon Sep 17 00:00:00 2001
From: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
Date: Wed, 7 Dec 2022 20:05:00 -0600
Subject: [PATCH 12/50] mindslave implant runtime fix (#19792)
---
code/game/objects/items/weapons/implants/implant_traitor.dm | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/code/game/objects/items/weapons/implants/implant_traitor.dm b/code/game/objects/items/weapons/implants/implant_traitor.dm
index 387635627bb..17d90673765 100644
--- a/code/game/objects/items/weapons/implants/implant_traitor.dm
+++ b/code/game/objects/items/weapons/implants/implant_traitor.dm
@@ -11,7 +11,7 @@
/obj/item/implant/traitor/implant(mob/living/carbon/human/mindslave_target, mob/living/carbon/human/user)
// Check `activated` here so you can't just keep taking it out and putting it back into other people.
- if(!..() || activated || !istype(mindslave_target) || !istype(user)) // Both the target and the user need to be human.
+ if(activated || !istype(mindslave_target) || !istype(user)) // Both the target and the user need to be human.
return FALSE
// If the target is catatonic or doesn't have a mind, return.
@@ -24,7 +24,6 @@
mindslave_target.visible_message(
"[mindslave_target] seems to resist the bio-chip!", \
"You feel a strange sensation in your head that quickly dissipates.")
- removed(mindslave_target)
qdel(src)
return FALSE
@@ -32,7 +31,6 @@
if(mindslave_target == user)
to_chat(user, "Making yourself loyal to yourself was a great idea! Perhaps even the best idea ever! Actually, you just feel like an idiot.")
user.adjustBrainLoss(20)
- removed(mindslave_target)
qdel(src)
return FALSE
@@ -40,7 +38,7 @@
mindslave_target.mind.add_antag_datum(new /datum/antagonist/mindslave(user.mind))
mindslave_UID = mindslave_target.mind.UID()
log_admin("[key_name_admin(user)] has mind-slaved [key_name_admin(mindslave_target)].")
- return TRUE
+ return ..()
/obj/item/implant/traitor/removed(mob/target)
. = ..()
From 936861f32fbe68e6609358a2617d28ab71522cd7 Mon Sep 17 00:00:00 2001
From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>
Date: Wed, 7 Dec 2022 21:05:39 -0500
Subject: [PATCH 13/50] turrets don't break reflectibility, glass golems
reflect properly (#19812)
* turrets don't break reflectibility
* fixes glass golems not reflecting
---
code/game/machinery/portable_turret.dm | 1 +
code/modules/mob/living/carbon/human/human_defense.dm | 3 ++-
code/modules/mob/living/carbon/human/species/golem.dm | 4 +---
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm
index df571d84dc4..004fe0a6244 100644
--- a/code/game/machinery/portable_turret.dm
+++ b/code/game/machinery/portable_turret.dm
@@ -736,6 +736,7 @@ GLOBAL_LIST_EMPTY(turret_icons)
A.current = T
A.yo = U.y - T.y
A.xo = U.x - T.x
+ A.starting = loc
A.fire()
else
A.throw_at(target, scan_range, 1)
diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm
index 3b11d36c259..7e8ec27e2e3 100644
--- a/code/modules/mob/living/carbon/human/human_defense.dm
+++ b/code/modules/mob/living/carbon/human/human_defense.dm
@@ -11,7 +11,8 @@ emp_act
/mob/living/carbon/human/bullet_act(obj/item/projectile/P, def_zone)
if(!dna.species.bullet_act(P, src))
add_attack_logs(P.firer, src, "hit by [P.type] but got deflected by species '[dna.species]'")
- return FALSE
+ P.reflect_back(src) //It has to be here, not on species. Why? Who knows. Testing showed me no reason why it doesn't work on species, and neither did tracing. It has to be here, or it gets qdel'd by bump.
+ return -1
if(P.is_reflectable(REFLECTABILITY_ENERGY))
var/can_reflect = check_reflect(def_zone)
var/reflected = FALSE
diff --git a/code/modules/mob/living/carbon/human/species/golem.dm b/code/modules/mob/living/carbon/human/species/golem.dm
index 8a2d2980d7c..33a80ee9843 100644
--- a/code/modules/mob/living/carbon/human/species/golem.dm
+++ b/code/modules/mob/living/carbon/human/species/golem.dm
@@ -415,9 +415,7 @@
H.visible_message("[P] gets reflected by [H]'s glass skin!", \
"[P] gets reflected by [H]'s glass skin!")
- P.reflect_back(H)
-
- return FALSE
+ return FALSE //Reflect back must be handled on the human bullet act for some arcane reason
return TRUE
/datum/unarmed_attack/golem/glass
From a3b4475c67f767e71091338938b20ef3d8b4aa39 Mon Sep 17 00:00:00 2001
From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>
Date: Wed, 7 Dec 2022 21:06:39 -0500
Subject: [PATCH 14/50] Prevents BOH storing backpacks / belts of holding,
increased rnd level req (#19819)
---
code/game/objects/items/weapons/storage/backpack.dm | 2 +-
code/modules/research/designs/bluespace_designs.dm | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm
index 94274e0d975..3d304cf2945 100644
--- a/code/game/objects/items/weapons/storage/backpack.dm
+++ b/code/game/objects/items/weapons/storage/backpack.dm
@@ -59,7 +59,7 @@
max_combined_w_class = 35
resistance_flags = FIRE_PROOF
flags_2 = NO_MAT_REDEMPTION_2
- cant_hold = list(/obj/item/storage/backpack/holding)
+ cant_hold = list(/obj/item/storage/backpack, /obj/item/storage/belt/bluespace)
armor = list(MELEE = 0, BULLET = 0, LASER = 0, ENERGY = 0, BOMB = 0, BIO = 0, RAD = 0, FIRE = 60, ACID = 50)
/obj/item/storage/backpack/holding/attackby(obj/item/W, mob/user, params)
diff --git a/code/modules/research/designs/bluespace_designs.dm b/code/modules/research/designs/bluespace_designs.dm
index dc213e0aae8..e128238844d 100644
--- a/code/modules/research/designs/bluespace_designs.dm
+++ b/code/modules/research/designs/bluespace_designs.dm
@@ -15,7 +15,7 @@
name = "Bag of Holding"
desc = "A backpack that opens into a localized pocket of Blue Space."
id = "bag_holding"
- req_tech = list("bluespace" = 7, "materials" = 5, "engineering" = 5, "plasmatech" = 6)
+ req_tech = list("bluespace" = 7, "materials" = 5, "engineering" = 7, "plasmatech" = 6)
build_type = PROTOLATHE
materials = list(MAT_GOLD = 3000, MAT_DIAMOND = 1500, MAT_URANIUM = 250, MAT_BLUESPACE = 2000)
build_path = /obj/item/storage/backpack/holding
@@ -25,7 +25,7 @@
name = "Belt of Holding"
desc = "An astonishingly complex belt popularized by a rich blue-space technology magnate."
id = "bluespace_belt"
- req_tech = list("bluespace" = 7, "materials" = 5, "engineering" = 5, "plasmatech" = 6)
+ req_tech = list("bluespace" = 7, "materials" = 5, "engineering" = 6, "plasmatech" = 6)
build_type = PROTOLATHE
materials = list(MAT_GOLD = 1500, MAT_DIAMOND = 3000, MAT_URANIUM = 1000)
build_path = /obj/item/storage/belt/bluespace
From 732ef6af73ab9615ee834aadf861640cbc07bf4c Mon Sep 17 00:00:00 2001
From: Adrer
Date: Thu, 8 Dec 2022 03:06:57 +0100
Subject: [PATCH 15/50] Do not force push to the wrong branch (#19831)
Co-authored-by: adrermail@gmail.com
---
code/game/objects/structures/mirror.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/game/objects/structures/mirror.dm b/code/game/objects/structures/mirror.dm
index 493e41ab4c6..98afc59cbec 100644
--- a/code/game/objects/structures/mirror.dm
+++ b/code/game/objects/structures/mirror.dm
@@ -120,7 +120,7 @@
curse(user)
if("Body")
- var/list/race_list = list("Human", "Tajaran", "Skrell", "Unathi", "Diona", "Vulpkanin")
+ var/list/race_list = list("Human", "Tajaran", "Skrell", "Unathi", "Diona", "Vulpkanin", "Nian")
for(var/species in GLOB.whitelisted_species)
if(can_use_species(H, species))
race_list += species
From 2593ccdef420ef2a92dda9ec2651aab83e07ce95 Mon Sep 17 00:00:00 2001
From: Charlie <69320440+hal9000PR@users.noreply.github.com>
Date: Thu, 8 Dec 2022 02:07:20 +0000
Subject: [PATCH 16/50] adds trait deaf when you go unconscious (#19832)
---
code/modules/mob/living/stat_states.dm | 1 +
1 file changed, 1 insertion(+)
diff --git a/code/modules/mob/living/stat_states.dm b/code/modules/mob/living/stat_states.dm
index d3e5be870eb..26d5664a0f2 100644
--- a/code/modules/mob/living/stat_states.dm
+++ b/code/modules/mob/living/stat_states.dm
@@ -12,6 +12,7 @@
add_attack_logs(src, null, "Fallen unconscious", ATKLOG_ALL)
log_game("[key_name(src)] fell unconscious at [atom_loc_line(get_turf(src))]")
set_stat(UNCONSCIOUS)
+ ADD_TRAIT(src, TRAIT_DEAF, STAT_TRAIT)
ADD_TRAIT(src, TRAIT_FLOORED, STAT_TRAIT)
ADD_TRAIT(src, TRAIT_IMMOBILIZED, STAT_TRAIT)
ADD_TRAIT(src, TRAIT_HANDS_BLOCKED, STAT_TRAIT)
From 70514bc96859c145e4ac0e58f608d31fb3adf9cb Mon Sep 17 00:00:00 2001
From: DevanStrife <113341203+DevanStrife@users.noreply.github.com>
Date: Thu, 8 Dec 2022 03:07:41 +0100
Subject: [PATCH 17/50] Updates the tip list (#19860)
* Fix for #19857
* Whoops
---
strings/tips.txt | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/strings/tips.txt b/strings/tips.txt
index 4294518f6b1..a53cd2d4348 100644
--- a/strings/tips.txt
+++ b/strings/tips.txt
@@ -32,26 +32,25 @@ Don't be afraid to ask for help, whether from your peers or from mentors.
As the Captain, you are one of the highest priority targets on the station. Everything from nuclear operatives to traitors that need to rob you of your unique lasergun or your life are things to worry about.
As the Captain, always take the nuclear disk and pinpointer with you every shift. It's a good idea to give one of these to another head or Blueshield you can trust with keeping it safe.
As the Captain, you have absolute access and control over the station, but this does not mean that being a horrible person won't result in mutiny and a ban.
-As the Chief Medical Officer, your hypospray is like a refillable instant injection syringe that can hold 30 units and the unlike standard hypospray, yours is able to be filled with harmful reagents and injects without telling anyone what have you exactly injected the person with.
+As the Chief Medical Officer, your hypospray is like a refillable instant injection syringe that can hold 30 units and the unlike standard hypospray, yours is able to be filled with harmful reagents and can inject someone without telling anyone what you exactly injected the person with.
As the Chief Medical Officer, coordinate and communicate with your doctors, chemists, and geneticists during a nuclear emergency, blob infestation, or some other crisis to keep people alive and fighting.
As a Medical Doctor, you can surgically implant or extract things from people's chests. This can range from putting in a bomb to pulling out an alien larva.
As a Medical Doctor, you must target the correct limb and be on help intent when trying to perform surgery on someone.
As a Medical Doctor, corpses with the "...and their soul has departed" description no longer have a ghost attached to them and aren't revivable or clonable right now, but they might be clonable later.
-As a Medical Doctor, treating plasmamen is not impossible! Salbutamol stops them from suffocating and showers stop them from burning alive. You can even perform surgery on them by doing the procedure on a roller bed under a shower.
+As a Medical Doctor, remember to have either a shower or fire extinguisher at the ready when cloning plasmamen along with their envirosuit.
As a Chemist, there are dozens of chemicals that can heal, and even more that can cause harm. Experiment!
As a Chemist, some chemicals can only be synthesized by heating up the contents with a chemical heater or manually with lighters and similar tools.
As a Chemist, you will be expected to supply crew with certain chemicals. For example, cryoxadone and mannitol for the cryo tubes, unstable mutagen and saltpetre for botany as well as healing pills and patches for the front desk.
As a Chemist, Water and Potassium mixed together will create an explosion, with power scaling by amount used. Don't do it.
-As a Geneticist, you can eject someone from cloning early by disabling power in genetics. Note that they will suffer more genetic damage and may lose vital organs from this.
-As a Geneticist, becoming a hulk makes you capable of dealing high melee damage, stunlocking people, and punching through walls. However, you can't fire guns, will lose your hulk status if you go into critical condition. Being hulk also does not allow you to break any server rules and go berserk as non-antagonist.
+As a Geneticist, becoming a hulk makes you capable of dealing high melee damage, stunlocking people, and punching through walls. However, you can't fire guns and will lose your hulk status if you go into critical condition. Being hulk also does not allow you to break any server rules and go berserk as non-antagonist.
As the Virologist, your viruses can range from healing powers so great that you can heal out of critical status, to diseases so dangerous they can kill the entire crew with airborne spontaneous combustion. Experiment!
As the Research Director, you can take AIs out of their cores by loading them into an intelliCard, which lets you see their laws, even ion/syndicate ones. It can then be placed into an AI system integrity restorer computer to revive and/or repair them.
As the Research Director, you can lock down cyborgs instead of blowing them up. Then you can have their laws reset or if that doesn't work, safely dismantled.
As the Research Director, you can spy on and even forge PDA communications with the message monitor console! The key is in your office.
As a Scientist, you can maximize the number of uses you get out of a slime by feeding it slime steroid, created from purple slimes, while alive. You can then apply extract enhancer, created from cerulean slimes, on each extract.
-As a Scientist, you can disable anomalies by scanning them with an analyzer, then send a signal on the frequency it gives you with a remote signaling device. This will leave behind an anomaly core, which can be used to construct a Phazon mech!
+As a Scientist, you can disable anomalies by scanning them with an analyzer, then send a signal on the frequency it gives you with a remote signaling device. This will leave behind an anomaly core, which can be used to construct nifty gadgets!
As a Scientist, researchable stock parts can seriously improve the efficiency and speed of machines around the station. In some cases, it can even unlock new functions.
-As a Roboticist, keep an ear out for anomaly announcements. If you get your hands on an anomaly core, you can build a Phazon mech!
+As a Roboticist, keep an ear out for anomaly announcements. If you get your hands on a bluespace anomaly core, you can build a Phazon mech!
As a Roboticist, you can repair your cyborgs with a welding tool. If they have taken burn damage, you can remove their battery, expose the wiring with a screwdriver and replace their wires with a cable coil.
As a Roboticist, you can reset a cyborg's module by cutting and mending the reset wire with a wire cutter or using a cyborg reset module.
As a Roboticist, you can augment people with cyborg limbs. Augmented limbs can easily be repaired with cables and welders.
@@ -64,12 +63,12 @@ As a Cyborg, you are impervious to fires and heat. If you are rogue, you can rel
As a Cyborg, you are extremely vulnerable to EMPs as EMPs both stun you and damage you. The ion rifle in the armory or a traitor with an EMP kit can kill you in seconds.
As an Engineering Cyborg, you can attach air alarm/fire alarm/APC frames to walls by using your magnetic gripper.
As a Medical Cyborg, you can partially perform surgery, as you cannot replace organs, but you cannot fail any surgery steps.
-As a Janitor Cyborg, you are the bane of all slaughter demons. Cleaning up blood stains will severely gimp them.
+As a Janitor Cyborg, you are the bane of all slaughter demons. Cleaning up blood stains will severely hinder them.
As the Chief Engineer, you can rename areas or create entirely new ones using your station blueprints.
-As the Chief Engineer, your hardsuit is significantly better than everybody else's. It has the best features of both engineering and atmospherics hardsuits, boasting nigh-invulnerability to radiation and all atmospheric conditions.
-As the Chief Engineer, the power flow control console in your office will show you APC infos and lets you control them remotely.
-As an Engineer, you can electrify grilles by placing wire "nodes" beneath them: the big seemingly unconnected bulges from a half completed wiring job. The wire will be need to be connected to an active power source in order to function.
-As an Engineer, return to Engineering once in a while to check on the engine and SMES cells. It's always a good idea to make sure containment isn't compromised.
+As the Chief Engineer, your hardsuit is significantly better than everybody else's. It has the best features of both engineering and atmospherics hardsuits, boasting nigh-invulnerability to radiation and all atmospheric conditions. It even has a built in jet-pack!
+As the Chief Engineer, using the power monitor consoles gives you a good overview of all the station APC units and their status. You can also use your PDA to remotely view this by connecting to a monitor console.
+As an Engineer, you can electrify grilles and fences by placing wire "nodes" beneath them: the big seemingly unconnected bulges from a half completed wiring job. The wire will be need to be connected to an active power source in order to function.
+As an Engineer, return to Engineering once in a while to check on the engines and SMES cells. It's always a good idea to make sure containment isn't compromised or if the SM is still properly being cooled.
As an Engineer, you can power the station solely with the solar arrays. They will provide just enough electricity to power the station, however their output is still much worse compared to the true engine.
As an Engineer, you can cool a supermatter shard by spraying it with a fire extinguisher. Only for the brave!
As an Engineer, you can repair windows by using a welding tool on them while on help intent.
@@ -92,7 +91,7 @@ As a Security Officer, mindshield implants can only prevent someone from being t
As a Security Officer, examining someone while wearing sechuds or HUDsunglasses will let you set their arrest level, which will cause Beepsky and other security bots to chase after them.
As the Detective, keep in mind that people leave fingerprints everywhere and on everything. With the exception of white latex, gloves will hide them. All is not lost, however, as gloves leave fibers specific to their kind such as black or nitrile, pointing to a general department.
As the Detective, you can use your forensics scanner from a distance.
-As the Detective, your revolver can be modified to load .357 ammunition obtained from a hacked autolathe. Firing it has a decent chance to blow up your revolver.
+As the Detective, your energy revolver has a tracking mode. Shoot a fleeing suspect with it and use a crew pinpointer to track their position!
As the IAA, try to negotiate with the Warden if sentences seem too high for the crime.
As the IAA, you can try to convince the Captain and Head of Security to hold trials for prisoners in the courtroom.
As the Head of Personnel, you are not higher ranking than other heads of staff, even though you are expected to take the Captain's place first should he go missing. If the situation seems too rough for you, consider allowing another head to become temporary Captain.
@@ -130,6 +129,7 @@ As a Traitor, you may sometimes be assigned to hunt other traitors, and in turn
As a Traitor, the syndicate encryption key is very useful for coordinating plans with your fellow traitors -- or, of course, betraying them.
As a Traitor, plasma can be injected into many things to sabotage them. Power cells, light bulbs, cigars and e-cigs will all explode when used.
As a Traitor, if you can find another Traitor and pool your TC you can buy a mega surplus crate, which costs 40TC but contains a lot of random syndicate gear.
+As a Traitor, you can eject someone from cloning early by disabling power in genetics. Note that they will suffer more genetic damage and may lose vital organs from this.
As a Nuclear Operative, communication is key! Use ; to speak to your fellow operatives and coordinate an attack plan.
As a Nuclear Operative, you should look into purchasing a syndicate cyborg, as they can provide heavy fire support, full access, are immune to conventional stuns, and can easily take down the AI.
As a Nuclear Operative, stick together! While your equipment is robust, your fellow operatives are much better at saving your life: they can drag you away from danger while stunned and provide cover fire.
@@ -192,4 +192,4 @@ You can make lasertag turrets, for the ultimate lasertag tournament.
Blob structures take half damage from brute damage. Use lasers.
You can hide paper in vents, but you have to use a screwdriver to open it first.
While the Standard Operating Procedures aren't fully rules, they are there for safety and professional reasons.
-Killing the Wizard usually ends the round, unless they are a lich or Space Wizard Federation is RAGING.
\ No newline at end of file
+Killing the Wizard usually ends the round, unless they are a lich or Space Wizard Federation is RAGING.
From c25da073f735c9b70dee5cadd2b3490de402f251 Mon Sep 17 00:00:00 2001
From: Vi3trice <80771500+Vi3trice@users.noreply.github.com>
Date: Wed, 7 Dec 2022 21:07:58 -0500
Subject: [PATCH 18/50] I really should have looked around longer (#19854)
---
code/game/machinery/vendors/vending.dm | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/code/game/machinery/vendors/vending.dm b/code/game/machinery/vendors/vending.dm
index e05ef661c6f..7470e1d1373 100644
--- a/code/game/machinery/vendors/vending.dm
+++ b/code/game/machinery/vendors/vending.dm
@@ -100,7 +100,7 @@
var/shoot_chance = 2
/// If true, enforce access checks on customers. Disabled by messing with wires.
- var/scan_id
+ var/scan_id = TRUE
/// Holder for a coin inserted into the vendor
var/obj/item/coin/coin
var/datum/wires/vending/wires
@@ -649,12 +649,6 @@
vend_ready = FALSE // From this point onwards, vendor is locked to performing this transaction only, until it is resolved.
- if(!allowed(user))
- to_chat(user, "Access denied. Unable to process transaction.")
- flick(icon_deny, src)
- vend_ready = TRUE
- return
-
if(!ishuman(user) || R.price <= 0)
// Either the purchaser is not human, or the item is free.
// Skip all payment logic.
From 9c519afd251405e2a0a327c6605918a5fee84907 Mon Sep 17 00:00:00 2001
From: Samman166 <67894653+Samman166@users.noreply.github.com>
Date: Wed, 7 Dec 2022 22:38:15 -0330
Subject: [PATCH 19/50] plasma cutter only delimbs in low pressure (#19852)
---
code/modules/projectiles/projectile/special.dm | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm
index 411d1dad400..aa7b3fee35a 100644
--- a/code/modules/projectiles/projectile/special.dm
+++ b/code/modules/projectiles/projectile/special.dm
@@ -210,6 +210,13 @@
sharp = TRUE
impact_effect_type = /obj/effect/temp_visual/impact_effect/purple_laser
+/obj/item/projectile/plasma/prehit(atom/target)
+ . = ..()
+ if(!lavaland_equipment_pressure_check(get_turf(target)))
+ name = "weakened [name]"
+ dismemberment = 0
+ sharp = FALSE
+
/obj/item/projectile/plasma/on_hit(atom/target)
. = ..()
if(ismineralturf(target))
From f0c884c08f41eeeaa6e3bdae4141204fb56346f3 Mon Sep 17 00:00:00 2001
From: S34N <12197162+S34NW@users.noreply.github.com>
Date: Thu, 8 Dec 2022 02:09:09 +0000
Subject: [PATCH 20/50] 357_box (#19845)
---
code/modules/projectiles/ammunition/boxes.dm | 2 +-
icons/obj/ammo.dmi | Bin 37246 -> 37131 bytes
2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/modules/projectiles/ammunition/boxes.dm b/code/modules/projectiles/ammunition/boxes.dm
index e09be1238b2..168bf37e03c 100644
--- a/code/modules/projectiles/ammunition/boxes.dm
+++ b/code/modules/projectiles/ammunition/boxes.dm
@@ -14,7 +14,7 @@
ammo_type = /obj/item/ammo_casing/a357
max_ammo = 7
multi_sprite_step = 1
- icon_state = "357OLD"
+ icon_state = "357_box"
/obj/item/ammo_box/c9mm
name = "ammo box (9mm)"
diff --git a/icons/obj/ammo.dmi b/icons/obj/ammo.dmi
index d378e6c3c425404644a920ede34aa0bd541af476..bc3e6ceb49e2d4e6d102ff40c4858a3f5604090e 100644
GIT binary patch
literal 37131
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