mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Addressed comments and more testing feedback.
This commit is contained in:
parent
240a8e577d
commit
2652660a58
@ -28,6 +28,8 @@
|
||||
"buff.desc.cursed": "You are cursed.",
|
||||
"buff.title.burn": "On Fire",
|
||||
"buff.desc.burn": "You are burning alive",
|
||||
"buff.title.crippled": "Crippled",
|
||||
"buff.desc.crippled": "Your movement is crippled as your legs are heavily injured.",
|
||||
// Buffs stats
|
||||
"buff.stat.health": "Restores {str_total} Health",
|
||||
"buff.stat.increase_max_stamina": "Raises Maximum Stamina by {strength}",
|
||||
|
@ -441,7 +441,7 @@ impl Body {
|
||||
biped_large::Species::Wendigo => 2800,
|
||||
biped_large::Species::Troll => 2400,
|
||||
biped_large::Species::Dullahan => 3000,
|
||||
biped_large::Species::Mindflayer => 8000,
|
||||
biped_large::Species::Mindflayer => 25000,
|
||||
biped_large::Species::Tidalwarrior => 2500,
|
||||
biped_large::Species::Yeti => 4000,
|
||||
biped_large::Species::Minotaur => 30000,
|
||||
@ -553,10 +553,11 @@ impl Body {
|
||||
biped_large::Species::Wendigo => 80,
|
||||
biped_large::Species::Troll => 60,
|
||||
biped_large::Species::Dullahan => 120,
|
||||
biped_large::Species::Mindflayer => 250,
|
||||
biped_large::Species::Tidalwarrior => 90,
|
||||
biped_large::Species::Yeti => 80,
|
||||
biped_large::Species::Harvester => 80,
|
||||
// Boss enemies have their health set, not adjusted by level.
|
||||
biped_large::Species::Mindflayer => 0,
|
||||
biped_large::Species::Minotaur => 0,
|
||||
_ => 100,
|
||||
},
|
||||
@ -606,7 +607,11 @@ impl Body {
|
||||
pub fn combat_multiplier(&self) -> f32 {
|
||||
match self {
|
||||
Body::Object(_) | Body::Ship(_) => 0.0,
|
||||
Body::BipedLarge(b) if matches!(b.species, biped_large::Species::Mindflayer) => 4.0,
|
||||
Body::BipedLarge(b) => match b.species {
|
||||
biped_large::Species::Mindflayer => 4.8,
|
||||
biped_large::Species::Minotaur => 3.2,
|
||||
_ => 1.0,
|
||||
},
|
||||
_ => 1.0,
|
||||
}
|
||||
}
|
||||
|
@ -14,22 +14,13 @@ use std::{cmp::Ordering, time::Duration};
|
||||
/// This is used to determine what effects a buff will have
|
||||
#[derive(Clone, Copy, PartialEq, Eq, Hash, Debug, Serialize, Deserialize, PartialOrd, Ord)]
|
||||
pub enum BuffKind {
|
||||
/// Does damage to a creature over time
|
||||
/// Strength should be 10x the DPS of the debuff
|
||||
Burning,
|
||||
// Buffs
|
||||
/// Restores health/time for some period
|
||||
/// Strength should be 10x the healing per second
|
||||
Regeneration,
|
||||
/// Restores health/time for some period for consumables
|
||||
/// Strength should be 10x the healing per second
|
||||
Saturation,
|
||||
/// Lowers health over time for some duration
|
||||
/// Strength should be 10x the DPS of the debuff
|
||||
Bleeding,
|
||||
/// Lower a creature's max health over time
|
||||
/// Strength only affects the target max health, 0.5 targets 50% of base
|
||||
/// max, 1.0 targets 100% of base max
|
||||
Cursed,
|
||||
/// Applied when drinking a potion
|
||||
/// Strength should be 10x the healing per second
|
||||
Potion,
|
||||
@ -49,14 +40,25 @@ pub enum BuffKind {
|
||||
/// Strength scales the damage reduction non-linearly. 0.5 provides 50% DR,
|
||||
/// 1.0 provides 67% DR
|
||||
ProtectingWard,
|
||||
/// Reduces movement speed and causes bleeding damage
|
||||
/// Strength scales the movement speed debuff non-linearly. 0.5 is 50%
|
||||
/// speed, 1.0 is 33% speed. Bleeding is at 10x the value of the strength.
|
||||
Crippled,
|
||||
/// Increases movement speed and gives health regeneration
|
||||
/// Strength scales the movement speed linearly. 0.5 is 150% speed, 1.0 is
|
||||
/// 200% speed. Provides regeneration at 10x the value of the strength
|
||||
Frenzied,
|
||||
// Debuffs
|
||||
/// Does damage to a creature over time
|
||||
/// Strength should be 10x the DPS of the debuff
|
||||
Burning,
|
||||
/// Lowers health over time for some duration
|
||||
/// Strength should be 10x the DPS of the debuff
|
||||
Bleeding,
|
||||
/// Lower a creature's max health over time
|
||||
/// Strength only affects the target max health, 0.5 targets 50% of base
|
||||
/// max, 1.0 targets 100% of base max
|
||||
Cursed,
|
||||
/// Reduces movement speed and causes bleeding damage
|
||||
/// Strength scales the movement speed debuff non-linearly. 0.5 is 50%
|
||||
/// speed, 1.0 is 33% speed. Bleeding is at 10x the value of the strength.
|
||||
Crippled,
|
||||
}
|
||||
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
|
@ -2569,10 +2569,9 @@ impl<'a> AgentData<'a> {
|
||||
const MINION_SUMMON_THRESHOLD: f32 = 0.20;
|
||||
let health_fraction = self.health.map_or(0.5, |h| h.fraction());
|
||||
// Sets counter at start of combat
|
||||
if agent.action_state.counter < MINION_SUMMON_THRESHOLD
|
||||
&& health_fraction > MINION_SUMMON_THRESHOLD
|
||||
{
|
||||
if agent.action_state.condition {
|
||||
agent.action_state.counter = 1.0 - MINION_SUMMON_THRESHOLD;
|
||||
agent.action_state.condition = true;
|
||||
}
|
||||
let mindflayer_is_far = dist_sqrd > MINDFLAYER_ATTACK_DIST.powi(2);
|
||||
if agent.action_state.counter > health_fraction {
|
||||
|
Loading…
Reference in New Issue
Block a user