Creating NPCs With Citizens: A Setup Guide

ZCraft Studios

A shopkeeper that stands still, a quest-giver with dialogue, a cosmetic character at spawn — Citizens is the plugin behind almost all of them.

Creating NPCs With Citizens: A Setup Guide

The shopkeeper standing at spawn isn't a player — it's an NPC, and Citizens is almost certainly what's running it.

Citizens creates and manages non-player characters (NPCs) that can look like players or mobs, hold a fixed position or patrol a path, and serve as the foundation for shops, quest-givers, or purely cosmetic characters.

Install Citizens

Drop Citizens.jar into plugins/ and restart. No initial configuration is required to start creating NPCs.

Creating Your First NPC

/npc create Shopkeeper

spawns a basic player-skin NPC at your current location, named "Shopkeeper." By default it has no behavior — it just stands there.

Changing the NPC's Skin

/npc skin <playername>

sets the NPC's appearance to match any Minecraft player's skin — useful for giving NPCs a distinct, non-generic look.

Making an NPC a Different Entity Type

/npc create GuardDog --type wolf

creates an NPC using a mob model instead of the default player skin — most vanilla entity types are supported.

Setting NPC Behavior

Citizens on its own mostly handles the NPC's existence and appearance — actual behavior (shops, dialogue, quests) usually comes from a Citizens-compatible plugin built on top of it, such as a quest plugin or a GUI shop plugin that spawns a Citizens NPC as its visual front-end.

Basic built-in behavior does exist though:

/npc lookclose

toggles whether the NPC turns to face nearby players — a small touch that makes a static NPC feel noticeably less robotic.

Setting a Patrol Path

/npc moveto

near a specific location, combined with waypoint commands, can give an NPC a path to patrol rather than staying fixed in one spot — useful for ambient, cosmetic NPCs wandering a town or spawn area.

Removing an NPC

/npc select <id or name>
/npc remove

selects a specific NPC, then removes it permanently.

Listing All NPCs

/npc list

shows every NPC currently on the server, with IDs — useful once a server has more than a handful and individual names get harder to track.

A Few Things Worth Knowing

  • Citizens NPCs don't have real AI by default — "lookclose" and pathing are the extent of built-in behavior; anything more complex comes from an add-on plugin.
  • NPCs persist across restarts automatically — they don't need to be recreated each time the server starts.
  • A player-skin NPC uses a real Mojang username for its skin — it doesn't need to be an actual player who has ever joined the server.
Share: