From 0eac988f529debfebb3caa70ba43599e0729c0b5 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Apr 2020 08:22:52 -0700 Subject: [PATCH 1/6] okay! --- code/controllers/configuration/entries/game_options.dm | 3 ++- .../mob/living/carbon/alien/humanoid/caste/hunter.dm | 5 +++-- .../mob/living/carbon/alien/humanoid/caste/sentinel.dm | 4 ++-- code/modules/mob/living/carbon/alien/humanoid/humanoid.dm | 1 - .../mob/living/carbon/alien/humanoid/humanoid_defense.dm | 1 - code/modules/mob/living/carbon/alien/humanoid/life.dm | 2 -- code/modules/mob/living/carbon/human/human_defense.dm | 5 +---- code/modules/projectiles/projectile/special/neurotoxin.dm | 6 ++++-- code/modules/surgery/bodyparts/bodyparts.dm | 2 +- 9 files changed, 13 insertions(+), 16 deletions(-) diff --git a/code/controllers/configuration/entries/game_options.dm b/code/controllers/configuration/entries/game_options.dm index cb18d37f21..74a1127fbb 100644 --- a/code/controllers/configuration/entries/game_options.dm +++ b/code/controllers/configuration/entries/game_options.dm @@ -217,7 +217,8 @@ config_entry_value = list( //DEFAULTS /mob/living/simple_animal = 1, /mob/living/silicon/pai = 1, - /mob/living/carbon/alien/humanoid/hunter = -1, + /mob/living/carbon/alien/humanoid/sentinel = 0.25, + /mob/living/carbon/alien/humanoid/drone = 0.5, /mob/living/carbon/alien/humanoid/royal/praetorian = 1, /mob/living/carbon/alien/humanoid/royal/queen = 3 ) diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm index faea8e9bbc..2e9504f05f 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm @@ -1,8 +1,8 @@ /mob/living/carbon/alien/humanoid/hunter name = "alien hunter" caste = "h" - maxHealth = 125 - health = 125 + maxHealth = 160 + health = 160 icon_state = "alienh" var/obj/screen/leap_icon = null @@ -68,6 +68,7 @@ else L.visible_message("[src] pounces on [L]!", "[src] pounces on you!") L.DefaultCombatKnockdown(100) + L.Stagger(4 SECONDS) sleep(2)//Runtime prevention (infinite bump() calls on hulks) step_towards(src,L) diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm index 7c6443cfae..ecae077646 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm @@ -1,8 +1,8 @@ /mob/living/carbon/alien/humanoid/sentinel name = "alien sentinel" caste = "s" - maxHealth = 150 - health = 150 + maxHealth = 135 + health = 135 icon_state = "aliens" /mob/living/carbon/alien/humanoid/sentinel/Initialize() diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index 048b5062ec..c813ce40f0 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -112,7 +112,6 @@ return A return FALSE - /mob/living/carbon/alien/humanoid/check_breath(datum/gas_mixture/breath) if(breath && breath.total_moles() > 0 && !sneaking) playsound(get_turf(src), pick('sound/voice/lowHiss2.ogg', 'sound/voice/lowHiss3.ogg', 'sound/voice/lowHiss4.ogg'), 50, 0, -5) diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid_defense.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid_defense.dm index 1d613db07a..5ebf6210d0 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid_defense.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid_defense.dm @@ -1,4 +1,3 @@ - /mob/living/carbon/alien/humanoid/grabbedby(mob/living/carbon/user, supress_message = 0) if(user == src && pulling && grab_state >= GRAB_AGGRESSIVE && !pulling.anchored && iscarbon(pulling)) devour_mob(pulling, devour_time = 60) diff --git a/code/modules/mob/living/carbon/alien/humanoid/life.dm b/code/modules/mob/living/carbon/alien/humanoid/life.dm index fd6a73ae7b..67c9285377 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/life.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/life.dm @@ -1,5 +1,3 @@ - - /mob/living/carbon/alien/humanoid/proc/adjust_body_temperature(current, loc_temp, boost) var/temperature = current var/difference = abs(current-loc_temp) //get difference diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 324420a7dd..f471b55b68 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -182,10 +182,7 @@ "[M] disarmed [src]!") else playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) - if(!lying) //CITADEL EDIT - DefaultCombatKnockdown(100, TRUE, FALSE, 30, 25) - else - DefaultCombatKnockdown(100) + DefaultCombatKnockdown(100) log_combat(M, src, "tackled") visible_message("[M] has tackled down [src]!", \ "[M] has tackled down [src]!") diff --git a/code/modules/projectiles/projectile/special/neurotoxin.dm b/code/modules/projectiles/projectile/special/neurotoxin.dm index a72d078384..f00cf54850 100644 --- a/code/modules/projectiles/projectile/special/neurotoxin.dm +++ b/code/modules/projectiles/projectile/special/neurotoxin.dm @@ -1,8 +1,9 @@ /obj/item/projectile/bullet/neurotoxin name = "neurotoxin spit" icon_state = "neurotoxin" - damage = 5 + damage = 15 damage_type = TOX + var/stagger_duration = 3.5 SECONDS /obj/item/projectile/bullet/neurotoxin/on_hit(atom/target, blocked = FALSE) if(isalien(target)) @@ -10,5 +11,6 @@ nodamage = TRUE else if(iscarbon(target)) var/mob/living/L = target - L.DefaultCombatKnockdown(100, TRUE, FALSE, 30, 25) + L.KnockToFloor(TRUE) + L.Stagger(stagger_duration) return ..() diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index d6f0866936..6dd99a1e32 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -165,7 +165,7 @@ switch(animal_origin) if(ALIEN_BODYPART,LARVA_BODYPART) //aliens take double burn //nothing can burn with so much snowflake code around - burn *= 2 + burn *= 1.2 var/can_inflict = max_damage - get_damage() if(can_inflict <= 0) From d259519bff55fabce28fe573cc7dacd291824e09 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Apr 2020 08:31:09 -0700 Subject: [PATCH 2/6] changes --- code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm | 4 ++-- .../mob/living/carbon/alien/humanoid/caste/sentinel.dm | 4 ++-- code/modules/mob/living/carbon/alien/larva/larva.dm | 1 + code/modules/projectiles/projectile/special/neurotoxin.dm | 4 ++-- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm index 2e9504f05f..9f38181bef 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm @@ -1,8 +1,8 @@ /mob/living/carbon/alien/humanoid/hunter name = "alien hunter" caste = "h" - maxHealth = 160 - health = 160 + maxHealth = 170 + health = 170 icon_state = "alienh" var/obj/screen/leap_icon = null diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm index ecae077646..10ced3b4c4 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm @@ -1,8 +1,8 @@ /mob/living/carbon/alien/humanoid/sentinel name = "alien sentinel" caste = "s" - maxHealth = 135 - health = 135 + maxHealth = 140 + health = 140 icon_state = "aliens" /mob/living/carbon/alien/humanoid/sentinel/Initialize() diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index fb26a40350..93050a4f9d 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -6,6 +6,7 @@ mob_size = MOB_SIZE_SMALL density = FALSE hud_type = /datum/hud/larva + mouse_opacity = MOUSE_OPACITY_OPAQUE maxHealth = 25 health = 25 diff --git a/code/modules/projectiles/projectile/special/neurotoxin.dm b/code/modules/projectiles/projectile/special/neurotoxin.dm index f00cf54850..f114c4db3d 100644 --- a/code/modules/projectiles/projectile/special/neurotoxin.dm +++ b/code/modules/projectiles/projectile/special/neurotoxin.dm @@ -3,7 +3,7 @@ icon_state = "neurotoxin" damage = 15 damage_type = TOX - var/stagger_duration = 3.5 SECONDS + var/stagger_duration = 5 SECONDS /obj/item/projectile/bullet/neurotoxin/on_hit(atom/target, blocked = FALSE) if(isalien(target)) @@ -11,6 +11,6 @@ nodamage = TRUE else if(iscarbon(target)) var/mob/living/L = target - L.KnockToFloor(TRUE) + L.KnockToFloor() L.Stagger(stagger_duration) return ..() From 1bcca265accf13102d45936919637900c92431e3 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Apr 2020 08:35:08 -0700 Subject: [PATCH 3/6] buff neurotox --- code/modules/projectiles/projectile/special/neurotoxin.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/projectiles/projectile/special/neurotoxin.dm b/code/modules/projectiles/projectile/special/neurotoxin.dm index f114c4db3d..2f6a55a7d0 100644 --- a/code/modules/projectiles/projectile/special/neurotoxin.dm +++ b/code/modules/projectiles/projectile/special/neurotoxin.dm @@ -3,7 +3,7 @@ icon_state = "neurotoxin" damage = 15 damage_type = TOX - var/stagger_duration = 5 SECONDS + var/stagger_duration = 8 SECONDS /obj/item/projectile/bullet/neurotoxin/on_hit(atom/target, blocked = FALSE) if(isalien(target)) @@ -11,6 +11,6 @@ nodamage = TRUE else if(iscarbon(target)) var/mob/living/L = target - L.KnockToFloor() + L.KnockToFloor(TRUE) L.Stagger(stagger_duration) return ..() From 5984fa02b871df8df4449a852aa49462688704b5 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Apr 2020 08:49:21 -0700 Subject: [PATCH 4/6] more changes --- code/modules/mob/living/carbon/alien/alien.dm | 7 +++++++ .../mob/living/carbon/alien/humanoid/caste/drone.dm | 1 + .../mob/living/carbon/alien/humanoid/caste/hunter.dm | 3 +++ .../mob/living/carbon/alien/humanoid/caste/sentinel.dm | 1 + code/modules/mob/living/carbon/alien/humanoid/queen.dm | 4 ++++ code/modules/mob/living/carbon/human/human_defense.dm | 4 ++-- code/modules/mob/living/simple_animal/animal_defense.dm | 2 +- 7 files changed, 19 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index bd24a4b4c4..bf9854e0b4 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -12,6 +12,13 @@ bubble_icon = "alien" type_of_meat = /obj/item/reagent_containers/food/snacks/meat/slab/xeno + /// How much brute damage without armor piercing they do against mobs in melee + var/meleeSlashHumanPower = 20 + /// How much power they have for DefaultCombatKnockdown when attacking humans + var/meleeKnockdownPower = 100 + /// How much brute damage they do to simple animals + var/meleeSlashSAPower = 35 + var/obj/item/card/id/wear_id = null // Fix for station bounced radios -- Skie var/has_fine_manipulation = 0 var/move_delay_add = 0 // movement delay to add diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm index 183bf07e8c..072c4e0231 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm @@ -4,6 +4,7 @@ maxHealth = 125 health = 125 icon_state = "aliend" + meleeKnockdownPower = 80 /mob/living/carbon/alien/humanoid/drone/Initialize() AddAbility(new/obj/effect/proc_holder/alien/evolve(null)) diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm index 9f38181bef..85204e5ab9 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm @@ -4,6 +4,9 @@ maxHealth = 170 health = 170 icon_state = "alienh" + meleeKnockdownPower = 75 + meleeSlashHumanPower = 20 + meleeSlashSAPower = 45 var/obj/screen/leap_icon = null /mob/living/carbon/alien/humanoid/hunter/create_internal_organs() diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm index 10ced3b4c4..67cf6f7d25 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm @@ -4,6 +4,7 @@ maxHealth = 140 health = 140 icon_state = "aliens" + meleeSlashHumanPower = 15 /mob/living/carbon/alien/humanoid/sentinel/Initialize() AddAbility(new /obj/effect/proc_holder/alien/sneak) diff --git a/code/modules/mob/living/carbon/alien/humanoid/queen.dm b/code/modules/mob/living/carbon/alien/humanoid/queen.dm index 6141a97c12..1200220ce4 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/queen.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/queen.dm @@ -11,6 +11,10 @@ pressure_resistance = 200 //Because big, stompy xenos should not be blown around like paper. butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/slab/xeno = 20, /obj/item/stack/sheet/animalhide/xeno = 3) + meleeKnockdownPower = 125 + meleeSlashHumanPower = 30 + meleeSlashSAPower = 60 + var/alt_inhands_file = 'icons/mob/alienqueen.dmi' /mob/living/carbon/alien/humanoid/royal/can_inject(mob/user, error_msg, target_zone, penetrate_thick = FALSE, bypass_immunity = FALSE) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index f471b55b68..856c57687f 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -155,7 +155,7 @@ if(M.a_intent == INTENT_HARM) if (w_uniform) w_uniform.add_fingerprint(M) - var/damage = prob(90) ? 20 : 0 + var/damage = prob(90) ? M.meleeSlashHumanPower : 0 if(!damage) playsound(loc, 'sound/weapons/slashmiss.ogg', 50, 1, -1) visible_message("[M] has lunged at [src]!", \ @@ -182,7 +182,7 @@ "[M] disarmed [src]!") else playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) - DefaultCombatKnockdown(100) + DefaultCombatKnockdown(M.meleeKnockdownPower) log_combat(M, src, "tackled") visible_message("[M] has tackled down [src]!", \ "[M] has tackled down [src]!") diff --git a/code/modules/mob/living/simple_animal/animal_defense.dm b/code/modules/mob/living/simple_animal/animal_defense.dm index f4feab8824..193a1fadfb 100644 --- a/code/modules/mob/living/simple_animal/animal_defense.dm +++ b/code/modules/mob/living/simple_animal/animal_defense.dm @@ -65,7 +65,7 @@ visible_message("[M] has slashed at [src]!", \ "[M] has slashed at [src]!", null, COMBAT_MESSAGE_RANGE) playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) - attack_threshold_check(damage) + attack_threshold_check(M.meleeSlashSAPower) log_combat(M, src, "attacked") /mob/living/simple_animal/attack_larva(mob/living/carbon/alien/larva/L) From 5c179026288175113c2d264cf1350e75f930f272 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Apr 2020 08:50:51 -0700 Subject: [PATCH 5/6] compile --- code/modules/mob/living/simple_animal/animal_defense.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/animal_defense.dm b/code/modules/mob/living/simple_animal/animal_defense.dm index 193a1fadfb..fe18d48718 100644 --- a/code/modules/mob/living/simple_animal/animal_defense.dm +++ b/code/modules/mob/living/simple_animal/animal_defense.dm @@ -61,7 +61,6 @@ "[M] [response_disarm] [name]!", null, COMBAT_MESSAGE_RANGE) log_combat(M, src, "disarmed") else - var/damage = rand(15, 30) visible_message("[M] has slashed at [src]!", \ "[M] has slashed at [src]!", null, COMBAT_MESSAGE_RANGE) playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) From b29c2117724db0208a91226d8d640df44e4ce08f Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Apr 2020 18:44:59 -0700 Subject: [PATCH 6/6] Update bodyparts.dm --- code/modules/surgery/bodyparts/bodyparts.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index 6dd99a1e32..7f52f6815c 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -164,7 +164,7 @@ return FALSE switch(animal_origin) - if(ALIEN_BODYPART,LARVA_BODYPART) //aliens take double burn //nothing can burn with so much snowflake code around + if(ALIEN_BODYPART,LARVA_BODYPART) //aliens take some additional burn //nothing can burn with so much snowflake code around burn *= 1.2 var/can_inflict = max_damage - get_damage()