Inform7 | Encyclopédie dynamique

Bonjour,

Je souhaite réaliser une fiction à la première personne dans laquelle le personnage principal évolue dans un monde imaginaire mais qui lui est totalement familier. Il m’est donc difficile d’intégrer à la narration des éléments permettant d’expliquer au lecteur/joueur quels mécanismes régissent sa vie quotidienne : qui est cette personne que vous connaissez ? Quelle est l’histoire de ce lieu ? Quelle est la signification de ce terme ?

Pour palier à cela, j’avais dans l’idée un système de fiches, une encyclopédie qui se complète au fur et à mesure de la découverte de l’univers de la fiction. Par exemple, imaginons que le joueur observe une affiche collée sur un mur dans la rue, le héros étant familier de ce qui y est représenté dirait par exemple « Une magnifique photographie des galeries Dufondère. ».
À ce moment un message en italique « Les galeries Dufondère ont été ajoutées à l’encyclopédie. » apparaîtrait et à tout moment le joueur pourrait « consulter l’encyclopédie » et avoir accès à une liste de termes sur lesquels il pourrait ensuite « s’informer sur ».

Pour l’instant je suis bien loin d’un tel système et me contente d’objets que je fais apparaître dans l’inventaire au moment opportun et que j’appelle « mémos ». Ce n’est ni naturel ni pratique. J’ai également pensé à créer une pièce physique, la bibliothèque, dans laquelle apparaîtraient ces mémos qui deviendraient alors livres ou ouvrages.

Je pense que je ne suis loin d’être le premier à souhaiter mettre en place un tel système. Je n’ai pas connaissance d’extensions permettant de le faire. Auriez vous des pistes ou des solutions qui s’approcheraient du fonctionnement souhaité ?

J’y avais déjà réfléchi pour un de mes jeux (Gossip, dont j’avais soumis l’intro à l’IntroComp2009 - d’ailleurs, faudra que je m’y remette, un jour, quand même), et le moyen le plus simple que j’avais trouvé c’était d’utiliser les menus : de la même manière que tu peux demander au joueur de faire un choix entre plusieurs options (options écrites en liste avec un curseur pour sélectionner), tu peux proposer au joueur une liste de notes et lui demander d’en choisir une.

L’avantage de ça, c’est qu’il y a des extensions (je sais pas en Inform 7, mais y’en a une en I6 qui est géniale : DMenus, trouvable sur le site d’Inform) qui permettent de gérer les options de menus dynamiquement : avec cette extension, Menu est une classe d’objets qui peut contenir des objets (les options), que tu peux cacher ou afficher dans la liste en fonction de l’avancée de ton histoire. C’est tellement clair et utile que je pense que ça a dû être fait en Inform 7 aussi - j’espère que tu trouveras ton bonheur !

Merci beaucoup pour cette piste qui en plus pourra m’aider au niveau des dialogues (je ne me sens pas prêt pour élaborer un système de dialogue correct avec l’extension epistemology, un menu dynamique sera je pense plus approprié). Je viens de regarder sur le site d’Inform, DMenus n’existe pas, en revanche, une extension fournie de base avec Inform intitulée « menus » tout court semble remplir ces fonctions que tu as décrites. :smiley:

tu as dû voir que l’extension francophone pour I7 permettait d’utiliser la première personne du singulier.

D’autre part, j’avais réalisé dans quelques jeux un principe un peu similaire :

Par exemple dans « Les heures du vent », il existe un livre de conte qui emmagasine dans sa mémoire certains événements et personnages du jeu, qui sont apparus au héros, pour les ressortir ensuite si on le lit, comme si c’était une histoire ancienne.

Pour cela j’ai utilisé des tableaux d’événements, vides au début, comme on voit ici :
ifiction.free.fr/concours2007/he … ce_14.html

Si je voulais par exemple rajouter un personnage dans la partie « ennemis », j’inscrivais ce code :

After examining the MaireCorrompu for the first time: choose a blank row in the table of conte2_problemes; change problemes entry to "frappait des innocents"; choose a blank row in the table of conte2_ennemis; change ennemis entry to "de certains hommes de pouvoir corrompus"; /.../ continue the action.

Je pense de toute façon que les tableaux d’Inform7 sont les plus adaptés pour ce genre d’utilisation, car tu peux les remplir, les consulter (les lister) etc