Number tweaking

This commit is contained in:
Sam 2023-03-26 19:50:42 -04:00
parent 124c8cfb65
commit ef7b400cca
75 changed files with 289 additions and 299 deletions

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 16,
damage: 12,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -12,11 +12,11 @@ ComboMelee2(
angle: 15.0,
),
buildup_duration: 0.2,
swing_duration: 0.1,
swing_duration: 0.05,
hit_timing: 0.5,
recover_duration: 0.1,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 12,
damage: 9,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -12,11 +12,11 @@ ComboMelee2(
angle: 60.0,
),
buildup_duration: 0.05,
swing_duration: 0.1,
swing_duration: 0.05,
hit_timing: 0.5,
recover_duration: 0.1,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -3,30 +3,13 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 6,
poise: 3,
damage: 5,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
),
buildup_duration: 0.1,
swing_duration: 0.05,
hit_timing: 0.5,
recover_duration: 0.2,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 6,
poise: 3,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
),
buildup_duration: 0.1,
swing_duration: 0.05,
@ -34,7 +17,24 @@ ComboMelee2(
recover_duration: 0.1,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 7,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 90.0,
),
buildup_duration: 0.1,
swing_duration: 0.05,
hit_timing: 0.5,
recover_duration: 0.05,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 7.5,
energy_cost_per_strike: 2.5,
auto_progress: true,
)

View File

@ -4,8 +4,8 @@ SelfBuff(
recover_duration: 0.3,
buff_kind: Hastened,
buff_strength: 0.25,
buff_duration: Some(30.0),
energy_cost: 30,
buff_duration: Some(20.0),
energy_cost: 20,
meta: (
requirements: (stance: Some(Sword(Agile))),
),

View File

@ -3,32 +3,32 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 3,
poise: 2,
damage: 2,
poise: 5,
knockback: 0,
energy_regen: 5,
),
range: 3.0,
angle: 45.0,
),
buildup_duration: 0.1,
buildup_duration: 0.05,
swing_duration: 0.05,
hit_timing: 0.5,
recover_duration: 0.1,
recover_duration: 0.05,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 6,
poise: 3,
damage: 3,
poise: 5,
knockback: 0,
energy_regen: 5,
energy_regen: 10,
),
range: 3.0,
angle: 45.0,
),
buildup_duration: 0.1,
buildup_duration: 0.05,
swing_duration: 0.05,
hit_timing: 0.5,
recover_duration: 0.1,

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 12,
damage: 8,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -23,7 +23,7 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 0,
meta: (
init_event: Some(EnterStance(Sword(Agile))),
),

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 16,
damage: 12,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -14,9 +14,9 @@ ComboMelee2(
buildup_duration: 0.05,
swing_duration: 0.05,
hit_timing: 0.5,
recover_duration: 0.45,
recover_duration: 0.3,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 5,
)

View File

