Merge branch 'sword' into 'master'

Sword

See merge request veloren/veloren!3662
This commit is contained in:
Samuel Keiffer 2022-10-28 01:01:07 +00:00
commit dda62b998d
275 changed files with 9090 additions and 2252 deletions

View File

@ -14,6 +14,8 @@ rustflags = [
cmd-doc-gen = "run --features=bin_cmd_doc_gen --bin cmd_doc_gen"
csv-export = "run --manifest-path common/Cargo.toml --features=bin_csv --bin csv_export"
csv-import = "run --manifest-path common/Cargo.toml --features=bin_csv --bin csv_import"
dot-recipes = "run --manifest-path common/Cargo.toml --features=bin_graphviz --bin recipe_graphviz"
dot-skills = "run --manifest-path common/Cargo.toml --features=bin_graphviz --bin skill_graphviz"
# server-cli
server = "run --bin veloren-server-cli"
test-server = "run --bin veloren-server-cli --no-default-features --features simd"

View File

@ -31,6 +31,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- UI: Added a poise indicator to the player's status bars
- FxUpscale AA mode for higher quality graphics at reduced internal resolutions
- Graphics presets
- Sword
### Changed
- Use fluent for translations

1
Cargo.lock generated
View File

@ -6854,6 +6854,7 @@ version = "0.10.0"
dependencies = [
"hashbrown 0.12.3",
"indexmap",
"itertools",
"ordered-float 3.1.0",
"rand 0.8.5",
"rayon",

View File

@ -2,45 +2,83 @@
// A set of abilities is a primary, a secondary, and a vec of all extra abilities
({
Tool(Sword): (
primary: "common.abilities.sword.triplestrike",
secondary: "common.abilities.sword.dash",
primary: "common.abilities.sword.balanced_combo",
secondary: "common.abilities.sword.balanced_thrust",
abilities: [
(Some(Sword(UnlockSpin)), "common.abilities.sword.spin"),
Simple(Some(Sword(OffensiveCombo)), "common.abilities.sword.offensive_combo"),
Simple(Some(Sword(CripplingCombo)), "common.abilities.sword.crippling_combo"),
Simple(Some(Sword(CleavingCombo)), "common.abilities.sword.cleaving_combo"),
Simple(Some(Sword(DefensiveCombo)), "common.abilities.sword.defensive_combo"),
Simple(Some(Sword(ParryingCombo)), "common.abilities.sword.parrying_combo"),
Simple(Some(Sword(HeavyCombo)), "common.abilities.sword.heavy_combo"),
Simple(Some(Sword(MobilityCombo)), "common.abilities.sword.mobility_combo"),
Simple(Some(Sword(ReachingCombo)), "common.abilities.sword.reaching_combo"),
// Damagey ones
Contextualized({
Sword(Balanced): (Some(Sword(BalancedFinisher)), "common.abilities.sword.balanced_finisher"),
Sword(Offensive): (Some(Sword(OffensiveFinisher)), "common.abilities.sword.offensive_finisher"),
Sword(Crippling): (Some(Sword(CripplingFinisher)), "common.abilities.sword.crippling_finisher"),
Sword(Cleaving): (Some(Sword(CleavingFinisher)), "common.abilities.sword.cleaving_finisher"),
Sword(Parrying): (Some(Sword(ParryingCounter)), "common.abilities.sword.parrying_counter"),
Sword(Heavy): (Some(Sword(HeavyFinisher)), "common.abilities.sword.heavy_finisher"),
Sword(Reaching): (Some(Sword(ReachingFlurry)), "common.abilities.sword.reaching_flurry"),
}),
// Movementy ones
Contextualized({
Sword(Offensive): (Some(Sword(OffensiveAdvance)), "common.abilities.sword.offensive_advance"),
Sword(Crippling): (Some(Sword(CripplingStrike)), "common.abilities.sword.crippling_strike"),
Sword(Cleaving): (Some(Sword(CleavingDive)), "common.abilities.sword.cleaving_dive"),
Sword(Defensive): (Some(Sword(DefensiveRetreat)), "common.abilities.sword.defensive_retreat"),
Sword(Parrying): (Some(Sword(ParryingRiposte)), "common.abilities.sword.parrying_riposte"),
Sword(Heavy): (Some(Sword(HeavyFortitude)), "common.abilities.sword.heavy_fortitude"),
Sword(Mobility): (Some(Sword(MobilityFeint)), "common.abilities.sword.mobility_feint"),
Sword(Reaching): (Some(Sword(ReachingCharge)), "common.abilities.sword.reaching_charge"),
}),
// Utilityy ones
Contextualized({
Sword(Crippling): (Some(Sword(CripplingGouge)), "common.abilities.sword.crippling_gouge"),
Sword(Cleaving): (Some(Sword(CleavingSpin)), "common.abilities.sword.cleaving_spin"),
Sword(Defensive): (Some(Sword(DefensiveBulwark)), "common.abilities.sword.defensive_bulwark"),
Sword(Parrying): (Some(Sword(ParryingParry)), "common.abilities.sword.parrying_parry"),
Sword(Heavy): (Some(Sword(HeavyPommelStrike)), "common.abilities.sword.heavy_pommelstrike"),
Sword(Mobility): (Some(Sword(MobilityAgility)), "common.abilities.sword.mobility_agility"),
Sword(Reaching): (Some(Sword(ReachingSkewer)), "common.abilities.sword.reaching_skewer"),
}),
],
),
Tool(Axe): (
primary: "common.abilities.axe.doublestrike",
secondary: "common.abilities.axe.spin",
abilities: [
(Some(Axe(UnlockLeap)), "common.abilities.axe.leap"),
Simple(Some(Axe(UnlockLeap)), "common.abilities.axe.leap"),
],
),
Tool(Hammer): (
primary: "common.abilities.hammer.singlestrike",
secondary: "common.abilities.hammer.charged",
abilities: [
(Some(Hammer(UnlockLeap)), "common.abilities.hammer.leap"),
Simple(Some(Hammer(UnlockLeap)), "common.abilities.hammer.leap"),
],
),
Tool(Bow): (
primary: "common.abilities.bow.charged",
secondary: "common.abilities.bow.repeater",
abilities: [
(Some(Bow(UnlockShotgun)), "common.abilities.bow.shotgun"),
Simple(Some(Bow(UnlockShotgun)), "common.abilities.bow.shotgun"),
],
),
Tool(Staff): (
primary: "common.abilities.staff.firebomb",
secondary: "common.abilities.staff.flamethrower",
abilities: [
(Some(Staff(UnlockShockwave)), "common.abilities.staff.fireshockwave"),
Simple(Some(Staff(UnlockShockwave)), "common.abilities.staff.fireshockwave"),
],
),
Tool(Sceptre): (
primary: "common.abilities.sceptre.lifestealbeam",
secondary: "common.abilities.sceptre.healingaura",
abilities: [
(Some(Sceptre(UnlockAura)), "common.abilities.sceptre.wardingaura"),
Simple(Some(Sceptre(UnlockAura)), "common.abilities.sceptre.wardingaura"),
],
),
Custom("Husk"): (
@ -83,10 +121,10 @@
primary: "common.abilities.gnarling.chieftain.flamestrike",
secondary: "common.abilities.gnarling.chieftain.firebarrage",
abilities: [
(None, "common.abilities.gnarling.chieftain.fireshockwave"),
(None, "common.abilities.gnarling.chieftain.redtotem"),
(None, "common.abilities.gnarling.chieftain.greentotem"),
(None, "common.abilities.gnarling.chieftain.whitetotem"),
Simple(None, "common.abilities.gnarling.chieftain.fireshockwave"),
Simple(None, "common.abilities.gnarling.chieftain.redtotem"),
Simple(None, "common.abilities.gnarling.chieftain.greentotem"),
Simple(None, "common.abilities.gnarling.chieftain.whitetotem"),
],
),
Custom("Gnarling Totem Red"): (
@ -118,7 +156,7 @@
primary: "common.abilities.custom.woodgolem.strike",
secondary: "common.abilities.custom.woodgolem.spin",
abilities: [
(None, "common.abilities.custom.woodgolem.shockwave")
Simple(None, "common.abilities.custom.woodgolem.shockwave")
],
),
Custom("Simple Flying Melee"): (
@ -165,7 +203,7 @@
primary: "common.abilities.custom.stonegolemfist.singlestrike",
secondary: "common.abilities.custom.stonegolemfist.shockwave",
abilities: [
(None, "common.abilities.custom.stonegolemfist.spin"),
Simple(None, "common.abilities.custom.stonegolemfist.spin"),
],
),
Custom("Beast Claws"): (
@ -182,8 +220,8 @@
primary: "common.abilities.custom.tidalwarrior.pincer",
secondary: "common.abilities.custom.tidalwarrior.scuttle",
abilities: [
(None, "common.abilities.custom.tidalwarrior.bubbles"),
(None, "common.abilities.custom.tidalwarrior.totem"),
Simple(None, "common.abilities.custom.tidalwarrior.bubbles"),
Simple(None, "common.abilities.custom.tidalwarrior.totem"),
],
),
Custom("Tidal Totem"): (
@ -202,7 +240,7 @@
primary: "common.abilities.custom.quadmedjump.leap",
secondary: "common.abilities.custom.quadmedjump.doublestrike",
abilities: [
(None, "common.abilities.custom.quadmedjump.quickleap"),
Simple(None, "common.abilities.custom.quadmedjump.quickleap"),
],
),
Custom("Quad Med Charge"): (
@ -224,7 +262,7 @@
primary: "common.abilities.custom.basilisk.petrify",
secondary: "common.abilities.custom.basilisk.triplestrike",
abilities: [
(None, "common.abilities.custom.basilisk.dash"),
Simple(None, "common.abilities.custom.basilisk.dash"),
],
),
Custom("Asp"): (
@ -241,7 +279,7 @@
primary: "common.abilities.custom.quadlowbreathe.flamethrower",
secondary: "common.abilities.custom.quadlowbreathe.triplestrike",
abilities: [
(None, "common.abilities.custom.quadlowbreathe.dash"),
Simple(None, "common.abilities.custom.quadlowbreathe.dash"),
],
),
Custom("Quad Low Tail"): (
@ -263,7 +301,7 @@
primary: "common.abilities.custom.quadlowbeam.lifestealbeam",
secondary: "common.abilities.custom.quadlowbreathe.triplestrike",
abilities: [
(None, "common.abilities.custom.quadlowbreathe.dash"),
Simple(None, "common.abilities.custom.quadlowbreathe.dash"),
],
),
Custom("Quad Small Basic"): (
@ -301,28 +339,28 @@
primary: "common.abilities.custom.arthropods.blackwidow.singlestrike",
secondary: "common.abilities.custom.arthropods.blackwidow.ensnaringwebs",
abilities: [
(None, "common.abilities.custom.arthropods.blackwidow.poisonball"),
Simple(None, "common.abilities.custom.arthropods.blackwidow.poisonball"),
],
),
Custom("Horn Beetle"): (
primary: "common.abilities.custom.arthropods.hornbeetle.singlestrike",
secondary: "common.abilities.custom.arthropods.hornbeetle.harden",
abilities: [
(None, "common.abilities.custom.arthropods.hornbeetle.leap"),
Simple(None, "common.abilities.custom.arthropods.hornbeetle.leap"),
],
),
Custom("Tarantula"): (
primary: "common.abilities.custom.arthropods.tarantula.singlestrike",
secondary: "common.abilities.custom.arthropods.tarantula.ensnaringwebs",
abilities: [
(None, "common.abilities.custom.arthropods.tarantula.leap"),
Simple(None, "common.abilities.custom.arthropods.tarantula.leap"),
],
),
Custom("Weevil"): (
primary: "common.abilities.custom.arthropods.weevil.singlestrike",
secondary: "common.abilities.custom.arthropods.weevil.harden",
abilities: [
(None, "common.abilities.custom.arthropods.weevil.threadshot"),
Simple(None, "common.abilities.custom.arthropods.weevil.threadshot"),
],
),
/// TODO: Organize the rest into further catagories and give purple tier droppers+ custom skillsets
@ -345,41 +383,41 @@
primary: "common.abilities.custom.mindflayer.cursedflames",
secondary: "common.abilities.custom.mindflayer.necroticvortex",
abilities: [
(None, "common.abilities.custom.mindflayer.dimensionaldoor"),
(None, "common.abilities.custom.mindflayer.necroticsphere"),
(None, "common.abilities.custom.mindflayer.summonminions"),
Simple(None, "common.abilities.custom.mindflayer.dimensionaldoor"),
Simple(None, "common.abilities.custom.mindflayer.necroticsphere"),
Simple(None, "common.abilities.custom.mindflayer.summonminions"),
],
),
Custom("Minotaur"): (
primary: "common.abilities.custom.minotaur.cleave",
secondary: "common.abilities.custom.minotaur.cripplingstrike",
abilities: [
(None, "common.abilities.custom.minotaur.charge"),
(None, "common.abilities.custom.minotaur.frenzy"),
Simple(None, "common.abilities.custom.minotaur.charge"),
Simple(None, "common.abilities.custom.minotaur.frenzy"),
],
),
Custom("Clay Golem"): (
primary: "common.abilities.custom.claygolem.strike",
secondary: "common.abilities.custom.claygolem.laser",
abilities: [
(None, "common.abilities.custom.claygolem.shockwave"),
(None, "common.abilities.custom.claygolem.rocket"),
Simple(None, "common.abilities.custom.claygolem.shockwave"),
Simple(None, "common.abilities.custom.claygolem.rocket"),
],
),
Custom("Yeti"): (
primary: "common.abilities.custom.yeti.strike",
secondary: "common.abilities.custom.yeti.icespikes",
abilities: [
(None, "common.abilities.custom.yeti.frostbreath"),
(None, "common.abilities.custom.yeti.snowball"),
Simple(None, "common.abilities.custom.yeti.frostbreath"),
Simple(None, "common.abilities.custom.yeti.snowball"),
],
),
Custom("Harvester"): (
primary: "common.abilities.custom.harvester.scythe",
secondary: "common.abilities.custom.harvester.firebreath",
abilities: [
(None, "common.abilities.custom.harvester.ensnaringvines"),
(None, "common.abilities.custom.harvester.explodingpumpkin"),
Simple(None, "common.abilities.custom.harvester.ensnaringvines"),
Simple(None, "common.abilities.custom.harvester.explodingpumpkin"),
],
),
// TODO: Allow ability sets to expand other ability sets
@ -387,17 +425,17 @@
primary: "common.abilities.custom.dagon.dagonbombs",
secondary: "common.abilities.custom.dagon.seaurchins",
abilities: [
(None, "common.abilities.custom.dagon.steamwave"),
(None, "common.abilities.custom.cardinal.steambeam"),
(None, "common.abilities.custom.dagon.steamheal"),
Simple(None, "common.abilities.custom.dagon.steamwave"),
Simple(None, "common.abilities.custom.cardinal.steambeam"),
Simple(None, "common.abilities.custom.dagon.steamheal"),
],
),
Custom("Cardinal"): (
primary: "common.abilities.sceptre.lifestealbeam",
secondary: "common.abilities.sceptre.healingaura",
abilities: [
(None, "common.abilities.custom.cardinal.steambeam"),
(None, "common.abilities.custom.cardinal.summonseacrocs"),
Simple(None, "common.abilities.custom.cardinal.steambeam"),
Simple(None, "common.abilities.custom.cardinal.summonseacrocs"),
],
),
Custom("Oni"): (
@ -409,21 +447,21 @@
primary: "common.abilities.custom.birdlargebreathe.firebomb",
secondary: "common.abilities.custom.birdlargebreathe.triplestrike",
abilities: [
(None, "common.abilities.custom.birdlargebreathe.flamethrower"),
Simple(None, "common.abilities.custom.birdlargebreathe.flamethrower"),
],
),
Custom("Bird Large Fire"): (
primary: "common.abilities.custom.birdlargefire.firebomb",
secondary: "common.abilities.custom.birdlargefire.triplestrike",
abilities: [
(None, "common.abilities.custom.birdlargefire.fireshockwave"),
Simple(None, "common.abilities.custom.birdlargefire.fireshockwave"),
],
),
Custom("Bird Large Basic"): (
primary: "common.abilities.custom.birdlargebasic.triplestrike",
secondary: "common.abilities.custom.birdlargebasic.summontornadoes",
abilities: [
(None, "common.abilities.custom.birdlargebasic.dash"),
Simple(None, "common.abilities.custom.birdlargebasic.dash"),
],
),
Custom("Tornado"): (
@ -485,7 +523,7 @@
primary: "common.abilities.debug.forwardboost",
secondary: "common.abilities.debug.upboost",
abilities: [
(None, "common.abilities.debug.possess"),
Simple(None, "common.abilities.debug.possess"),
],
),
Tool(Farming): (

View File

@ -51,6 +51,5 @@ ComboMelee(
speed_increase: 0.1,
max_speed_increase: 0.6,
scales_from_combo: 2,
is_interruptible: false,
ori_modifier: 1.0,
)

View File

@ -13,6 +13,7 @@ LeapMelee(
),
range: 4.5,
angle: 30.0,
multi_target: Some(Normal),
),
forward_leap_strength: 20.0,
vertical_leap_strength: 8.0,

View File

@ -11,11 +11,11 @@ SpinMelee(
),
range: 3.5,
angle: 360.0,
multi_target: Some(Normal),
),
energy_cost: 10.0,
is_infinite: true,
movement_behavior: AxeHover,
is_interruptible: false,
forward_speed: 0.0,
num_spins: 1,
specifier: None,

View File

@ -51,6 +51,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -4,9 +4,9 @@ ChargedRanged(
initial_regen: 2,
scaled_regen: 14,
initial_damage: 2,
scaled_damage: 14,
scaled_damage: 12,
initial_knockback: 0,
scaled_knockback: 15,
scaled_knockback: 12,
buildup_duration: 0.25,
charge_duration: 1.0,
recover_duration: 0.4,

View File

@ -1,5 +1,5 @@
RepeaterRanged(
energy_cost: 5.0,
energy_cost: 6.0,
buildup_duration: 0.2,
shoot_duration: 0.3,
recover_duration: 0.5,

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 0.8,
ori_modifier: 0.1,
charge_through: false,
is_interruptible: false,
)
)

View File

@ -29,6 +29,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.8,
)

