From c3c49c1229cd69ffa7ffcd2b1f4b0df9ea4a42dc Mon Sep 17 00:00:00 2001 From: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com> Date: Mon, 18 Jan 2021 19:24:07 +0000 Subject: [PATCH] [Ready] [Fully Modular] Xenomorph Balancing - Buffs & Speeding Tickets (#2180) * Xenomorph balancing, take one. Changes the speed of xenomorphs, especially the Queen, to be much faster. Hunters now have half the speed. All Xenomorphs have a health buff, some more than others. Damage has increased for xenomorphs to make them more deadly, as melee armour makes xenomorphs laughably ineffective. Hunters and sentinels hit faster, making hit and run less effective. Praetorians and Queens are now much more intimidating, but attack slower. * Update xenomorph_balance.dm * Praetorian & Queen health nealth. Alien Infestation now spawns 2-3 Larva. --- code/modules/events/alien_infestation.dm | 6 +- .../xenomorph/code/xenomorph_balance.dm | 76 +++++++++++++++++++ modular_skyrat/modules/xenomorph/readme.md | 26 +++++++ tgstation.dme | 1 + 4 files changed, 107 insertions(+), 2 deletions(-) create mode 100644 modular_skyrat/modules/xenomorph/code/xenomorph_balance.dm create mode 100644 modular_skyrat/modules/xenomorph/readme.md diff --git a/code/modules/events/alien_infestation.dm b/code/modules/events/alien_infestation.dm index aa2ac72bca6..1df3ade178d 100644 --- a/code/modules/events/alien_infestation.dm +++ b/code/modules/events/alien_infestation.dm @@ -19,8 +19,10 @@ /datum/round_event/ghost_role/alien_infestation announceWhen = 400 - - minimum_required = 1 + //SKYRAT EDIT CHANGE BEGIN + //minimum_required = 1 - SKYRAT EDIT - ORIGINAL + minimum_required = 2 + //SKYRAT EDIT CHANGE END role_name = "alien larva" // 50% chance of being incremented by one diff --git a/modular_skyrat/modules/xenomorph/code/xenomorph_balance.dm b/modular_skyrat/modules/xenomorph/code/xenomorph_balance.dm new file mode 100644 index 00000000000..629be350049 --- /dev/null +++ b/modular_skyrat/modules/xenomorph/code/xenomorph_balance.dm @@ -0,0 +1,76 @@ +///////////// SPEED CHANGES ///////////// +/datum/config_entry/keyed_list/multiplicative_movespeed + key_mode = KEY_MODE_TYPE + value_mode = VALUE_MODE_NUM + config_entry_value = list( //DEFAULTS + /mob/living/carbon/alien/humanoid/drone = -0.2, + /mob/living/carbon/alien/humanoid/hunter = -0.5, + /mob/living/carbon/alien/humanoid/royal/praetorian = 1, + /mob/living/carbon/alien/humanoid/royal/queen = 1.5 + ) +// TG values +// • Hunter -1 +// • Drone 0 +// • Sentinal 0 +// • Praetorian 1 +// • Queen 3 +// Hunters were so fast you were fighting BYOND to be able to click on them, not the hunter itself. +// Praetorians will not receive a speed buff. They instead get a huge health buff and high damage, at the minor cost of increased click delay. +// Queen gets a speed boost, health buff and very high damage. +// Drones will be made very slightly faster than humans. +///////////// SPEED CHANGES ///////////// +/////////////////////////////////////////// +///////////// XENO QUEEN ///////////// +/mob/living/carbon/alien/humanoid/royal/queen + maxHealth = 500 //TG: 400 + health = 500 //TG: 400 + melee_damage_lower = 50 //TG: 20 + melee_damage_upper = 50 //TG: 20 + next_move_modifier = 0.75 +///////////// XENO QUEEN ///////////// +/////////////////////////////////////////// +///////////// PRAETORIAN ///////////// +/mob/living/carbon/alien/humanoid/royal/praetorian + maxHealth = 350 //TG: 250 + health = 350 //TG: 250 + melee_damage_lower = 40 //TG: 20 + melee_damage_upper = 40 //TG: 20 + next_move_modifier = 0.75 +///////////// PRAETORIAN ///////////// +/////////////////////////////////////////// +///////////// SENTINAL ///////////// +/mob/living/carbon/alien/humanoid/sentinel + maxHealth = 200 //TG: 150 + health = 200 //TG: 150 + melee_damage_lower = 25 //TG: 20 + melee_damage_upper = 25 //TG: 20 + next_move_modifier = 0.75 +///////////// SENTINAL ///////////// +/////////////////////////////////////////// +///////////// HUNTER ///////////// +/mob/living/carbon/alien/humanoid/hunter + maxHealth = 150 //TG: 125 + health = 150 //TG: 125 + melee_damage_lower = 25 //TG: 20 + melee_damage_upper = 25 //TG: 20 + next_move_modifier = 0.75 +///////////// HUNTER ///////////// +/////////////////////////////////////////// +///////////// XENO DRONE ///////////// +/mob/living/carbon/alien/humanoid/drone + maxHealth = 150 //TG: 125 + health = 150 //TG: 125 + melee_damage_lower = 20 //TG: 20 + melee_damage_upper = 20 //TG: 20 + next_move_modifier = 0.75 +///////////// XENO DRONE ///////////// +/////////////////////////////////////////// +///////////// FLAVOR TEXT ///////////// +/mob/living/carbon/alien/humanoid/Login() + . = ..() + if(!. || !client) + return FALSE + to_chat(src, "As an adult alien, you have a fair amount of intelligence. You have some familiarity with your enemy and know where's where on the station.") + to_chat(src, "Do not instantly attack the AI unless:
• Enemy threat is overwhelming (IE: multiple combat mechs)
• The AI has spotted you
• You wish to build a nest in their core.
") +///////////// FLAVOR TEXT ///////////// +/////////////////////////////////////////// diff --git a/modular_skyrat/modules/xenomorph/readme.md b/modular_skyrat/modules/xenomorph/readme.md new file mode 100644 index 00000000000..fde7f97baef --- /dev/null +++ b/modular_skyrat/modules/xenomorph/readme.md @@ -0,0 +1,26 @@ +## Title: Xenomorph + +MODULE ID: XENOMORPH + +### Description: + +Changes to the xenomorph antagonist goes here. + +### TG Proc Changes: + +- N/A + +### Defines: + +- N/A +### Master file additions + +- N/A + +### Included files that are not contained in this module: + +- N/A + +### Credits: + +Floof Ball \ No newline at end of file diff --git a/tgstation.dme b/tgstation.dme index c72134e3ab0..e4ccc0989fa 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3746,4 +3746,5 @@ #include "modular_skyrat\modules\verbs\code\modules\client\verbs\looc.dm" #include "modular_skyrat\modules\verbs\code\modules\mob\say.dm" #include "modular_skyrat\modules\verbs\code\modules\mob\subtle.dm" +#include "modular_skyrat\modules\xenomorph\code\xenomorph_balance.dm" // END_INCLUDE