Give your undead a brain.
具身智能 / Embodied Intelligence is a configurable combat-AI overhaul for hostile mobs.
Vanilla zombies walk at you and swing. These ones hold your weapon's reach, orbit you in
squad slots, dart in when you look away, throw blocks with movement prediction, dodge your
arrows mid-flight, tunnel through walls to reach you, and share your position with the
horde. Everything is opt-in per mob type — one line in the config turns a feature on for
the mobs you choose.
What it does
Combat
- Keep-distance kiting — holds just outside your weapon reach and orbits, in slots
distributed around you by group size.
- Dart attacks — charges when you look away, interrupts you while you eat, drink or
draw a bow, and counter-charges after being hit.
- Thrown blocks — picks up loose blocks, leads your movement, throws for damage,
breaks soft blocks on impact, and builds a 2-block cover wall when shot.
- Projectile dodging — arc-aware prediction for arrows, tridents, snowballs, eggs,
potions, fireballs and thrown blocks; sidesteps to the safe side with a smoke puff.
- Low-HP guerrilla — below 25% health it retreats further, stops charging and throws
more often.
- Flanking — orbit slots are centred on your blind side.
Movement and pathing
- Wall climbing, tunnelling through obstacles, bridging, trap escape, group flow-field
pathfinding, jumping chases, jockey riding (baby mobs on adults).
Team and perception
- Last-seen target memory with blind throwing, hive-mind position sharing between mobs,
smart target priority, one-sided hostility rules.
Everything is a list
Open config/embodied_intelligence-common.toml and add mob IDs to the lists you want:
climbEntities — wall climbing
diggingEntities / diggingTargetBlocks — tunnelling and target-block seeking
targetingEntities / hostilityRules — target selection and one-sided hate
broadcastEntities / broadcastReceiverEntities — hive-mind sharing
memoryEntities — last-seen memory and blind throwing
keepDistanceEntities — kiting (the flagship combat behaviour)
dodgeEntities — projectile dodging
jockeyEntities — baby mobs riding adults
ID lists accept full (minecraft:zombie) or short (zombie) IDs, and modded mobs work
too. Empty list = feature off. Typos and IDs from uninstalled mods are reported in the
log at startup instead of silently doing nothing.
Requirements
- Minecraft 1.19.2, Forge 43.x, Java 17
- Server-side mod: no client mod required.
displayTest="IGNORE_ALL_VERSION" means
vanilla clients can join a server running it (the debug overlay channel is skipped for
clients without the mod).
Optional integrations (not required)
- Better Combat — if installed, mobs use its weapon attack ranges for spacing.
- Sona / Sona Survival — if installed, thrown-block hits can spread infection.
In-game helpers (operator)
/embodiedintelligence features (alias /ei) prints feature switches, resolved config
lists with invalid-ID markers, and behaviour counters.
/embodiedintelligence status | probe | dump | blocks <r> help diagnose mob behaviour.
The legacy command /smartmobs still works as an alias.
Performance
All features are per-mob, per-type and throttled; idle mobs cost almost nothing. The mod
does not touch world generation or rendering, and it needs no client rendering at all.
Upgrading from Smart Mobs 1.x
Replace the jar and rename config/smart_mobs-common.toml to
config/embodied_intelligence-common.toml (keys are unchanged). Existing worlds keep
working.
License
MIT. See the LICENSE file in the jar distribution.