View File

@ -29,6 +29,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.8,
)
)

View File

@ -13,6 +13,7 @@ LeapMelee(
),
range: 4.5,
angle: 180.0,
multi_target: Some(Normal),
),
forward_leap_strength: 40.0,
vertical_leap_strength: 7.5,

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.5,
)

View File

@ -29,6 +29,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.8,
)
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.6,
)
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.65,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 2.0,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: false,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.65,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 1.4,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: false,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -13,7 +13,6 @@ BasicRanged(
col: (1.0, 0.75, 0.11).into(),
..Default::default()
}),*/
projectile_gravity: Some(Gravity(0.15)),
projectile_speed: 60.0,
num_projectiles: 1,
projectile_spread: 0.0,

View File

@ -73,6 +73,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -13,7 +13,6 @@ BasicRanged(
col: (1.0, 0.75, 0.11).into(),
..Default::default()
}),*/
projectile_gravity: Some(Gravity(0.15)),
projectile_speed: 60.0,
num_projectiles: 1,
projectile_spread: 0.0,

View File

@ -73,6 +73,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -12,6 +12,7 @@ BasicMelee(
),
range: 4.0,
angle: 45.0,
multi_target: Some(Normal),
),
ori_modifier: 1.0,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 2.0,
ori_modifier: 0.1,
charge_through: true,
is_interruptible: false,
)

