Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates forgotten armor values and syndicate armor stacking during boarding #2638

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

BlueHNT
Copy link
Contributor

@BlueHNT BlueHNT commented May 5, 2024

About The Pull Request

During #2459 there were some forgotten armors and outfits. I have not found all of them and decided to keep the old ones like corporate and other station outfits the same old melee 1 stamina 3 defense as they were instead of the bullet 2 melee 2 which the new security outfits have. Do note that even the basic undersuits have some basic bullet and melee protection and are available to all crew.

There are, however, still some forgotten things like berets and basic sec helmet/armor never being updated. But I am not going to touch @SerynEngi 's values too much since he probably has it thought out.

Why It's Good For The Game

Gupdate these outfits.

Testing Photographs and Procedure

Screenshots&Videos

No.

Changelog

🆑
balance: Revalues many outfits that were forgotten about and attempts to solve armor stacking
🆑

@BlueHNT
Copy link
Contributor Author

BlueHNT commented May 5, 2024

If there's any other outfits which got forgotten that are being used after the revalue that are reasonable enough to be changed then please comment them.

@SerynEngi
Copy link
Contributor

If there's any other outfits which got forgotten that are being used after the revalue that are reasonable enough to be changed then please comment them.

Good catch. I mostly only checked things in the hardsuit and armor dm. It is entirely possible that armor thats in other more obscure places have been missed.

nsv13/code/modules/clothing/custom_clothes.dm Outdated Show resolved Hide resolved
nsv13/code/modules/clothing/custom_clothes.dm Outdated Show resolved Hide resolved
@BlueHNT
Copy link
Contributor Author

BlueHNT commented May 6, 2024

Ok, cool. Seems like I was wrong about what I was doing.

Also turns out that there were shit tons of hidden values hidden EVERYWHERE. So, I asked Seryn about his thoughts and consensus was.

All undersuit protections with bullet are removed. security will have melee 10, stamina 30.

All syndicate boarding/crew undersuit protections have been updated as well since they are not supposed to have value.

All security suits have had their general value changed between 40-60 depending on type and coverage. With the basic MP armor now having substandard armor, but covering legs. While normal security armor has more armor, but protects only chest and groin.

Also does the same to syndicate armors which were all over the place due to armor stacking and undersuits.

Generally playable syndicates should have 60 bullet, 40 laser. With boss-like ones for boarding (admiral/captain/strategist) having upwards of 80-90 requiring piercing rounds or laser weaponry.

Also removed swat boots and syndicate cloak armor stacking since KMC left that there.

Please review and comment on the changes as needed.

@BlueHNT BlueHNT changed the title Updates forgotten armor and outfit lost in #2459 Updates forgotten armor values and syndicate armor stacking during boarding May 6, 2024
@BlueHNT BlueHNT requested a review from Bokkiewokkie May 6, 2024 01:53
@Bokkiewokkie
Copy link
Contributor

TMing this but I'm going to make a more thorough review of the armor values later

@BlueHNT
Copy link
Contributor Author

BlueHNT commented May 10, 2024

TMing this but I'm going to make a more thorough review of the armor values later

I'm still compiling some additional values I might have forgotten. There is a lot to go through after all

@BlueHNT
Copy link
Contributor Author

BlueHNT commented May 15, 2024

Suggested edit:

I have come upon a realization that energy doesn't stop electrical shocks but instead manages ranged stamina damage from rubber bullets, beanbags and such. This should revert the energy nerfs which should make armors again resistant to ranged stamina weaponry.

diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm
index 0af18ab4f0d..81ee5de90c0 100644
--- a/code/modules/clothing/head/helmet.dm
+++ b/code/modules/clothing/head/helmet.dm
@@ -3,7 +3,7 @@
 	desc = "Standard Security gear. Protects the head from impacts."
 	icon_state = "helmet"
 	item_state = "helmet"
