Merge branch 'adlet' into 'master'

Adlets

See merge request veloren/veloren!3875
This commit is contained in:
Samuel Keiffer 2023-05-13 14:07:17 +00:00
commit 9f52e49e78
235 changed files with 5983 additions and 326 deletions

View File

@ -49,6 +49,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Airships can now have sprites, which can be interacted with. - Airships can now have sprites, which can be interacted with.
- Some sprites can be sat on. - Some sprites can be sat on.
- Pet birds can now sit on the player's shoulder as they explore the world. - Pet birds can now sit on the player's shoulder as they explore the world.
- Adlet caves
### Changed ### Changed

View File

@ -301,9 +301,11 @@
abilities: [], abilities: [],
), ),
Custom("Tursus Claws"): ( Custom("Tursus Claws"): (
primary: Simple(None, "common.abilities.custom.tursus_claws.basic"), primary: Simple(None, "common.abilities.custom.tursus.tursus_claws"),
secondary: Simple(None, "common.abilities.custom.tursus_claws.basic"), secondary: Simple(None, "common.abilities.custom.tursus.tusk_bash_leap"),
abilities: [], abilities: [
Simple(None, "common.abilities.custom.tursus.tusk_stab"),
],
), ),
Custom("Wendigo Magic"): ( Custom("Wendigo Magic"): (
primary: Simple(None, "common.abilities.custom.wendigomagic.frostbomb"), primary: Simple(None, "common.abilities.custom.wendigomagic.frostbomb"),
@ -352,6 +354,11 @@
secondary: Simple(None, "common.abilities.custom.quadmedbasic.triplestrike"), secondary: Simple(None, "common.abilities.custom.quadmedbasic.triplestrike"),
abilities: [], abilities: [],
), ),
Custom("Frostfang"): (
primary: Simple(None, "common.abilities.custom.frostfang.singlestrike"),
secondary: Simple(None, "common.abilities.custom.frostfang.triplestrike"),
abilities: [],
),
Custom("Roshwalr"): ( Custom("Roshwalr"): (
primary: Simple(None, "common.abilities.custom.roshwalr.doublehusk"), primary: Simple(None, "common.abilities.custom.roshwalr.doublehusk"),
secondary: Simple(None, "common.abilities.custom.roshwalr.slowcharge"), secondary: Simple(None, "common.abilities.custom.roshwalr.slowcharge"),
@ -540,6 +547,14 @@
], ],
), ),
// TODO: Allow ability sets to expand other ability sets // TODO: Allow ability sets to expand other ability sets
Custom("Ice Drake"): (
primary: Simple(None, "common.abilities.custom.icedrake.multi_bite"),
secondary: Simple(None, "common.abilities.custom.icedrake.icy_bite"),
abilities: [
Simple(None, "common.abilities.custom.icedrake.icebombs"),
Simple(None, "common.abilities.custom.icedrake.icebreath"),
],
),
Custom("Dagon"): ( Custom("Dagon"): (
primary: Simple(None, "common.abilities.custom.dagon.dagonbombs"), primary: Simple(None, "common.abilities.custom.dagon.dagonbombs"),
secondary: Simple(None, "common.abilities.custom.dagon.seaurchins"), secondary: Simple(None, "common.abilities.custom.dagon.seaurchins"),
@ -683,6 +698,11 @@
secondary: Simple(None, "common.abilities.music.lyre"), secondary: Simple(None, "common.abilities.music.lyre"),
abilities: [], abilities: [],
), ),
Custom("WildskinDrum"): (
primary: Simple(None, "common.abilities.music.wildskin_drum"),
secondary: Simple(None, "common.abilities.music.wildskin_drum"),
abilities: [],
),
Custom("IcyTalharpa"): ( Custom("IcyTalharpa"): (
primary: Simple(None, "common.abilities.music.icy_talharpa"), primary: Simple(None, "common.abilities.music.icy_talharpa"),
secondary: Simple(None, "common.abilities.music.icy_talharpa"), secondary: Simple(None, "common.abilities.music.icy_talharpa"),
@ -745,4 +765,29 @@
secondary: Simple(None, "common.abilities.empty.basic"), secondary: Simple(None, "common.abilities.empty.basic"),
abilities: [], abilities: [],
), ),
// Adlets
// TODO: Do we want to eventually convert these to simple variants of weapons?
Custom("Adlet Hunter"): (
primary: Simple(None, "common.abilities.adlet.hunter.stab"),
secondary: Simple(None, "common.abilities.adlet.hunter.throw"),
abilities: [],
),
Custom("Adlet Icepicker"): (
primary: Simple(None, "common.abilities.adlet.icepicker.spike"),
secondary: Simple(None, "common.abilities.adlet.icepicker.leap"),
abilities: [],
),
Custom("Adlet Tracker"): (
primary: Simple(None, "common.abilities.adlet.tracker.arrow"),
secondary: Simple(None, "common.abilities.adlet.tracker.trap"),
abilities: [],
),
Custom("Adlet Elder"): (
primary: Simple(None, "common.abilities.adlet.elder.triplestrike"),
secondary: Simple(None, "common.abilities.adlet.elder.dash"),
abilities: [
Simple(None, "common.abilities.adlet.elder.trap"),
Simple(None, "common.abilities.adlet.elder.leap"),
],
),
}) })