View File

@ -12,6 +12,7 @@ BasicMelee(
),
range: 4.0,
angle: 60.0,
multi_target: Some(Normal),
),
ori_modifier: 1.0,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.6,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.6,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.6,
)

View File

@ -14,7 +14,6 @@ SpinMelee(
energy_cost: 0.0,
is_infinite: false,
movement_behavior: Stationary,
is_interruptible: false,
forward_speed: 0.0,
num_spins: 1,
specifier: None,

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.65,
)

View File

@ -10,11 +10,11 @@ SpinMelee(
),
range: 16.0,
angle: 360.0,
multi_target: Some(Normal),
),
energy_cost: 0.0,
is_infinite: true,
movement_behavior: Stationary,
is_interruptible: false,
forward_speed: 0.0,
num_spins: 1,
specifier: Some(CultistVortex),

View File

@ -21,6 +21,7 @@ DashMelee(
strength: DamageFraction(0.3),
chance: 0.25,
))),
multi_target: Some(Normal),
),
energy_drain: 0,
forward_speed: 5.0,
@ -30,5 +31,4 @@ DashMelee(
recover_duration: 3.4,
ori_modifier: 0.1,
charge_through: false,
is_interruptible: false,
)

View File

@ -16,6 +16,7 @@ ChargedMelee(
)),
range: 5.0,
angle: 45.0,
multi_target: Some(Normal),
),
charge_duration: 4.5,
swing_duration: 0.1,

