Nerfs mech armor (#8780)

This commit is contained in:
tacoguy7765093
2024-08-23 14:06:27 +02:00
committed by GitHub
parent a533bdb21b
commit 991902ace4
2 changed files with 59 additions and 59 deletions
+31 -31
View File
@@ -33,8 +33,8 @@
"rad"= 1
)
var/damage_minimum = 10
var/minimum_penetration = 0
//var/damage_minimum = 10 CHOMPremove, mecha nerfs
//var/minimum_penetration = 0
var/fail_penetration_value = 0.66
/obj/item/mecha_parts/component/armor/mining
@@ -44,15 +44,15 @@
max_integrity = 80
damage_absorption = list(
"brute"=0.8,
"fire"=0.8,
"bullet"=1.2,
"laser"=1.2,
"energy"=1,
"bomb"=0.5,
"bio"=1,
"rad"=1
)
"brute"=0.8,
"fire"=0.8,
"bullet"=1.2,
"laser"=1.2,
"energy"=1,
"bomb"=0.5,
"bio"=1,
"rad"=1
)
/obj/item/mecha_parts/component/armor/lightweight
name = "lightweight mecha plating"
@@ -61,15 +61,15 @@
step_delay = 0
damage_absorption = list(
"brute"=1,
"fire"=1.4,
"bullet"=1.1,
"laser"=1.2,
"energy"=1,
"bomb"=1,
"bio"=1,
"rad"=1
)
"brute"=1,
"fire"=1.4,
"bullet"=1.1,
"laser"=1.2,
"energy"=1,
"bomb"=1,
"bio"=1,
"rad"=1
)
/obj/item/mecha_parts/component/armor/reinforced
name = "reinforced mecha plating"
@@ -78,7 +78,7 @@
max_integrity = 80
minimum_penetration = 10
//minimum_penetration = 10 //CHOMPremove
damage_absorption = list(
"brute"=0.7,
@@ -92,7 +92,7 @@
/obj/item/mecha_parts/component/armor/military
name = "military grade mecha plating"
step_delay = 4
step_delay = 6 //CHOMPedit
max_integrity = 100
@@ -100,8 +100,8 @@
required_type = list(/obj/mecha/combat)
damage_minimum = 15
minimum_penetration = 20 //chompedit making this less OP, was 25, is now 20
// damage_minimum = 15 //CHOMPremove
// minimum_penetration = 20 //chompedit making this less OP, was 25, is now 20 //Chompedit 2, were removing these
damage_absorption = list(
"brute"=0.5,
@@ -136,7 +136,7 @@
deflect_chance = 15
minimum_penetration = 10
// minimum_penetration = 10 //CHOMPremove
required_type = list(/obj/mecha/combat)
@@ -188,8 +188,8 @@
required_type = list(/obj/mecha/combat/marauder)
deflect_chance = 25
damage_minimum = 30
minimum_penetration = 25
// damage_minimum = 30 //CHOMPremove, 30 damage? WTF???
// minimum_penetration = 25 //CHOMPremove
damage_absorption = list(
"brute"=0.5,
@@ -216,11 +216,11 @@
/obj/item/mecha_parts/component/armor/alien
name = "strange mecha plating"
step_delay = 2
//Chompedit start Trying to make this armor decent, without making it OP.
damage_minimum = 12
minimum_penetration = 10
//Chompedit start Trying to make this armor decent, without making it OP. Chompedit 2, nerfing damage absorption 2024/8/12
//damage_minimum = 12
//minimum_penetration = 10
//Chompedit end
damage_absorption = list(
"brute"=0.7,
"fire"=0.7,
+28 -28
View File
@@ -1101,20 +1101,20 @@
var/obj/item/mecha_parts/component/armor/ArmC = internal_components[MECH_ARMOR]
var/temp_deflect_chance = deflect_chance
var/temp_damage_minimum = damage_minimum
var/temp_minimum_penetration = minimum_penetration
//var/temp_damage_minimum = damage_minimum //CHOMPremove
//var/temp_minimum_penetration = minimum_penetration //CHOMPremove
var/temp_fail_penetration_value = fail_penetration_value
if(!ArmC)
temp_deflect_chance = 0
temp_damage_minimum = 0
temp_minimum_penetration = 0
//temp_damage_minimum = 0 //CHOMPremove
//temp_minimum_penetration = 0
temp_fail_penetration_value = 1
else
temp_deflect_chance = round(ArmC.get_efficiency() * ArmC.deflect_chance + (defence_mode ? 25 : 0))
temp_damage_minimum = round(ArmC.get_efficiency() * ArmC.damage_minimum)
temp_minimum_penetration = round(ArmC.get_efficiency() * ArmC.minimum_penetration)
//temp_damage_minimum = round(ArmC.get_efficiency() * ArmC.damage_minimum) //CHOMPremove
//temp_minimum_penetration = round(ArmC.get_efficiency() * ArmC.minimum_penetration) //CHOMPremove
temp_fail_penetration_value = round(ArmC.get_efficiency() * ArmC.fail_penetration_value)
if(istype(A, /obj/item/mecha_parts/mecha_tracking))
@@ -1134,12 +1134,12 @@
var/pass_damage = O.throwforce
var/pass_damage_reduc_mod
if(pass_damage <= temp_damage_minimum)//Too little to go through.
if(pass_damage <= damage_minimum)//Too little to go through. //CHOMPedit temp_damage_mininum -> damage_minimum
src.occupant_message("<span class='notice'>\The [A] bounces off the armor.</span>")
src.visible_message("\The [A] bounces off \the [src] armor")
return
else if(O.armor_penetration < temp_minimum_penetration) //If you don't have enough pen, you won't do full damage
else if(O.armor_penetration < minimum_penetration) //If you don't have enough pen, you won't do full damage //CHOMPedit, temp_minimum_penetration -> minimum_penetration
src.occupant_message("<span class='notice'>\The [A] struggles to bypass \the [src] armor.</span>")
src.visible_message("\The [A] struggles to bypass \the [src] armor")
pass_damage_reduc_mod = temp_fail_penetration_value //This will apply to reduce damage to 2/3 or 66% by default
@@ -1175,20 +1175,20 @@
var/obj/item/mecha_parts/component/armor/ArmC = internal_components[MECH_ARMOR]
var/temp_deflect_chance = deflect_chance
var/temp_damage_minimum = damage_minimum
var/temp_minimum_penetration = minimum_penetration
//var/temp_damage_minimum = damage_minimum //CHOMPremove
//var/temp_minimum_penetration = minimum_penetration //CHOMPremove
var/temp_fail_penetration_value = fail_penetration_value
if(!ArmC)
temp_deflect_chance = 0
temp_damage_minimum = 0
temp_minimum_penetration = 0
//temp_damage_minimum = 0 //CHOMPremove
//temp_minimum_penetration = 0 //CHOMPremove
temp_fail_penetration_value = 1
else
temp_deflect_chance = round(ArmC.get_efficiency() * ArmC.deflect_chance + (defence_mode ? 25 : 0))
temp_damage_minimum = round(ArmC.get_efficiency() * ArmC.damage_minimum)
temp_minimum_penetration = round(ArmC.get_efficiency() * ArmC.minimum_penetration)
//temp_damage_minimum = round(ArmC.get_efficiency() * ArmC.damage_minimum) //CHOMPremove
//temp_minimum_penetration = round(ArmC.get_efficiency() * ArmC.minimum_penetration) //CHOMPremove
temp_fail_penetration_value = round(ArmC.get_efficiency() * ArmC.fail_penetration_value)
if(prob(temp_deflect_chance))
@@ -1210,12 +1210,12 @@
for(var/obj/item/mecha_parts/mecha_equipment/ME in equipment)
pass_damage = ME.handle_projectile_contact(Proj, pass_damage)
if(pass_damage < temp_damage_minimum)//too pathetic to really damage you.
if(pass_damage < damage_minimum)//too pathetic to really damage you. //CHOMPedit temp_damage_minimum -> damage_minimum
src.occupant_message("<span class='notice'>The armor deflects incoming projectile.</span>")
src.visible_message("The [src.name] armor deflects\the [Proj]")
return
else if(Proj.armor_penetration < temp_minimum_penetration) //If you don't have enough pen, you won't do full damage
else if(Proj.armor_penetration < minimum_penetration) //If you don't have enough pen, you won't do full damage //CHOMPedit temp_minimum_penetration -> damage_minimum
src.occupant_message("<span class='notice'>\The [Proj] struggles to pierce \the [src] armor.</span>")
src.visible_message("\The [Proj] struggles to pierce \the [src] armor")
pass_damage_reduc_mod = temp_fail_penetration_value //This will apply to reduce damage to 2/3 or 66% by default
@@ -1333,20 +1333,20 @@
var/obj/item/mecha_parts/component/armor/ArmC = internal_components[MECH_ARMOR]
var/temp_deflect_chance = deflect_chance
var/temp_damage_minimum = damage_minimum
var/temp_minimum_penetration = minimum_penetration
//var/temp_damage_minimum = damage_minimum //CHOMPremove
//var/temp_minimum_penetration = minimum_penetration //CHOMPremove
var/temp_fail_penetration_value = fail_penetration_value
if(!ArmC)
temp_deflect_chance = 0
temp_damage_minimum = 0
temp_minimum_penetration = 0
//temp_damage_minimum = 0 //CHOMPremove
//temp_minimum_penetration = 0 //CHOMPremove
temp_fail_penetration_value = 1
else
temp_deflect_chance = round(ArmC.get_efficiency() * ArmC.deflect_chance + (defence_mode ? 25 : 0))
temp_damage_minimum = round(ArmC.get_efficiency() * ArmC.damage_minimum)
temp_minimum_penetration = round(ArmC.get_efficiency() * ArmC.minimum_penetration)
//temp_damage_minimum = round(ArmC.get_efficiency() * ArmC.damage_minimum) //CHOMPremove
//temp_minimum_penetration = round(ArmC.get_efficiency() * ArmC.minimum_penetration) //CHOMPremove
temp_fail_penetration_value = round(ArmC.get_efficiency() * ArmC.fail_penetration_value)
if(prob(temp_deflect_chance)) //Does your attack get deflected outright.
@@ -1354,12 +1354,12 @@
to_chat(user, "<span class='danger'>\The [W] bounces off [src.name].</span>")
src.log_append_to_last("Armor saved.")
else if(W.force < temp_damage_minimum) //Is your attack too PATHETIC to do anything. 3 damage to a person shouldn't do anything to a mech.
else if(W.force < damage_minimum) //Is your attack too PATHETIC to do anything. 3 damage to a person shouldn't do anything to a mech. //CHOMPedit temp_damage_minimum -> damage_minumum
src.occupant_message("<span class='notice'>\The [W] bounces off the armor.</span>")
src.visible_message("\The [W] bounces off \the [src] armor")
return
else if(W.armor_penetration < temp_minimum_penetration) //If you don't have enough pen, you won't do full damage
else if(W.armor_penetration < minimum_penetration) //If you don't have enough pen, you won't do full damage ////CHOMPedit temp_minimum_penetration -> minimum_penetration
src.occupant_message("<span class='notice'>\The [W] struggles to bypass \the [src] armor.</span>")
src.visible_message("\The [W] struggles to bypass \the [src] armor")
pass_damage_reduc_mod = temp_fail_penetration_value //This will apply to reduce damage to 2/3 or 66% by default
@@ -2763,15 +2763,15 @@
var/obj/item/mecha_parts/component/armor/ArmC = internal_components[MECH_ARMOR]
var/temp_deflect_chance = deflect_chance
var/temp_damage_minimum = damage_minimum
//var/temp_damage_minimum = damage_minimum //CHOMPremove
if(!ArmC)
temp_deflect_chance = 1
temp_damage_minimum = 0
//temp_damage_minimum = 0 //CHOMPremove
else
temp_deflect_chance = round(ArmC.get_efficiency() * ArmC.deflect_chance + (defence_mode ? 25 : 0))
temp_damage_minimum = round(ArmC.get_efficiency() * ArmC.damage_minimum)
//temp_damage_minimum = round(ArmC.get_efficiency() * ArmC.damage_minimum) CHOMPremove
user.setClickCooldown(user.get_attack_speed())
if(!damage)
@@ -2787,7 +2787,7 @@
user.attack_log += text("\[[time_stamp()]\] [span_red("attacked [src.name]")]")
playsound(src, 'sound/weapons/slash.ogg', 50, 1, -1)
else if(damage < temp_damage_minimum)//Pathetic damage levels just don't harm MECH.
else if(damage < damage_minimum)//Pathetic damage levels just don't harm MECH. //CHOMPedit temp_damage_minimum -> damage_minimum
src.occupant_message("<span class='notice'>\The [user]'s doesn't dent \the [src] paint.</span>")
src.visible_message("\The [user]'s attack doesn't dent \the [src] armor")
src.log_append_to_last("Armor saved.")