View File

@ -0,0 +1,27 @@
DashMelee(
energy_cost: 10.0,
melee_constructor: (
kind: Stab(
damage: 9.0,
poise: 40.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: 5.0,
angle: 45.0,
),
energy_drain: 0,
forward_speed: 4.0,
buildup_duration: 0.6,
charge_duration: 1.2,
swing_duration: 0.1,
recover_duration: 0.9,
ori_modifier: 0.3,
charge_through: false,
)

View File

@ -0,0 +1,27 @@
LeapMelee(
energy_cost: 0.0,
buildup_duration: 0.5,
movement_duration: 0.8,
swing_duration: 0.15,
recover_duration: 0.2,
melee_constructor: (
kind: Bash(
damage: 25.0,
poise: 40.0,
knockback: 25.0,
energy_regen: 0.0,
),
range: 4.5,
angle: 360.0,
multi_target: Some(Normal),
damage_effect: Some(Buff((
kind: Frozen,
dur_secs: 2.0,
strength: DamageFraction(0.1),
chance: 1.0,
))),
),
forward_leap_strength: 30.0,
vertical_leap_strength: 15.0,
specifier: Some(ElderLeap),
)

View File

@ -0,0 +1,16 @@
BasicRanged(
energy_cost: 0,
buildup_duration: 0.75,
recover_duration: 0.75,
projectile: Trap(
damage: 25,
knockback: 4,
energy_regen: 0,
),
projectile_body: Object(AdletTrap),
projectile_light: None,
projectile_speed: 20.0,
num_projectiles: 6,
projectile_spread: 0.3,
move_efficiency: 0.8,
)

View File

@ -0,0 +1,63 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Bash(
damage: 10,
poise: 15,
knockback: 5,
energy_regen: 0,
),
range: 2.5,
angle: 30.0,
),
buildup_duration: 0.9,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.4,
movement: (
swing: Some(Forward(1.0)),
),
ori_modifier: 0.7,
),
(
melee_constructor: (
kind: Slash(
damage: 10,
poise: 18,
knockback: 5,
energy_regen: 0,
),
range: 2.5,
angle: 30.0,
),
buildup_duration: 0.6,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.4,
ori_modifier: 0.7,
),
(
melee_constructor: (
kind: Bash(
damage: 10,
poise: 20,
knockback: 5,
energy_regen: 0,
),
range: 2.5,
angle: 30.0,
),
buildup_duration: 0.4,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.4,
movement: (
swing: Some(Forward(1.0)),
),
ori_modifier: 0.7,
),
],
energy_cost_per_strike: 0,
auto_progress: true,
)

View File

@ -0,0 +1,17 @@
BasicMelee(
energy_cost: 0,
buildup_duration: 0.4,
swing_duration: 0.2,
recover_duration: 0.4,
melee_constructor: (
kind: Stab(
damage: 10,
poise: 5,
knockback: 0,
energy_regen: 0,
),
range: 3,
angle: 5,
),
ori_modifier: 1.0,
)

View File

@ -0,0 +1,16 @@
BasicRanged(
energy_cost: 0,
buildup_duration: 0.8,
recover_duration: 0.8,
projectile: Arrow(
damage: 16,
knockback: 1,
energy_regen: 0,
),
projectile_body: Object(AdletSpear),
projectile_light: None,
projectile_speed: 40.0,
num_projectiles: 1,
projectile_spread: 0.0,
move_efficiency: 1.0,
)

View File

@ -0,0 +1,20 @@
LeapMelee(
energy_cost: 0.0,
buildup_duration: 0.6,
movement_duration: 0.2,
swing_duration: 0.1,
recover_duration: 0.3,
melee_constructor: (
kind: Stab(
damage: 20,
poise: 20,
knockback: 0,
energy_regen: 0,
),
range: 4,
angle: 360,
),
forward_leap_strength: 24,
vertical_leap_strength: 16,
specifier: None,
)

View File

@ -0,0 +1,17 @@
BasicMelee(
energy_cost: 0,
buildup_duration: 0.4,
swing_duration: 0.25,
recover_duration: 0.45,
melee_constructor: (
kind: Stab(
damage: 12,
poise: 10,
knockback: 0,
energy_regen: 0,
),
range: 3,
angle: 15,
),
ori_modifier: 1.0,
)

View File

@ -0,0 +1,16 @@
BasicRanged(
energy_cost: 0,
buildup_duration: 0.6,
recover_duration: 0.4,
projectile: Arrow(
damage: 12,
knockback: 0,
energy_regen: 0,
),
projectile_body: Object(Arrow),
projectile_light: None,
projectile_speed: 100.0,
num_projectiles: 1,
projectile_spread: 0.0,
move_efficiency: 0.3,
)

View File

@ -0,0 +1,16 @@
BasicRanged(
energy_cost: 0,
buildup_duration: 0.75,
recover_duration: 0.75,
projectile: Trap(
damage: 12,
knockback: 0,
energy_regen: 0,
),
projectile_body: Object(AdletTrap),
projectile_light: None,
projectile_speed: 10.0,
num_projectiles: 1,
projectile_spread: 0.2,
move_efficiency: 0.3,
)

