added scaling damage to silence and snare
This commit is contained in:
parent
ed6b69877a
commit
0373b607cf
16
CHANGELOG.md
16
CHANGELOG.md
@ -35,13 +35,27 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|||||||
Now restores Red life and Blue life based on respective red and blue damage
|
Now restores Red life and Blue life based on respective red and blue damage
|
||||||
Recharge value calculated at 85% multiplier with red and blue damage
|
Recharge value calculated at 85% multiplier with red and blue damage
|
||||||
|
|
||||||
|
Silence
|
||||||
|
No longer Stun + GB (already exists as debuff BB)
|
||||||
|
Now also deals damage amount of 55% base blue damage
|
||||||
|
This damage amount does 45% more damage per blue skill blocked
|
||||||
|
Maximum = (0.55)(1.35)*base_blue_damage
|
||||||
|
Cooldown changed 1T -> 2T
|
||||||
|
Debuff duration increased 2T -> 3T
|
||||||
|
Snare
|
||||||
|
Now also deals damage amount of 40% base blue damage
|
||||||
|
This damage amount does 45% more damage per red skill blocked
|
||||||
|
Maximum = (0.40)(1.35)*base_red_damage
|
||||||
|
Cooldown changed 1T -> 2T
|
||||||
|
Debuff duration increased 2T -> 3T
|
||||||
|
|
||||||
|
|
||||||
Switch clutch with taunt
|
Switch clutch with taunt
|
||||||
Clutch now GR + Block (was GR + Buff)
|
Clutch now GR + Block (was GR + Buff)
|
||||||
Taunt now GR + Buff
|
Taunt now GR + Buff
|
||||||
No longer self-target only
|
No longer self-target only
|
||||||
|
|
||||||
Silence no longer Stun + GB (already exists as debuff BB)
|
|
||||||
Hex is now Stun + GB (was Stun + RB)
|
Hex is now Stun + GB (was Stun + RB)
|
||||||
Banish is now Stun + RB (was Stun + RG) for rng theme
|
Banish is now Stun + RB (was Stun + RG) for rng theme
|
||||||
Throw is now Stun + RG (was Stun + GG)
|
Throw is now Stun + RG (was Stun + GG)
|
||||||
|
|||||||
0
WORKLOG.md
Normal file → Executable file
0
WORKLOG.md
Normal file → Executable file
@ -239,7 +239,9 @@ function getCombatSequence(event) {
|
|||||||
&& event[1].skill === 'Decay' && event[1].effect === 'Wither') return ['POST_SKILL'];
|
&& event[1].skill === 'Decay' && event[1].effect === 'Wither') return ['POST_SKILL'];
|
||||||
|
|
||||||
if (['Damage'].includes(event[0])
|
if (['Damage'].includes(event[0])
|
||||||
&& event[1].skill === 'Chaos' && event[1].colour === 'RedDamage') return ['POST_SKILL'];
|
&& ((event[1].skill === 'Chaos' && event[1].colour === 'RedDamage')
|
||||||
|
|| event[1].skill === 'Silence'
|
||||||
|
|| event[1].skill === 'Snare')) return ['POST_SKILL'];
|
||||||
|
|
||||||
if (['Ko'].includes(event[0])
|
if (['Ko'].includes(event[0])
|
||||||
|| (event[1].skill === 'Throw' && event[1].effect === 'Vulnerable')) return ['POST_SKILL'];
|
|| (event[1].skill === 'Throw' && event[1].effect === 'Vulnerable')) return ['POST_SKILL'];
|
||||||
|
|||||||
@ -570,6 +570,11 @@ impl Skill {
|
|||||||
|
|
||||||
// Stun Base
|
// Stun Base
|
||||||
Skill::Sleep => 240, //Green dmg (heal)
|
Skill::Sleep => 240, //Green dmg (heal)
|
||||||
|
|
||||||
|
// Debuff Base
|
||||||
|
Skill::Silence => 55, // Deals more per blue skill on target
|
||||||
|
Skill::Snare => 40, // Deals more per blue skill on target
|
||||||
|
|
||||||
// Others
|
// Others
|
||||||
Skill::CorruptionTick => 80,
|
Skill::CorruptionTick => 80,
|
||||||
Skill::DecayTick => 25,
|
Skill::DecayTick => 25,
|
||||||
@ -597,7 +602,7 @@ impl Skill {
|
|||||||
Skill::Sleep => 3,
|
Skill::Sleep => 3,
|
||||||
|
|
||||||
Skill::Throw => 2,
|
Skill::Throw => 2,
|
||||||
Skill::Snare => 2,
|
Skill::Snare => 3,
|
||||||
|
|
||||||
Skill::Taunt => 1,
|
Skill::Taunt => 1,
|
||||||
Skill::Empower => 2,
|
Skill::Empower => 2,
|
||||||
@ -612,7 +617,7 @@ impl Skill {
|
|||||||
Skill::Haste => 2,
|
Skill::Haste => 2,
|
||||||
|
|
||||||
Skill::Amplify => 2,
|
Skill::Amplify => 2,
|
||||||
Skill::Silence => 2,
|
Skill::Silence => 3,
|
||||||
|
|
||||||
Skill::Hostility => 2, // Primary Buff
|
Skill::Hostility => 2, // Primary Buff
|
||||||
Skill::Corrupt => 2, // Primary Buff
|
Skill::Corrupt => 2, // Primary Buff
|
||||||
@ -654,7 +659,7 @@ impl Skill {
|
|||||||
Skill::Block => None, // reduce damage
|
Skill::Block => None, // reduce damage
|
||||||
Skill::Parry => None, // avoid all damage
|
Skill::Parry => None, // avoid all damage
|
||||||
Skill::Riposte => None, // used on parry
|
Skill::Riposte => None, // used on parry
|
||||||
Skill::Snare => Some(1),
|
Skill::Snare => Some(2),
|
||||||
Skill::Stun => Some(1),
|
Skill::Stun => Some(1),
|
||||||
Skill::Heal => None,
|
Skill::Heal => None,
|
||||||
Skill::Triage => None, // hot
|
Skill::Triage => None, // hot
|
||||||
@ -671,7 +676,7 @@ impl Skill {
|
|||||||
Skill::Curse => Some(1),
|
Skill::Curse => Some(1),
|
||||||
Skill::Empower => Some(1),
|
Skill::Empower => Some(1),
|
||||||
Skill::Shield => None,
|
Skill::Shield => None,
|
||||||
Skill::Silence => Some(1),
|
Skill::Silence => Some(2),
|
||||||
Skill::Purify => None,
|
Skill::Purify => None,
|
||||||
Skill::Purge => None,
|
Skill::Purge => None,
|
||||||
Skill::Banish => Some(1),
|
Skill::Banish => Some(1),
|
||||||
@ -980,6 +985,21 @@ fn riposte(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill
|
|||||||
fn snare(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill: Skill) -> Resolutions {
|
fn snare(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill: Skill) -> Resolutions {
|
||||||
let snare = CrypEffect::new(Effect::Snare, skill.duration());
|
let snare = CrypEffect::new(Effect::Snare, skill.duration());
|
||||||
results.push(Resolution::new(source, target).event(target.add_effect(skill, snare)));
|
results.push(Resolution::new(source, target).event(target.add_effect(skill, snare)));
|
||||||
|
|
||||||
|
let mut s_multi: u64 = 100;
|
||||||
|
for cs in target.skills.iter() {
|
||||||
|
s_multi += match cs.skill.category() {
|
||||||
|
Category::Red => 45,
|
||||||
|
_ => 0,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
let amount = source.red_damage().pct(skill.multiplier()).pct(s_multi);
|
||||||
|
target.deal_red_damage(skill, amount)
|
||||||
|
.into_iter()
|
||||||
|
.for_each(|e| results.push(Resolution::new(source, target).event(e)));
|
||||||
|
|
||||||
|
|
||||||
return results;
|
return results;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1210,6 +1230,20 @@ fn shield(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill:
|
|||||||
fn silence(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill: Skill) -> Resolutions {
|
fn silence(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill: Skill) -> Resolutions {
|
||||||
let silence = CrypEffect::new(Effect::Silence, skill.duration());
|
let silence = CrypEffect::new(Effect::Silence, skill.duration());
|
||||||
results.push(Resolution::new(source, target).event(target.add_effect(skill, silence)));
|
results.push(Resolution::new(source, target).event(target.add_effect(skill, silence)));
|
||||||
|
|
||||||
|
let mut s_multi: u64 = 100;
|
||||||
|
for cs in target.skills.iter() {
|
||||||
|
s_multi += match cs.skill.category() {
|
||||||
|
Category::Blue => 45,
|
||||||
|
_ => 0,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
let amount = source.blue_damage().pct(skill.multiplier()).pct(s_multi);
|
||||||
|
target.deal_blue_damage(skill, amount)
|
||||||
|
.into_iter()
|
||||||
|
.for_each(|e| results.push(Resolution::new(source, target).event(e)));
|
||||||
|
|
||||||
return results;
|
return results;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -358,9 +358,9 @@ fn get_combos() -> Vec<Combo> {
|
|||||||
Combo { units: vec![Var::Buff, Var::Green, Var::Blue], var: Var::Curse }, // Needs a buff
|
Combo { units: vec![Var::Buff, Var::Green, Var::Blue], var: Var::Curse }, // Needs a buff
|
||||||
Combo { units: vec![Var::Buff, Var::Red, Var::Blue], var: Var::Haste }, // Needs a buff
|
Combo { units: vec![Var::Buff, Var::Red, Var::Blue], var: Var::Haste }, // Needs a buff
|
||||||
|
|
||||||
Combo { units: vec![Var::Debuff, Var::Red, Var::Red], var: Var::Snare }, // Dmg for disabled red
|
Combo { units: vec![Var::Debuff, Var::Red, Var::Red], var: Var::Snare }, // disable red and dmg
|
||||||
Combo { units: vec![Var::Debuff, Var::Green, Var::Green], var: Var::Purge }, // Needs a buff
|
Combo { units: vec![Var::Debuff, Var::Green, Var::Green], var: Var::Purge }, // disable green and remove debuff
|
||||||
Combo { units: vec![Var::Debuff, Var::Blue, Var::Blue], var: Var::Silence }, // Dmg for disabled blue
|
Combo { units: vec![Var::Debuff, Var::Blue, Var::Blue], var: Var::Silence }, // disable blue and dmg
|
||||||
Combo { units: vec![Var::Debuff, Var::Red, Var::Green], var: Var::Slow }, // Needs a buff
|
Combo { units: vec![Var::Debuff, Var::Red, Var::Green], var: Var::Slow }, // Needs a buff
|
||||||
Combo { units: vec![Var::Debuff, Var::Green, Var::Blue], var: Var::Decay },
|
Combo { units: vec![Var::Debuff, Var::Green, Var::Blue], var: Var::Decay },
|
||||||
Combo { units: vec![Var::Debuff, Var::Red, Var::Blue], var: Var::Invert },
|
Combo { units: vec![Var::Debuff, Var::Red, Var::Blue], var: Var::Invert },
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user