Skip to main content

AI Goal Selectors

Goal selectors define what behaviors a mob can perform. They control movement, attacks, and general activities.

Usage

AIGoalSelectors:
  - clear              # Remove vanilla goals
  - meleeattack        # Attack targets in melee
  - randomstroll       # Wander randomly

Available Goal Selectors

clear

Removes all default goal selectors. Always use this first to prevent vanilla behavior.

meleeattack

Approach and attack the current target in melee range. Parameters:
ParameterTypeDefaultDescription
speednumber1.2Movement speed multiplier
rangenumber-Attack range in blocks
longmemorybooleantrueRemember target location
Example:
- meleeattack{speed=1.4;range=2.5}

randomstroll / randomwalk

Wander around randomly when not in combat. Parameters:
ParameterTypeDefaultDescription
speednumber1.0Walk speed multiplier
probabilityfloat0.001Chance to start strolling per tick

lookaround / randomlookaround

Randomly look around at the environment.

lookatplayers / lookplayers

Look at nearby players. Parameters:
ParameterTypeDefaultDescription
rangenumber8Look detection range

float

Swim upward in water to avoid drowning.

panic

Run away when damaged (for passive mobs). Parameters:
ParameterTypeDefaultDescription
speednumber1.25Panic movement speed

leapattarget / leap

Leap at the target entity. Parameters:
ParameterTypeDefaultDescription
velocityfloat0.4Leap force

fleesun / avoidsun

Seek shelter from sunlight (useful with PreventSunburn: true).

restrictsun

Avoid pathfinding into sunlight.

fleeplayers / avoidplayers

Run away from nearby players. Parameters:
ParameterTypeDefaultDescription
rangenumber8Flee range
speednumber1.0Walk speed when fleeing
sprintspeednumber1.2Sprint speed when close

breakdoors / breakdoor

Break through wooden doors (zombie behavior).

rangedattack / arrowattack

Attack targets with projectiles. Parameters:
ParameterTypeDefaultDescription
speednumber1.0Movement speed
rangenumber15Attack range
intervalint20Ticks between shots

followowner

Follow the owner (for tamed mobs). Parameters:
ParameterTypeDefaultDescription
speednumber1.0Follow speed
startdistancefloat10Start following at this distance
stopdistancefloat2Stop following at this distance

Priority System

Goals are processed from lowest to highest priority. Explicit priorities can be set:
AIGoalSelectors:
  - clear
  - 0 float             # Priority 0 (checked first)
  - 1 meleeattack       # Priority 1
  - 2 randomstroll      # Priority 2 (fallback behavior)

Example Configuration

SmartZombie:
  Type: ZOMBIE
  AIGoalSelectors:
    - clear
    - float                           # Don't drown
    - meleeattack{speed=1.3}          # Attack fast
    - leapattarget{velocity=0.5}      # Jump at target
    - breakdoors                      # Break through doors
    - randomstroll{speed=0.8}         # Patrol when idle
    - lookaround                      # Look around
  AITargetSelectors:
    - clear
    - hurtby
    - players