Les corrections dans le projet "Lieux Communs"

super je vais tester cela et essayer d’adapter mes objets en conséquence.

Tu as fait comment ?

Pour les adjectifs, j’ai repris le travail que j’avais fait pour mon propre jeu (qui n’avance pas d’ailleurs :slight_smile:), et dont j’avais parlé dans ce fil : ifiction.free.fr/forumBB/viewtop … =1713#1713

Pour les mots intermédiaires, j’ai adapté la fonction ParseNoun (voir son code dans cpb.inf) que j’utilisais pour la gestion des adjectifs, afin qu’elle accepte une liste de petits mots à partir du moment où elle a reconnu au moins un mot contenu dans « name », et à condition qu’il soit suivi d’un mot contenu dans « name » ou « adjective ».

Concernant la scène 190, carte blanche : corriger le bug est facile (un simple if (gard in piece190) print_ret « Le gardien était en train de réparer ma maladresse en grommelant » ferait l’affaire), par contre pour la formule, bon courage… Au pire, j’avais pensé, on pourrait/devrait la simplifier, la réduire à un seul mot qui serait quand même lovecraftien (plus facile pour le codeur et le programmeur ! :wink:)…

Concernant les descriptions des éléments du décor, j’avais pensé les faire plus tard, mais je n’y suis pas revenu - je voulais démarrer une autre scène, et en plus le bac approche et je consacre moins de temps à l’IF. Je vais quand même essayer d’en faire une partie, mais peut-être pas tout, on verra…

Je viens de faire un update et de voir les images ! Bon travail, JB et Bilo !! :smiley:

au niveau de l’incantation, je l’avais modifiée dans ce sens :

211 Verb "invoquer" "incanter" "ngha" 212 ! a implementer plus tard pour invoquer direct la momie * 'Ngha' 'ghaa' 'Ia' 'Ghphit' 'Ia' 'Ia' 'Cthulhu' 'fhtagn' -> Invoquer 213 ! a implementer plus tard pour invoquer direct la momie * 'ghaa' 'Ia' 'Ghphit' 'Ia' 'Ia' 'Cthulhu' 'fhtagn' -> Invoquer 214 * 'ghaa' 'test' -> Invoquer 215 * 'ngha' 'ghaa' 'Ia' 'Ghphit' 'Ia' 'Ia' 'Cthulhu' 'Fhtagn' 'Nyagh' 'Phgit' -> Invoquer 216 * 'ghaa' 'Ia' 'Ghphit' 'Ia' 'Ia' 'Cthulhu' 'Fhtagn' 'Nyagh' 'Phgit' -> Invoquer;

ce qui donnait : Ngha ghaa Ia Ghphit Ia Ia Cthulhu fhtagn

pas besoin de s’embêter avec les apostrophes…

J’avais en effet vu cette implémentation et je comptais partir de là.

En revanche, j’ignore pourquoi mais quand j’essaie il me dit « Pardon ? » au lieu du message qui est dans InvoquerSub. Quelqu’un sait pourquoi ?

Une remarque qui n’a rien à voir, un simple conseil de codage (même si je ne suis pas forcément le mieux placé pour en donner aux ‹ anciens ›) :

Le code

print "Je n'ai rien pu dire d'intelligible.^"; rtrue;

est avantageusement remplaçable par un simple :

"Je n'ai rien pu dire d'intelligible.";

C’est la forme abrégée pour afficher un texte, ajouter un retour à la ligne, et renvoyer true.

Ca peut peut etre bugger, cette histoire d’invocation…j’ai essayé de faire la même chose dans Dreamlands, et ca marche bien…pour 2 mots seulements…

J’ai pris le pb dans tous les sens, sans solution. :frowning:

JB

C’est pas gentil de me décourager :slight_smile:

Je vais sûrement partir sur une grammaire de la forme suivante :

  • ‹ ngha › topic → Invoquer
  • topic → Invoquer

Et c’est InvoquerSub qui se tapera le traitement. Il me semble avoir vu un truc qui ressemble à ça dans le Inform Designer’s Guide 4

