Placing NPCs
Series: world-building · Part 5
An island without people is a ruin. NPCs are the locals — the keepers, the tenders, the fixtures who give a place its voice. They greet travelers, remember conversations, guard doors, sell goods, and gossip about the weather.
Creating an NPC
chart> create npc old-cael
Draft ready:
Name: Old Cael
Brief: A weathered man in an oilskin coat, standing by the gate.
Room: (unplaced)
[a]ccept [e]dit [r]egenerate [t]weak
Accept or edit the draft, then place the NPC in a room:
chart> move old-cael to harbor-gate
Placed: npc:your-realm/old-cael in room:your-realm/harbor-gate
The NPC now appears in the room’s occupant list. Travelers who look will see them.
The brief
Every NPC has a brief — a one-line description that appears in the room’s occupant list:
Old Cael is here, polishing a glass behind the bar.
The brief should be short, present-tense, and suggest what the NPC is doing right now. It is the first impression — the thing a traveler notices before deciding whether to engage.
chart> describe old-cael/brief
A weathered man in an oilskin coat, watching the harbor.
Brief set for npc:your-realm/old-cael.
The full description
When a traveler examines the NPC directly (look cael), they see the full description:
chart> describe old-cael
(Enter description. End with a blank line.)
Tall and lean, with hands that have hauled rope for decades.
His oilskin coat is salt-stained and patched at the elbows.
He watches the harbor with the patience of someone who has
seen every kind of weather and expects nothing to surprise him.
Description set for npc:your-realm/old-cael.
Write NPCs as you would write a character in fiction. What do they look like? What are they doing? What does their posture say about them?
Giving them a voice
The simplest way to make an NPC speak is canned lines — a pool of responses they draw from when addressed:
chart> /script
rig> edit old-cael lines
- "Evening. Road's washed out tonight. You'll stay."
- "Your cargo's your own, long as it stays sheathed."
- "The beacon's been dark since sundown. Don't expect news."
Lines set for npc:your-realm/old-cael (3 lines).
For conditional behaviour — responding differently based on who is speaking, what they are carrying, or what time it is — use behaviour rules. The full reference for rule syntax and predicates is in the NPC Behaviour documentation.
NPC presence
NPCs are always present in their room unless moved. They do not log in or out. They do not sleep (unless you script them to). They are fixtures — part of the landscape.
A good island has NPCs at its key points: the harbor (harbormaster), the market (merchants), the inn (keeper), the gate (guard). They give travelers someone to talk to, something to orient by, a sense that the place is inhabited even when no other players are online.
You have rooms, details, exits, and now people. The next step is building a vessel — a mobile island fragment that carries travelers across the sea.