@ -4,7 +4,7 @@ RapidMelee(
recover_duration: 0.1,
melee_constructor: (
kind: Slash(
damage: 8,
damage: 10,
poise: 3,
knockback: 0,
energy_regen: 0,
@ -12,7 +12,7 @@ RapidMelee(
range: 6.0,
angle: 10.0,
),
energy_cost: 10,
energy_cost: 5,
max_strikes: Some(3),
move_modifier: 0.35,
ori_modifier: 0.25,

View File

@ -4,7 +4,7 @@ RapidMelee(
recover_duration: 0.1,
melee_constructor: (
kind: Slash(
damage: 2,
damage: 3,
poise: 0,
knockback: 0,
energy_regen: 0,
@ -12,7 +12,7 @@ RapidMelee(
range: 3.0,
angle: 10.0,
),
energy_cost: 2,
energy_cost: 1,
max_strikes: Some(20),
move_modifier: 0.6,
ori_modifier: 0.4,

View File

@ -1,6 +1,6 @@
RapidMelee(
buildup_duration: 0.2,
swing_duration: 0.15,
swing_duration: 0.2,
recover_duration: 0.3,
melee_constructor: (
kind: Slash(

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 8,
damage: 12,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -11,19 +11,19 @@ ComboMelee2(
range: 5.0,
angle: 20.0,
),
buildup_duration: 0.2,
buildup_duration: 0.15,
swing_duration: 0.05,
hit_timing: 0.5,
recover_duration: 0.05,
recover_duration: 0.1,
movement: (
buildup: None,
buildup: Some(Forward(1.0)),
swing: Some(Forward(3.0)),
recover: Some(Forward(2.0)),
recover: Some(Forward(1.0)),
),
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
meta: (
init_event: Some(EnterStance(Sword(Agile))),
),

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Stab(
damage: 12,
damage: 9,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -14,14 +14,14 @@ ComboMelee2(
buildup_duration: 0.1,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.25,
recover_duration: 0.2,
ori_modifier: 0.6,
movement: (
buildup: Some(Forward(2.0)),
buildup: Some(Forward(3.0)),
swing: Some(Forward(2.0)),
recover: None,
),
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -11,12 +11,12 @@ ComboMelee2(
range: 4.0,
angle: 15.0,
),
buildup_duration: 0.35,
buildup_duration: 0.4,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.2,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -18,5 +18,5 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -4,12 +4,12 @@ ComboMelee2(
melee_constructor: (
kind: Slash(
damage: 10,
poise: 3,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
),
buildup_duration: 0.15,
swing_duration: 0.1,
@ -20,13 +20,13 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 10,
poise: 3,
damage: 14,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
),
buildup_duration: 0.15,
swing_duration: 0.1,
@ -35,6 +35,6 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 7.5,
energy_cost_per_strike: 2.5,
auto_progress: true,
)

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 5,
damage: 4,
poise: 5,
knockback: 0,
energy_regen: 5,
@ -20,7 +20,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 10,
damage: 7,
poise: 5,
knockback: 0,
energy_regen: 10,

View File

@ -18,5 +18,5 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 5,
)

View File

@ -23,5 +23,5 @@ ComboMelee2(
),
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -9,10 +9,10 @@ ChargedMelee(
energy_regen: 0,
),
scaled: Some(Stab(
damage: 20,
poise: 10,
damage: 15,
poise: 5,
knockback: 0,
energy_regen: 20,
energy_regen: 15,
)),
range: 4.5,
angle: 10.0,

View File

@ -4,8 +4,8 @@ SelfBuff(
recover_duration: 0.3,
buff_kind: Reckless,
buff_strength: 0.25,
buff_duration: Some(30.0),
energy_cost: 30,
buff_duration: Some(20.0),
energy_cost: 20,
meta: (
requirements: (stance: Some(Sword(Cleaving))),
),

View File

@ -13,7 +13,7 @@ RapidMelee(
angle: 360.0,
multi_target: Some(Normal),
),
energy_cost: 5,
energy_cost: 3.33,
max_strikes: Some(6),
move_modifier: 0.8,
ori_modifier: 1.0,

View File

@ -3,21 +3,21 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 19,
damage: 24,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 4.0,
angle: 25.0,
angle: 15.0,
multi_target: Some(Normal),
),
buildup_duration: 0.35,
swing_duration: 0.1,
buildup_duration: 0.5,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.2,
recover_duration: 0.25,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -3,21 +3,21 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 15,
damage: 18,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.0,
angle: 75.0,
angle: 60.0,
multi_target: Some(Normal),
),
buildup_duration: 0.1,
swing_duration: 0.1,
buildup_duration: 0.15,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.2,
recover_duration: 0.25,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -4,39 +4,39 @@ ComboMelee2(
melee_constructor: (
kind: Slash(
damage: 10,
poise: 3,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 60.0,
angle: 90.0,
multi_target: Some(Normal),
),
buildup_duration: 0.15,
swing_duration: 0.1,
buildup_duration: 0.2,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.2,
recover_duration: 0.25,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 10,
poise: 3,
damage: 14,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 60.0,
angle: 90.0,
multi_target: Some(Normal),
),
buildup_duration: 0.15,
swing_duration: 0.1,
buildup_duration: 0.2,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.1,
recover_duration: 0.15,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 7.5,
energy_cost_per_strike: 2.5,
auto_progress: true,
)

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 5,
damage: 4,
poise: 5,
knockback: 0,
energy_regen: 5,
@ -13,25 +13,25 @@ ComboMelee2(
multi_target: Some(Normal),
),
buildup_duration: 0.2,
swing_duration: 0.05,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.1,
recover_duration: 0.15,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 10,
damage: 7,
poise: 5,
knockback: 0,
energy_regen: 5,
energy_regen: 10,
),
range: 3.0,
angle: 45.0,
multi_target: Some(Normal),
),
buildup_duration: 0.15,
swing_duration: 0.1,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.25,
ori_modifier: 0.6,

View File

@ -1,5 +1,5 @@
DiveMelee(
energy_cost: 15,
energy_cost: 5,
vertical_speed: 5,
buildup_duration: Some(0.1),
movement_duration: 5,
@ -7,13 +7,13 @@ DiveMelee(
recover_duration: 0.3,
melee_constructor: (
kind: Slash(
damage: 5,
damage: 10,
poise: 5,
knockback: 0,
energy_regen: 0,
),
scaled: Some(Slash(
damage: 10,
damage: 15,
poise: 10,
knockback: 0,
energy_regen: 0,
@ -22,7 +22,7 @@ DiveMelee(
angle: 15.0,
multi_target: Some(Normal),
),
max_scaling: 10.0,
max_scaling: 6.0,
meta: (
init_event: Some(EnterStance(Sword(Cleaving))),
),

View File

@ -9,15 +9,15 @@ ComboMelee2(
energy_regen: 0,
),
range: 3.5,
angle: 30.0,
angle: 20.0,
multi_target: Some(Normal),
),
buildup_duration: 0.05,
swing_duration: 0.05,
buildup_duration: 0.1,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.7,
recover_duration: 0.8,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 5,
)

View File

@ -3,26 +3,26 @@ ComboMelee2(
(
melee_constructor: (
kind: Stab(
damage: 14,
damage: 18,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 5.0,
angle: 7.5,
angle: 5.0,
multi_target: Some(Normal),
),
buildup_duration: 0.15,
swing_duration: 0.1,
buildup_duration: 0.2,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.4,
recover_duration: 0.5,
ori_modifier: 0.6,
movement: (
buildup: Some(Forward(2.0)),
swing: Some(Forward(2.0)),
buildup: Some(Forward(1.5)),
swing: Some(Forward(1.5)),
recover: None,
),
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -4,7 +4,7 @@ RapidMelee(
recover_duration: 0.4,
melee_constructor: (
kind: Slash(
damage: 12,
damage: 14,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -13,7 +13,7 @@ RapidMelee(
angle: 360.0,
multi_target: Some(Normal),
),
energy_cost: 10,
energy_cost: 5,
max_strikes: Some(2),
ori_modifier: 1.0,
move_modifier: 1.0,

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 15,
damage: 18,
poise: 5,
knockback: 0,
energy_regen: 5,
@ -19,7 +19,7 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 20,
energy_cost_per_strike: 10,
meta: (
requirements: (stance: Some(Sword(Crippling))),
),

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 18,
damage: 20,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -14,15 +14,15 @@ ComboMelee2(
kind: Bleeding,
dur_secs: 8.0,
strength: DamageFraction(0.25),
chance: 0.25,
chance: 1.0,
))),
),
buildup_duration: 0.35,
buildup_duration: 0.4,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.2,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 14,
damage: 15,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -14,7 +14,7 @@ ComboMelee2(
kind: Bleeding,
dur_secs: 8.0,
strength: DamageFraction(0.25),
chance: 0.25,
chance: 1.0,
))),
),
buildup_duration: 0.1,
@ -24,5 +24,5 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -4,17 +4,17 @@ ComboMelee2(
melee_constructor: (
kind: Slash(
damage: 7,
poise: 3,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
damage_effect: Some(Buff((
kind: Bleeding,
dur_secs: 8.0,
strength: DamageFraction(0.25),
chance: 0.25,
chance: 1.0,
))),
),
buildup_duration: 0.15,
@ -26,18 +26,18 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 7,
poise: 3,
damage: 11,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
damage_effect: Some(Buff((
kind: Bleeding,
dur_secs: 8.0,
strength: DamageFraction(0.25),
chance: 0.25,
chance: 1.0,
))),
),
buildup_duration: 0.15,
@ -47,6 +47,6 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 7.5,
energy_cost_per_strike: 2.5,
auto_progress: true,
)

View File

@ -9,10 +9,10 @@ ChargedMelee(
energy_regen: 0,
),
scaled: Some(Slash(
damage: 12,
damage: 15,
poise: 5,
knockback: 0,
energy_regen: 15,
energy_regen: 10,
)),
damage_effect: Some(BuffsVulnerable(0.5, Bleeding)),
range: 4.5,

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 5,
damage: 4,
poise: 5,
knockback: 0,
energy_regen: 5,
@ -21,7 +21,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 10,
damage: 7,
poise: 5,
knockback: 0,
energy_regen: 10,

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 15,
damage: 18,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -19,7 +19,7 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 25,
energy_cost_per_strike: 10,
meta: (
requirements: (stance: Some(Sword(Crippling))),
),

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 18,
damage: 20,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -14,7 +14,7 @@ ComboMelee2(
kind: Bleeding,
dur_secs: 8.0,
strength: DamageFraction(0.25),
chance: 0.25,
chance: 1.0,
))),
),
buildup_duration: 0.05,
@ -24,5 +24,5 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 5,
)

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 8,
damage: 16,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -12,8 +12,8 @@ ComboMelee2(
angle: 45.0,
damage_effect: Some(Buff((
kind: Bleeding,
dur_secs: 8.0,
strength: DamageFraction(0.35),
dur_secs: 4.0,
strength: DamageFraction(0.4),
chance: 1.0,
))),
),
@ -24,7 +24,7 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 5,
meta: (
init_event: Some(EnterStance(Sword(Crippling))),
),

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 10,
damage: 16,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -24,7 +24,7 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 10,
meta: (
init_event: Some(EnterStance(Sword(Crippling))),
),

View File

@ -13,7 +13,7 @@ RapidMelee(
angle: 15.0,
damage_effect: Some(BuffsVulnerable(1.0, Bleeding)),
),
energy_cost: 7.5,
energy_cost: 5,
max_strikes: Some(4),
move_modifier: 0.7,
ori_modifier: 0.2,

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Stab(
damage: 14,
damage: 15,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -14,7 +14,7 @@ ComboMelee2(
kind: Bleeding,
dur_secs: 8.0,
strength: DamageFraction(0.25),
chance: 0.25,
chance: 1.0,
))),
),
buildup_duration: 0.15,
@ -29,5 +29,5 @@ ComboMelee2(
),
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -10,18 +10,19 @@ ComboMelee2(
),
range: 4.0,
angle: 15.0,
damage_effect: Some(BuffsVulnerable(0.5, Parried)),
),
buildup_duration: 0.35,
buildup_duration: 0.4,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.2,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
meta: (
capabilities: (
// When in buildup, attack can get cancelled into parry
// The ability will parry melee attacks in the buildup portion
bits: 0b00100000,
),
),

View File

@ -1,5 +1,5 @@
FinisherMelee(
energy_cost: 30,
energy_cost: 20,
buildup_duration: 0.05,
swing_duration: 0.1,
recover_duration: 0.6,

View File

@ -3,13 +3,14 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 15,
damage: 13,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.0,
angle: 60.0,
damage_effect: Some(BuffsVulnerable(0.5, Parried)),
),
buildup_duration: 0.1,
swing_duration: 0.1,
@ -18,10 +19,10 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
meta: (
capabilities: (
// When in buildup, attack can get cancelled into parry
// The ability will parry melee attacks in the buildup portion
bits: 0b00100000,
),
),

View File

@ -3,13 +3,14 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 8,
poise: 3,
damage: 6,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
damage_effect: Some(BuffsVulnerable(0.5, Parried)),
),
buildup_duration: 0.15,
swing_duration: 0.1,
@ -20,13 +21,14 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 8,
poise: 3,
damage: 9,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
damage_effect: Some(BuffsVulnerable(0.5, Parried)),
),
buildup_duration: 0.15,
swing_duration: 0.1,
@ -35,11 +37,11 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 7.5,
energy_cost_per_strike: 2.5,
auto_progress: true,
meta: (
capabilities: (
// When in buildup, attack can get cancelled into parry
// The ability will parry melee attacks in the buildup portion
bits: 0b00100000,
),
),

View File

@ -7,7 +7,7 @@ BasicBlock(
buildup: true,
recover: true,
),
energy_cost: 10,
energy_cost: 0,
can_hold: false,
blocked_attacks: (
melee: true,

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 16,
damage: 10,
poise: 5,
knockback: 0,
energy_regen: 0,
@ -23,7 +23,7 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 0,
meta: (
init_event: Some(EnterStance(Sword(Defensive))),
),

View File

@ -20,7 +20,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 8,
damage: 7,
poise: 5,
knockback: 0,
energy_regen: 10,

View File

@ -3,13 +3,14 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 20,
damage: 18,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 20.0,
damage_effect: Some(BuffsVulnerable(0.5, Parried)),
),
buildup_duration: 0.05,
swing_duration: 0.05,
@ -18,10 +19,10 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 5,
meta: (
capabilities: (
// When in buildup, attack can get cancelled into parry
// The ability will parry melee attacks in the buildup portion
bits: 0b00100000,
),
),

View File

@ -1,11 +1,11 @@
RiposteMelee(
energy_cost: 20,
energy_cost: 5,
buildup_duration: 0.3,
swing_duration: 0.2,
recover_duration: 0.3,
swing_duration: 0.1,
recover_duration: 0.2,
melee_constructor: (
kind: Slash(
damage: 25,
damage: 18,
poise: 5,
knockback: 0,
energy_regen: 5,

View File

@ -3,13 +3,14 @@ ComboMelee2(
(
melee_constructor: (
kind: Stab(
damage: 15,
damage: 13,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 5.0,
angle: 5.0,
damage_effect: Some(BuffsVulnerable(0.5, Parried)),
),
buildup_duration: 0.15,
swing_duration: 0.1,
@ -23,10 +24,10 @@ ComboMelee2(
),
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
meta: (
capabilities: (
// When in buildup, attack can get cancelled into parry
// The ability will parry melee attacks in the buildup portion
bits: 0b00100000,
),
),

View File

@ -4,8 +4,8 @@ SelfBuff(
recover_duration: 0.25,
buff_kind: ProtectingWard,
buff_strength: 0.4,
buff_duration: Some(30.0),
energy_cost: 30,
buff_duration: Some(20.0),
energy_cost: 20,
meta: (
requirements: (stance: Some(Sword(Defensive))),
),

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 26,
damage: 30,
poise: 15,
knockback: 0,
energy_regen: 0,
@ -13,11 +13,11 @@ ComboMelee2(
damage_effect: Some(StunnedVulnerable(0.5)),
),
buildup_duration: 0.5,
swing_duration: 0.1,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.3,
recover_duration: 0.25,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 19,
damage: 23,
poise: 15,
knockback: 0,
energy_regen: 0,
@ -12,12 +12,12 @@ ComboMelee2(
angle: 60.0,
damage_effect: Some(StunnedVulnerable(0.5)),
),
buildup_duration: 0.3,
swing_duration: 0.1,
buildup_duration: 0.15,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.2,
recover_duration: 0.25,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -3,40 +3,40 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 11,
poise: 3,
damage: 12,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
damage_effect: Some(StunnedVulnerable(0.5)),
),
buildup_duration: 0.2,
swing_duration: 0.1,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.2,
recover_duration: 0.25,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 11,
poise: 3,
damage: 18,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3.5,
angle: 50.0,
angle: 90.0,
damage_effect: Some(StunnedVulnerable(0.5)),
),
buildup_duration: 0.2,
swing_duration: 0.1,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.2,
recover_duration: 0.15,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 7.5,
energy_cost_per_strike: 2.5,
auto_progress: true,
)

View File

@ -3,19 +3,18 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 6,
damage: 5,
poise: 10,
knockback: 0,
energy_regen: 10,
energy_regen: 5,
),
range: 3.0,
angle: 45.0,
damage_effect: Some(StunnedVulnerable(0.5)),
),
buildup_duration: 0.3,
swing_duration: 0.05,
buildup_duration: 0.2,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.1,
recover_duration: 0.15,
ori_modifier: 0.6,
),
(
@ -24,16 +23,15 @@ ComboMelee2(
damage: 9,
poise: 15,
knockback: 0,
energy_regen: 15,
energy_regen: 10,
),
range: 3.0,
angle: 45.0,
damage_effect: Some(StunnedVulnerable(0.5)),
),
buildup_duration: 0.2,
swing_duration: 0.1,
buildup_duration: 0.15,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.2,
recover_duration: 0.25,
ori_modifier: 0.6,
),
],

