一键导入
npc-encounter
Generate memorable NPCs and handle social interactions, dialogue, and persuasion. Use this when the player meets or interacts with an NPC.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Generate memorable NPCs and handle social interactions, dialogue, and persuasion. Use this when the player meets or interacts with an NPC.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Handle tactical combat encounters with initiative, attacks, saving throws, and dice rolls. Use this when the player wants to fight enemies or resolve combat.
Guide the player through creating a new RPG character, or display an existing character sheet. Use this when the player wants to create or roll a new character, or when they ask to view, show, or display a character sheet.
Handle exploration of surroundings, searching for secrets, and investigating the environment. Use this when the player wants to explore, search, or investigate.
Handle character advancement when XP reaches the level-up threshold. Use this when a character levels up or the player asks to level up.
Generate treasure, magical items, and loot drops for combat, treasure hoards, and hidden caches. Use this when generating loot or the player searches for treasure.
Handle spellcasting, ritual magic, magical item use, and wild magic events. Use this when the player wants to cast a spell or use magic.
| name | npc-encounter |
| description | Generate memorable NPCs and handle social interactions, dialogue, and persuasion. Use this when the player meets or interacts with an NPC. |
Generate memorable NPCs and handle social interactions.
Copy this checklist and mark each step complete as you go:
- [ ] 1. Load character & campaign state
- [ ] 2. Generate NPC (if new) from npc-tables.md
- [ ] 3. Introduce the NPC dramatically
- [ ] 4. Handle dialogue and social skill checks
- [ ] 5. Deliver quest (if applicable)
- [ ] 6. Handle information trading
- [ ] 7. Save recurring NPC to campaign file
- [ ] 8. Update state (dispositions, quests, XP, time)
Read campaign and character files to understand:
Roll on the tables in npc-tables.md for race, alignment, disposition, personality quirk, and secret.
Generate: name, occupation, appearance (2 sentences), motivation, and key information they possess. The NPC's alignment should inform their behavior, dialogue tone, and willingness to cooperate.
Display the NPC card (see RULES.md § "Display Formatting — NPC Cards") with the NPC's name, race, alignment, occupation, disposition, location, and a two-sentence appearance description. Use the disposition icon from the table (🔴 Hostile, 🟡 Suspicious, ⚪ Neutral, 🟢 Friendly, 💛 Grateful, 🟣 Mysterious).
Then narrate the encounter dramatically. Describe:
Role-play the NPC in character. Maintain their personality, alignment, quirk, and disposition consistently. Alignment should guide how the NPC responds — a Lawful NPC respects authority and agreements, a Chaotic NPC is unpredictable, a Good NPC is helpful, and an Evil NPC acts in self-interest.
When the player attempts to influence the NPC:
Persuasion (CHA) — Honest appeal, reasoning, charm
Deception (CHA) — Lying, bluffing, misleading
Intimidation (CHA or STR) — Threats, displays of power
Insight (WIS) — Reading the NPC
Performance (CHA) — Entertaining, impressing
Track disposition changes. If the player is consistently kind/helpful, shift up. If aggressive/rude, shift down. Save to campaign file.
If the NPC has a quest to offer:
quests.activeQuest format:
{
"name": "Quest Title",
"giver": "NPC Name",
"description": "What needs to be done",
"reward": "Gold, items, information, or favor",
"deadline": "Urgent / 3 days / no deadline",
"status": "active"
}
NPCs can share:
When an NPC is memorable or quest-related, save them to the campaign file:
{
"name": "NPC Name",
"race": "...",
"alignment": "...",
"occupation": "...",
"location": "...",
"disposition": "friendly",
"quirk": "...",
"secret": "...",
"quests_given": [],
"relationship_notes": "Helped the party, owes them nothing currently"
}