Generates complete NPCs for BFRPG with appearance, personality, motivations, and secrets. Uses the name generator. Perfect for populating the game world with memorable characters.
Skill pour générer des personnages non-joueurs complets avec description physique, personnalité, motivations et secrets.
# Compiler si nécessaire
go build -o sw-npc ./cmd/npc
# Générer un PNJ complet
./sw-npc generate
# Générer plusieurs PNJ rapidement
./sw-npc quick --count=5
./sw-npc generate [options]
# Options:
# --race=<race> Race (human, dwarf, elf, halfling)
# --gender=<m|f> Sexe
# --occupation=<type> Type d'occupation
# --attitude=<type> Attitude envers les PJ
# --format=<md|json|short> Format de sortie
./sw-npc quick [options]
# Mêmes options + --count=N pour plusieurs PNJ
| Type | Description | Exemples |
|------|-------------|----------|
| commoner | Gens du peuple | fermier, boulanger, serveur, mendiant |
| skilled | Artisans qualifiés | marchand, apothicaire, musicien, scribe |
| authority | Figures d'autorité | garde, sergent, noble, magistrat |
| underworld | Monde criminel | voleur, espion, contrebandier, assassin |
| religious | Religieux | prêtre, moine, pèlerin, inquisiteur |
| adventurer | Aventuriers | chasseur de primes, explorateur, mercenaire |
| Attitude | Description |
|----------|-------------|
| positive | Amical, serviable, accueillant |
| neutral | Professionnel, indifférent, prudent |
| negative | Méfiant, hostile, moqueur |
./sw-npc generate --race=dwarf --gender=m --occupation=skilled
Résultat:
## Thorin Ironfoot
**Nain Homme** - forgeron
### Apparence
Petit trapu, de stature trapu. Cheveux bruns tressés, yeux noisette...
### Personnalité
- **Trait principal** : travailleur
- **Trait secondaire** : traditionnel
- **Qualité** : loyal envers ses amis
- **Défaut** : est têtu
### Comportement
- **Voix** : grave et profonde, parle lentement
- **Tic** : se gratte la barbe en réfléchissant
- **Attitude** : professionnel et distant
### Secrets (MJ seulement)
- **Objectif** : amasser une fortune
- **Peur** : l'échec
- **Secret** : a des dettes importantes
./sw-npc quick --occupation=commoner --count=5
Résultat:
Aldric Ironhand - humain homme, fermier (calme, indifférent)
Rose Greenhill - halfelin femme, serveur (jovial, curieux mais réservé)
Legolas Moonwhisper - elfe homme, berger (distant, poli mais pressé)
...
./sw-npc generate --format=json
Pour logger les rencontres de PNJ :
# Générer un PNJ
./sw-npc generate --occupation=authority --attitude=positive
# Logger dans l'aventure
./sw-adventure log "Mon Aventure" npc "Rencontre avec le capitaine Aldric"
Le générateur utilise deux fichiers de données :
data/names.json - Dictionnaires de noms par racedata/npc-traits.json - Traits d'apparence, personnalité, motivationsApparence :
Personnalité :
Comportement :
Motivations (pour le MJ) :
./sw-npc generate --format=md
Sauvegardez la description complète pour référence future.
./sw-npc quick --count=10 --occupation=commoner
Descriptions courtes pour des PNJ de passage.
./sw-npc generate --attitude=negative --occupation=underworld
Un PNJ avec des motivations hostiles.
./sw-npc generate --attitude=positive --occupation=adventurer
Un PNJ qui pourrait aider le groupe.
Le générateur ajuste automatiquement l'apparence selon la race :
| Race | Ajustements | |------|-------------| | Nain | Petit, trapu/musclé/robuste | | Elfe | Grand, mince/svelte/élancé | | Halfelin | Très petit | | Humain | Variable |
Ce skill est utilisé par les agents suivants :
| Agent | Usage |
|-------|-------|
| dungeon-master | Création de PNJ à la volée |
Type : Skill autonome, peut être invoqué directement via /npc-generator
Dépendances : Utilise name-generator pour les noms des PNJ
npx skills add nicmarti/NPC 生成器下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Category:gaming-entertainment