View File

@ -18,6 +18,7 @@ BasicMelee(
strength: Value(0.5),
chance: 1.0,
))),
multi_target: Some(Normal),
),
ori_modifier: 1.0,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 2.4,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: true,
)

View File

@ -51,6 +51,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.6,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.6,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.65,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 2.0,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: false,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 2.0,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: false,
)

View File

@ -71,6 +71,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.8,
)

View File

@ -16,6 +16,7 @@ ChargedMelee(
)),
range: 6.0,
angle: 90.0,
multi_target: Some(Normal),
),
charge_duration: 3.2,
swing_duration: 0.7,

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 2.2,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: false,
)

View File

@ -39,6 +39,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -39,6 +39,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.8,
)

View File

@ -13,6 +13,7 @@ LeapMelee(
),
range: 6.75,
angle: 180.0,
multi_target: Some(Normal),
),
forward_leap_strength: 45.0,
vertical_leap_strength: 10.0,

View File

@ -13,8 +13,8 @@ LeapMelee(
),
range: 4.5,
angle: 180.0,
multi_target: Some(Normal),
),
forward_leap_strength: 20.0,
vertical_leap_strength: 5.0,
damage_kind: Crushing,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 2.0,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: false,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.8,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.6,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -11,11 +11,11 @@ SpinMelee(
),
range: 7.5,
angle: 360.0,
multi_target: Some(Normal),
),
energy_cost: 0,
is_infinite: false,
movement_behavior: Stationary,
is_interruptible: false,
forward_speed: 0.0,
num_spins: 1,
specifier: None,

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 1.8,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: false,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.6,
)