View File

@ -17,4 +17,5 @@ LeapMelee(
), ),
forward_leap_strength: 20.0, forward_leap_strength: 20.0,
vertical_leap_strength: 8.0, vertical_leap_strength: 8.0,
specifier: None,
) )

View File

@ -12,4 +12,5 @@ BasicRanged(
projectile_light: None, projectile_light: None,
projectile_speed: 80.0, projectile_speed: 80.0,
num_projectiles: 5, num_projectiles: 5,
move_efficiency: 0.3,
) )

View File

@ -12,4 +12,5 @@ BasicRanged(
projectile_speed: 100.0, projectile_speed: 100.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 260.0, projectile_speed: 260.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.3, projectile_spread: 0.3,
move_efficiency: 0.3,
) )

View File

@ -17,4 +17,5 @@ LeapMelee(
), ),
forward_leap_strength: 40.0, forward_leap_strength: 40.0,
vertical_leap_strength: 7.5, vertical_leap_strength: 7.5,
specifier: None,
) )

View File

@ -16,4 +16,5 @@ LeapMelee(
), ),
forward_leap_strength: 25.0, forward_leap_strength: 25.0,
vertical_leap_strength: 10.0, vertical_leap_strength: 10.0,
specifier: None,
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 70.0, projectile_speed: 70.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -18,4 +18,5 @@ BasicRanged(
strength: DamageFraction(0.1), strength: DamageFraction(0.1),
chance: 1.0, chance: 1.0,
))), ))),
move_efficiency: 0.3,
) )

View File

@ -23,4 +23,5 @@ LeapMelee(
), ),
forward_leap_strength: 20.0, forward_leap_strength: 20.0,
vertical_leap_strength: 8.0, vertical_leap_strength: 8.0,
specifier: None,
) )

View File

@ -13,4 +13,5 @@ BasicRanged(
projectile_speed: 30.0, projectile_speed: 30.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -13,4 +13,5 @@ BasicRanged(
projectile_speed: 100.0, projectile_speed: 100.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0, projectile_spread: 0,
move_efficiency: 0.3,
) )

View File

@ -13,4 +13,5 @@ BasicRanged(
projectile_speed: 20.0, projectile_speed: 20.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -12,4 +12,5 @@ BasicRanged(
projectile_speed: 120.0, projectile_speed: 120.0,
num_projectiles: 3, num_projectiles: 3,
projectile_spread: 0.075, projectile_spread: 0.075,
move_efficiency: 0.3,
) )

View File

@ -13,4 +13,5 @@ BasicRanged(
projectile_speed: 20.0, projectile_speed: 20.0,
num_projectiles: 36, num_projectiles: 36,
projectile_spread: 0.4, projectile_spread: 0.4,
move_efficiency: 0.3,
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -0,0 +1,31 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Slash(
damage: 20,
poise: 28,
knockback: 3,
energy_regen: 0,
),
range: 2.7,
angle: 60.0,
damage_effect: Some(Buff((
kind: Frozen,
dur_secs: 10.0,
strength: Value(0.5),
chance: 1.0,
))),
),
buildup_duration: 0.8,
swing_duration: 0.1,
hit_timing: 0.5,
recover_duration: 0.8,
movement: (
swing: Some(Forward(1.0)),
),
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 0,
)

View File

@ -0,0 +1,63 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Bash(
damage: 10,
poise: 15,
knockback: 5.0,
energy_regen: 0,
),
range: 2.5,
angle: 30.0,
),
buildup_duration: 0.9,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.4,
movement: (
swing: Some(Forward(1.0)),
),
ori_modifier: 0.7,
),
(
melee_constructor: (
kind: Slash(
damage: 10,
poise: 18,
knockback: 5,
energy_regen: 0,
),
range: 2.5,
angle: 30.0,
),
buildup_duration: 0.8,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.4,
ori_modifier: 0.7,
),
(
melee_constructor: (
kind: Bash(
damage: 10,
poise: 20,
knockback: 5,
energy_regen: 0,
),
range: 2.5,
angle: 30.0,
),
buildup_duration: 0.8,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.4,
movement: (
swing: Some(Forward(1.0)),
),
ori_modifier: 0.7,
),
],
energy_cost_per_strike: 0,
auto_progress: true,
)

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -12,4 +12,5 @@ BasicRanged(
projectile_speed: 25.0, projectile_speed: 25.0,
num_projectiles: 5, num_projectiles: 5,
projectile_spread: 0.07, projectile_spread: 0.07,
move_efficiency: 0.3,
) )

View File