en zmachine et en glulx "Ngha ghaa Ia Ghphit Ia Ia Cthulhu fhtagn " dit bien « je n’ai rien pu dire d’intelligible » à la place de « pardon ? », je viens de tester

tout comme la même phrase précédée de « invoquer »
faute de frappe ?

Au niveau de la syntaxe de

print "Je n'ai rien pu dire d'intelligible.^"; rtrue;

au début j’utilisais la forme abrégée dans ce genre de cas, et puis au bout d’un moment on se rend compte que l’on veut ajouter un petit truc en plus à ce qui ne devait être qu’une description simple, et on se retrouve avec du code avec print et sans print, et des descriptions sans retour à la fin, et des phrases sans espace avant le prompt. Peut-être que je ne suis pas super organisé, en tout cas j’ai eu suffisamment de pb à cause de cela dans le passé, aussi je préfère ne pas avoir à me creuser la tête et mettre systématiquement un retour à la ligne avec ^ à la fin et un rtrue.

A propos d’espace et de prompt, JB pourrais tu aller voir cela et nous donner ton avis ?

informfr.tuxfamily.org/flyspray/ … &task_id=9

Ah ben zut ça marche en fait ! Moi qui venais de réussir à le faire marcher autrement… On va dire que je n’aurai pas fait ça pour rien car ma méthode me permettait de distinguer invocation et révocation, et puis ça m’entraîne à programmer.

C’est que ça devient barbare, inform, quand on commence à l’utiliser comme un « vrai » langage de programmation :wink:

je regarde les derniers commits…
c’est vraiment bien tes images JB ! C’est du bon travail.

Par contre pour la flûte, je l’imaginais plus comme cela que comme un ocarina :wink:
i82.photobucket.com/albums/j262/ … viteur.jpg

d’un autre côté, c’est pas illogique si le vent est censé jouer dedans…
donc la forme va bien, reste à modifier la description.

bien vu le coup du gardien… il me semble l’avoir déjà vu qque part :wink:
Pour la loge, je trouve que cela fait un peu anachronique…
Mais sinon c’est parfait !

Oui, j’aime les sauts de ligne, c’est une déformation professionnelle (dans les emails et courriers administratifs, 1 phrase = 1 paragraphe, sauf idée très proche et dans ce cas là elle est superflue, donc on l’enlève).

Mais en testant on les enlevera et je peux me conformer à ce qu’il vous semblera le mieux.

Je vous rappelle que vous avez ces petites fonctions très utiles à votre disposition :

Gras();
Italique();
Normal();

Elles sont explicites mais voici une démo :

print « Ceci est un texte en »;Gras();print " gras ";Normal();print " et normal permet de retrouver l’écriture normale. ";

Vous avez également Attend(); qui permet de faire une pause dramatique.

JB

j’aimerais bien utiliser Attend(); , mais cela m’empêche de faire des replay avec la solution pour tester le cheminement du jeu (cela coupe le replay juste après le Attend(). Est-ce que vous savez si on peut faire autrement ? Sinon je les ajouterais à la fin des tests et déboguages.
J’ai essayé avec KeyDelay(30); qui a un peu la même fonction, mais le pb reste le même.

Je viens de rajouter des exécutables de gargoyle pour linux et windows. Je pense qu’il est un peu prématuré de mettre sur le dépôt commun le fichier blb, car chacun peut le faire soi-même, et si on le met à jour à chaque fois non seulement cela fera du transit pour rien, mais cela risque de faire grossir la base de données du svn pour calculer les différences. Par contre j’ai prévu des fichiers pour lancer automatiquement les fichiers z8 et blb.
Je propose que l’on retienne pour la publication l’appellation lieuxcommuns.z8 pour le fichier zmachine, et lieuxcommuns.blb pour le fichier glulx.

Cela serait bien également que l’on retire le fichier ambiance.ogg, la musique est super mais je ne crois pas que l’on puisse l’utiliser si c’est tiré d’un jeu. De plus cela serait mieux avec une musique un peu plus perso. Je vais voir si je peux faire une musique angoissante au tracker :slight_smile:

Si tu utilises toujours la fonction Attend(), il suffirait de la modifier pour qu’elle se désactive en fonction d’une « variable globale » modifiable par un verbe (du style « replay on ») utilisé par le fichier replay. La fonction KeyDelay() pourrait également tester cette « variable globale ».

Pour tous les fichiers générés par le compilateur ou autre, bref découlant des sources (par exemple lieuxcommuns.z8 ), il ne faudrait pas les inclure dans SVN. Il n’est pas nécessaire de les placer dans un dossier différent, il suffit de les supprimer de SVN.

D’accord à condition qu’on ait un autre endroit où des testeurs éventuels (je pense notamment à Akien) pourront télécharger un fichier compilé à tester.

en ce cas le plus simple sera de le mettre dans un autre répertoire qui n’est pas dans trunk. Vu que l’on n’utilisera sans doute pas branches et tags, je propose de mettre le fichier en question dans branches, et de faire une mise à jour à intervalle régulier (une fois par jour ? Tous les 2 jours ? quand on veut… ?)
Pour le récupérer c’est ici :
viewvc.tuxfamily.org/svn_informf … /branches/
J’ai retiré le fichier z8 du svn dans trunk.

je pense que la version zmachine suffit, pour la version glulx je pense qu’on peut la copier à la main encore moins régulièrement (de toute façon il reste seulement un mois de développement avant la date butoir). Quoi qu’il en soit vous pouvez vous connecter sur le ftp de tuxfamily avec vos identifiants (les mêmes que pour svn…)

bonne idée, je vais regarder si je peux faire ça… mais je ne sais pas comment activer une variable juste avec la fonction replay. Je vais relire le DM4…

test

Sur Flyspray, j’avais signalé un bug avec PARLER AVEC il y a quelques jours. Je l’avais mis dans « informfr » plutôt que dans « Lieux communs » parce que j’avais l’impression que ça concernait la library francophone, mais je ne sais pas si j’ai bien fait : vous ne l’avez peut-être pas vu à cause de ça ?

Enfin, bref, ce bug me paraît gênant, alors si vous avez des idées à ce sujet…

salut,

désolé, j’avais pas vu. Le pb avec flyspray c’est qu’il me prévient à tout bout de champ pour un bug déjà identifié, mais pour les nouveaux je n’ai pas de notification (Stormi !! ? ou alors j’ai oublié un truc).

Je vais y répondre.

(fait ch****, le forum bugge pour certains messages… c’est arrivé juste après que j’aies effacé le message d’un de ces **** de spammeurs… et cela pose pb aussi pour les notifications et avertissement des nouveaux messages)

j’ai tenté d’ajouter de la musique pour certaines scènes et actions. J’ai placé les fichiers de musique et le blb résultant ici, pour ne pas polluer le svn :
informfr.tuxfamily.org/lieuxcommuns/

je ne sais pas si cela sera judicieux d’en inclure au final, pour plusieurs raisons :

  • alourdi la taille du fichier

  • peut être lourd pour le joueur à force… (mais possibilité d’implémenter une fonction pour éviter la musique, peut-être même dans un fichier de config pour gargoyle par ex)

  • pb reproduction aléatoire. Chez moi en MOD cela est très dégradé (.mod ayant déjà une qualité moyenne en comparaison du format .it). En ogg, j’ai remarqué que sur un titre le son était un peu transposé (morceau3), déjà que c’est un peu dissonant à la base, avec ce son c’est pas très audible…

  • pb pour les transitions. Contrairement à Renpy qui permet de jolis fondus de musiques, avec glulx les sons se brisent lorsqu’une nouvelle musique arrive. Concrètement je n’arrive pas à avoir le contrôle que je veux pour la musique.

  • enfin, je n’arriverais sans doute pas à faire des musiques pour chaque scène ou action notable.

il est possible d’utiliser néanmoins une seule musique (par exemple le titre 1) pour faire un genre de « soundtrack » officiel, que l’on ne passe qu’une seule fois à la première arrivée dans la roulotte.

Tu aurais des détails? Quel genre de message tu as eu?
Je crois que j’ai le même pb sur un autre forum, mais qui est complètement bloqué pour le coup…