From a49f0a371af809091f699e4b3bca625cbee2a235 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Sun, 17 Oct 2021 21:13:57 +0200 Subject: [PATCH] [MIRROR] Updates the Goon Source code objective item to be on par with all other high risk items. [MDB IGNORE] (#8887) * Updates the Goon Source code objective item to be on par with all other high risk items. (#62142) Currently, all it takes to ruin an antagonist's round (assuming they have this objective) is to walk into the server room, and break the master server, as this will delete the drive inside. It is extremely weak, a fire axe will break it in less than 15 seconds. Not only that, but the drive itself is also not resistant, making it relatively easy to lose it and have it destroyed in various station emergencies. Compared to every other high risk item, this doesn't make much sense, as they are all supposed to be virtually impossible to get rid off. This does not effect the ninja's objective of destroying the drive. This ups the integrity of the master server, making it take ~15s longer to break it with a wielded fire axe, than it does to just deconstruct it. It also adds resistances to the drive itself, which brings it up to the same level as every other high risk item. Closes #62128 * Updates the Goon Source code objective item to be on par with all other high risk items. Co-authored-by: Seth Scherer --- code/game/objects/items/theft_tools.dm | 1 + code/modules/research/server.dm | 12 +++++++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/code/game/objects/items/theft_tools.dm b/code/game/objects/items/theft_tools.dm index 956b5e4e043..0f50e61cb2a 100644 --- a/code/game/objects/items/theft_tools.dm +++ b/code/game/objects/items/theft_tools.dm @@ -137,6 +137,7 @@ icon = 'icons/obj/nuke_tools.dmi' icon_state = "something_awful" max_capacity = 512 + resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF // STEALING SUPERMATTER diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index f4c263ba3ae..96ae1e2832b 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -201,6 +201,7 @@ /// Master R&D server. As long as this still exists and still holds the HDD for the theft objective, research points generate at normal speed. Destroy it or an antag steals the HDD? Half research speed. /obj/machinery/rnd/server/master + max_integrity = 1800 //takes roughly ~15s longer to break then full deconstruction. var/obj/item/computer_hardware/hard_drive/cluster/hdd_theft/source_code_hdd var/deconstruction_state = HDD_PANEL_CLOSED var/front_panel_screws = 4 @@ -209,13 +210,14 @@ /obj/machinery/rnd/server/master/Initialize(mapload) . = ..() name = "\improper Master " + name + desc += "\nIt looks incredibly resistant to damage!" source_code_hdd = new(src) SSresearch.master_servers += src add_overlay("RD-server-objective-stripes") /obj/machinery/rnd/server/master/Destroy() - if(source_code_hdd) + if (source_code_hdd && (deconstruction_state == HDD_OVERLOADED)) QDEL_NULL(source_code_hdd) SSresearch.master_servers -= src @@ -318,12 +320,12 @@ if(usr) var/mob/user = usr - message_admins("[ADMIN_LOOKUPFLW(user)] deconstructed [ADMIN_JMP(src)], destroying [source_code_hdd] inside.") - log_game("[key_name(user)] deconstructed [src], destroying [source_code_hdd] inside.") + message_admins("[ADMIN_LOOKUPFLW(user)] deconstructed [ADMIN_JMP(src)].") + log_game("[key_name(user)] deconstructed [src].") return ..() - message_admins("[ADMIN_JMP(src)] has been deconstructed by an unknown user, destroying [source_code_hdd] inside.") - log_game("[src] has been deconstructed by an unknown user, destroying [source_code_hdd] inside.") + message_admins("[ADMIN_JMP(src)] has been deconstructed by an unknown user.") + log_game("[src] has been deconstructed by an unknown user.") return ..()