@ -13,4 +13,5 @@ BasicRanged(
projectile_speed: 30.0, projectile_speed: 30.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -0,0 +1,15 @@
BasicRanged(
energy_cost: 0,
buildup_duration: 0.6,
recover_duration: 1.0,
projectile: Frostball(
damage: 30.0,
radius: 3.0,
min_falloff: 0.1,
),
projectile_body: Object(IceBomb),
projectile_speed: 25.0,
num_projectiles: 3,
projectile_spread: 0.07,
move_efficiency: 0.75,
)

View File

@ -0,0 +1,19 @@
BasicBeam(
buildup_duration: 0.8,
recover_duration: 0.5,
beam_duration: 0.5,
damage: 10.0,
tick_rate: 3.0,
range: 15.0,
max_angle: 22.5,
damage_effect: Some(Buff((
kind: Frozen,
dur_secs: 10.0,
strength: Value(0.25),
chance: 0.25,
))),
energy_regen: 0,
energy_drain: 0,
ori_rate: 0.3,
specifier: Frost,
)

View File

@ -0,0 +1,31 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Bash(
damage: 40,
poise: 28,
knockback: 3,
energy_regen: 0,
),
range: 2.0,
angle: 60.0,
damage_effect: Some(Buff((
kind: Frozen,
dur_secs: 8.0,
strength: Value(0.3),
chance: 1.0,
))),
),
buildup_duration: 1.2,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.8,
movement: (
swing: Some(Forward(3.0)),
),
ori_modifier: 0.6,
),
],
energy_cost_per_strike: 0,
)

View File

@ -0,0 +1,65 @@
ComboMelee2(
strikes: [
(
melee_constructor: (
kind: Bash(
damage: 28,
poise: 15,
knockback: 3,
energy_regen: 0,
),
range: 2.2,
angle: 30.0,
),
buildup_duration: 1.3,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.6,
movement: (
swing: Some(Forward(2.0)),
),
ori_modifier: 0.65,
),
(
melee_constructor: (
kind: Bash(
damage: 28,
poise: 18,
knockback: 3,
energy_regen: 0,
),
range: 2.2,
angle: 30.0,
),
buildup_duration: 0.8,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.6,
movement: (
swing: Some(Forward(1.5)),
),
ori_modifier: 0.65,
),
(
melee_constructor: (
kind: Bash(
damage: 28,
poise: 20,
knockback: 3,
energy_regen: 0,
),
range: 2.2,
angle: 30.0,
),
buildup_duration: 0.8,
swing_duration: 0.07,
hit_timing: 0.5,
recover_duration: 0.6,
movement: (
swing: Some(Forward(1.5)),
),
ori_modifier: 0.65,
),
],
energy_cost_per_strike: 0,
)

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 70.0, projectile_speed: 70.0,
num_projectiles: 3, num_projectiles: 3,
projectile_spread: 0.2, projectile_spread: 0.2,
move_efficiency: 0.3,
) )

View File

@ -11,5 +11,6 @@ BasicRanged(
projectile_speed: 100.0, projectile_speed: 100.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 70.0, projectile_speed: 70.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -17,4 +17,5 @@ LeapMelee(
), ),
forward_leap_strength: 45.0, forward_leap_strength: 45.0,
vertical_leap_strength: 10.0, vertical_leap_strength: 10.0,
specifier: None,
) )

View File

@ -17,4 +17,5 @@ LeapMelee(
), ),
forward_leap_strength: 20.0, forward_leap_strength: 20.0,
vertical_leap_strength: 5.0, vertical_leap_strength: 5.0,
specifier: None,
) )

View File