-	armor = list("melee" = 30, "bullet" = 40, "laser" = 30,"energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
+	armor = list("melee" = 30, "bullet" = 40, "laser" = 30,"energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
 	flags_inv = HIDEEARS
 	cold_protection = HEAD
 	heat_protection = HEAD
@@ -283,7 +283,7 @@
 	desc = "An extremely robust, space-worthy helmet in a nefarious red and black stripe pattern."
 	icon_state = "swatsyndie"
 	item_state = "swatsyndie"
-	armor = list("melee" = 40, "bullet" = 40, "laser" = 30,"energy" = 10, "bomb" = 50, "bio" = 90, "rad" = 20, "fire" = 50, "acid" = 50, "stamina" = 50)
+	armor = list("melee" = 40, "bullet" = 40, "laser" = 30,"energy" = 40, "bomb" = 50, "bio" = 90, "rad" = 20, "fire" = 50, "acid" = 50, "stamina" = 50)
 	cold_protection = HEAD
 	min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT
 	heat_protection = HEAD
@@ -417,7 +417,7 @@
 	desc = "It can hold a bottle of vodka."
 	icon_state = "rus_helmet"
 	item_state = "rus_helmet"
-	armor = list("melee" = 25, "bullet" = 30, "laser" = 0, "energy" = 5, "bomb" = 10, "bio" = 0, "rad" = 20, "fire" = 20, "acid" = 50, "stamina" = 20)
+	armor = list("melee" = 25, "bullet" = 30, "laser" = 0, "energy" = 10, "bomb" = 10, "bio" = 0, "rad" = 20, "fire" = 20, "acid" = 50, "stamina" = 20)
 	pocket_storage_component_path = /datum/component/storage/concrete/pockets/helmet
 
 /obj/item/clothing/head/helmet/rus_ushanka
diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm
index c658e7b048a..ba8c4445b0b 100644
--- a/code/modules/clothing/head/jobs.dm
+++ b/code/modules/clothing/head/jobs.dm
@@ -31,7 +31,7 @@
 	icon_state = "captain"
 	item_state = "that"
 	flags_inv = 0
-	armor = list("melee" = 25, "bullet" = 25, "laser" = 15, "energy" = 20, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
+	armor = list("melee" = 25, "bullet" = 25, "laser" = 15, "energy" = 30, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
 	strip_delay = 60
 	dog_fashion = /datum/dog_fashion/head/captain
 
@@ -48,7 +48,7 @@
 	name = "head of personnel's cap"
 	icon_state = "hopcap"
 	desc = "The symbol of true bureaucratic micromanagement."
-	armor = list("melee" = 25, "bullet" = 25, "laser" = 15, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
+	armor = list("melee" = 25, "bullet" = 25, "laser" = 15, "energy" = 30, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
 	dog_fashion = /datum/dog_fashion/head/hop
 
 //Chaplain
@@ -71,7 +71,7 @@
 /obj/item/clothing/head/fedora/det_hat
 	name = "detective's fedora"
 	desc = "There's only one man who can sniff out the dirty stench of crime, and he's likely wearing this hat."
-	armor = list("melee" = 25, "bullet" = 25, "laser" = 10, "energy" = 10, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 30, "acid" = 50, "stamina" = 25) //NSV13
+	armor = list("melee" = 25, "bullet" = 25, "laser" = 10, "energy" = 30, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 30, "acid" = 50, "stamina" = 25) //NSV13
 	icon_state = "detective"
 	var/candy_cooldown = 0
 	pocket_storage_component_path = /datum/component/storage/concrete/pockets/small/detective
@@ -148,7 +148,7 @@
 	name = "head of security cap"
 	desc = "The robust standard-issue cap of the Head of Security. For showing the officers who's in charge."
 	icon_state = "hoscap"
-	armor = list("melee" = 40, "bullet" = 50, "laser" = 15, "energy" = 10, "bomb" = 25, "bio" = 10, "rad" = 0, "fire" = 50, "acid" = 60, "stamina" = 30) //NSV13
+	armor = list("melee" = 40, "bullet" = 50, "laser" = 15, "energy" = 30, "bomb" = 25, "bio" = 10, "rad" = 0, "fire" = 50, "acid" = 60, "stamina" = 30) //NSV13
 	strip_delay = 80
 	dynamic_hair_suffix = ""
 
@@ -246,14 +246,14 @@
 	name = "corporate warden beret"
 	desc = "A special black beret with the Warden's insignia in the middle. This one is commonly worn by wardens of the corporation."
 	icon_state = "beret_corporate_warden"
-	armor = list("melee" = 40, "bullet" = 45, "laser" = 20, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 30, "acid" = 60, "stamina" = 30) //NSV13
+	armor = list("melee" = 40, "bullet" = 45, "laser" = 20, "energy" = 30, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 30, "acid" = 60, "stamina" = 30) //NSV13
 	strip_delay = 60
 
 /obj/item/clothing/head/beret/sec
 	name = "security beret"
 	desc = "A robust beret with the security insignia emblazoned on it. Uses reinforced fabric to offer sufficient protection."
 	icon_state = "beret_badge"
-	armor = list("melee" = 30, "bullet" = 40, "laser" = 20,"energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
+	armor = list("melee" = 30, "bullet" = 40, "laser" = 20,"energy" = 30, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
 	strip_delay = 60
 	dog_fashion = null
 
@@ -261,20 +261,20 @@
 	name = "corporate security beret"
 	desc = "A special black beret for the mundane life of a corporate security officer."
 	icon_state = "beret_corporate_officer"
-	armor = list("melee" = 35, "bullet" = 40, "laser" = 20, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 20, "acid" = 50, "stamina" = 30) //NSV13
+	armor = list("melee" = 35, "bullet" = 40, "laser" = 20, "energy" = 30, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 20, "acid" = 50, "stamina" = 30) //NSV13
 	strip_delay = 60
 
 /obj/item/clothing/head/beret/sec/navyhos
 	name = "head of security's beret"
 	desc = "A special beret with the Head of Security's insignia emblazoned on it. A symbol of excellence, a badge of courage, a mark of distinction."
 	icon_state = "hosberet"
-	armor = list("melee" = 30, "bullet" = 50, "laser" = 20,"energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 40) //NSV13
+	armor = list("melee" = 30, "bullet" = 50, "laser" = 20,"energy" = 30, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 40) //NSV13
 
 /obj/item/clothing/head/beret/sec/navywarden
 	name = "warden's beret"
 	desc = "A special beret with the Warden's insignia emblazoned on it. For wardens with class."
 	icon_state = "wardenberet"
-	armor = list("melee" = 40, "bullet" = 45, "laser" = 10, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 30, "acid" = 50, "stamina" = 30) //NSV13
+	armor = list("melee" = 40, "bullet" = 45, "laser" = 10, "energy" = 30, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 30, "acid" = 50, "stamina" = 30) //NSV13
 	strip_delay = 60
 
 /obj/item/clothing/head/beret/sec/navyofficer
diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm
index 518a29cf3ac..04a59017f09 100644
--- a/code/modules/clothing/spacesuits/miscellaneous.dm
+++ b/code/modules/clothing/spacesuits/miscellaneous.dm
@@ -52,7 +52,7 @@ Contains:
 	icon_state = "heavy"
 	item_state = "swat_suit"
 	allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/kitchen/knife/combat)
-	armor = list("melee" = 40, "bullet" = 50, "laser" = 15,"energy" = 10, "bomb" = 50, "bio" = 90, "rad" = 20, "fire" = 100, "acid" = 100, "stamina" = 60) //NSV13
+	armor = list("melee" = 40, "bullet" = 50, "laser" = 15,"energy" = 30, "bomb" = 50, "bio" = 90, "rad" = 20, "fire" = 100, "acid" = 100, "stamina" = 60) //NSV13
 	strip_delay = 120
 	resistance_flags = FIRE_PROOF | ACID_PROOF
 	move_sound = list('sound/effects/suitstep1.ogg', 'sound/effects/suitstep2.ogg')
diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm
index 94740ca0fc2..2d4c9e73666 100644
--- a/code/modules/clothing/suits/armor.dm
+++ b/code/modules/clothing/suits/armor.dm
@@ -9,7 +9,7 @@
 	equip_delay_other = 40
 	max_integrity = 250
 	resistance_flags = NONE
-	armor = list("melee" = 30, "bullet" = 50, "laser" = 20, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
+	armor = list("melee" = 30, "bullet" = 50, "laser" = 20, "energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50, "stamina" = 30) //NSV13
 	clothing_flags = THICKMATERIAL
 
 /obj/item/clothing/suit/armor/Initialize(mapload)
@@ -52,7 +52,7 @@
 	icon_state = "secjacket"
 	item_state = "secjacket"
 	body_parts_covered = CHEST|GROIN|ARMS
-	armor = list("melee" = 35, "bullet" = 45, "laser" = 10, "energy" = 30, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 45, "acid" = 45, "stamina" = 30) //NSV13
+	armor = list("melee" = 35, "bullet" = 45, "laser" = 10, "energy" = 35, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 45, "acid" = 45, "stamina" = 30) //NSV13
 
 /obj/item/clothing/suit/armor/hos
 	name = "armored greatcoat"
@@ -60,7 +60,7 @@
 	icon_state = "hos"
 	item_state = "greatcoat"
 	body_parts_covered = CHEST|GROIN|ARMS|LEGS
-	armor = list("melee" = 40, "bullet" = 60, "laser" = 15, "energy" = 30, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 90, "stamina" = 40) //NSV13
+	armor = list("melee" = 40, "bullet" = 60, "laser" = 15, "energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 90, "stamina" = 40) //NSV13
 	cold_protection = CHEST|GROIN|LEGS|ARMS
 	heat_protection = CHEST|GROIN|LEGS|ARMS
 	strip_delay = 80
diff --git a/nsv13/code/modules/clothing/custom_clothes.dm b/nsv13/code/modules/clothing/custom_clothes.dm
index d3f01860536..32ac219214a 100644
--- a/nsv13/code/modules/clothing/custom_clothes.dm
+++ b/nsv13/code/modules/clothing/custom_clothes.dm
@@ -85,7 +85,7 @@
 	equip_delay_other = 40
 	max_integrity = 250
 	resistance_flags = NONE
-	armor = list("melee" = 30, "bullet" = 50, "laser" = 15, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 90, "stamina" = 30)
+	armor = list("melee" = 30, "bullet" = 50, "laser" = 15, "energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 90, "stamina" = 30)
 
 /obj/item/clothing/suit/ship/peacekeeper/Initialize(mapload)
 	. = ..()
@@ -97,14 +97,14 @@
 	item_state = "peacekeeper_jacket"
 	desc = "A comfortable grey leather jacket. Despite its heavy armour, it's still extremely comfortable to wear."
 	body_parts_covered = CHEST|GROIN|LEGS|ARMS
-	armor = list("melee" = 30, "bullet" = 60, "laser" = 15, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 90, "stamina" = 40)
+	armor = list("melee" = 30, "bullet" = 60, "laser" = 15, "energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 90, "stamina" = 40)
 
 /obj/item/clothing/suit/ship/peacekeeper/detective
 	name = "DET jacket"
 	desc = "A smart blue jacket, identifying the wearer as a forensics expert."
 	icon_state = "det"
 	item_state = "det"
-	armor = list("melee" = 30, "bullet" = 40, "laser" = 10, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 40, "acid" = 50)
+	armor = list("melee" = 30, "bullet" = 40, "laser" = 10, "energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 40, "acid" = 50)
 	body_parts_covered = CHEST|ARMS
 
 /obj/item/clothing/suit/ship/peacekeeper/marine
diff --git a/nsv13/code/modules/jobs/job_types/marine/military_police.dm b/nsv13/code/modules/jobs/job_types/marine/military_police.dm
index 982dbcd7316..b494e388419 100644
--- a/nsv13/code/modules/jobs/job_types/marine/military_police.dm
+++ b/nsv13/code/modules/jobs/job_types/marine/military_police.dm
@@ -188,7 +188,7 @@ GLOBAL_LIST_INIT(available_depts, list(SEC_DEPT_ENGINEERING, SEC_DEPT_MEDICAL, S
 	desc = "A heavy-duty chestplate and shinpad combo which denotes that the user is a military police officer. Protects legs unlike a normal vest."
 	icon_state = "military_police"
 	w_class = 2
-	armor = list("melee" = 25, "bullet" = 40, "laser" = 15, "energy" = 10, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 35, "acid" = 50)
+	armor = list("melee" = 25, "bullet" = 40, "laser" = 15, "energy" = 40, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 35, "acid" = 50)
 	min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT
 	body_parts_covered = CHEST|GROIN|LEGS
 

@Bokkiewokkie
Copy link
Contributor

I have come upon a realization that energy doesn't stop electrical shocks but instead manages ranged stamina damage from rubber bullets, beanbags and such. This should revert the energy nerfs which should make armors again resistant to ranged stamina weaponry.

No it doesn't? That's what the stamina damage type is for??

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants