Démons ?

J’aimerai quelques infos au niveau des daemons (on dit bien comme ça ? :confused: ) parfois présents dans les IFs.

J’ai examiné plusieurs sources (I6), et j’aimerai pouvoir faire pareil, càd afficher des phrases supplémentaires lors du déroulement du jeu. Je pense pouvoir me débrouiller au niveau code, (quoique… est-on obligé de les inclure dans un objet ?), j’aimerais cependant savoir ce qu’il était également possible de faire avec ce même système… :slight_smile:

J’ai vu que Mule avait utilisé des routines supplémentaires pour analyser les variables d’incrémentation…

Les daemons en Inform sont des routines qui s’exécutent « en arrière-plan » ; en fait elles s’exécutent à chaque tour, après l’action du joueur (d’où les messages supplémentaires)

Ils doivent être attachés à un objet, et démarrés en temps voulu par StartDaemon(objet). Ils doivent aussi être arrêtés, par la commande StopDaemon(objet)

Une routine daemon se présente sous la forme :

daemon [k; {instructions} ],

Mais comme toute routine, tu peux bien sûr agir sur des variables globales plutôt que sur le k ; en fait, je ne sais pas à quoi sert le k, ni s’il s’incrémente à chaque tour ! (je ne sais même pas s’il est obligatoire !.. Mais bon, je l’inclus quand même, dans le doute, même s’il ne sert à rien)

Les applications d’un daemon sont multiples et variées, et très intéressantes : ça peut être un passant qui rentre quelques fois dans une maison de disque, distrayant le vendeur (voir filaments), un monstre qui se balade sur la carte, etc, etc !

Voilà, tu connais les (mes) rudiments des daemons :wink:

Je pense qu’une des meilleures références à ce sujet est tout simplement la documentation officielle d’inform.

Pour inform 6 : inform-fiction.org/manual/html/s20.html