Inform 7 : beaucoup d'erreurs inattendues

Pour discuter des langages que nous utilisons pour réaliser nos jeux : problèmes, solutions, suggestions...

Modérateurs: Stormi, Otto Grimwald

Inform 7 : beaucoup d'erreurs inattendues

Messagepar yhoyhoj le Mer Sep 15, 2010 5:42 pm

Bonjour tout le monde, j'ai un gros problème :

Je venais de tester le jeu et ça marchais donc j'ai continué, j'ai ajouté je ne sais plus quoi et j'ai retesté pour voir si il y avait des erreurs dans ce que je venais d'écrire.
Et la il m'a sorti plein d'erreurs, alors que juste avant tout marchait bien :

Spoiler ! :
In Part 1 - Configurations:


Problem. You wrote '"; Stop the action.

Part 2 - Lieux et objets

Forêt is a room. " La forêt est sombre, le soleil est filtré par les branchages, le sol est clairsemé de feuilles mortes' : but I can't find a verb here that I know how to deal with, so I am ignoring this sentence altogether.


Problem. You wrote 'Des oiseaux chantent' : again, I can't find a verb here that I know how to deal with.


Problem. You wrote 'A l'ouest un petit chemin de terre serpente entre les arbres' : again, I can't find a verb here that I know how to deal with.


Problem. You wrote 'Vous empruntez le petit chemin, il est envahi par les broussailles à certains endroits mais reste pratiquable' : again, I can't find a verb here that I know how to deal with.


Problem. You wrote 'Le chemin tourne vers le nord un peu plus loin et débouche sur une clairière' : again, I can't find a verb here that I know how to deal with.


Problem. You wrote '" Broussailles is fixed in place in Chemin.

Clairière is a room. " Vous entrez dans une clairère, le soleil tape assez fort et le vent souffle, à l'autre bout de la clairière vous voyez une petite maisonnette' : again, I can't find a verb here that I know how to deal with.


Problem. You wrote '" Maisonnette is a scenery in Clairière.

Cabane is a room. " Vous entrez dans la maison le mobilier renversée laisse penser à une bagarre"' : again, I can't find a verb here that I know how to deal with.

Problems occurring in translation prevented the game from being properly created. (Correct the source text to remove these problems and click on Go once again.)


Et les erreurs portent sur des chose que j'ai faites bien avant et qui marchaient à chaque test que j'ai fait avant...

Voila le code donc si vous voyez les erreurs...
Et pour ne pas vous gâchez la surprise l'ai spoiler toutes les descriptions.

Spoiler ! :
Part 1 - Configurations

A person can be dead. A person is usually not dead.

Every turn :
Before doing something to someone (called individu):
If individu is dead
begin;
say "Cette créature est morte, laissons la en paix.";
otherwise;
continue the action;
end if.

Instead of going nowhere, say "Cette voie semble impratiquable, mieux vaut ne pas tenter d'aller par ici"

Before taking Feuilles mortes:
say "Vous prenez une feuille morte mais vous la lachez en bientôt en vous disant que c'est inutile.";
Stop the action.

Understand "feuilles" or "Feuilles" or "feuilles mortes" as Feuilles mortes

Understand "arbre"or "arbres" as Arbres

Before taking Oiseau:
say "Loiseau s'envole effrayé par votre mouvement, il finit par se reposer sur une branche non loin de là.";
Stop the action.

The Forêt is east from Chemin.
The Chemin is west from Forêt.
The Clairière is north from Chemin.
The Chemin is south from Clairière.
The Maison is east from Clairière.

Before examining Broussailles:
say "Vous écartez les branches et regardez dans les broussailles, soudain un serpent vous saute au visage...";
End the game in death.

Before examining Maisonnette:
say " [spoiler]La petite maisonnette ne paye pas de mine, les vitres sont cassés, le toit est a moitié effondré et la porte n'est plus accroché à ses gonds, elle git par terre à l'interieur de la maison. Vous apercevez une table et des chaises renversées à l'interieur. En allant vers l'est vous pouvez rentrer dans la maison
.";
Stop the action.

Understand "maison" or "maisonnette" or "cabane" as Maisonnette.

Understand "lit" as Literie.

Before examining Literie:
say " Le lit est fait, en regardant mieux vous distinguez un bout de papier glissé sous la couverture.";
Stop the action.

Understand "papier" or "bout de papier" or "mot" or "petit papier" as Mot écrit à la hâte.