@ -17,8 +17,8 @@ Shockwave(
ori_rate: 1.0, ori_rate: 1.0,
damage_effect: Some(Buff(( damage_effect: Some(Buff((
kind: Frozen, kind: Frozen,
dur_secs: 4.0, dur_secs: 5.0,
strength: DamageFraction(0.1), strength: DamageFraction(0.06),
chance: 1, chance: 1,
))), ))),
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -12,4 +12,5 @@ BasicRanged(
projectile_speed: 130.0, projectile_speed: 130.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -0,0 +1,21 @@
LeapMelee(
energy_cost: 35.0,
buildup_duration: 1.5,
movement_duration: 0.6,
swing_duration: 0.15,
recover_duration: 0.2,
melee_constructor: (
kind: Bash(
damage: 25.0,
poise: 40.0,
knockback: 25.0,
energy_regen: 0.0,
),
range: 4.5,
angle: 360.0,
multi_target: Some(Normal),
),
forward_leap_strength: 20.0,
vertical_leap_strength: 10.0,
specifier: None,
)

View File

@ -0,0 +1,24 @@
ChargedMelee(
energy_cost: 0,
energy_drain: 0,
melee_constructor: (
kind: Stab(
damage: 10.0,
poise: 50.0,
knockback: 0.0,
energy_regen: 0.0,
),
scaled: Some(Stab(
damage: 90.0,
poise: 150.0,
knockback: 0.0,
energy_regen: 0.0,
)),
range: 3.5,
angle: 45.0,
),
charge_duration: 1.6,
swing_duration: 0.1,
hit_timing: 0.8,
recover_duration: 1.0,
)

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -15,4 +15,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -2,7 +2,7 @@ BasicBeam(
buildup_duration: 1.2, buildup_duration: 1.2,
recover_duration: 0.5, recover_duration: 0.5,
beam_duration: 0.5, beam_duration: 0.5,
damage: 1.5, damage: 1.7,
tick_rate: 5.0, tick_rate: 5.0,
range: 15.0, range: 15.0,
max_angle: 30.0, max_angle: 30.0,

View File

@ -3,7 +3,7 @@ Shockwave(
buildup_duration: 0.9, buildup_duration: 0.9,
swing_duration: 0.15, swing_duration: 0.15,
recover_duration: 2.0, recover_duration: 2.0,
damage: 15.0, damage: 18.0,
poise_damage: 10, poise_damage: 10,
knockback: (strength: 18.0, direction: Up), knockback: (strength: 18.0, direction: Up),
shockwave_angle: 90.0, shockwave_angle: 90.0,

View File

@ -3,7 +3,7 @@ BasicRanged(
buildup_duration: 0.75, buildup_duration: 0.75,
recover_duration: 1.8, recover_duration: 1.8,
projectile: Snowball( projectile: Snowball(
damage: 30.0, damage: 35.0,
radius: 5.0, radius: 5.0,
min_falloff: 0.7, min_falloff: 0.7,
), ),
@ -11,4 +11,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -5,7 +5,7 @@ BasicMelee(
recover_duration: 2.0, recover_duration: 2.0,
melee_constructor: ( melee_constructor: (
kind: Bash( kind: Bash(
damage: 10.0, damage: 18.0,
poise: 50.0, poise: 50.0,
knockback: 50.0, knockback: 50.0,
energy_regen: 0.0, energy_regen: 0.0,

View File

@ -11,4 +11,5 @@ BasicRanged(
projectile_speed: 100.0, projectile_speed: 100.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -12,4 +12,5 @@ BasicRanged(
projectile_speed: 80.0, projectile_speed: 80.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -12,4 +12,5 @@ BasicRanged(
projectile_speed: 25, projectile_speed: 25,
num_projectiles: 8, num_projectiles: 8,
projectile_spread: 0.125, projectile_spread: 0.125,
move_efficiency: 0.3,
) )

View File

@ -17,4 +17,5 @@ LeapMelee(
), ),
forward_leap_strength: 20.0, forward_leap_strength: 20.0,
vertical_leap_strength: 8.0, vertical_leap_strength: 8.0,
specifier: None,
) )

View File

@ -0,0 +1,4 @@
Music(
play_duration: 0.4,
ori_modifier: 1.0,
)

View File

@ -12,4 +12,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -16,4 +16,5 @@ BasicRanged(
projectile_speed: 60.0, projectile_speed: 60.0,
num_projectiles: 1, num_projectiles: 1,
projectile_spread: 0.0, projectile_spread: 0.0,
move_efficiency: 0.3,
) )

View File

@ -0,0 +1,11 @@
#![enable(implicit_some)]
(
name: Automatic,
body: RandomWith("adlet_elder"),
alignment: Alignment(Enemy),
loot: MultiDrop(LootTable("common.loot_tables.dungeon.tier-1.elder"), 2, 2),
inventory: (
loadout: FromBody,
),
meta: [],
)

View File

@ -6,11 +6,11 @@
loot: LootTable("common.loot_tables.dungeon.tier-1.enemy"), loot: LootTable("common.loot_tables.dungeon.tier-1.enemy"),
inventory: ( inventory: (
loadout: Inline(( loadout: Inline((
inherit: Asset("common.loadout.dungeon.tier-1.hunter"), inherit: Asset("common.loadout.dungeon.adlet.hunter"),
active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.hunter"), None)), active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.hunter"), None)),
)), )),
), ),
meta: [ meta: [
SkillSetAsset("common.skillset.preset.rank1.fullskill"), SkillSetAsset("common.skillset.preset.rank1.general"),
], ],
) )

View File

@ -6,11 +6,11 @@
loot: LootTable("common.loot_tables.dungeon.tier-1.enemy"), loot: LootTable("common.loot_tables.dungeon.tier-1.enemy"),
inventory: ( inventory: (
loadout: Inline(( loadout: Inline((
inherit: Asset("common.loadout.dungeon.tier-1.icepicker"), inherit: Asset("common.loadout.dungeon.adlet.icepicker"),
active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.icepicker"), None)), active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.icepicker"), None)),
)), )),
), ),
meta: [ meta: [
SkillSetAsset("common.skillset.preset.rank1.fullskill"), SkillSetAsset("common.skillset.preset.rank1.general"),
], ],
) )

View File

@ -6,11 +6,11 @@
loot: LootTable("common.loot_tables.dungeon.tier-1.enemy"), loot: LootTable("common.loot_tables.dungeon.tier-1.enemy"),
inventory: ( inventory: (
loadout: Inline(( loadout: Inline((
inherit: Asset("common.loadout.dungeon.tier-1.tracker"), inherit: Asset("common.loadout.dungeon.adlet.tracker"),
active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.tracker"), None)), active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.tracker"), None)),
)), )),
), ),
meta: [ meta: [
SkillSetAsset("common.skillset.preset.rank1.fullskill"), SkillSetAsset("common.skillset.preset.rank1.general"),
], ],
) )

View File

@ -1,11 +0,0 @@
#![enable(implicit_some)]
(
name: Name("Rat"),
body: RandomWith("rat"),
alignment: Alignment(Enemy),
loot: LootTable("common.loot_tables.creature.quad_small.generic"),
inventory: (
loadout: FromBody,
),
meta: [],
)

View File

@ -3,7 +3,7 @@
name: Automatic, name: Automatic,
body: RandomWith("frostfang"), body: RandomWith("frostfang"),
alignment: Alignment(Enemy), alignment: Alignment(Enemy),
loot: LootTable("common.loot_tables.creature.quad_medium.ice"), loot: LootTable("common.loot_tables.creature.quad_medium.frostfang"),
inventory: ( inventory: (
loadout: FromBody, loadout: FromBody,
), ),