View File

@ -55,6 +55,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -12,6 +12,7 @@ BasicMelee(
),
range: 5.0,
angle: 60.0,
multi_target: Some(Normal),
),
ori_modifier: 1.0,
)

View File

@ -15,6 +15,7 @@ DashMelee(
)),
range: 5.0,
angle: 90.0,
multi_target: Some(Normal),
),
energy_drain: 0,
forward_speed: 10.0,
@ -24,5 +25,4 @@ DashMelee(
recover_duration: 1.0,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: false,
)

View File

@ -11,11 +11,11 @@ SpinMelee(
),
range: 3.5,
angle: 360.0,
multi_target: Some(Normal),
),
energy_cost: 0,
is_infinite: true,
movement_behavior: ForwardGround,
is_interruptible: false,
forward_speed: 0.0,
num_spins: 1,
specifier: None,

View File

@ -23,6 +23,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -15,7 +15,6 @@ SpinMelee(
energy_cost: 0,
is_infinite: false,
movement_behavior: Stationary,
is_interruptible: false,
forward_speed: 0.0,
num_spins: 1,
specifier: None,

View File

@ -12,6 +12,7 @@ BasicMelee(
),
range: 4.0,
angle: 20.0,
multi_target: Some(Normal),
),
ori_modifier: 1.0,
)

