Endermite

Registry name

etfuturum.endermite

Basic info

  • Health: 8 HP
  • Armor: None
  • Size: 0.4 × 0.3 (width × height)
  • Spawn conditions: Spawns rarely when an enderman spawns (small chance), or when player places an endermite spawn egg
  • Drops: Nothing (overrides getDropItem() to return null)
  • Behaviour: Small, aggressive mite that endermen may become angry at. Dies after 2400 ticks (2 minutes) unless spawned by a player.

Stats

Attribute Value
Max health 8 HP
Movement speed 0.25
Attack damage 2

Lifetime

  • lifetime counter starts at 0
  • Increments each tick only when: not persistent (!isNoDespawnRequired()) AND no custom name
  • Dies at lifetime >= 2400 (2 real minutes)
  • Player-spawned mites set playerSpawned = true → exempt from lifetime death, but aggro endermen

Enderman aggro

Every 20 ticks, if playerSpawned == true:

  • Calls aggroEndermen(64) — searches within 32-block radius
  • 1-in-10 chance per tick to actually trigger aggro (to avoid mass aggro)
  • Finds all endermen within range with no current target
  • Sets those endermen to target this mite and sets them “screaming”

AI tasks

  1. Swimming
  2. Melee attack player
  3. Wander
  4. Watch closest player
  5. Look idle
  6. Target: hurt-by-target
  7. Target: nearest player

Spawn rules

  • getCanSpawnHere(): requires no player within 5 blocks
  • isValidLightLevel(): always returns true (can spawn in any light)

Notes

  • Creature attribute: ARTHROPOD
  • Experience value: 3 XP
  • renderYawOffset synced to rotationYaw each tick (no body twist)
  • Portal particles spawn around the mite on the client
  • getPickedResult: returns spawn egg via ModEntityList.getEggFromEntity
  • On client: portal particles every tick
  • Sound: silverfish sounds (mob.silverfish.say, .hit, .kill, .step)