View File

@ -3,7 +3,7 @@
name: Automatic, name: Automatic,
body: RandomWith("icedrake"), body: RandomWith("icedrake"),
alignment: Alignment(Enemy), alignment: Alignment(Enemy),
loot: LootTable("common.loot_tables.creature.quad_medium.ice"), loot: LootTable("common.loot_tables.creature.quad_medium.icedrake"),
inventory: ( inventory: (
loadout: FromBody, loadout: FromBody,
), ),

View File

@ -0,0 +1,14 @@
ItemDef(
name: "Bear Bonnet",
description: "Wearing the guise of a ferocious bear, its fury becomes your own.",
kind: Armor((
kind: Head,
stats: Direct((
protection: Some(Normal(12.0)),
crit_power: Some(0.0095),
stealth: Some(0.21),
)),
)),
quality: Epic,
tags: [],
)

View File

@ -0,0 +1,14 @@
ItemDef(
name: "Howl Cowl",
description: "Wearing the guise of a fearsome wolf befits a fearsome hunter.",
kind: Armor((
kind: Head,
stats: Direct((
protection: Some(Normal(4.0)),
crit_power: Some(0.065),
stealth: Some(0.21),
)),
)),
quality: Epic,
tags: [],
)

View File

@ -0,0 +1,11 @@
ItemDef(
name: "Bone Key",
description: "Used to open bone locks. Will break after use.",
kind: Utility(
kind: Key,
),
amount: 1,
quality: Common,
tags: [Utility],
)

View File

@ -0,0 +1,13 @@
ItemDef(
name: "Tursus Skin",
description: "Born with it",
kind: Armor((
kind: Chest,
stats: Direct((
protection: Some(Normal(65.0)),
poise_resilience: Some(Normal(10.0)),
)),
)),
quality: Moderate,
tags: [],
)

View File