View File

@ -29,6 +29,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.7,
)

View File

@ -16,6 +16,7 @@ ChargedMelee(
)),
range: 3.5,
angle: 30.0,
multi_target: Some(Normal),
),
charge_duration: 1.0,
swing_duration: 0.12,

View File

@ -13,6 +13,7 @@ LeapMelee(
),
range: 4.5,
angle: 360.0,
multi_target: Some(Normal),
),
forward_leap_strength: 20.0,
vertical_leap_strength: 8.0,

View File

@ -21,6 +21,5 @@ ComboMelee(
speed_increase: 0.1,
max_speed_increase: 0.4,
scales_from_combo: 2,
is_interruptible: false,
ori_modifier: 1.0,
)

View File

@ -39,6 +39,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 0,
is_interruptible: false,
ori_modifier: 0.65,
)

View File

@ -3,5 +3,10 @@ BasicBlock(
recover_duration: 0.1,
max_angle: 90.0,
block_strength: 0.8,
parry_window: (
buildup: true,
recover: false,
),
energy_cost: 0.0,
can_hold: true,
)

View File

@ -24,5 +24,4 @@ DashMelee(
recover_duration: 0.8,
ori_modifier: 0.3,
charge_through: false,
is_interruptible: true,
)

View File

@ -51,6 +51,5 @@ ComboMelee(
speed_increase: 0.0,
max_speed_increase: 0.0,
scales_from_combo: 2,
is_interruptible: false,
ori_modifier: 0.75,
)

View File

@ -0,0 +1,43 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 7,
poise: 0,
knockback: 0,
energy_regen: 5,
),
range: 3.0,
angle: 45.0,
),
buildup_duration: 0.3,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.3,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 13,
poise: 0,
knockback: 0,
energy_regen: 7.5,
),
range: 3.0,
angle: 45.0,
),
buildup_duration: 0.2,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.3,
ori_modifier: 0.6,
),
],
is_stance: true,
energy_cost_per_strike: 0,
meta: (
kind: Some(Sword(Balanced)),
),
)

View File

@ -0,0 +1,20 @@
FinisherMelee(
energy_cost: 30,
buildup_duration: 0.3,
swing_duration: 0.1,
recover_duration: 0.4,
melee_constructor: (
kind: Slash(
damage: 30,
poise: 0,
knockback: 0,
energy_regen: 10,
),
range: 3.0,
angle: 15.0,
),
minimum_combo: 10,
meta: (
kind: Some(Sword(Balanced)),
),
)

View File

@ -0,0 +1,27 @@
ChargedMelee(
energy_cost: 0,
energy_drain: 0,
melee_constructor: (
kind: Slash(
damage: 2,
poise: 0,
knockback: 0,
energy_regen: 0,
),
scaled: Some(Slash(
damage: 20,
poise: 0,
knockback: 0,
energy_regen: 18,
)),
range: 4.5,
angle: 10.0,
),
charge_duration: 0.7,
swing_duration: 0.1,
hit_timing: 0.2,
recover_duration: 0.2,
meta: (
kind: Some(Sword(Balanced)),
),
)

View File

@ -0,0 +1,55 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 10,
poise: 0,
knockback: 0,
energy_regen: 6,
),
range: 3.0,
angle: 45.0,
multi_target: Some(Normal),
),
buildup_duration: 0.3,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.5,
movement: (
buildup: Some(Forward(0.05)),
swing: None,
recover: None,
),
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 16,
poise: 0,
knockback: 0,
energy_regen: 8,
),
range: 3.0,
angle: 45.0,
multi_target: Some(Normal),
),
buildup_duration: 0.3,
swing_duration: 0.15,
hit_timing: 0.5,
recover_duration: 0.4,
movement: (
buildup: Some(Forward(0.05)),
swing: None,
recover: None,
),
ori_modifier: 0.6,
),
],
is_stance: true,
energy_cost_per_strike: 5,
meta: (
kind: Some(Sword(Cleaving)),
),
)

View File

@ -0,0 +1,27 @@
DiveMelee(
energy_cost: 25,
vertical_speed: 10,
movement_duration: 5,
swing_duration: 0.1,
recover_duration: 0.3,
melee_constructor: (
kind: Slash(
damage: 30,
poise: 0,
knockback: 0,
energy_regen: 5,
),
scaled: Some(Slash(
damage: 10,
poise: 0,
knockback: 0,
energy_regen: 10,
)),
range: 6.0,
angle: 15.0,
multi_target: Some(Normal),
),
meta: (
kind: Some(Sword(Cleaving)),
),
)

View File

@ -0,0 +1,21 @@
FinisherMelee(
energy_cost: 40,
buildup_duration: 0.4,
swing_duration: 0.2,
recover_duration: 0.5,
melee_constructor: (
kind: Slash(
damage: 30,
poise: 0,
knockback: 0,
energy_regen: 10,
),
range: 3.0,
angle: 15.0,
multi_target: Some(Scaling(0.5)),
),
minimum_combo: 10,
meta: (
kind: Some(Sword(Cleaving)),
),
)

View File

@ -0,0 +1,27 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 16,
poise: 0,
knockback: 0,
energy_regen: 5,
),
range: 6.0,
angle: 360.0,
multi_target: Some(Normal),
),
buildup_duration: 0.1,
swing_duration: 0.3,
hit_timing: 0.6,
recover_duration: 0.4,
ori_modifier: 0.6,
),
],
is_stance: false,
energy_cost_per_strike: 20,
meta: (
kind: Some(Sword(Cleaving)),
),
)

View File

@ -0,0 +1,55 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 8,
poise: 0,
knockback: 0,
energy_regen: 9,
),
range: 3.0,
angle: 45.0,
damage_effect: Some(Buff((
kind: Bleeding,
dur_secs: 10.0,
strength: DamageFraction(0.2),
chance: 0.1,
))),
),
buildup_duration: 0.2,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.5,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 14,
poise: 0,
knockback: 0,
energy_regen: 13,
),
range: 3.0,
angle: 45.0,
damage_effect: Some(Buff((
kind: Bleeding,
dur_secs: 10.0,
strength: DamageFraction(0.2),
chance: 0.25,
))),
),
buildup_duration: 0.2,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.3,
ori_modifier: 0.6,
),
],
is_stance: true,
energy_cost_per_strike: 4,
meta: (
kind: Some(Sword(Crippling)),
),
)

View File

@ -0,0 +1,30 @@
FinisherMelee(
energy_cost: 40,
buildup_duration: 0.4,
swing_duration: 0.2,
recover_duration: 0.6,
melee_constructor: (
kind: Slash(
damage: 20,
poise: 0,
knockback: 0,
energy_regen: 10,
),
range: 3.0,
angle: 15.0,
damage_effect: Some(Buff((
kind: Bleeding,
dur_secs: 10.0,
strength: DamageFraction(0.25),
chance: 1.0,
))),
),
scaling: Some((
target: Buff,
kind: Sqrt,
)),
minimum_combo: 10,
meta: (
kind: Some(Sword(Crippling)),
),
)

View File

@ -0,0 +1,32 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 14,
poise: 0,
knockback: 0,
energy_regen: 5,
),
range: 4.0,
angle: 45.0,
damage_effect: Some(Buff((
kind: Bleeding,
dur_secs: 12.0,
strength: DamageFraction(0.25),
chance: 1.0,
))),
),
buildup_duration: 0.3,
swing_duration: 0.2,
hit_timing: 0.6,
recover_duration: 0.6,
ori_modifier: 0.6,
),
],
is_stance: false,
energy_cost_per_strike: 25,
meta: (
kind: Some(Sword(Crippling)),
),
)

View File

@ -0,0 +1,32 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 18,
poise: 0,
knockback: 0,
energy_regen: 5,
),
range: 4.0,
angle: 45.0,
damage_effect: Some(Buff((
kind: Crippled,
dur_secs: 15.0,
strength: Value(0.25),
chance: 1.0,
))),
),
buildup_duration: 0.3,
swing_duration: 0.1,
hit_timing: 0.6,
recover_duration: 0.3,
ori_modifier: 0.6,
),
],
is_stance: false,
energy_cost_per_strike: 25,
meta: (
kind: Some(Sword(Crippling)),
),
)