A person can be aware or not aware. A person is usually not aware.
A person can be content or not content. A person is usually not content.

Before going west when the location is Maison:
if the player is aware
begin;
move player to Clairière 2;
stop the action;
otherwise;
say "Vous devriez peut-être examiner un peu mieux les lieux !"
Stop the action;
end if.


Before examining Mot écrit à la hâte:
now the player is aware;
say "
Spoiler ! :
Vous soulever la couverture et découvrez un petit papier, vous déchiffrez avec difficulté : Soldats du royaume Klobek arrivent
. ";
Stop the action.

A printed name of Clairière 2 is "Clairière".

Before examining trace:
say "
Spoiler ! :
Les traces ont l'air fraiches et se dirigent vers le nord. En examinant mieux vous voyez que les traces ont sans doute été faites pas des bottes et vu la profondeur, soit les soldats étaient très lourds soit ils étaient lourdement armés.
";
Stop the action.

Understand "traces" or "traces de pas" as trace.

Before examining table:
say "La table est renversée sur le coté.";
Stop the action.

Understand "tables" or "Table" as table.

Understand "chaises" or "chaise en bois" as Chaise.

Before examining Chaise:
say "Des chaises en bois sont renversées sur le sol et l'une d'elles est cassé.";
Stop the action.

Before examining traces:
say "
Spoiler ! :
Les traces ont l'air fraiches et se dirigent vers le nord. En examinant mieux vous voyez que les traces ont sans doute été faites pas des bottes et vu la profondeur, soit les soldats étaient très lourds soit ils étaient lourdement armés
.";
Stop the action.

Understand "trace" or "trace de pas" as traces.

Petit chemin dans la forêt is north from Clairière 2.
Falaise is north from Petit chemin dans la forêt.

Understand "Caillou" or "pierre" as pierres.

Before going east when the location is Escalier:
if the player is content
begin;
continue the action;
otherwise;
say "
Spoiler ! :
Le garde n'a pas l'air content de vous voir : vous êtes en tenue typique du peuple du Kairn et les Kairnais sont en guerre contre les Klobeks. D'un coup d'éstoc de son épée il vous assome. Quand vous vous reveillez vous êtes dans une cage et les gros tigres qui tournent autour de la cage ne vous laissent aucun doute sur ce qui va se passer. D'un coup la porte de la cage s'ouvre et les tigres vous sautent dessus
.";
End the game in death;
end if.

Before examining Garde Klobek:
say "
Spoiler ! :
Ce garde ne vous laisseras sans doute pas passer, vous savez bien que les Klobeks et les Kairniens ne s'aiment guère, surtout avec cette guerre qui oppose ces deux patries, il faudra l'assomer ou le tuer pour pouvoir passer
.";
Move pierres to Falaise;
Stop the action.

Understand "garde" or "grade lourdement armé" as Garde Klobek.

Escalier is east from Falaise.
Campement is east from Escalier.

Before taking pierres:
say " Cette pierre pourrait sans doute servir pour assomer le garde si vous la lancez assez fort.";
Continue the action.

Before throwing pierres:
if the location is Escalier;
now the player is content;
say "
Spoiler ! :
Vous lancez la pierre sur le garde, elle lui arrive en plein dans la tête, le garde s'effondre sans un bruit. Vous pouvez maintenant passez sans danger
.";
move pierres to Poubelle;
Stop the action;
Otherwise;
say"Ce ne serait pas d'une grande utilité....";
Stop the action.

Part 2 - Lieux et objets

Forêt is a room. "
Spoiler ! :
La forêt est sombre, le soleil est filtré par les branchages, le sol est clairsemé de feuilles mortes. Des oiseaux chantent. A l'ouest un petit chemin de terre serpente entre les arbres
."
Arbres is fixed in place in Forêt.
Feuilles mortes is scenery in Forêt.
Oiseau is an animal in Forêt.

Chemin is a room."Vous empruntez le petit chemin, il est envahi par les broussailles à certains endroits mais reste pratiquable. Le chemin tourne vers le nord un peu plus loin et débouche sur une clairière."
Broussailles is fixed in place in Chemin.

Clairière is a room. "Vous entrez dans une clairère, le soleil tape assez fort et le vent souffle, à l'autre bout de la clairière vous voyez une petite maisonnette."
Maisonnette is a scenery in Clairière.

Cabane is a room. "
Spoiler ! :
Vous entrez dans la maison le mobilier renversée laisse penser à une bagarre
"