View File

@ -3,7 +3,7 @@ ComboMelee2(
(
melee_constructor: (
kind: Slash(
damage: 28,
damage: 30,
poise: 15,
knockback: 0,
energy_regen: 0,
@ -12,12 +12,12 @@ ComboMelee2(
angle: 20.0,
damage_effect: Some(StunnedVulnerable(0.5)),
),
buildup_duration: 0.15,
buildup_duration: 0.1,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.9,
recover_duration: 0.8,
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 5,
)

View File

@ -4,8 +4,8 @@ SelfBuff(
recover_duration: 0.6,
buff_kind: Fortitude,
buff_strength: 1.0,
buff_duration: Some(30.0),
energy_cost: 25,
buff_duration: Some(20.0),
energy_cost: 15,
meta: (
requirements: (stance: Some(Sword(Heavy))),
),

View File

@ -1,5 +1,5 @@
FinisherMelee(
energy_cost: 30,
energy_cost: 20,
buildup_duration: 0.4,
swing_duration: 0.1,
recover_duration: 0.6,

View File

@ -1,5 +1,5 @@
DiveMelee(
energy_cost: 25,
energy_cost: 15,
vertical_speed: 5,
buildup_duration: Some(0.1),
movement_duration: 5,

View File

@ -4,7 +4,7 @@ ComboMelee2(
melee_constructor: (
kind: Bash(
damage: 12,
poise: 60,
poise: 50,
knockback: 0,
energy_regen: 0,
),
@ -19,7 +19,7 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 15,
energy_cost_per_strike: 5,
meta: (
init_event: Some(EnterStance(Sword(Heavy))),
),

View File

@ -3,26 +3,25 @@ ComboMelee2(
(
melee_constructor: (
kind: Stab(
damage: 21,
damage: 23,
poise: 15,
knockback: 0,
energy_regen: 0,
),
range: 5.0,
angle: 5.0,
damage_effect: Some(StunnedVulnerable(0.5)),
),
buildup_duration: 0.3,
swing_duration: 0.1,
buildup_duration: 0.2,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.5,
ori_modifier: 0.6,
movement: (
buildup: Some(Forward(2.0)),
swing: Some(Forward(2.0)),
buildup: Some(Forward(1.5)),
swing: Some(Forward(1.5)),
recover: None,
),
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
)

View File

@ -18,8 +18,8 @@ ChargedMelee(
angle: 10.0,
damage_effect: Some(StunnedVulnerable(0.5)),
),
charge_duration: 0.8,
charge_duration: 1.0,
swing_duration: 0.1,
hit_timing: 0.2,
recover_duration: 0.4,
recover_duration: 0.5,
)

View File

@ -4,7 +4,7 @@ ComboMelee2(
melee_constructor: (
kind: Slash(
damage: 11,
poise: 15,
poise: 20,
knockback: 0,
energy_regen: 0,
),
@ -37,7 +37,7 @@ ComboMelee2(
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 10,
energy_cost_per_strike: 5,
auto_progress: true,
meta: (
init_event: Some(EnterStance(Sword(Heavy))),

View File

@ -2904,7 +2904,7 @@ bitflags::bitflags! {
const POISE_RESISTANT = 0b00001000;
// WHen in the ability, an entity only receives half as much knockback
const KNOCKBACK_RESISTANT = 0b00010000;
// The ability will interrupt itself into a parry if hit with melee
// The ability will parry melee attacks in the buildup portion
const BUILDUP_PARRIES = 0b00100000;
}
}

View File

@ -88,19 +88,27 @@ impl PoiseState {
let (charstate_parameters, impulse) = match self {
PoiseState::Normal => (None, None),
PoiseState::Interrupted => (
Some((Duration::from_millis(200), Duration::from_millis(200), 0.8)),
Some((Duration::from_millis(250), Duration::from_millis(250), 0.8)),
None,
),
PoiseState::Stunned => (
Some((Duration::from_millis(400), Duration::from_millis(400), 0.5)),
Some((Duration::from_millis(750), Duration::from_millis(750), 0.5)),
None,
),
PoiseState::Dazed => (
Some((Duration::from_millis(750), Duration::from_millis(450), 0.2)),
Some((
Duration::from_millis(1000),
Duration::from_millis(1000),
0.2,
)),
None,
),
PoiseState::KnockedDown => (
Some((Duration::from_millis(1000), Duration::from_millis(600), 0.0)),
Some((
Duration::from_millis(2000),
Duration::from_millis(2000),
0.0,
)),
Some(10.0),
),
};

View File

@ -40,7 +40,6 @@ impl CharacterBehavior for Data {
fn behavior(&self, data: &JoinData, output_events: &mut OutputEvents) -> StateUpdate {
let mut update = StateUpdate::from(data);
leave_stance(data, output_events);
handle_orientation(data, &mut update, 1.0, None);
handle_move(data, &mut update, 1.0);
handle_jump(data, output_events, &mut update, 1.0);

View File

@ -21,7 +21,7 @@ impl CharacterBehavior for Data {
fn behavior(&self, data: &JoinData, output_events: &mut OutputEvents) -> StateUpdate {
let mut update = StateUpdate::from(data);
const LEAVE_STANCE_DELAY: f64 = 5.0;
const LEAVE_STANCE_DELAY: f64 = 30.0;
if (self.time_entered.0 + LEAVE_STANCE_DELAY) < data.time.0 {
leave_stance(data, output_events);
}

View File

@ -36,7 +36,6 @@ impl CharacterBehavior for Data {
fn behavior(&self, data: &JoinData, output_events: &mut OutputEvents) -> StateUpdate {
let mut update = StateUpdate::from(data);
leave_stance(data, output_events);
handle_orientation(data, &mut update, self.static_data.ori_modifier, None);
handle_move(data, &mut update, 0.7);
handle_jump(data, output_events, &mut update, 1.0);

View File

@ -35,7 +35,6 @@ impl CharacterBehavior for Data {
fn behavior(&self, data: &JoinData, output_events: &mut OutputEvents) -> StateUpdate {
let mut update = StateUpdate::from(data);
leave_stance(data, output_events);
handle_wield(data, &mut update);
handle_jump(data, output_events, &mut update, 1.0);

View File

@ -56,8 +56,6 @@ impl CharacterBehavior for Data {
fn behavior(&self, data: &JoinData, output_events: &mut OutputEvents) -> StateUpdate {
let mut update = StateUpdate::from(data);
leave_stance(data, output_events);
let ori_dir = Dir::from_unnormalized(Vec3::from(
(self.static_data.sprite_pos.map(|x| x as f32 + 0.5) - data.pos.0).xy(),
));

View File

@ -37,7 +37,7 @@ impl CharacterBehavior for Data {
if matches!(
self.static_data.poise_state,
PoiseState::Stunned | PoiseState::Dazed | PoiseState::KnockedDown
PoiseState::Dazed | PoiseState::KnockedDown
) {
leave_stance(data, output_events);
}

View File

@ -14,10 +14,9 @@ const TURN_RATE: f32 = 40.0;
pub struct Data;
impl CharacterBehavior for Data {
fn behavior(&self, data: &JoinData, output_events: &mut OutputEvents) -> StateUpdate {
fn behavior(&self, data: &JoinData, _output_events: &mut OutputEvents) -> StateUpdate {
let mut update = StateUpdate::from(data);
leave_stance(data, output_events);
handle_wield(data, &mut update);
handle_orientation(data, &mut update, TURN_RATE, None);

View File

@ -52,8 +52,6 @@ impl CharacterBehavior for Data {
fn behavior(&self, data: &JoinData, output_events: &mut OutputEvents) -> StateUpdate {
let mut update = StateUpdate::from(data);
leave_stance(data, output_events);
match self.static_data.item_kind {
ItemUseKind::Consumable(ConsumableKind::Drink) => {
handle_orientation(data, &mut update, 1.0, None);

View File

@ -43,7 +43,7 @@ use rand_distr::Distribution;
use specs::{
join::Join, saveload::MarkerAllocator, Builder, Entity as EcsEntity, Entity, WorldExt,
};
use std::{collections::HashMap, iter, ops::Mul, time::Duration};
use std::{collections::HashMap, iter, time::Duration};
use tracing::{debug, error};
use vek::{Vec2, Vec3};
@ -1274,11 +1274,7 @@ pub fn handle_parry_hook(server: &Server, defender: EcsEntity, attacker: Option<
});
true
},
char_state => char_state.ability_info().map_or(false, |info| {
info.ability_meta
.capabilities
.contains(comp::ability::Capability::BUILDUP_PARRIES)
}),
_ => false,
};
if return_to_wield {
*char_state =
@ -1287,39 +1283,30 @@ pub fn handle_parry_hook(server: &Server, defender: EcsEntity, attacker: Option<
};
if let Some(attacker) = attacker {
if let Some(char_state) = ecs.read_storage::<comp::CharacterState>().get(attacker) {
// By having a duration twice as long as either the recovery duration or 0.5 s,
// causes recover duration to effectively be either doubled or increased by 0.5
// s when a buff is applied that halves their attack speed.
let duration = char_state
.durations()
.and_then(|durs| durs.recover)
.map_or(0.5, |dur| dur.as_secs_f64())
.max(0.5)
.mul(2.0);
let data = buff::BuffData::new(1.0, Some(Secs(duration)), None);
let source = if let Some(uid) = ecs.read_storage::<Uid>().get(defender) {
BuffSource::Character { by: *uid }
} else {
BuffSource::World
};
let time = ecs.read_resource::<Time>();
let stats = ecs.read_storage::<comp::Stats>();
let healths = ecs.read_storage::<comp::Health>();
let buff = buff::Buff::new(
BuffKind::Parried,
data,
vec![buff::BuffCategory::Physical],
source,
*time,
stats.get(attacker),
healths.get(attacker),
);
server_eventbus.emit_now(ServerEvent::Buff {
entity: attacker,
buff_change: buff::BuffChange::Add(buff),
});
}
// When attacker is parried, add the parried debuff for 2 seconds, which slows
// them
let data = buff::BuffData::new(1.0, Some(Secs(2.0)), None);
let source = if let Some(uid) = ecs.read_storage::<Uid>().get(defender) {
BuffSource::Character { by: *uid }
} else {
BuffSource::World
};
let time = ecs.read_resource::<Time>();
let stats = ecs.read_storage::<comp::Stats>();
let healths = ecs.read_storage::<comp::Health>();
let buff = buff::Buff::new(
BuffKind::Parried,
data,
vec![buff::BuffCategory::Physical],
source,
*time,
stats.get(attacker),
healths.get(attacker),
);
server_eventbus.emit_now(ServerEvent::Buff {
entity: attacker,
buff_change: buff::BuffChange::Add(buff),
});
}
}