mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-08-27 07:08:55 +01:00
Nerfs mech armor (#8780)
This commit is contained in:
@@ -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
@@ -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.")
|
||||
|
||||
Reference in New Issue
Block a user