Maison is a room. "[parchment]En entrant dans la maison vous voyez tout de suite qu'il y a eu une bagarre ici : le mobilier est renversé et le contenu des étageres est au sol, en mille morceaux pour la plupart. Le seul objet en bon état est peut-être le lit au fond de la pièce[/parchment]."
Literie is a scenery in Maison.
Mot écrit à la hâte is a scenery in Maison.
Table is scenery in a Maison.
Chaise is a scenery in Maison.

Clairière 2 is a room. "
Spoiler ! :
Vous revenez dans la clairière, vous comprenez enfin le fin mot de l'histoire : les soldats ont capturés la personne qui habitait dans la petite cabane.... Il faut la retrouver.
En regardant au sol vous voyez des traces de pas laissés par les gardes que vous n'aviez pas vu avant d'entrer dans la maison, elles se dirigent vers le nord.
".
trace is a scenery in Clairière 2.

Petit chemin dans la forêt is a room. "Vous voyez encore les traces des soldats sur le chemin la fin du chemin est un peu plus au nord.".
traces is a scenery in Petit chemin dans la forêt.

Falaise is a room. "
Spoiler ! :
Vous arrivez sur une falaise, le campement des soldats s'étends sous vos yeux legerement en contrebas. A l'est, un petit escalier descends de la falaise pour rejoindre le campement.
"

Escalier is a room. "
Spoiler ! :
Vous commencer à descendre l'escalier mais vous voyez en bas un garde Klobek lourdement armé, l'escalier mène directement au camp Klobek en descendant vers l'est.
"
Garde Klobek is a man in Escalier.

Poubelle is a room.
Pierres is a thing in Poubelle.

Campement is a room. "
Spoiler ! :
Vous arrivez au bas de l'escalier, le campement est plein de soldats en armures qui patrouillent ou discutent entres eux. Certains ont l'air de jouer au carte. Soudain vous voyez un garde arriver, d'un bond vous sautez dans un buisson. Une fois que vous êtes bien caché vous regardez plus attetivement le camp, au bout d'une longue allée formé par des tentes, vous apercevez une sorte de place et au milieu de cette place une personne est attaché sur un poteau.
Vous vous dites que c'est sans doute la personne qui a été capturé dans la maison : il y a deux solutions pour aller la délivrer, soit vous passez dans l'allée au nord soit vous essayer de trouver un chemin plus discret vers l'est.
"
Tente is a scenery in Campement.
[/spoiler]

Apparemment on ne peut pas mettre un spoiler à l'intérieur d'un spoiler, donc c'est un peu bizarrement spoiler.
Si vous n'arrivez pas à lire avec les spoilers je vous le redonnerais sans spoiler.

Voila, j'espère que vous aurez le courage de tout lire.
La seule que j'ai faites qui ai pu changer tout ça pour provoquer tant d'erreur est d'avoir appuyer sur la touche " Tabulation" par inadvertance, mais je me demande comment ça aurait pu causer tant d'erreurs....

Merci d'avance, a bientôt. :wink:
yhoyhoj
Sorcier du culte
 
Messages: 6
Inscription: Mar Sep 14, 2010 11:44 am
Localisation: Au beau milieu d'une fiction.

Re: Inform 7 : beaucoup d'erreurs inattendues

Messagepar Otto Grimwald le Ven Sep 17, 2010 10:59 am

j'ai trouvé beaucoup d'erreurs genre manque de ; ou de points.
Par exemple ici :

