Doc Donjon FI (v3)

Éditeur de fictions interactives avec interpréteur

Outils pour utilisateurs

Outils du site


reference:debogage:magneto

Magnétoscope (enregistrement d'une partie)

Le magnétoscope (ou « magnéto ») permet de rejouer pas-à-pas une partie déjà jouée et de vérifier que chaque sortie du jeu correspond bien à ce qui était attendu. C’est l’outil de référence pour détecter une régression après avoir modifié votre scénario.

Le magnétoscope s’appuie sur un fichier d’enregistrement .rec.

À la différence du mode triche (qui rejoue un fichier solution .sol contenant uniquement des commandes), le .rec contient aussi la sortie attendue après chaque étape. Le magnéto compare cette sortie attendue à la sortie réellement produite et signale toute divergence.

Fichier d'enregistrement (.rec)

Un fichier .rec contient :

  • la graine aléatoire utilisée pendant la partie (pour reproduire à l’identique les tirages au hasard),
  • la liste des étapes de la partie, chacune avec sa sortie attendue :
    • c — commande joueur,
    • r — réponse à une question du jeu,
    • d — déclenchement d’une routine programmée,
    • g — nouvelle graine aléatoire en cours de partie,
  • la sortie d’intro (texte affiché au démarrage, avant la première commande).

Comment générer un enregistrement

  • Démarrez votre jeu Donjon FI.
  • Jouez jusqu’à l’endroit que vous voulez couvrir (ou jusqu’à la fin).
  • Entrez la commande générer enregistrement.
  • Sauvez le fichier d’enregistrement (*.rec).

Remarque : vous pouvez aussi utiliser la commande déboguer pour placer le joueur à un endroit précis ou modifier l’état du jeu avant de constituer votre enregistrement, ce qui permet de cibler un chapitre.

Lancer le magnétoscope

  • Rendez-vous dans l’éditeur Donjon FI.
  • Chargez un fichier d’enregistrement (*.rec).
  • Si une partie est déjà en cours, le magnéto vous demande de remettre le jeu à zéro :
    • Oui, remettre à zéro — recommandé. Garantit que le replay correspond fidèlement au .rec.
    • Non, garder l’état courant — utile pour reprendre un magnéto après une interruption, mais peut provoquer de fausses divergences.
  • Le magnéto démarre, en pause à la première étape.

Barre d’outils du magnétoscope

Pendant le replay, une barre d’outils s’affiche sous la fenêtre de jeu :

  • Précédent — revient à l’étape précédente. Permet de défaire la dernière commande exécutée.
  • Suivant — exécute l’étape suivante du .rec et compare sa sortie à la sortie attendue.
  • Lire auto — enchaîne les étapes automatiquement jusqu’à la prochaine divergence (ou la fin du fichier).
  • Stop — apparaît à la place de Lire auto pendant la lecture automatique pour l’interrompre.
  • Modifier — remplace la commande qui vient d’être exécutée par une autre. Utile quand vous avez renommé un objet dans votre scénario et que les anciennes commandes ne fonctionnent plus. Fonctionne aussi sur une réponse à un choix (r:) pour rejouer l’étape avec un autre choix.
  • Insérer — insère une nouvelle commande avant ou après l’étape courante. Si la commande insérée provoque un choix (menu choisir ou question de désambiguïsation, comme « prendre clé » dans une salle avec deux clés), le panneau de saisie reste ouvert avec le libellé Réponse au choix : tapez votre réponse pour qu’elle soit ajoutée comme étape r: juste après la commande. Annuler à ce moment retire aussi la commande insérée du .rec (cascade rollback).
  • Supprimer — retire l’étape du .rec. Indisponible sur une réponse à un choix (r:) : retirer la réponse laisserait le choix sans solution. Utilisez Modifier pour la changer.

En haut de la barre, le magnéto rappelle l’étape en cours :

  • Avant la première commande (intro du jeu) — au tout début, avant la 1ʳᵉ commande,
  • Commande exécutée : <commande> — pendant le replay,
  • Fin de l’enregistrement — quand toutes les étapes ont été rejouées.

En cas de divergence

Quand la sortie réelle d’une étape ne correspond pas à la sortie enregistrée dans le .rec, le magnéto met le replay en pause et affiche une boîte de divergence avec la différence entre la sortie attendue et la sortie obtenue.

Vous pouvez alors choisir :

  • Accepter — la nouvelle sortie est correcte. L’enregistrement en mémoire est mis à jour pour cette étape, et le replay continue.
  • Modifier — remplace la commande de cette étape par une autre (par exemple si l’objet visé s’appelle désormais autrement).
  • Ajouter avant / Ajouter après — insère une nouvelle commande autour de l’étape courante.
  • Retirer — supprime l’étape de l’enregistrement.
  • Précédent — annule l’étape courante et revient en arrière pour réexaminer la précédente.
  • Suivant — ignore la divergence et passe à l’étape suivante sans modifier l’enregistrement.
  • Quitter — sort du mode magnéto.

Fin du replay

Quand toutes les étapes ont été rejouées, le magnéto reste actif et la barre d’outils affiche un badge fin du replay à côté de la dernière commande. Vous pouvez :

  • voir la sortie de la dernière étape directement à l’écran (plus de popup qui la masque) ;
  • cliquer Précédent pour revenir en arrière et corriger ;
  • cliquer Insérer → Après pour ajouter une nouvelle étape à la fin du fichier ;
  • cliquer Modifier pour remplacer la dernière commande ;
  • cliquer Télécharger (icône disquette) pour sauvegarder l’enregistrement à tout moment ;
  • cliquer Quitter (croix) pour sortir du mode magnéto.

Récupérer l'enregistrement mis à jour

Si vous avez accepté des sorties, modifié des commandes ou ajouté des étapes au cours de la session, l’enregistrement en mémoire diffère du fichier d’origine. Cliquez sur l’icône Télécharger (disquette) dans la barre d’outils pour sauvegarder la nouvelle version.

Conservez ce fichier à la place de l’ancien : il deviendra la nouvelle référence pour vos futurs replays.

reference/debogage/magneto.txt · Dernière modification : de 127.0.0.1