Textallion, un système de livres-jeux


Eric Forgeot

2013-11-17

Présentation

Avec textallion, vous pouvez créer des « livres dont vous êtes le héros » (ou « aventures dont vous êtes le héros », en anglais « choose your own adventure », abrégés en ldvelh, avh ou cyoa), à l'aide du module txt2CYOA inclus. Ces histoires se lisent comme un livre classique, si ce n'est qu'elles offrent plusieurs choix à certains moments-clés de l'aventure, et c'est au lecteur de prendre des décisions pour le déroulement des événements.

La conception de vos livres-jeux avec textallion se fait avec un éditeur de texte, à l'aide d'une syntaxe très simple.

Une fois l'aventure réalisée, il faut pouvoir la diffuser. C'est pourquoi textallion propose différentes possibilités d'export : PDF pour imprimer, ePUB pour publier sur livre électronique, tablette ou smartphone, HTML pour publier sur site internet. L'export HTML est d'ailleurs riche de plusieurs moteurs de rendu (Ramus, Twine (Twee), Undum, ChoiceScript…). Enfin, quelques autres formats utilisés par des systèmes de fictions interactives (Inform, Ren'PY) permettront d'étendre encore plus les possibilités d'expérimentation.

Nous allons maintenant voir la syntaxe de ce système, qui est calquée sur celle de txt2tags.

Chapitres

Chaque chapitre délimite un espace de rédaction, et se termine par une action à choisir entre une ou plusieurs options. Avec une seule option, ce n'est bien entendu pas encore tout à fait un choix, mais ça permet de conduire l'action vers un nouveau chapitre et pourquoi pas de relancer l'action ou de créer une tension, une attente. Avec deux, trois ou quatre options (voire plus), le lecteur se voit offrir plusieurs opportunités pour personnaliser son aventure.

Vos paragraphes (chapitres, sections…) seront créés en utilisant la balise standard de txt2tags pour les titres niveau 2 :

== nombre ==

Important : Vous devez laisser un espace de chaque côté du nombre pour créer l'ancre du paragraphe, qui servira lors de l'appel d'un lien depuis un autre paragraphe. Vous devez également débuter cette création de paragraphe en début de ligne, ne laissez pas d'espace avant pour centrer le paragraphe dans votre source.

Choix

Pour créer un choix on peut utiliser cette syntaxe :

- Description du choix (débutant par un tiret "-") : nombre
- Description du choix : [#nombre]. Et quelques mots ensuite.
- Description du choix, avec un [#mot]. Et éventuellement quelques mots ensuite.

avec le nombre indiqué se référant au numéro de votre paragraphe lié. Textallion sera capable de détecter qu'il s'agit d'un choix, et le reliera automatiquement au paragraphe de destination.

Il est obligatoire d'utiliser la syntaxe [#nombre] si ce nombre est suivi de quelque chose et n'est pas tout seul à la fin de la ligne. Pour pouvoir bénéficier de toutes les possibilités d'export dans tous les formats proposés, il est conseillé de s'en tenir à la première possibilité d'écriture, plus classique aux livres-jeux de l'époque.

Enfin, la syntaxe avec [#mot] permet d'écrire des aventure modernes, prévues notamment pour le système twine, avec uniquement des mots-clé en tant que des paragraphes, à la place des nombres. Il n'est d'ailleurs pas nécessaire de les indiquer dans une structure de choix, débutant par un tiret.

Vos paragraphes associés seront donc caractérisés par les mots-clés les appelant, de cette manière :

== mot ==

Enfin, parce qu'au bout d'un moment vous aurez épuisé toutes les possibilités de mot-clé, il est possible d'associer un label différent du mot-clé pour le lien :

[une description du choix|#mot-clé]

Rappelez-vous, le dièse # est comme une ancre qui redirige toujours vers le nom d'un chapitre. Le mot-clé, et ainsi le chapitre (qui seront cachés dans twine), doivent être en un seul mot, quitte à utiliser des - ou des _ pour en relier plusieurs.

Réflexions sur le systèmes utilisé

Maintenant que la syntaxe a été dévoilée, nous souhaiterions revenir sur le concept de livre-jeu : diverses solutions existent pour créer de telles oeuvres, par exemple une interface avancée de programmation qui s'occupe de lister les embranchements existants, ceux disponibles, ou bien qui mélange aléatoirement les chapitres. De telles interfaces ont leurs raisons d'être, mais nous préférons utiliser pour notre part la simplicité du texte brut.

Nous ne sommes pas en mesure de fournir une telle interface, mais une solution approchante existe, partiellement, avec le logiciel Twine. De plus, nous avons réalisé un petit script (core/twee_to_textallion.sh) permettant de convertir du format de twee vers celui de textallion. Ainsi si vous souhaitez utiliser ce logiciel, il vous sera ensuite possible de récupérer votre travail dans textallion pour en faire autre chose (livre électronique, fichier pdf, impression papier). Mais si vous voulez en faire autre chose, il vous faudra rédiger vos aventures dans Twine en gardant la syntaxe avec uniquement des nombres en tant que chapitres et que liens.

En effet, pour la présentation des paragraphes, nous avons tendance à encourager à utiliser des nombres pour référencer les paragraphes. Certains autres systèmes s'affranchissent de cela (Ren'py, ChoiceScript, Twine, Undum), ce qui est effectivement moins archaïque, mais l'avantage du système avec les nombres c'est qu'il est possible d'exporter ensuite vers un vrai livre, comme au temps des LDVELH imprimés. Et techniquement c'est plus facile avec les chiffres qu'avec les mots-clé. Peut-être que dans le futur nous serons à même de proposer un support plus complet pour les mots-clés. Pour le moment celui-ci fonctionne le mieux en conjonction avec Twine.

Images

Vous pouvez ajouter des images avec [votreimage.jpg] (ou .png) Pour utiliser des images incluses dans le texte, on peut utiliser la syntaxe

[votreimage.jpg](~~~~)

(comme dans textallion)

Notes de bas de page

Les notes de bas de page, peuvent être vues comme un moyen de rajouter des indications pour le joueur (aide ou triche). Il n'est pas possible de garder la même syntaxe que dans textallion, aussi ici on a : phrase blabla* avec note1 à incrémenter soit-même dans le jeu. Dans twine, ces notes figureront simplement entre parenthèse après leur lieu d'insertion.

Organigramme

Il est possible d'obtenir un organigramme avec tous les chapitres reliés entre eux. Il faut le programme graphviz pour cela et veuillez à bien débuter les options possibles avec un tiret et de terminer chaque ligne par le chapitre choisi.

Le plus simple est d'utiliser un environnement Unix et de taper « make all » pour obtenir directement les versions html et pdf ainsi que l'organigramme en png et svg.

Exports vers d'autres formats

Note sur la création des chapitres

Il faut d'abord estimer la taille approximative de l'aventure. Va-t-elle faire 50, 200 ou 400 paragraphes ?

Commencer au chapitre 1, puis broder les chapitres en en rajoutant entre 1 et 50 par exemple, ensuite revenir sur cet intervale pour compléter l'histoire. S'il y a des trous, redécouper les chapitres existants.

Quelques liens