Skip to content

Commit

Permalink
Oppressor cooldown changes (#5154)
Browse files Browse the repository at this point in the history
# About the pull request

Lowers the oppressor tail_abudct (the hook) to 15 seconds of cooldown
and makes the windup faster.

Makes punch shave off cooldown from the abduct for 5 seconds 

All have been tested but i would like this to get testmerged first so i
can actually see the results in game, nothing is set in stone and i want
to edit this further so the cd / cd reduction isnt too powerful, they're
just numbers ive decided were good enough to atleast make the caste
decent for the time being.


# Explain why it's good for the game

Oppressor has been a snoozer strain for a while now where you cast an
ability, and IF it hits you get to play the game otherwise you wait 20
seconds and thats just not fun. Especially for what the ability is, a 20
second cooldown is not worth it.

I've talked with a few people that all agree that the downtime for what
you "could" do with oppressor is not worth it. And i have to agree with
them, the caste feels boring to play and its basically half dead due to
the amnout of downtime you have between abilities compared to how
everything else works. The idea of this is to make it so its not busted
out of its brain but atleast not an observer++ strain so you can feel
more involved in the gameplay.




# Testing Photographs and Procedure
</details>


# Changelog



:cl:
balance: Oppressor tail abduct changed to 15 seconds and lowers the
windup to 7 deciseconds
balance: Changes around the punch effect so that instead of having to
meet demonic standards, you only need to punch to lower your tail/hook
on oppressor.
fix: You will now automatically punch chest if the target you are aiming
at is delimbed instead of doing nothing
/:cl:

---------

Co-authored-by: InsaneRed <[email protected]>
Co-authored-by: Birdtalon <[email protected]>
  • Loading branch information
3 people committed Dec 8, 2023
1 parent 98f032b commit dc234c9
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -124,12 +124,12 @@
macro_path = /datum/action/xeno_action/verb/verb_prae_abduct
ability_primacy = XENO_PRIMARY_ACTION_1
action_type = XENO_ACTION_CLICK
xeno_cooldown = 180
xeno_cooldown = 15 SECONDS
plasma_cost = 180

// Config
var/max_distance = 7
var/windup = 8
var/windup = 7 DECISECONDS

/datum/action/xeno_action/activable/oppressor_punch
name = "Dislocate"
Expand Down Expand Up @@ -169,7 +169,7 @@

// Config
var/fling_dist = 3
var/windup = 2
var/windup = 2 DECISECONDS

////////// Dancer Abilities

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -386,7 +386,7 @@
var/obj/limb/target_limb = target_carbon.get_limb(check_zone(oppressor_user.zone_selected))

if (ishuman(target_carbon) && (!target_limb || (target_limb.status & LIMB_DESTROYED)))
return
target_limb = target_carbon.get_limb("chest")

if (!check_and_use_plasma_owner())
return
Expand All @@ -412,19 +412,18 @@

addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(unroot_human), target_carbon, TRAIT_SOURCE_ABILITY("Oppressor Punch")), get_xeno_stun_duration(target_carbon, 1.2 SECONDS))
to_chat(target_carbon, SPAN_XENOHIGHDANGER("[oppressor_user] has pinned you to the ground! You cannot move!"))

var/datum/action/xeno_action/activable/prae_abduct/abduct_action = get_xeno_action_by_type(oppressor_user, /datum/action/xeno_action/activable/prae_abduct)
var/datum/action/xeno_action/activable/tail_lash/tail_lash_action = get_xeno_action_by_type(oppressor_user, /datum/action/xeno_action/activable/tail_lash)
if(abduct_action && abduct_action.action_cooldown_check())
abduct_action.reduce_cooldown(5 SECONDS)
if(tail_lash_action && tail_lash_action.action_cooldown_check())
tail_lash_action.reduce_cooldown(5 SECONDS)
else
target_carbon.apply_armoured_damage(get_xeno_damage_slash(target_carbon, damage), ARMOR_MELEE, BRUTE, target_limb? target_limb.name : "chest")
step_away(target_carbon, oppressor_user, 2)


shake_camera(target_carbon, 2, 1)
var/datum/action/xeno_action/activable/prae_abduct/abduct_action = get_xeno_action_by_type(oppressor_user, /datum/action/xeno_action/activable/prae_abduct)
var/datum/action/xeno_action/activable/tail_lash/tail_lash_action = get_xeno_action_by_type(oppressor_user, /datum/action/xeno_action/activable/tail_lash)
if(abduct_action && !abduct_action.action_cooldown_check())
abduct_action.reduce_cooldown(5 SECONDS)
if(tail_lash_action && !tail_lash_action.action_cooldown_check())
tail_lash_action.reduce_cooldown(5 SECONDS)

apply_cooldown()
return ..()
Expand Down

0 comments on commit dc234c9

Please sign in to comment.