Code: Tout sélectionner
Before going west when the location is Maison:
if the player is aware
begin;
move player to Clairière 2;
stop the action;
otherwise;
say "Vous devriez peut-être examiner un peu mieux les lieux !";
[u]Stop the action;[/u][j'ai rajouté le ;]
end if.



Ensuite, tu as utilisé :
trace is a scenery in Clairière 2.
traces is a scenery in Petit chemin dans la forêt.
Si ce sont des objets différents, il faut un nom différent. Je pense que le "s" n'est pas suffisant, car inform considère que l'un est le pluriel de l'autre. Au pire des cas, c'est moins élégant mais plus sûr, tu nommes l'un "traces1" l'autre "traces2" et tu les affiches avec : the printed name of traces1 is "traces" etc.

Et si tu veux 1 scenery dans plusieurs endroits, tu peux utiliser "backdrop" qui fait cela :

Code: Tout sélectionner
traces is a backdrop in Petit chemin dans la forêt and in  Clairière 2.


Ensuite j'ai dû modifier :
Understand "traces" or "traces de pas" as traces.

Pour le verbe "throwing", c'est en fait "throwing at" :

Code: Tout sélectionner
Before throwing pierres at someone:
if the location is Escalier
   begin;


Et dans cette partie il manquait le "begin;" et pas de "endif" mais j'ai l'impression que tu as utilisé un moment la syntaxe simplifiée type "python" avec les indentations, je la déconseille car même si c'est plus rapide à écrire, on a vite fait de faire une erreur.

Dans un cas comme ça, c'est mieux de ne pas rajouter de "spoilers", parce qu'on ne va pas juste étudier le code, mais le copier dans inform pour voir comment ça réagit. L'idéal est donc de copier le code par exemple ici : http://pastebin.archlinux.fr/ et de nous envoyer le lien.

J'ai d'ailleurs fait ainsi pour mettre à disposition le code que j'ai modifié (ça compile chez moi, avec cette version, mais il doit manquer un peu de code, genre l'inclusion des bibliothèques francophones) :

http://pastebin.archlinux.fr/424668

Avatar de l’utilisateur
Otto Grimwald
Très Ancien
 
Messages: 3031
Inscription: Mar Aoû 24, 2004 12:02 pm

Re: Inform 7 : beaucoup d'erreurs inattendues

Messagepar yhoyhoj le Ven Sep 17, 2010 4:46 pm

Merci beaucoup pour tes conseils, ce qui est bizarre c'est que ça marchais juste avant que je modifie juste un détail.
Et après il me signalait plein d'erreurs notamment sur des bouts de codes que j'avais écrit au début...

Mais bon si maintenant ça marche c'est pas grave.

Je ne connaissait pas ce site où on peut héberger un texte mais je m'en souviendrais pour la prochaine fois.
Merci encore. :wink:

EDIT : Je viens d'essayer, ton code marche bien, c'est parfait merci.

J'ai un autre problème, a chaque fois que j'essaye d'inclure la bibliothèque francophone il me signale une erreur donc j'ai finit par ne plus mettre ça mais ce serait pas mal d'avoir le jeu en français.

Comment faire pour inclure la bibliothèque française, sachant que j'ai déjà télécharger l'extension qu'il faut ?

Merci d'avance.
yhoyhoj
Sorcier du culte
 
Messages: 6
Inscription: Mar Sep 14, 2010 11:44 am
Localisation: Au beau milieu d'une fiction.

Re: Inform 7 : beaucoup d'erreurs inattendues

Messagepar Otto Grimwald le Ven Sep 17, 2010 9:31 pm

dans le menu d'inform7, il faut choisir :
File > Install extension... > et choisissez le fichier French.i7x que vous venez de télécharger.
Ça va copier l'extension dans le dossier Inform/Extensions du dossier utilisateur.

Et au début du code il faut juste rajouter ces 2 lignes :

Code: Tout sélectionner
Include French by Eric Forgeot. 
Use French Language.

Avatar de l’utilisateur
Otto Grimwald
Très Ancien
 
Messages: 3031
Inscription: Mar Aoû 24, 2004 12:02 pm

Re: Inform 7 : beaucoup d'erreurs inattendues

Messagepar yhoyhoj le Sam Sep 18, 2010 9:07 pm

J'avais déjà installé l'extension mais c'est quand je mettais les deux lignes au début et que je lançais la compilation pour tester qu'il me signalait une erreur.
Et quand j'enlevais ces deux lignes tout marchait....
Je crois que l'erreur était du à un problème de syntaxe ou quelque chose comme ça(je vérifierais demain, là je ne suis pas sur le bon ordinateur.).
Merci encore pour votre aide. :wink:
yhoyhoj
Sorcier du culte
 
Messages: 6
Inscription: Mar Sep 14, 2010 11:44 am
Localisation: Au beau milieu d'une fiction.

Re: Inform 7 : beaucoup d'erreurs inattendues

Messagepar Otto Grimwald le Lun Sep 20, 2010 10:17 pm

dans ce cas il faut vérifier que la version de l'extension soit prévue pour la bonne version de Inform 7 (prendre la dernière à jour à chaque fois)

Avatar de l’utilisateur
Otto Grimwald
Très Ancien
 
Messages: 3031
Inscription: Mar Aoû 24, 2004 12:02 pm


Retourner vers Questions techniques et aide pour votre code

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron