Merge pull request #3913 from Rykka-Stormheart/shep-dev-tankiness-buff

Trait Addition + Adjustments (Tankiness++)
This commit is contained in:
Razgriz
2022-03-29 14:48:35 -07:00
committed by GitHub
8 changed files with 99 additions and 35 deletions

View File

@@ -27,7 +27,7 @@
/datum/trait/negative/endurance_low /datum/trait/negative/endurance_low
name = "Low Endurance" name = "Low Endurance"
desc = "Reduces your maximum total hitpoints to 75." desc = "Reduces your maximum total hitpoints to 75. You require only 150 damage in total to die, compared to 200 normally. You will go into crit after losing 75 HP, compared to crit at 100 HP." // CHOMPEdit: Clarity for players' sake.
cost = -4 //Chompedit makes you a lot squishier, should not be only 2 points. (based on the brute and burn vulnerability costs) cost = -4 //Chompedit makes you a lot squishier, should not be only 2 points. (based on the brute and burn vulnerability costs)
var_changes = list("total_health" = 75) var_changes = list("total_health" = 75)
@@ -37,7 +37,7 @@
/datum/trait/negative/endurance_very_low /datum/trait/negative/endurance_very_low
name = "Low Endurance, Major" name = "Low Endurance, Major"
desc = "Reduces your maximum total hitpoints to 50." desc = "Reduces your maximum total hitpoints to 50. You require only 100 damage in total to die, compared to 200 normally. You will go into crit after losing 50 HP, compared to crit at 100 HP." // CHOMPEdit: Clarity for players' sake.
cost = -8 //Teshari HP. This makes the person a lot more suseptable to getting stunned, killed, etc. //Chompedit: Has no business being only 3 points, while others that function similarly but are nowhere near as crippling are 3 as well. cost = -8 //Teshari HP. This makes the person a lot more suseptable to getting stunned, killed, etc. //Chompedit: Has no business being only 3 points, while others that function similarly but are nowhere near as crippling are 3 as well.
var_changes = list("total_health" = 50) var_changes = list("total_health" = 50)
@@ -82,9 +82,9 @@
var_changes = list("burn_mod" = 1.5) var_changes = list("burn_mod" = 1.5)
//YW ADDITIONS START //YW ADDITIONS START
/datum/trait/negative/reduced_biocompat /datum/trait/negative/reduced_biocompat_minor // CHOMPEdit: Changed name of trait + desc.
name = "Reduced Biocompatibility" name = "Reduced Biocompatibility, Minor"
desc = "For whatever reason, you're one of the unlucky few who don't get as much benefit from modern-day chemicals. Remember to note this down in your medical records!" desc = "For whatever reason, you're one of the unlucky few who don't get as much benefit from modern-day chemicals. Remember to note this down in your medical records! Chems are only 80% as effective on you!"
cost = -1 cost = -1
var_changes = list("chem_strength_heal" = 0.8) var_changes = list("chem_strength_heal" = 0.8)

View File

@@ -35,7 +35,7 @@
var_changes = list("grab_resist_divisor_victims" = 0.5, "grab_resist_divisor_self" = 3, "grab_power_victims" = 1, "grab_power_self" = -1) var_changes = list("grab_resist_divisor_victims" = 0.5, "grab_resist_divisor_self" = 3, "grab_power_victims" = 1, "grab_power_self" = -1)
/datum/trait/negative/extreme_slowdown /datum/trait/negative/extreme_slowdown
name = "Extreme slowdown" name = "Slowdown, Extreme"
desc = "You move EXTREMELY slower than baseline" desc = "You move EXTREMELY slower than baseline"
cost = -8 cost = -8
var_changes = list("slowdown" = 4.0) var_changes = list("slowdown" = 4.0)
@@ -376,3 +376,25 @@
if(ms != "") if(ms != "")
to_chat(H, ms) to_chat(H, ms)
H.next_loneliness_time = world.time+500 H.next_loneliness_time = world.time+500
/datum/trait/negative/endurance_glass // Glass Cannon
name = "Glass Endurance"
desc = "Your body is very fragile. Reduces your maximum hitpoints to 25. Beware sneezes. You require only 50 damage in total to die, compared to 200 normally. You will go into crit after losing 25 HP, compared to crit at 100 HP."
cost = -12 // Similar to Very Low Endurance, this straight up will require you NEVER getting in a fight. This is extremely crippling. I salute the madlad that takes this.
var_changes = list("total_health" = 25)
/datum/trait/negative/endurance_glass/apply(var/datum/species/S,var/mob/living/carbon/human/H)
..(S,H)
H.setMaxHealth(S.total_health)
/datum/trait/negative/reduced_biocompat
name = "Reduced Biocompatibility"
desc = "For whatever reason, you're one of the unlucky few who don't get as much benefit from modern-day chemicals. Remember to note this down in your medical records! Chems are only 60% as effective on you!"
cost = -4
var_changes = list("chem_strength_heal" = 0.6)
/datum/trait/negative/reduced_biocompat_extreme
name = "Reduced Biocompatibility, Major"
desc = "For whatever reason, you're one of the unlucky few who don't get as much benefit from modern-day chemicals. Remember to note this down in your medical records! Chems are only 30% as effective on you!"
cost = -8
var_changes = list("chem_strength_heal" = 0.3)

View File

@@ -5,7 +5,7 @@
name = "Haste" name = "Haste"
desc = "Allows you to move faster on average than baseline." desc = "Allows you to move faster on average than baseline."
cost = 4 //CHOMPEdit cost = 4 //CHOMPEdit
var_changes = list("slowdown" = -0.5) var_changes = list("slowdown" = -0.45)
excludes = list(/datum/trait/positive/hardy,/datum/trait/positive/hardy_extreme,/datum/trait/positive/hardy_plus,/datum/trait/positive/speed_fast_minor) excludes = list(/datum/trait/positive/hardy,/datum/trait/positive/hardy_extreme,/datum/trait/positive/hardy_plus,/datum/trait/positive/speed_fast_minor)
//ChompEdit //ChompEdit
@@ -45,8 +45,8 @@
/datum/trait/positive/endurance_high /datum/trait/positive/endurance_high
name = "High Endurance" name = "High Endurance"
desc = "Increases your maximum total hitpoints to 125" desc = "Increases your maximum total hitpoints to 125. You require 250 damage in total to die, compared to 200 normally. You will still go into crit after losing 125 HP, compared to crit at 100 HP." // CHOMPEdit: Clarity for players' sake.
cost = 2 cost = 3 // CHOMPEdit
var_changes = list("total_health" = 125) var_changes = list("total_health" = 125)
/datum/trait/positive/endurance_high/apply(var/datum/species/S,var/mob/living/carbon/human/H) /datum/trait/positive/endurance_high/apply(var/datum/species/S,var/mob/living/carbon/human/H)
@@ -55,13 +55,13 @@
/datum/trait/positive/nonconductive /datum/trait/positive/nonconductive
name = "Non-Conductive" name = "Non-Conductive"
desc = "Decreases your susceptibility to electric shocks by a 25% amount." //CHOMP Edit desc = "Decreases your susceptibility to electric shocks by 25%." //CHOMP Edit - GRAMMAR PLS.
cost = 2 //This effects tasers! cost = 2 //This effects tasers!
var_changes = list("siemens_coefficient" = 0.75) //CHOMP Edit var_changes = list("siemens_coefficient" = 0.75) //CHOMP Edit
/datum/trait/positive/nonconductive_plus /datum/trait/positive/nonconductive_plus
name = "Non-Conductive, Major" name = "Non-Conductive, Major"
desc = "Decreases your susceptibility to electric shocks by a 50% amount." //CHOMP Edit desc = "Decreases your susceptibility to electric shocks by 50%." //CHOMP Edit - GRAMMAR PLS.
cost = 3 //Let us not forget this effects tasers! cost = 3 //Let us not forget this effects tasers!
var_changes = list("siemens_coefficient" = 0.5) //CHOMP Edit var_changes = list("siemens_coefficient" = 0.5) //CHOMP Edit
/* //Chompedit, moving to Positive_ch.dm so it wont be messed with from upstream /* //Chompedit, moving to Positive_ch.dm so it wont be messed with from upstream
@@ -128,8 +128,8 @@
cost = 2 cost = 2
var_changes = list("chem_strength_heal" = 1.2) var_changes = list("chem_strength_heal" = 1.2)
/datum/trait/positive/pain_tolerance_advanced /datum/trait/positive/pain_tolerance // CHOMPEdit: There is no "basic" pain tolerance, so I'm reducing this to regular pain tolerance.
name = "High Pain Tolerance" name = "Increased Pain Tolerance"
desc = "You are noticeably more resistant to pain than most, and experience 20% less pain from all sources." desc = "You are noticeably more resistant to pain than most, and experience 20% less pain from all sources."
cost = 2 cost = 2
var_changes = list("pain_mod" = 0.8) var_changes = list("pain_mod" = 0.8)
@@ -173,9 +173,8 @@
cost = 1 //CHOMP Edit cost = 1 //CHOMP Edit
var_changes = list("flags" = NO_MINOR_CUT) //Checked the flag is only used by shard stepping. var_changes = list("flags" = NO_MINOR_CUT) //Checked the flag is only used by shard stepping.
//CHOMPStation Removal Start
/*
// CHOMPEdit: This has been removed for two years, since Jan 2020, pending "review". Uncommenting as per tankiness increase PR.
/datum/trait/positive/antiseptic_saliva /datum/trait/positive/antiseptic_saliva
name = "Antiseptic Saliva" name = "Antiseptic Saliva"
desc = "Your saliva has especially strong antiseptic properties that can be used to heal small wounds." desc = "Your saliva has especially strong antiseptic properties that can be used to heal small wounds."
@@ -184,8 +183,7 @@
/datum/trait/positive/antiseptic_saliva/apply(var/datum/species/S,var/mob/living/carbon/human/H) /datum/trait/positive/antiseptic_saliva/apply(var/datum/species/S,var/mob/living/carbon/human/H)
..() ..()
H.verbs |= /mob/living/carbon/human/proc/lick_wounds H.verbs |= /mob/living/carbon/human/proc/lick_wounds
*/
//CHOMPStation Removal End
/datum/trait/positive/traceur /datum/trait/positive/traceur
name = "Traceur" name = "Traceur"

View File

@@ -110,19 +110,21 @@
/datum/trait/positive/endurance_high /datum/trait/positive/endurance_high
cost = 3 cost = 3
excludes = list(/datum/trait/positive/brute_resist, /datum/trait/positive/minor_brute_resist, /datum/trait/positive/minor_burn_resist, /datum/trait/positive/burn_resist) excludes = list(/datum/trait/positive/endurance_very_high) // CHOMPEdit: Increased Endurance.
// excludes = list(/datum/trait/positive/brute_resist, /datum/trait/positive/minor_brute_resist, /datum/trait/positive/minor_burn_resist, /datum/trait/positive/burn_resist)
// Tankiness at the cost of severe downsides should be allowed - we have a large number of negatives that hurt hard, but you can't take many positives.
/datum/trait/positive/brute_resist /datum/trait/positive/brute_resist
excludes = list(/datum/trait/positive/minor_brute_resist, /datum/trait/positive/burn_resist, /datum/trait/positive/endurance_high) excludes = list(/datum/trait/positive/minor_brute_resist, /datum/trait/positive/brute_resist_plus) // Tankiness at the cost of severe downsides should be allowed - we have a large number of negatives that hurt hard, but you can't take many positives.
/datum/trait/positive/minor_brute_resist /datum/trait/positive/minor_brute_resist
excludes = list(/datum/trait/positive/brute_resist, /datum/trait/positive/endurance_high) excludes = list(/datum/trait/positive/brute_resist, /datum/trait/positive/brute_resist_plus) // Tankiness at the cost of severe downsides should be allowed - we have a large number of negatives that hurt hard, but you can't take many positives.
/datum/trait/positive/burn_resist /datum/trait/positive/burn_resist
excludes = list(/datum/trait/positive/minor_burn_resist, /datum/trait/positive/brute_resist, /datum/trait/positive/endurance_high) excludes = list(/datum/trait/positive/minor_burn_resist, /datum/trait/positive/burn_resist_plus) // Tankiness at the cost of severe downsides should be allowed - we have a large number of negatives that hurt hard, but you can't take many positives.
/datum/trait/positive/minor_burn_resist /datum/trait/positive/minor_burn_resist
excludes = list(/datum/trait/positive/burn_resist, /datum/trait/positive/endurance_high) excludes = list(/datum/trait/positive/burn_resist, /datum/trait/positive/burn_resist_plus) // Tankiness at the cost of severe downsides should be allowed - we have a large number of negatives that hurt hard, but you can't take many positives.
/datum/trait/positive/absorbent/handle_environment_special(var/mob/living/carbon/human/H) /datum/trait/positive/absorbent/handle_environment_special(var/mob/living/carbon/human/H)
var/turf/T = get_turf(H) var/turf/T = get_turf(H)
@@ -249,3 +251,45 @@
..(S,H) ..(S,H)
H.verbs |= /mob/living/proc/insect_sting H.verbs |= /mob/living/proc/insect_sting
// TANKINESS LETS GOOOOOOOOO
/datum/trait/positive/burn_resist_plus // Equivalent to Burn Weakness Major, cannot be taken at the same time.
name = "Major Burn Resist"
desc = "Adds 40% resistance to burn damage sources."
cost = 3 // Exact Opposite of Burn Weakness Major, except Weakness Major is 50% incoming, this is -40% incoming.
var_changes = list("burn_mod" = 0.6)
excludes = list(/datum/trait/positive/burn_resist, /datum/trait/positive/minor_burn_resist)
/datum/trait/positive/brute_resist_plus // Equivalent to Brute Weakness Major, cannot be taken at the same time.
name = "Major Brute Resist"
desc = "Adds 40% resistance to brute damage sources."
cost = 3 // Exact Opposite of Brute Weakness Major, except Weakness Major is 50% incoming, this is -40% incoming.
var_changes = list("brute_mod" = 0.6)
excludes = list(/datum/trait/positive/brute_resist, /datum/trait/positive/minor_brute_resist)
/datum/trait/positive/endurance_very_high
name = "Very High Endurance"
desc = "Increases your maximum total hitpoints to 150. You require 300 damage in total to die, compared to 200 normally. You will still go into crit after losing 150 HP, compared to crit at 100 HP."
cost = 6 // This should cost a LOT, because your total health becomes 300 to be fully dead, rather than 200 normally, or 250 for High Endurance. HE costs 2, double it here.
var_changes = list("total_health" = 150)
excludes = list(/datum/trait/positive/endurance_high)
/datum/trait/positive/endurance_very_high/apply(var/datum/species/S,var/mob/living/carbon/human/H)
..(S,H)
H.setMaxHealth(S.total_health)
/datum/trait/positive/endurance_extremely_high
name = "Extremely High Endurance"
desc = "Increases your maximum total hitpoints to 175"
cost = 9 // This should cost a LOT, because your total health becomes 350 to be fully dead, rather than 200 normally, or 250 for High Endurance. HE costs 2, this costs 3x it.
var_changes = list("total_health" = 175)
/datum/trait/positive/endurance_extremely_high/apply(var/datum/species/S,var/mob/living/carbon/human/H)
..(S,H)
H.setMaxHealth(S.total_health)
/datum/trait/positive/pain_tolerance_advanced // High Pain Intolerance is 50% incoming pain, but this is 40% reduced incoming pain.
name = "Increased Pain Tolerance"
desc = "You are noticeably more resistant to pain than most, and experience 40% less pain from all sources."
cost = 3 // Equivalent to High Pain Intolerance, but less pain resisted for balance reasons.
var_changes = list("pain_mod" = 0.6)

View File

@@ -28,7 +28,7 @@ var/list/organ_cache = list()
// Damage vars. // Damage vars.
var/min_bruised_damage = 10 // Damage before considered bruised var/min_bruised_damage = 10 // Damage before considered bruised
var/min_broken_damage = 30 // Damage before becoming broken var/min_broken_damage = 60 // Damage before becoming broken CHOMPEdit: Flat doubling of all min_broken_damage
var/max_damage // Damage cap var/max_damage // Damage cap
var/can_reject = 1 // Can this organ reject? var/can_reject = 1 // Can this organ reject?
var/rejecting // Is this organ already being rejected? var/rejecting // Is this organ already being rejected?
@@ -361,7 +361,7 @@ var/list/organ_cache = list()
robotize() robotize()
robotic = ORGAN_ASSISTED robotic = ORGAN_ASSISTED
min_bruised_damage = 15 min_bruised_damage = 15
min_broken_damage = 35 min_broken_damage = 60 // CHOMPEdit: Flat doubling of all min_broken_damage
butcherable = FALSE butcherable = FALSE
/obj/item/organ/proc/digitize() //Used to make the circuit-brain. On this level in the event more circuit-organs are added/tweaks are wanted. /obj/item/organ/proc/digitize() //Used to make the circuit-brain. On this level in the event more circuit-organs are added/tweaks are wanted.

View File

@@ -9,7 +9,7 @@
/obj/item/organ/external /obj/item/organ/external
name = "external" name = "external"
min_broken_damage = 30 min_broken_damage = 60 // CHOMPEdit: Flat doubling of all min_broken_damage
max_damage = 0 max_damage = 0
dir = SOUTH dir = SOUTH
organ_tag = "limb" organ_tag = "limb"