@ -4,8 +4,8 @@ ItemDef(
kind: Armor(( kind: Armor((
kind: Chest, kind: Chest,
stats: Direct(( stats: Direct((
protection: Some(Normal(0.0)), protection: Some(Normal(100.0)),
poise_resilience: Some(Normal(0.0)), poise_resilience: Some(Normal(30.0)),
)), )),
)), )),
quality: Legendary, quality: Legendary,

View File

@ -0,0 +1,14 @@
ItemDef(
name: "Frostfang's Thick Skin",
description: "testing123",
kind: Armor((
kind: Chest,
stats: Direct((
protection: Some(Normal(60.0)),
poise_resilience: Some(Normal(2.0)),
energy_max: Some(10),
)),
)),
quality: Epic,
tags: [],
)

View File

@ -4,7 +4,7 @@ ItemDef(
kind: Armor(( kind: Armor((
kind: Chest, kind: Chest,
stats: Direct(( stats: Direct((
protection: Some(Normal(100.0)), protection: Some(Normal(75.0)),
poise_resilience: Some(Normal(2.0)), poise_resilience: Some(Normal(2.0)),
energy_max: Some(10), energy_max: Some(10),
)), )),

View File

@ -5,11 +5,11 @@ ItemDef(
kind: Spear, kind: Spear,
hands: Two, hands: Two,
stats: ( stats: (
equip_time_secs: 0.0, equip_time_secs: 0.1,
power: 1.05, power: 1.0,
effect_power: 1.0, effect_power: 1.0,
speed: 0.75, speed: 1.0,
crit_chance: 0.07589286, crit_chance: 0.1,
range: 1.0, range: 1.0,
energy_efficiency: 1.0, energy_efficiency: 1.0,
buff_strength: 1.0, buff_strength: 1.0,
@ -17,5 +17,5 @@ ItemDef(
)), )),
quality: Low, quality: Low,
tags: [], tags: [],
ability_spec: None, ability_spec: Some(Custom("Adlet Hunter")),
) )

View File

@ -1,15 +1,15 @@
ItemDef( ItemDef(
name: "Icepicker Axe", name: "Icepicker Pick",
description: "", description: "",
kind: Tool(( kind: Tool((
kind: Axe, kind: Pick,
hands: Two, hands: Two,
stats: ( stats: (
equip_time_secs: 0.0, equip_time_secs: 0.1,
power: 0.7, power: 1.0,
effect_power: 0.8, effect_power: 1.0,
speed: 0.7, speed: 1.0,
crit_chance: 0.05059524, crit_chance: 0.1,
range: 1.0, range: 1.0,
energy_efficiency: 1.0, energy_efficiency: 1.0,
buff_strength: 1.0, buff_strength: 1.0,
@ -17,5 +17,5 @@ ItemDef(
)), )),
quality: Low, quality: Low,
tags: [], tags: [],
ability_spec: Some(Custom("Axe Simple")), ability_spec: Some(Custom("Adlet Icepicker")),
) )

View File

@ -6,16 +6,16 @@ ItemDef(
hands: Two, hands: Two,
stats: ( stats: (
equip_time_secs: 0.0, equip_time_secs: 0.0,
power: 1.05, power: 1.0,
effect_power: 0.8, effect_power: 1.0,
speed: 0.4, speed: 1.0,
crit_chance: 0.08406594, crit_chance: 0.1,
range: 1.0, range: 1.0,
energy_efficiency: 1.0, energy_efficiency: 1.0,
buff_strength: 1.0, buff_strength: 1.0,
), ),
)), )),
quality: Moderate, quality: Low,
tags: [], tags: [],
ability_spec: Some(Custom("Bow Simple")), ability_spec: Some(Custom("Adlet Tracker")),
) )

View File

@ -0,0 +1,21 @@
ItemDef(
name: "Adlet Elder Sword",
description: "Placeholder",
kind: Tool((
kind: Sword,
hands: One,
stats: (
equip_time_secs: 0.5,
power: 1.5,
effect_power: 1.0,
speed: 0.75,
crit_chance: 0.0625,
range: 1.0,
energy_efficiency: 1.0,
buff_strength: 1.0,
),
)),
quality: Low,
tags: [],
ability_spec: Some(Custom("Adlet Elder")),
)

View File

@ -0,0 +1,21 @@
ItemDef(
name: "Frostfang",
description: "testing123",
kind: Tool((
kind: Natural,
hands: Two,
stats: (
equip_time_secs: 0.01,
power: 1.0,
effect_power: 1.0,
speed: 1.0,
crit_chance: 0.0625,
range: 1.0,
energy_efficiency: 1.0,
buff_strength: 1.0,
),
)),
quality: Low,
tags: [],
ability_spec: Some(Custom("Frostfang")),
)

View File

@ -0,0 +1,21 @@
ItemDef(
name: "Ice Drake",
description: "testing123",
kind: Tool((
kind: Natural,
hands: Two,
stats: (
equip_time_secs: 0.01,
power: 1.0,
effect_power: 1.0,
speed: 1.0,
crit_chance: 0.0625,
range: 1.0,
energy_efficiency: 1.0,
buff_strength: 1.0,
),
)),
quality: Low,
tags: [],
ability_spec: Some(Custom("Ice Drake")),
)

View File

@ -0,0 +1,21 @@
ItemDef(
name: "Wildskin Drum",
description: "one, two, you know what to do!",
kind: Tool((
kind: Instrument,
hands: Two,
stats: (
equip_time_secs: 0.4,
power: 0.0,
effect_power: 1.0,
speed: 1.0,
crit_chance: 0.0,
range: 0.0,
energy_efficiency: 1.0,
buff_strength: 1.0,
),
)),
quality: Legendary,
tags: [Utility],
ability_spec: Some(Custom("WildskinDrum")),
)

View File

@ -0,0 +1,5 @@
[
(1.0, MultiDrop(Item("common.items.crafting_ing.animal_misc.icy_fang"), 1, 2)),
(1.0, MultiDrop(Item("common.items.crafting_ing.animal_misc.sharp_fang"), 1, 3)),
(1.0, Item("common.items.crafting_ing.hide.tough_hide")),
]

View File

@ -0,0 +1,5 @@
[
(1.0, MultiDrop(Item("common.items.crafting_ing.animal_misc.icy_fang"), 1, 2)),
(1.0, MultiDrop(Item("common.items.food.meat.tough_raw"), 1, 2)),
(1.0, Item("common.items.crafting_ing.hide.carapace")),
]

View File

@ -1,8 +1,9 @@
[ [
// Weapons // Weapons
(4.0, LootTable("common.loot_tables.weapons.tier-2")), (4.0, LootTable("common.loot_tables.weapons.tier-3")),
// Armor // Armor
(4.0, LootTable("common.loot_tables.armor.tier-2")), (4.0, LootTable("common.loot_tables.armor.tier-3")),
// Misc // Misc
(2.0, Item("common.items.armor.misc.neck.pendant_of_protection")), (1.0, Item("common.items.armor.misc.head.bear_bonnet")),
(1.0, Item("common.items.armor.misc.head.howl_cowl")),
] ]

View File

@ -6,6 +6,7 @@
// Currency // Currency
(3.0, MultiDrop(Item("common.items.utility.coins"), 20, 50)), (3.0, MultiDrop(Item("common.items.utility.coins"), 20, 50)),
// Materials // Materials
(2.0, MultiDrop(Item("common.items.mineral.ore.veloritefrag"), 3, 10)),
(1.0, MultiDrop(Item("common.items.crafting_ing.cloth.wool"), 3, 10)), (1.0, MultiDrop(Item("common.items.crafting_ing.cloth.wool"), 3, 10)),
(1.0, MultiDrop(Item("common.items.crafting_ing.leather.thick_leather"), 3, 10)), (1.0, MultiDrop(Item("common.items.crafting_ing.leather.thick_leather"), 3, 10)),
(1.0, MultiDrop(Item("common.items.mineral.ingot.iron"), 3, 10)), (1.0, MultiDrop(Item("common.items.mineral.ingot.iron"), 3, 10)),

View File

@ -0,0 +1,6 @@
[
// Misc
(5.0, Item("common.items.keys.bone_key")),
(1.0, LootTable("common.loot_tables.dungeon.tier-1.elder_extra")),
]

View File

@ -0,0 +1,9 @@
[
// Weapons
(4.0, LootTable("common.loot_tables.weapons.tier-2")),
// Armor
(4.0, LootTable("common.loot_tables.armor.tier-2")),
// Misc
(2.0, Item("common.items.armor.misc.neck.pendant_of_protection")),
(0.5, Item("common.items.tool.instruments.wildskin_drum")),
]

View File

@ -10,6 +10,7 @@
(1.0, MultiDrop(Item("common.items.crafting_ing.hide.carapace"), 2, 6)), (1.0, MultiDrop(Item("common.items.crafting_ing.hide.carapace"), 2, 6)),
(1.0, MultiDrop(Item("common.items.mineral.ingot.cobalt"), 2, 6)), (1.0, MultiDrop(Item("common.items.mineral.ingot.cobalt"), 2, 6)),
(1.0, MultiDrop(Item("common.items.log.ironwood"), 3, 7)), (1.0, MultiDrop(Item("common.items.log.ironwood"), 3, 7)),
(2.0, MultiDrop(Item("common.items.mineral.ore.velorite"), 3, 10)),
// Consumables // Consumables
(2.0, LootTable("common.loot_tables.consumable.moderate")), (2.0, LootTable("common.loot_tables.consumable.moderate")),
] ]

