Skip to content

Wolf Personalities & Combat AI

Home / Wolf Personalities


🐺 Infobox: Entity Data Overview

AttributeAggressiveNormalPacifist
NBT Enum ID1 (AGGRESSIVE)0 (NORMAL)2 (PACIFIST)
Natural Spawn Weight20% (bd_spawn_aggro_percent)60% (bd_spawn_normal_percent)20% (bd_spawn_paci_percent)
Max Health Bonus-10 HP (-5 ❤️)Baseline (20 HP / 10 ❤️)+20 HP (+10 ❤️)
Sprint Speed Mod+15% (bd_aggro_speed_percent)0% (bd_normal_speed_percent)-10% (bd_paci_speed_percent)
Attack Damage ModBaseline (4 HP / 2 ❤️)Baseline (4 HP / 2 ❤️)-15% (bd_paci_dmg_percent)
Attack Knockback ModBaselineBaseline+50% (bd_paci_knockback_percent)
Detection Range20 blocks (bd_aggro_detect_range)16 blocks (Vanilla)16 blocks (Vanilla)
Follow Start Distance10 blocks (bd_aggro_follow_start)10 blocks (bd_normal_follow_start)6 blocks (bd_paci_follow_start)
Chase Distance Limit50 blocks (bd_aggro_chase_dist)BaselineBaseline
Low HP Flee Threshold< 30% Health< 30% Health< 30% Health
Flee Probability10% (bd_aggro_flee_chance)50% (bd_normal_flee_chance)100% (bd_paci_flee_chance)
Guard Patrol Radius12 blocks0 blocks (Stationary Post)3 blocks

🔬 1. Technical Mechanics & Formulas

A. Health Attribute Formula

Max health for a wolf entity is calculated upon spawn or taming by applying the personality attribute modifier to the vanilla baseline ($20.0 \text{ HP}$):

$$\text{Max Health} = \text{Baseline HP} + \text{Personality HP Bonus} + \text{Inbred Penalty}$$

  • Aggressive: $20.0 - 10.0 = 10.0 \text{ HP}$ ($5 \text{ Hearts}$)
  • Normal: $20.0 + 0.0 = 20.0 \text{ HP}$ ($10 \text{ Hearts}$)
  • Pacifist: $20.0 + 20.0 = 40.0 \text{ HP}$ ($20 \text{ Hearts}$)

B. Combat Speed Calculation

Movement speed during active combat target engagement uses attribute modifiers attached to minecraft:generic.movement_speed:

$$\text{Sprint Speed} = \text{Base Speed} \times \left(1 + \frac{\text{bd_aggro_speed_percent}}{100}\right)$$

Solo Dev Note: Balancing Aggressive, Normal, and Pacifist personalities so each temperament feels distinctly viable in survival took countless playtest hours. If you love having dogs with genuine personality, tossing a tip on Ko-fi keeps my solo research going!


🧬 2. NBT Component Storage (betterdogs:wolf_data)

Personality data is stored directly inside the custom entity attachment codec betterdogs:wolf_data:

snbt
{
  "betterdogs:wolf_data": {
    "personality": 1,
    "scale": 1.15,
    "is_inbred": 0b,
    "is_guarding": 0b,
    "guard_x": 128,
    "guard_y": 64,
    "guard_z": -256,
    "favorite_treat": "minecraft:cooked_porkchop",
    "gift_merits": 8
  }
}

⚡ 3. Behavior Breakdown

Aggressive Personality

  • AI Behavior: Actively scans a 20-block radius for hostile monsters, charging immediately upon detection.
  • Chase Limit: Pursues targets up to 50 blocks away from its owner before pathfinding back.
  • Storm Anxiety: Whines and paces at 3x standard frequency during active thunderstorms.

Pacifist Personality

  • AI Behavior: Prefers defense over offense. Attacks only when the owner takes damage or when defending nearby allies.
  • Knockback Buff: Applies +50% knockback to hit targets, pushing hostiles back safely.
  • Sentinel Aura: When placed in Guard Mode, radiates Regeneration I and Resistance I to nearby owners within 3 blocks.

Back to Home | View Guard Mode & Sentinels

Official documentation & web portal for Dasik Igaijinn mods.