fr:yaml:syntaxe-base
Ceci est une ancienne révision du document !
Table des matières
Syntaxe YAML — Base
Le format YAML est le format moderne de JDR-Bot. Il est plus lisible, plus puissant et plus flexible que l'ancien format .txt.
Structure d'un fichier .yaml
titre: "Mon scénario" markdown: story police: serif vars: pv: valeur: 10 description: "Points de vie" salles: - id: debut texte: | Vous vous réveillez dans une forêt sombre. Une lueur brille au loin. choix: - commande: avancer bouton: "➡️ Avancer vers la lueur" vers: clairiere si: "~" - commande: rester bouton: "🛑 Rester sur place" vers: fin_attente si: "~" - id: clairiere texte: | Vous débouchez dans une clairière baignée de lumière. evenements: - si: "~" fin: victoire texte: "Vous avez trouvé la sortie !" - id: fin_attente texte: "La nuit tombe. Vous n'avez pas bougé." evenements: - si: "~" fin: defaite texte: "Perdu dans la nuit..."
Clés racines
| Clé | Description | Obligatoire |
|---|---|---|
titre: | Titre du scénario (affiché dans le catalogue) | ✅ |
markdown: | Style de rendu : story, rpg, terminal, aventure | non |
police: | Police par défaut : serif, monospace, etc. | non |
description: | Description affichée dans le catalogue | non |
vars: | Déclaration des variables | non |
vars_online: | Variables persistées entre parties/serveurs | non |
salles: | Liste des salles du scénario | ✅ |
tags: | Groupes de comportements réutilisables | non |
modeles: | Salles modèles réutilisables | non |
evenements_globaux: | Événements exécutés en permanence | non |
timers_globaux: | Timers actifs en arrière-plan | non |
997_globaux: | Ordre d'exécution des globaux (avant / apres) | non |
Structure d'une salle
- id: nom_salle # identifiant unique (obligatoire) texte: "..." # texte affiché au joueur init: # valeurs réinitialisées à l'entrée - var: de valeur: "%=1:6" evenements: # événements automatiques - si: "condition" faire: "action" vers: autre_salle texte: "texte affiché" choix: # boutons de navigation - commande: aller bouton: "➡️ Aller là-bas" vers: destination si: "~" actions: # actions personnalisées (examiner, prendre...) - action: examiner cible: coffre faire: "or.+.10" texte: "Vous trouvez 10 pièces d'or !" objets: # objets présents dans la salle - nom: cle description: "Une vieille clé rouillée" encadre: # HUD persistant position: haut texte: "PV : v_pv_v"
Fins de partie
evenements: - si: "~" fin: victoire # fin gagnante (équivalent salle 999 en .txt) - si: "~" fin: defaite # fin perdante (équivalent salle 998 en .txt)
Règles importantes
- Les IDs de salles doivent être uniques
- Les variables utilisées dans les conditions doivent être déclarées dans
vars: - Le caractère
~dans une condition signifie “toujours vrai” (fallback) - L'ordre des événements est séquentiel — le premier qui redirige (
vers:) stoppe les suivants
Voir aussi
fr/yaml/syntaxe-base.1777820510.txt.gz · Dernière modification : de cyrilfiesta
