Outils pour utilisateurs

Outils du site


fr:yaml:syntaxe-base

Ceci est une ancienne révision du document !


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"
description: "Une aventure courte pour d?couvrir JDR-Bot."
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
      - commande: rester
        bouton: "?? Rester sur place"
        vers: fin_attente

  - 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. oui
description: Description affich?e dans le catalogue et l'export standalone. non
markdown: Rendu global du texte : none, fix, bold, italic, quote, story ou langage de bloc code. non
taille: Taille de texte par d?faut, en pixels. non
police: Police par d?faut : serif, monospace, cursive, Georgia, etc. non
fond: Fond par d?faut des blocs de texte web/desktop. non
couleur-texte: Couleur de texte par d?faut web/desktop. non
vars: Variables num?riques globales. non
vars_texte: Variables textuelles globales. non
vars_online: Variables persist?es entre parties. non
options: Boutons permanents de toolbar. non
alias_globaux: Labels de boutons r?utilisables. non
tags: Groupes de comportements r?utilisables. non
modeles: Salles mod?les r?utilisables. non
evenements_globaux: ?v?nements disponibles dans toutes les salles. non
actions_globales: Actions personnalis?es disponibles partout. non
timers_globaux: Timers autonomes persistants entre salles. non
997_globaux: Ordre d'ex?cution des ?v?nements globaux : avant ou apres. non
salles: Liste des salles du sc?nario. oui

Structure d'une salle

- id: nom_salle          # identifiant unique
  num: 3                 # optionnel : num?ro explicite, croissant dans le YAML
  bouton: "?? Accueil"   # label h?rit? par les choix vers cette salle
  texte: "..."           # texte affich? au joueur
  fond: "#111827"        # fond local optionnel
  couleur-texte: "#f5f0d8"

  init:
    - var: de
      valeur: "%=1:6"

  objets:
    - nom: cle
      endroit: table
      description: "Une vieille cl? rouill?e."
      msg_ramassage: "Vous prenez la cl?."

  evenements:
    - si: "v_pv_v <= 0"
      vers: game_over
      texte: "Vous tombez au sol."

  choix:
    - commande: aller
      bouton: "?? Aller l?-bas"
      vers: destination
      si: ~

  actions:
    - verbe: examiner
      cible: coffre
      si: ~
      texte_ok: "Un vieux coffre ferm?."

  encadre:
    position: haut
    texte: "PV : v_pv_v"

Num?ros de salles

Par d?faut, les salles sont num?rot?es dans l'ordre du YAML. num: permet de fixer un num?ro historique, mais les num?ros doivent rester strictement croissants dans le document. Dans l'?diteur, r?ordonner les salles dans la liste modifie justement cet ordre d'export.

Fins de partie

evenements:
  - si: ~
    fin: victoire
    texte: "Fin gagnante."

  - si: ~
    fin: defaite
    texte: "Fin perdante."

R?gles importantes

  • Les IDs de salles doivent ?tre uniques.
  • Les variables utilis?es en conditions doivent ?tre d?clar?es dans vars:, vars_texte:, vars_online: ou init:.
  • ~ signifie toujours vrai.
  • Les ?v?nements sont ?valu?s dans l'ordre ; le premier qui redirige avec vers: stoppe les suivants.
  • Les objets en condition s'?crivent cle ou -cle, pas o_cle_o.

Voir aussi

fr/yaml/syntaxe-base.1777824448.txt.gz · Dernière modification : de cyrilfiesta