View File

@@ -9,7 +9,7 @@
organ_tag = BP_TORSO organ_tag = BP_TORSO
icon_name = "torso" icon_name = "torso"
max_damage = 100 max_damage = 100
min_broken_damage = 35 min_broken_damage = 60 // CHOMPEdit: Increase all min_broken_damage (Ribs should take more force to break)
w_class = ITEMSIZE_HUGE w_class = ITEMSIZE_HUGE
body_part = UPPER_TORSO body_part = UPPER_TORSO
vital = 1 vital = 1
@@ -59,7 +59,7 @@
organ_tag = BP_GROIN organ_tag = BP_GROIN
icon_name = "groin" icon_name = "groin"
max_damage = 100 max_damage = 100
min_broken_damage = 35 min_broken_damage = 50 // CHOMPEdit: Increase all min_broken_damage
w_class = ITEMSIZE_LARGE w_class = ITEMSIZE_LARGE
body_part = LOWER_TORSO body_part = LOWER_TORSO
vital = 1 vital = 1
@@ -89,7 +89,7 @@
name = "left arm" name = "left arm"
icon_name = "l_arm" icon_name = "l_arm"
max_damage = 80 max_damage = 80
min_broken_damage = 30 min_broken_damage = 40 // CHOMPEdit: Flat doubling of all min_broken_damage
w_class = ITEMSIZE_NORMAL w_class = ITEMSIZE_NORMAL
body_part = ARM_LEFT body_part = ARM_LEFT
parent_organ = BP_TORSO parent_organ = BP_TORSO
@@ -129,7 +129,7 @@
name = "left leg" name = "left leg"
icon_name = "l_leg" icon_name = "l_leg"
max_damage = 80 max_damage = 80
min_broken_damage = 30 min_broken_damage = 40 // CHOMPEdit: Increase all min_broken_damage
w_class = ITEMSIZE_NORMAL w_class = ITEMSIZE_NORMAL
body_part = LEG_LEFT body_part = LEG_LEFT
icon_position = LEFT icon_position = LEFT
@@ -168,7 +168,7 @@
name = "left foot" name = "left foot"
icon_name = "l_foot" icon_name = "l_foot"
max_damage = 50 max_damage = 50
min_broken_damage = 15 min_broken_damage = 30 // CHOMPEdit: Increase all min_broken_damage
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
body_part = FOOT_LEFT body_part = FOOT_LEFT
icon_position = LEFT icon_position = LEFT
@@ -213,7 +213,7 @@
name = "left hand" name = "left hand"
icon_name = "l_hand" icon_name = "l_hand"
max_damage = 50 max_damage = 50
min_broken_damage = 15 min_broken_damage = 30 // CHOMPEdit: Increase all min_broken_damage
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
body_part = HAND_LEFT body_part = HAND_LEFT
parent_organ = BP_L_ARM parent_organ = BP_L_ARM
@@ -262,7 +262,7 @@
name = "head" name = "head"
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
max_damage = 75 max_damage = 75
min_broken_damage = 35 min_broken_damage = 50 // CHOMPEdit: Increase all min_broken_damage
w_class = ITEMSIZE_NORMAL w_class = ITEMSIZE_NORMAL
body_part = HEAD body_part = HEAD
vital = 1 vital = 1

View File

@@ -1,16 +1,16 @@
/obj/item/organ/external/chest/unathi /obj/item/organ/external/chest/unathi
max_damage = 100 max_damage = 100
min_broken_damage = 40 min_broken_damage = 80 // CHOMPEdit: Flat doubling of all min_broken_damage
encased = "upper ribplates" encased = "upper ribplates"
/obj/item/organ/external/groin/unathi /obj/item/organ/external/groin/unathi
max_damage = 100 max_damage = 100
min_broken_damage = 40 min_broken_damage = 80 // CHOMPEdit: Flat doubling of all min_broken_damage
encased = "lower ribplates" encased = "lower ribplates"
/obj/item/organ/external/head/unathi /obj/item/organ/external/head/unathi
max_damage = 75 max_damage = 75
min_broken_damage = 35 min_broken_damage = 70 // CHOMPEdit: Flat doubling of all min_broken_damage
eye_icon = "eyes_s" eye_icon = "eyes_s"
force = 5 force = 5
throwforce = 10 throwforce = 10