NPCs for Minecraft servers, defined in JSON.
Every NPC is a JSON file you can edit by hand, through /animus commands, or in the web editor. NPCs walk routes, carry riders, fight, build schematics, run behaviors, open shops and chest GUIs, and play rig animations. They are drawn with packets for each player, so players join with an unmodified client and other plugins never see an NPC as an entity.
| Minecraft | 26.1.2, 26.2 and 26.3 |
| Java | 25 |
| Plugin servers | Paper, Spigot and Folia, one jar for all three |
| Mod servers | Fabric, NeoForge and Forge, as a server-side mod |
| Documentation | docs.volmitsoftware.com/animus |
Paper, Spigot, Folia and the mod loaders run the same NPC runtime, commands, behaviors, navigation, mounts, riding, combat and building. The differences are listed under platform differences: Folia runs each NPC on the region that owns its chunk, and mod servers have no protection plugin, no Vault economy and no Bukkit events.
- Put the jar in
plugins/(ormods/on a mod server) and start the server. - Follow your first ten minutes to make, skin and walk a first NPC.
- Coming from Citizens? Migrating from Citizens imports your NPCs together with Sentinel, Denizen, dtlTraders and Shopkeepers data, and one command undoes it.
Every command is listed under commands and permissions, and every config.toml setting under configuration.
Trusted Java modules add behavior actions, conditions, triggers and import converters. See Java modules and API and the reference module. Example behavior packs are in examples/packs/.
See building. The other notes in dev/ describe the internals for contributors.