From ab6169da1140157288532f234112d00717ffe90e Mon Sep 17 00:00:00 2001 From: Lars Date: Wed, 18 Dec 2024 08:38:42 +0100 Subject: [PATCH 01/14] ye --- .../living/carbon/xenomorph/strains/castes/runner/acid.dm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index 0fb4a17190a1..180a20eb6da6 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -35,6 +35,7 @@ var/acid_slash_regen_lying = 8 var/acid_slash_regen_standing = 14 var/acid_passive_regen = 1 + var/acid_gen_cap = 400 var/melt_acid_cost = 100 @@ -47,6 +48,10 @@ var/caboom_struct_acid_type = /obj/effect/xenomorph/acid /datum/behavior_delegate/runner_acider/proc/modify_acid(amount) + if(acid_amount >= acid_gen_cap) + acid_passive_regen = 0 + else + acid_passive_regen = 1 acid_amount += amount if(acid_amount > max_acid) acid_amount = max_acid From 49f55fc18d8496fa502666a6ea30bf0984c8d89b Mon Sep 17 00:00:00 2001 From: Lars Date: Wed, 18 Dec 2024 23:34:08 +0100 Subject: [PATCH 02/14] Hud and panel + notes --- .../xenomorph/strains/castes/runner/acid.dm | 13 +++++++++---- icons/mob/hud/hud.dmi | Bin 19935 -> 20624 bytes 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index 180a20eb6da6..07e0978e5427 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -1,6 +1,6 @@ /datum/xeno_strain/acider name = RUNNER_ACIDER - description = "At the cost of a little bit of your speed and all of your current abilities, you gain a considerable amount of health, some armor, and a new organ that fills with volatile acid over time. Your Tail Stab and slashes apply acid to living lifeforms that slowly burns them, and slashes against targets with acid stacks fill your acid glands. You also gain Corrosive Acid equivalent to that of a boiler that you can deploy more quickly than any other caste, at the cost of a chunk of your acid reserves with each use. Finally, after a twenty second windup, you can force your body to explode, covering everything near you with acid. The more acid you have stored, the more devastating the explosion will be, but during those twenty seconds before detonation you are slowed and give off several warning signals which give talls an opportunity to end you before you can detonate. If you successfully explode, you will reincarnate as a larva again!" + description = "At the cost of a little bit of your speed, a little bit of damage and all of your current abilities, you gain a considerable amount of health, some armor, and a new organ that fills with volatile acid over time. Your Tail Stab and slashes apply acid to living lifeforms that slowly burns them, and slashes against targets with acid stacks fill your acid glands. You also gain Corrosive Acid equivalent to that of a boiler that you can deploy more quickly than any other caste, at the cost of a chunk of your acid reserves with each use. Finally, after a twenty second windup, you can force your body to explode, covering everything near you with acid. The more acid you have stored, the more devastating the explosion will be, but during those twenty seconds before detonation you are slowed and give off several warning signals which give talls an opportunity to end you before you can detonate. If you successfully explode, you will reincarnate as a larva again!" flavor_description = "This one will be the last thing they hear. A martyr." icon_state_prefix = "Acider" @@ -20,6 +20,7 @@ runner.speed_modifier += XENO_SPEED_SLOWMOD_TIER_5 runner.armor_modifier += XENO_ARMOR_MOD_MED runner.health_modifier += XENO_HEALTH_MOD_ACIDER + runner.damage_modifier -= XENO_DAMAGE_MOD_VERY_SMALL runner.recalculate_everything() @@ -35,7 +36,7 @@ var/acid_slash_regen_lying = 8 var/acid_slash_regen_standing = 14 var/acid_passive_regen = 1 - var/acid_gen_cap = 400 + var/acid_gen_cap = 400 //Ammount of acid from wich passive acid generation stops var/melt_acid_cost = 100 @@ -48,7 +49,7 @@ var/caboom_struct_acid_type = /obj/effect/xenomorph/acid /datum/behavior_delegate/runner_acider/proc/modify_acid(amount) - if(acid_amount >= acid_gen_cap) + if(acid_amount >= acid_gen_cap) //This checks if the current acid is greater or equal to the cap, and stops/starts passive acid generation depending if it is. acid_passive_regen = 0 else acid_passive_regen = 1 @@ -58,9 +59,10 @@ if(acid_amount < 0) acid_amount = 0 -/datum/behavior_delegate/runner_acider/append_to_stat() +/datum/behavior_delegate/runner_acider/append_to_stat() //The uniqe status pannel info for Acid Runner is handelt here. . = list() . += "Acid: [acid_amount]" + . += "Acid generation cap: [acid_gen_cap]" if(caboom_trigger) . += "FOR THE HIVE!: in [caboom_left] seconds" @@ -111,8 +113,11 @@ var/image/holder = bound_xeno.hud_list[PLASMA_HUD] holder.overlays.Cut() var/percentage_acid = round((acid_amount / max_acid) * 100, 10) + var/percentage_acid_cap = round((acid_gen_cap /max_acid) * 100, 10) if(percentage_acid) holder.overlays += image('icons/mob/hud/hud.dmi', "xenoenergy[percentage_acid]") + if(acid_amount >= acid_gen_cap) + holder.overlays += image('icons/mob/hud/hud.dmi', "cap[percentage_acid_cap]") /datum/behavior_delegate/runner_acider/handle_death(mob/M) var/image/holder = bound_xeno.hud_list[PLASMA_HUD] diff --git a/icons/mob/hud/hud.dmi b/icons/mob/hud/hud.dmi index 1c943375216a9e39ef775c945735344fdf6af6c3..3b376057e273e812d73592f3927a9babb1ced58e 100644 GIT binary patch literal 20624 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 MeTn<)_R-G&4X)DT=l}o! literal 19935 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 P85lfW{an^LB{Ts5lo2JK From aee4b059eb5f2ea0b53214db21f8ed9207100959 Mon Sep 17 00:00:00 2001 From: Lars Date: Thu, 19 Dec 2024 00:23:18 +0100 Subject: [PATCH 03/14] Hud tweaks --- .../xenomorph/strains/castes/runner/acid.dm | 2 +- icons/mob/hud/hud.dmi | Bin 20624 -> 20669 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index 07e0978e5427..0f4b0a5ccdf2 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -61,7 +61,7 @@ /datum/behavior_delegate/runner_acider/append_to_stat() //The uniqe status pannel info for Acid Runner is handelt here. . = list() - . += "Acid: [acid_amount]" + . += "Acid: [acid_amount]/[max_acid]" . += "Acid generation cap: [acid_gen_cap]" if(caboom_trigger) . += "FOR THE HIVE!: in [caboom_left] seconds" diff --git a/icons/mob/hud/hud.dmi b/icons/mob/hud/hud.dmi index 3b376057e273e812d73592f3927a9babb1ced58e..30d6c0630db7d2c8d13b07e55dff79916fba77d1 100644 GIT binary patch delta 18701 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 Q1STp5Pgg&ebxsLQ07bhmEdT%j delta 18628 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
mme@SoTF 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 pz=qPr-az$RJ^=S$ Date: Thu, 19 Dec 2024 07:36:13 +0100 Subject: [PATCH 04/14] getting burn dmg in --- code/__DEFINES/xeno.dm | 1 + code/modules/mob/living/carbon/human/human.dm | 5 +++-- code/modules/mob/living/carbon/xenomorph/Xenomorph.dm | 9 +++++++-- .../mob/living/carbon/xenomorph/castes/caste_datum.dm | 2 ++ .../carbon/xenomorph/strains/castes/runner/acid.dm | 7 ++++--- code/modules/mob/living/living_defines.dm | 2 ++ 6 files changed, 19 insertions(+), 7 deletions(-) diff --git a/code/__DEFINES/xeno.dm b/code/__DEFINES/xeno.dm index 612d9f1f392b..1be0b1206678 100644 --- a/code/__DEFINES/xeno.dm +++ b/code/__DEFINES/xeno.dm @@ -418,6 +418,7 @@ ///////////////////////////////////////////////////////////////////////////////////// // Damage - this is applied as a flat nerf/buff to the xeno's average damage +#define XENO_DAMAGE_MOD_VERY_VERY_SMALL 2.5 #define XENO_DAMAGE_MOD_VERY_SMALL 5 #define XENO_DAMAGE_MOD_SMALL 10 #define XENO_DAMAGE_MOD_MED 15 diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index b3fff78ffc0d..032abf80845b 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -237,7 +237,7 @@ /mob/living/carbon/human/attack_animal(mob/living/M as mob) - if(M.melee_damage_upper == 0) + if(M.melee_damage_upper += burn_damage_upper == 0) M.emote("[M.friendly] [src]") else if(M.attack_sound) @@ -248,9 +248,10 @@ M.attack_log += text("\[[time_stamp()]\] attacked [key_name(src)]") src.attack_log += text("\[[time_stamp()]\] was attacked by [key_name(M)]") var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) + var/burn_damage = rand(M.burn_damage_lower, M.burn_damage_upper) var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") var/obj/limb/affecting = get_limb(rand_zone(dam_zone)) - apply_damage(damage, BRUTE, affecting) + apply_damage(damage, BRUTE, affecting += burn_damage, BURN) /mob/living/carbon/human/proc/implant_loyalty(mob/living/carbon/human/M, override = FALSE) // Won't override by default. diff --git a/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm b/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm index 236ca482a1d2..e94876fc2fd1 100644 --- a/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm +++ b/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm @@ -89,8 +89,6 @@ melee_damage_upper = 10 var/melee_vehicle_damage = 10 var/claw_type = CLAW_TYPE_NORMAL - var/burn_damage_lower = 0 - var/burn_damage_upper = 0 var/plasma_stored = 10 var/plasma_max = 10 var/plasma_gain = 5 @@ -206,6 +204,7 @@ var/evasion_modifier = 0 var/attack_speed_modifier = 0 var/armor_integrity_modifier = 0 + var/burn_damage_modifier = 0 var/list/modifier_sources @@ -913,6 +912,12 @@ melee_damage_upper += caste.melee_damage_upper melee_vehicle_damage += caste.melee_vehicle_damage + burn_damage_lower = burn_damage_modifier + burn_damage_upper = burn_damage_modifier + if(caste) + burn_damage_lower += caste.burn_damage_lower + burn_damage_upper += caste.burn_damage_upper + /mob/living/carbon/xenomorph/proc/recalculate_evasion() if(caste) evasion = evasion_modifier + caste.evasion diff --git a/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm b/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm index 995f4985487a..9b7197186ef7 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm @@ -10,6 +10,8 @@ ///allows fine tuning melee damage to vehicles per caste. var/melee_vehicle_damage = 10 var/evasion = XENO_EVASION_NONE + var/burn_damage_lower = 0 + var/burn_damage_upper = 0 var/speed = XENO_SPEED_TIER_10 diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index 0f4b0a5ccdf2..d1a43946ff73 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -1,6 +1,6 @@ /datum/xeno_strain/acider name = RUNNER_ACIDER - description = "At the cost of a little bit of your speed, a little bit of damage and all of your current abilities, you gain a considerable amount of health, some armor, and a new organ that fills with volatile acid over time. Your Tail Stab and slashes apply acid to living lifeforms that slowly burns them, and slashes against targets with acid stacks fill your acid glands. You also gain Corrosive Acid equivalent to that of a boiler that you can deploy more quickly than any other caste, at the cost of a chunk of your acid reserves with each use. Finally, after a twenty second windup, you can force your body to explode, covering everything near you with acid. The more acid you have stored, the more devastating the explosion will be, but during those twenty seconds before detonation you are slowed and give off several warning signals which give talls an opportunity to end you before you can detonate. If you successfully explode, you will reincarnate as a larva again!" + description = "At the cost of a little bit of your speed and all of your current abilities, you gain a considerable amount of health, some armor, and a new organ that fills with volatile acid over time up to a certain ammount. Your Tail Stab and slashes apply acid to living lifeforms that slowly burns them, and slashes against targets with acid stacks fill your acid glands. You also gain Corrosive Acid equivalent to that of a boiler that you can deploy more quickly than any other caste, at the cost of a chunk of your acid reserves with each use. Finally, after a twenty second windup, you can force your body to explode, covering everything near you with acid. The more acid you have stored, the more devastating the explosion will be, but during those twenty seconds before detonation you are slowed and give off several warning signals which give talls an opportunity to end you before you can detonate. If you successfully explode, you will reincarnate as a larva again!" flavor_description = "This one will be the last thing they hear. A martyr." icon_state_prefix = "Acider" @@ -21,6 +21,7 @@ runner.armor_modifier += XENO_ARMOR_MOD_MED runner.health_modifier += XENO_HEALTH_MOD_ACIDER runner.damage_modifier -= XENO_DAMAGE_MOD_VERY_SMALL + runner.burn_damage_modifier += XENO_DAMAGE_MOD_VERY_VERY_SMALL runner.recalculate_everything() @@ -33,8 +34,8 @@ var/max_acid = 1000 var/caboom_timer = 20 - var/acid_slash_regen_lying = 8 - var/acid_slash_regen_standing = 14 + var/acid_slash_regen_lying = 10 + var/acid_slash_regen_standing = 16 var/acid_passive_regen = 1 var/acid_gen_cap = 400 //Ammount of acid from wich passive acid generation stops diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 0d22616e5f84..0d4d55cf7dbc 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -41,6 +41,8 @@ // Putting these here for attack_animal(). var/melee_damage_lower = 0 var/melee_damage_upper = 0 + var/burn_damage_lower = 0 + var/burn_damage_upper = 0 var/attacktext = "attacks" var/attack_sound = null /// Custom sound if the mob gets slashed by a xenomorph From 38e05628aa15ed0302a2de470697fdcb1892bdb0 Mon Sep 17 00:00:00 2001 From: Lars Date: Thu, 19 Dec 2024 23:07:35 +0100 Subject: [PATCH 05/14] removes burn dmg code --- code/__DEFINES/xeno.dm | 1 - code/modules/mob/living/carbon/human/human.dm | 5 ++--- code/modules/mob/living/carbon/xenomorph/Xenomorph.dm | 7 ------- .../mob/living/carbon/xenomorph/castes/caste_datum.dm | 2 -- .../living/carbon/xenomorph/strains/castes/runner/acid.dm | 2 -- code/modules/mob/living/living_defines.dm | 2 -- 6 files changed, 2 insertions(+), 17 deletions(-) diff --git a/code/__DEFINES/xeno.dm b/code/__DEFINES/xeno.dm index 1be0b1206678..612d9f1f392b 100644 --- a/code/__DEFINES/xeno.dm +++ b/code/__DEFINES/xeno.dm @@ -418,7 +418,6 @@ ///////////////////////////////////////////////////////////////////////////////////// // Damage - this is applied as a flat nerf/buff to the xeno's average damage -#define XENO_DAMAGE_MOD_VERY_VERY_SMALL 2.5 #define XENO_DAMAGE_MOD_VERY_SMALL 5 #define XENO_DAMAGE_MOD_SMALL 10 #define XENO_DAMAGE_MOD_MED 15 diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 032abf80845b..b3fff78ffc0d 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -237,7 +237,7 @@ /mob/living/carbon/human/attack_animal(mob/living/M as mob) - if(M.melee_damage_upper += burn_damage_upper == 0) + if(M.melee_damage_upper == 0) M.emote("[M.friendly] [src]") else if(M.attack_sound) @@ -248,10 +248,9 @@ M.attack_log += text("\[[time_stamp()]\] attacked [key_name(src)]") src.attack_log += text("\[[time_stamp()]\] was attacked by [key_name(M)]") var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) - var/burn_damage = rand(M.burn_damage_lower, M.burn_damage_upper) var/dam_zone = pick("chest", "l_hand", "r_hand", "l_leg", "r_leg") var/obj/limb/affecting = get_limb(rand_zone(dam_zone)) - apply_damage(damage, BRUTE, affecting += burn_damage, BURN) + apply_damage(damage, BRUTE, affecting) /mob/living/carbon/human/proc/implant_loyalty(mob/living/carbon/human/M, override = FALSE) // Won't override by default. diff --git a/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm b/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm index e94876fc2fd1..3b49b64ef2a3 100644 --- a/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm +++ b/code/modules/mob/living/carbon/xenomorph/Xenomorph.dm @@ -204,7 +204,6 @@ var/evasion_modifier = 0 var/attack_speed_modifier = 0 var/armor_integrity_modifier = 0 - var/burn_damage_modifier = 0 var/list/modifier_sources @@ -912,12 +911,6 @@ melee_damage_upper += caste.melee_damage_upper melee_vehicle_damage += caste.melee_vehicle_damage - burn_damage_lower = burn_damage_modifier - burn_damage_upper = burn_damage_modifier - if(caste) - burn_damage_lower += caste.burn_damage_lower - burn_damage_upper += caste.burn_damage_upper - /mob/living/carbon/xenomorph/proc/recalculate_evasion() if(caste) evasion = evasion_modifier + caste.evasion diff --git a/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm b/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm index 9b7197186ef7..995f4985487a 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm @@ -10,8 +10,6 @@ ///allows fine tuning melee damage to vehicles per caste. var/melee_vehicle_damage = 10 var/evasion = XENO_EVASION_NONE - var/burn_damage_lower = 0 - var/burn_damage_upper = 0 var/speed = XENO_SPEED_TIER_10 diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index d1a43946ff73..277077e2e140 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -20,8 +20,6 @@ runner.speed_modifier += XENO_SPEED_SLOWMOD_TIER_5 runner.armor_modifier += XENO_ARMOR_MOD_MED runner.health_modifier += XENO_HEALTH_MOD_ACIDER - runner.damage_modifier -= XENO_DAMAGE_MOD_VERY_SMALL - runner.burn_damage_modifier += XENO_DAMAGE_MOD_VERY_VERY_SMALL runner.recalculate_everything() diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 0d4d55cf7dbc..0d22616e5f84 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -41,8 +41,6 @@ // Putting these here for attack_animal(). var/melee_damage_lower = 0 var/melee_damage_upper = 0 - var/burn_damage_lower = 0 - var/burn_damage_upper = 0 var/attacktext = "attacks" var/attack_sound = null /// Custom sound if the mob gets slashed by a xenomorph From 7f402ee77e8ad77e274b0379e802942bee644418 Mon Sep 17 00:00:00 2001 From: Lars Date: Thu, 19 Dec 2024 23:10:00 +0100 Subject: [PATCH 06/14] remove dead code --- code/modules/mob/living/carbon/xenomorph/attack_alien.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/attack_alien.dm b/code/modules/mob/living/carbon/xenomorph/attack_alien.dm index 98982c78bf2b..c6852c0e5d8c 100644 --- a/code/modules/mob/living/carbon/xenomorph/attack_alien.dm +++ b/code/modules/mob/living/carbon/xenomorph/attack_alien.dm @@ -69,8 +69,6 @@ attacking_xeno.track_slashes(attacking_xeno.caste_type) //Adds to slash stat. var/damage = rand(attacking_xeno.melee_damage_lower, attacking_xeno.melee_damage_upper) + dam_bonus var/acid_damage = 0 - if(attacking_xeno.burn_damage_lower) - acid_damage = rand(attacking_xeno.burn_damage_lower, attacking_xeno.burn_damage_upper) //Frenzy auras stack in a way, then the raw value is multipled by two to get the additive modifier if(attacking_xeno.frenzy_aura > 0) From 09d0275c8bbd5336df8fd58310af63bf70847b37 Mon Sep 17 00:00:00 2001 From: NHC <155458128+TheManWithNoHands@users.noreply.github.com> Date: Sun, 29 Dec 2024 03:54:46 +0100 Subject: [PATCH 07/14] Update code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm Co-authored-by: Drathek <76988376+Drulikar@users.noreply.github.com> --- .../mob/living/carbon/xenomorph/strains/castes/runner/acid.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index 277077e2e140..6d8bdc624918 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -1,6 +1,6 @@ /datum/xeno_strain/acider name = RUNNER_ACIDER - description = "At the cost of a little bit of your speed and all of your current abilities, you gain a considerable amount of health, some armor, and a new organ that fills with volatile acid over time up to a certain ammount. Your Tail Stab and slashes apply acid to living lifeforms that slowly burns them, and slashes against targets with acid stacks fill your acid glands. You also gain Corrosive Acid equivalent to that of a boiler that you can deploy more quickly than any other caste, at the cost of a chunk of your acid reserves with each use. Finally, after a twenty second windup, you can force your body to explode, covering everything near you with acid. The more acid you have stored, the more devastating the explosion will be, but during those twenty seconds before detonation you are slowed and give off several warning signals which give talls an opportunity to end you before you can detonate. If you successfully explode, you will reincarnate as a larva again!" + description = "At the cost of a little bit of your speed and all of your current abilities, you gain a considerable amount of health, some armor, and a new organ that fills with volatile acid over time up to a certain amount. Your Tail Stab and slashes apply acid to living lifeforms that slowly burns them, and slashes against targets with acid stacks fill your acid glands. You also gain Corrosive Acid equivalent to that of a boiler that you can deploy more quickly than any other caste, at the cost of a chunk of your acid reserves with each use. Finally, after a twenty second windup, you can force your body to explode, covering everything near you with acid. The more acid you have stored, the more devastating the explosion will be, but during those twenty seconds before detonation you are slowed and give off several warning signals which give talls an opportunity to end you before you can detonate. If you successfully explode, you will reincarnate as a larva again!" flavor_description = "This one will be the last thing they hear. A martyr." icon_state_prefix = "Acider" From b9ffea0b580da48b750fe457b8a76031e244089a Mon Sep 17 00:00:00 2001 From: Lars Date: Mon, 30 Dec 2024 08:28:26 +0100 Subject: [PATCH 08/14] requested changes --- .../carbon/xenomorph/strains/castes/runner/acid.dm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index 277077e2e140..19fca938cfa4 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -37,7 +37,7 @@ var/acid_passive_regen = 1 var/acid_gen_cap = 400 //Ammount of acid from wich passive acid generation stops - var/melt_acid_cost = 100 + var/melt_acid_cost = 50 var/list/caboom_sound = list('sound/effects/runner_charging_1.ogg','sound/effects/runner_charging_2.ogg') var/caboom_loop = 1 @@ -48,10 +48,6 @@ var/caboom_struct_acid_type = /obj/effect/xenomorph/acid /datum/behavior_delegate/runner_acider/proc/modify_acid(amount) - if(acid_amount >= acid_gen_cap) //This checks if the current acid is greater or equal to the cap, and stops/starts passive acid generation depending if it is. - acid_passive_regen = 0 - else - acid_passive_regen = 1 acid_amount += amount if(acid_amount > max_acid) acid_amount = max_acid @@ -89,7 +85,8 @@ modify_acid(acid_slash_regen_standing) /datum/behavior_delegate/runner_acider/on_life() - modify_acid(acid_passive_regen) + if(acid_amount <= acid_gen_cap) + modify_acid(acid_passive_regen) if(!bound_xeno) return if(bound_xeno.stat == DEAD) From 48af663ec0eacfdecccdf639e864ab840c5431e0 Mon Sep 17 00:00:00 2001 From: NHC <155458128+TheManWithNoHands@users.noreply.github.com> Date: Tue, 31 Dec 2024 05:21:02 +0100 Subject: [PATCH 09/14] acid.dm aktualisieren Co-authored-by: Drathek <76988376+Drulikar@users.noreply.github.com> --- .../mob/living/carbon/xenomorph/strains/castes/runner/acid.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index e016ce11f888..ad5290e1790a 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -85,7 +85,7 @@ modify_acid(acid_slash_regen_standing) /datum/behavior_delegate/runner_acider/on_life() - if(acid_amount <= acid_gen_cap) + if(acid_amount < acid_gen_cap) modify_acid(acid_passive_regen) if(!bound_xeno) return From 6e782cdd085ca2d4fa5b8f03ee98544d7201a826 Mon Sep 17 00:00:00 2001 From: Lars Date: Wed, 1 Jan 2025 18:14:01 +0100 Subject: [PATCH 10/14] Buff migth be bad --- .../living/carbon/xenomorph/strains/castes/runner/acid.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index ad5290e1790a..663df82c9e3a 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -32,12 +32,12 @@ var/max_acid = 1000 var/caboom_timer = 20 - var/acid_slash_regen_lying = 10 - var/acid_slash_regen_standing = 16 + var/acid_slash_regen_lying = 8 + var/acid_slash_regen_standing = 14 var/acid_passive_regen = 1 var/acid_gen_cap = 400 //Ammount of acid from wich passive acid generation stops - var/melt_acid_cost = 50 + var/melt_acid_cost = 75 var/list/caboom_sound = list('sound/effects/runner_charging_1.ogg','sound/effects/runner_charging_2.ogg') var/caboom_loop = 1 From b8d243882f7d7fc1c5fa52e95d859f0cafe8bba8 Mon Sep 17 00:00:00 2001 From: Lars Date: Wed, 1 Jan 2025 19:26:00 +0100 Subject: [PATCH 11/14] more reverting --- .../mob/living/carbon/xenomorph/strains/castes/runner/acid.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index 663df82c9e3a..a1083b1490c8 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -37,7 +37,7 @@ var/acid_passive_regen = 1 var/acid_gen_cap = 400 //Ammount of acid from wich passive acid generation stops - var/melt_acid_cost = 75 + var/melt_acid_cost = 100 var/list/caboom_sound = list('sound/effects/runner_charging_1.ogg','sound/effects/runner_charging_2.ogg') var/caboom_loop = 1 From e6899470cab48dc15533c1dbbb648d8b0a56a778 Mon Sep 17 00:00:00 2001 From: Lars Date: Sun, 5 Jan 2025 02:32:57 +0100 Subject: [PATCH 12/14] combat acid regen --- .../xenomorph/strains/castes/runner/acid.dm | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index a1083b1490c8..85ca20a1d6cc 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -37,6 +37,10 @@ var/acid_passive_regen = 1 var/acid_gen_cap = 400 //Ammount of acid from wich passive acid generation stops + var/combat_acid_regen = 1 //how much acid runners passivly generate per tick in combat + var/combat_gen_timer = 50 //deci-seconds acid gen is active after a slash + var/combat_gen_active = FALSE //this defines if the combat acid generation is on or off + var/melt_acid_cost = 100 var/list/caboom_sound = list('sound/effects/runner_charging_1.ogg','sound/effects/runner_charging_2.ogg') @@ -54,10 +58,14 @@ if(acid_amount < 0) acid_amount = 0 -/datum/behavior_delegate/runner_acider/append_to_stat() //The uniqe status pannel info for Acid Runner is handelt here. +/datum/behavior_delegate/runner_acider/append_to_stat() //The status pannel info for Acid Runner is handelt here. . = list() + var/combat_gen_text = "Inactive" . += "Acid: [acid_amount]/[max_acid]" . += "Acid generation cap: [acid_gen_cap]" + if(combat_gen_active) + combat_gen_text = "Active" + . += "Battle acid generation: [combat_gen_text]" if(caboom_trigger) . += "FOR THE HIVE!: in [caboom_left] seconds" @@ -84,9 +92,14 @@ return modify_acid(acid_slash_regen_standing) + addtimer(CALLBACK(src, PROC_REF(combat_gen_end)), combat_gen_timer, TIMER_UNIQUE|TIMER_STOPPABLE) //this calls for the prov to turn combat acid gen off after a set time passes + combat_gen_active = TRUE //turns combat acid regen on + /datum/behavior_delegate/runner_acider/on_life() if(acid_amount < acid_gen_cap) modify_acid(acid_passive_regen) + if(combat_gen_active == TRUE) + modify_acid(combat_acid_regen) if(!bound_xeno) return if(bound_xeno.stat == DEAD) @@ -171,3 +184,6 @@ to_chat(src, SPAN_XENOWARNING("You cannot ventcrawl when you are about to explode!")) return FALSE return ..() + +/datum/behavior_delegate/runner_acider/proc/combat_gen_end() + combat_gen_active = FALSE From cb34081bdcd8bd4f4a02b249d11c9a7a97424c9f Mon Sep 17 00:00:00 2001 From: Lars Date: Sun, 5 Jan 2025 02:52:09 +0100 Subject: [PATCH 13/14] teeny fixes --- .../mob/living/carbon/xenomorph/strains/castes/runner/acid.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index 85ca20a1d6cc..fd4a7b7ea8a5 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -38,7 +38,7 @@ var/acid_gen_cap = 400 //Ammount of acid from wich passive acid generation stops var/combat_acid_regen = 1 //how much acid runners passivly generate per tick in combat - var/combat_gen_timer = 50 //deci-seconds acid gen is active after a slash + var/combat_gen_timer = 30 //deci-seconds acid gen is active after a slash var/combat_gen_active = FALSE //this defines if the combat acid generation is on or off var/melt_acid_cost = 100 @@ -92,7 +92,7 @@ return modify_acid(acid_slash_regen_standing) - addtimer(CALLBACK(src, PROC_REF(combat_gen_end)), combat_gen_timer, TIMER_UNIQUE|TIMER_STOPPABLE) //this calls for the prov to turn combat acid gen off after a set time passes + addtimer(CALLBACK(src, PROC_REF(combat_gen_end)), combat_gen_timer, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_STOPPABLE) //this calls for the proc to turn combat acid gen off after a set time passes combat_gen_active = TRUE //turns combat acid regen on /datum/behavior_delegate/runner_acider/on_life() From 67e1110f23ec00648b52bccd97e2251c8bc9f964 Mon Sep 17 00:00:00 2001 From: Lars Date: Sun, 5 Jan 2025 18:41:43 +0100 Subject: [PATCH 14/14] woops, forgot to update description --- .../mob/living/carbon/xenomorph/strains/castes/runner/acid.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm index fd4a7b7ea8a5..cbf6ada78b20 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/runner/acid.dm @@ -1,6 +1,6 @@ /datum/xeno_strain/acider name = RUNNER_ACIDER - description = "At the cost of a little bit of your speed and all of your current abilities, you gain a considerable amount of health, some armor, and a new organ that fills with volatile acid over time up to a certain amount. Your Tail Stab and slashes apply acid to living lifeforms that slowly burns them, and slashes against targets with acid stacks fill your acid glands. You also gain Corrosive Acid equivalent to that of a boiler that you can deploy more quickly than any other caste, at the cost of a chunk of your acid reserves with each use. Finally, after a twenty second windup, you can force your body to explode, covering everything near you with acid. The more acid you have stored, the more devastating the explosion will be, but during those twenty seconds before detonation you are slowed and give off several warning signals which give talls an opportunity to end you before you can detonate. If you successfully explode, you will reincarnate as a larva again!" + description = "At the cost of a little bit of your speed and all of your current abilities, you gain a considerable amount of health, some armor, and a new organ that fills with volatile acid over time up to a certain amount. Your Tail Stab and slashes apply acid to living lifeforms that slowly burns them, and slashes against targets with acid stacks fill your acid glands. As you are in combat, your glands become active and produce passivly more acid until the figth is over. You also gain Corrosive Acid equivalent to that of a boiler that you can deploy more quickly than any other caste, at the cost of a chunk of your acid reserves with each use. Finally, after a twenty second windup, you can force your body to explode, covering everything near you with acid. The more acid you have stored, the more devastating the explosion will be, but during those twenty seconds before detonation you are slowed and give off several warning signals which give talls an opportunity to end you before you can detonate. If you successfully explode, you will reincarnate as a larva again!" flavor_description = "This one will be the last thing they hear. A martyr." icon_state_prefix = "Acider"