MobAiReducer Module

The MobAiReducer module optimizes mob AI and pathfinding to reduce server load, improve performance in mob-heavy areas, and prevent lag caused by complex entity behavior.

MobAiReducer:
  enabled: true
  worlds:
    - '*'
  values:
    collides: true
    silent: false
    async: true
    force_load: true
    click_event: true
    purge_interval: 30
    ignore_models: true
    spawn_reasons:
      - NATURAL
      - SPAWNER_EGG
      - SPAWNER
      - EGG
      - BREEDING
      - DISPENSE_EGG
      - ENDER_PEARL
      - COMMAND
    entities:
      animals: true
      monsters: true
      villagers: false
      tameable: false
      birds: false
      others: true
    list_mode: false
    list:
      - WOLF
      - MOOSHROOM
      - SNOW_GOLEM
      - IRON_GOLEM
      - ENDER_DRAGON
      - WARDEN
    pathfinder:
      keep_dedicated: true
      list_mode: false
      list:
        - AttackableTarget
        - HurtByTarget
        - Attack
        - BowShoot
        - Swell
        - Eat
        - FishSchool
        - Sit
        - FollowOwner
        - Panic
    animals:
      tempt:
        enabled: true
        range: 6.25
        speed: 1.25
        cooldown: 30
        villagers: true
        trigger_both_hands: true
        event: false
        teleport: false
      breed:
        enabled: true
        range: 5.0
        speed: 1.0
        event: false
        teleport: false

🧩 Option Explanations

  • collides — Disables collisions between optimized mobs, allowing up to 2x more entities, but may affect arrow hits.

  • silent — Disables audio packets from mobs to improve performance on large farms.

  • async — Runs optimizations asynchronously.

  • force_load — Overwrites mob AI on plugin reload.

  • click_event — Sends info when a player clicks an optimized mob (currently disabled by developer).

  • purge_interval — Cache purge interval in seconds for optimized mobs (prevents memory leaks; does not remove entities).

  • ignore_models — When true, entities from ModelEngine or MythicMobs are excluded from optimization.


🔹 Spawn reasons (spawn_reasons)

List of mob spawn reasons that trigger MobAiReducer optimizations. See CreatureSpawnEvent.SpawnReason for full list.


🔹 Entities Selection (entities)

Which entities are optimized:

Option
Description

animals

Land-based passive mobs

monsters

Hostile mobs

villagers

Villagers

tameable

Pets (wolves, horses, cats, parrots)

birds

Flying entities (bees, parrots)

others

Other entity types

  • list_mode — If true, only entities listed in list are optimized; if false, all unlisted entities are optimized.

  • list — Specific entity types to optimize. See EntityType API.


🔹 Pathfinders (pathfinder)

Controls mob pathfinding AI optimizations.

  • keep_dedicated — Keeps dedicated pathfinders (e.g., creeper explosion AI).

  • list_mode — If true, only pathfinders in list are removed; if false, all unlisted pathfinders are removed.

  • list — Pathfinder class names or phrases to target, e.g., AttackableTarget, BowShoot.


🔹 Animal-Specific Optimizations (animals)

Tempt Behavior (tempt)

Optimizes animals attracted to players (e.g., cows, sheep, villagers).

  • enabled — Enable/disable optimization.

  • range — Player search range (blocks).

  • speed — Movement speed toward player.

  • cooldown — Player search cooldown (ticks).

  • villagers — Villagers follow players holding emeralds.

  • trigger_both_hands — Check both hands for food items.

  • event — Calls EntityTargetEvent with reason Tempt.

  • teleport — Teleports animals toward player for optimization (not recommended).

Breeding Behavior (breed)

Optimizes animal breeding interactions.

  • enabled — Enable/disable optimization.

  • range — Partner search range (blocks).

  • speed — Movement speed toward partner.

  • event — Calls EntityTargetEvent with reason Custom.

  • teleport — Teleports animals to partners (not recommended).

Last updated