Aller au contenu principal

Règles markdown et sélection IA

Les règles d'un système sont stockées en markdown monolithique, structuré par titres H2 (##). Chaque section H2 est extraite et indexée séparément.

Structure attendue

## Combat
- Initiative : 1d20 + mod Dex
- Action par tour : une action, une action bonus, une réaction, mouvement
- Critique sur 20 naturel (double dés)

## Classes
- **Barbare** : d12 PV, rage
- **Magicien** : d6 PV, livre de sorts
...

## Monstres
Stat block standard : CA, PV, FOR/DEX/CON/INT/SAG/CHA, FP.

Sections suggérées

Côté UI, l'éditeur propose des sections par défaut : Combat, Classes, Stats, Magie, Monstres, Progression.

Vous êtes libre d'en ajouter d'autres. Mais gardez à l'esprit :

Le module Lore sert à décrire l'univers (factions, lieux, légendes). Le Game System ne doit décrire que les mécaniques de jeu, pas le lore. Cette séparation est volontaire — l'IA injecte les règles dans des contextes différents du lore, mélanger les deux dégrade la pertinence des prompts.

Sélection contextuelle pour l'IA

Quand vous demandez à l'IA de générer une scène impliquant du combat, le back-end n'injecte pas tout le markdown — il sélectionne automatiquement les sections pertinentes (ex: ## Combat + ## Monstres) selon l'intention détectée. Ça réduit drastiquement la taille du prompt et améliore la qualité.

Le mapping intention → sections est codé en dur côté backend (GameSystemContextSelector). Les noms de sections H2 doivent donc rester cohérents avec les noms suggérés pour bénéficier de cette sélection.