View File

@ -965,6 +965,10 @@
gigas_frost: ( gigas_frost: (
keyword: "gigas_frost", keyword: "gigas_frost",
generic: "Frost Gigas" generic: "Frost Gigas"
),
adlet_elder: (
keyword: "adlet_elder",
generic: "Adlet Elder"
) )
) )
), ),

View File

@ -401,5 +401,6 @@
(Item("common.items.tool.instruments.melodica"),1), (Item("common.items.tool.instruments.melodica"),1),
(Item("common.items.tool.instruments.sitar"),1), (Item("common.items.tool.instruments.sitar"),1),
(Item("common.items.tool.instruments.washboard"),1), (Item("common.items.tool.instruments.washboard"),1),
(Item("common.items.tool.instruments.wildskin_drum"),1),
], ],
}) })

View File

@ -871,6 +871,20 @@
threshold: 0.5, threshold: 0.5,
subtitle: "subtitle-instrument_washboard", subtitle: "subtitle-instrument_washboard",
), ),
Music(Instrument, Custom("WildskinDrum")): (
files: [
"voxygen.audio.sfx.instrument.wildskin_drum.wildskin_drum_c",
"voxygen.audio.sfx.instrument.wildskin_drum.wildskin_drum_d",
"voxygen.audio.sfx.instrument.wildskin_drum.wildskin_drum_e",
"voxygen.audio.sfx.instrument.wildskin_drum.wildskin_drum_f",
"voxygen.audio.sfx.instrument.wildskin_drum.wildskin_drum_g",
"voxygen.audio.sfx.instrument.wildskin_drum.wildskin_drum_a",
"voxygen.audio.sfx.instrument.wildskin_drum.wildskin_drum_b",
"voxygen.audio.sfx.instrument.wildskin_drum.wildskin_drum_c1",
],
threshold: 0.5,
subtitle: "subtitle-instrument_wildskin_drum",
),
Inventory(CollectedTool(Instrument)): ( Inventory(CollectedTool(Instrument)): (
files: [ files: [
"voxygen.audio.sfx.inventory.add_item", "voxygen.audio.sfx.inventory.add_item",
@ -1261,6 +1275,12 @@
threshold: 0.2, threshold: 0.2,
subtitle: "subtitle-arrow_shot", subtitle: "subtitle-arrow_shot",
), ),
Yeet: (
files: [
"voxygen.audio.sfx.abilities.yeet",
],
threshold: 0.3,
),
FireShot: ( FireShot: (
files: [ files: [
"voxygen.audio.sfx.abilities.fire_shot_1", "voxygen.audio.sfx.abilities.fire_shot_1",
@ -1283,6 +1303,18 @@
threshold: 0.2, threshold: 0.2,
subtitle: "subtitle-arrow_hit", subtitle: "subtitle-arrow_hit",
), ),
Klonk: (
files: [
"voxygen.audio.sfx.abilities.klonk",
],
threshold: 0.4,
),
SmashKlonk: (
files: [
"voxygen.audio.sfx.abilities.smashklonk",
],
threshold: 0.4,
),
SkillPointGain: ( SkillPointGain: (
files: [ files: [
"voxygen.audio.sfx.character.level_up_sound_-_shorter_wind_up", "voxygen.audio.sfx.character.level_up_sound_-_shorter_wind_up",
@ -1398,6 +1430,12 @@
threshold: 1.25, threshold: 1.25,
subtitle: "subtitle-attack-laser_beam", subtitle: "subtitle-attack-laser_beam",
), ),
Woosh: (
files: [
"voxygen.audio.sfx.abilities.woosh",
],
threshold: 0.4,
),
CyclopsCharge: ( CyclopsCharge: (
files: [ files: [
"voxygen.audio.sfx.abilities.cyclops_charge", "voxygen.audio.sfx.abilities.cyclops_charge",

BIN
assets/voxygen/audio/sfx/abilities/klonk.ogg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/audio/sfx/abilities/smashklonk.ogg (Stored with Git LFS) Normal file

Binary file not shown.

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