View File

@ -1,28 +0,0 @@
DashMelee(
energy_cost: 10.0,
melee_constructor: (
kind: Stab(
damage: 4.0,
poise: 0.0,
knockback: 8.0,
energy_regen: 0.0,
),
scaled: Some(Stab(
damage: 16.0,
poise: 0.0,
knockback: 7.0,
energy_regen: 0.0,
)),
range: 4.0,
angle: 60.0,
),
energy_drain: 30.0,
forward_speed: 2.5,
buildup_duration: 0.2,
charge_duration: 1.2,
swing_duration: 0.1,
recover_duration: 0.5,
ori_modifier: 0.3,
charge_through: true,
is_interruptible: true,
)

View File

@ -0,0 +1,12 @@
SelfBuff(
buildup_duration: 0.15,
cast_duration: 0.4,
recover_duration: 0.25,
buff_kind: ProtectingWard,
buff_strength: 0.4,
buff_duration: Some(30.0),
energy_cost: 40,
meta: (
kind: Some(Sword(Defensive)),
),
)

View File

@ -0,0 +1,47 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 8,
poise: 0,
knockback: 0,
energy_regen: 8,
),
range: 3.0,
angle: 45.0,
),
buildup_duration: 0.3,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.5,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Slash(
damage: 12,
poise: 0,
knockback: 0,
energy_regen: 10,
),
range: 3.0,
angle: 45.0,
),
buildup_duration: 0.2,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.3,
ori_modifier: 0.6,
),
],
is_stance: true,
energy_cost_per_strike: 2,
meta: (
kind: Some(Sword(Defensive)),
capabilities: (
// Blocking can interrupt attack
bits: 0b00000010,
),
),
)

View File

@ -0,0 +1,31 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 16,
poise: 0,
knockback: 0,
energy_regen: 5,
),
range: 6.0,
angle: 45.0,
),
buildup_duration: 0.1,
swing_duration: 0.1,
hit_timing: 0.6,
recover_duration: 0.5,
movement: (
buildup: None,
swing: None,
recover: Some(Reverse(1.5)),
),
ori_modifier: 0.6,
),
],
is_stance: false,
energy_cost_per_strike: 10,
meta: (
kind: Some(Sword(Defensive)),
),
)

View File

@ -0,0 +1,47 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Bash(
damage: 18,
poise: 5,
knockback: 5,
energy_regen: 10,
),
range: 3.0,
angle: 45.0,
),
buildup_duration: 0.5,
swing_duration: 0.2,
hit_timing: 0.5,
recover_duration: 0.5,
ori_modifier: 0.6,
),
(
melee_constructor: (
kind: Bash(
damage: 30,
poise: 5,
knockback: 5,
energy_regen: 15,
),
range: 3.0,
angle: 45.0,
),
buildup_duration: 0.6,
swing_duration: 0.2,
hit_timing: 0.5,
recover_duration: 0.4,
ori_modifier: 0.6,
),
],
is_stance: true,
energy_cost_per_strike: 4,
meta: (
kind: Some(Sword(Heavy)),
capabilities: (
// Poise and knockback resistant during attack
bits: 0b00011000,
),
),
)

View File

@ -0,0 +1,30 @@
FinisherMelee(
energy_cost: 40,
buildup_duration: 0.4,
swing_duration: 0.2,
recover_duration: 0.4,
melee_constructor: (
kind: Bash(
damage: 40,
poise: 40,
knockback: 0,
energy_regen: 10,
),
scaled: Some(Bash(
damage: 10,
poise: 20,
knockback: 0,
energy_regen: 0,
)),
range: 3.0,
angle: 15.0,
),
scaling: Some((
target: Attack,
kind: Linear,
)),
minimum_combo: 10,
meta: (
kind: Some(Sword(Heavy)),
),
)

View File

@ -0,0 +1,12 @@
SelfBuff(
buildup_duration: 0.2,
cast_duration: 0.2,
recover_duration: 0.6,
buff_kind: Fortitude,
buff_strength: 0.5,
buff_duration: Some(30.0),
energy_cost: 40,
meta: (
kind: Some(Sword(Heavy)),
),
)

View File

@ -0,0 +1,26 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Bash(
damage: 20,
poise: 25,
knockback: 0,
energy_regen: 5,
),
range: 4.0,
angle: 5.0,
),
buildup_duration: 0.2,
swing_duration: 0.1,
hit_timing: 0.6,
recover_duration: 0.4,
ori_modifier: 0.6,
),
],
is_stance: false,
energy_cost_per_strike: 15,
meta: (
kind: Some(Sword(Heavy)),
),
)

Some files were not shown because too many files have changed in this diff Show More