Pour les enseignants

Animez une séance de création de jeu en 45 minutes

Une séance, une salle, aucune notion de programmation : chaque élève écrit une courte histoire en langage courant et ressort après avoir joué au jeu 3D qu'elle a construit.

Pourquoi ça marche

Pourquoi cette séance marche

Avant la pédagogie, les contraintes — parce que ce sont elles qui tuent d'habitude une séance d'informatique avant même qu'elle commence.

  • Aucun compte pour les enfants. Vous créez une classe et vous obtenez un code. Les élèves rejoignent avec le code et un pseudo. Pas d'adresse e-mail, pas de mot de passe, pas d'écran d'inscription, rien à réinitialiser le lundi matin.
  • Rien à installer. Ça tourne dans l'onglet du navigateur. Les Chromebooks verrouillés et administrés sont le cas visé, pas le cas exotique.
  • Tout le monde repart avec quelque chose de jouable. Six lignes font un jeu qui marche. Le plancher est assez bas pour que l'élève le plus lent de la salle rende une vraie chose.
  • Leur travail reste hors du fil public. Les jeux de la classe sont visibles par vous sur la page de la classe et par la classe. Ils ne sont pas publiés pour des inconnus.

Le mécanisme, dit simplement

Un enfant écrit une phrase presque ordinaire et appuie sur Jouer. Trois secondes plus tard, il est debout dans une forêt et un personnage qu'il a nommé lui parle.

World "forest":
Character "Mara":
  say Find the lost crown!
Win when: talk to Mara

C'est là tout le tour de magie : l'écart entre une idée et sa conséquence se compte en secondes, pas en une fiche corrigée dans quinze jours. Les enfants déboguent parce que le monde est faux sous leurs yeux, pas parce qu'un enseignant leur a dit qu'il était faux.

La seconde moitié de la séance fait le travail le plus dur. Une fois qu'ils ont ajouté un but, le compilateur vérifie si le jeu peut vraiment être terminé — et refuse de faire semblant. Un enfant qui réclame une étoile qu'aucun monde ne contient se l'entend dire. Pour corriger, il doit raisonner sur sa propre logique : de quoi le joueur a-t-il besoin, d'où ça vient, qu'est-ce qui compte comme gagner ? C'est l'axe séquence et sélection de la plupart des programmes d'informatique, atteint par la discussion avec une machine plutôt que par une définition.

Ce que cette séance n'est pas

Ce n'est pas apprendre Python, et cela n'enseignera pas une syntaxe qui se transfère vers un langage textuel. C'est de la pensée informatique par l'écriture : décomposition, séquence, état, conditions et débogage — pratiqués sur quelque chose qu'un enfant de dix ans a envie de terminer. Voyez-la comme la séance qui fait atterrir les séances de Python, pas comme leur remplacement.

Le plan

La séance de 45 minutes

Une séance, une salle, aucune notion de programmation. Les élèves écrivent une courte histoire dans un langage simple appelé VXLScript ; un jeu 3D se construit en direct à côté du texte pendant qu'ils tapent. Rien à installer, aucun compte élève, aucune adresse e-mail collectée.

Avant la sonnerie — 5 minutes, une seule fois

  1. Allez sur vxlverse.com/class, connectez-vous avec Google (l'enseignant seulement), nommez la classe (par ex. Mardi 6e) et appuyez sur Créer la classe. Vous obtenez un code qui ressemble à ZEUS-K7M2Q.
  2. Écrivez le code au tableau, en grand. C'est la seule chose dont les élèves ont besoin.
  3. Ouvrez un deuxième onglet sur vxlverse.com/studio-live sur la machine du vidéoprojecteur. Cliquez dans le panneau de code, appuyez sur Ctrl+A puis Backspace, et tapez (ou collez) le jeu d'accroche de six lignes ci-dessous. Laissez-le là. Ne le lancez pas encore.
  4. Prévoyez des groupes de trois. Deux raisons : travailler en binôme vaut mieux qu'un enfant par Chromebook pour une première séance, et une classe gratuite accepte 10 travaux rendus. Trente élèves par trois, cela fait exactement dix. Si vos élèves travaillent seuls, seuls les dix premiers rendus arrivent sur la page de la classe — tout le monde construit et joue quand même dans son propre navigateur.

Le jeu d'accroche en six lignes

Title: The Lost Crown
World "forest":
Character "Mara":
  say I lost my crown somewhere in these woods. Find it for me!
item 👑 crown
Win when: player has 👑 crown

Ça, c'est un jeu 3D complet et gagnable. Lisez-le de haut en bas : (World), qui (Character), ce qu'elle dit (say), ce qu'il y a là-bas (item), comment on finit (Win when).

Le minutage

MinutesL'enseignant faitLes élèves fontPourquoi c'est important
0–5
Accroche
Joue le jeu de six lignes au vidéoprojecteur — marche jusqu'à Mara, appuie sur E, trouve la couronne, gagne. Puis montre le panneau de code et lit les six lignes à voix haute. Change un mot ; le monde se reconstruit. Regardent. Devinent combien de lignes il a fallu. Relisent les six lignes. Le jeu n'est pas une boîte noire. Tout ce qui est à l'écran vient d'un texte qu'ils savent lire — donc ce texte vaut la peine d'être écrit.
5–10
Connexion
Lit les quatre étapes de connexion écrites au tableau. Circule pour les deux enfants qui ont mal tapé le code. Ouvrent Chrome, vont sur vxlverse.com/class, tapent le code, choisissent un pseudo, arrivent dans l'éditeur. Aucun compte, aucun mot de passe, aucun e-mail. Cinq minutes, c'est tout le coût d'entrée, et rien de personnel n'est collecté.
10–20
Premier monde
Tape trois lignes au vidéoprojecteur, une à la fois, en marquant une pause après chacune pour que la classe voie ce qui a changé. Pose la question de l'inversion. Effacent le code d'exemple, tapent World, Character, deux lignes say. Cliquent sur le monde et s'approchent de leur personnage. La séquence. Les lignes s'exécutent dans l'ordre où elles sont écrites, et cet ordre est visible dans le monde — inverser deux lignes say change ce que le personnage dit en premier.
20–30
En faire un jeu
Ajoute wants:, gives:, un item et une ligne Win when:. Oublie exprès Win when: d'abord et lit le message du compilateur à voix haute. Ajoutent les quatre mêmes idées à leur propre histoire. Jouent jusqu'à voir l'écran de victoire. État de victoire et débogage. Un monde avec une personne dedans n'est pas encore un jeu. Le compilateur prouve que le jeu peut être terminé — ou dit qu'il ne peut pas l'être, avant que quiconque y joue.
30–38
À ta façon
Arrête de parler. Circule. Écrit trois consignes « essaie-en une » au tableau : changer le mot du monde, ajouter un Enemy, ajouter un choix. Renomment tout, changent de biome, ajoutent un ennemi, ajoutent une bifurcation if choice is, continuent de jouer. Sélection et itération. Un choix est une fourche dans le programme. Chaque modification est testée en y jouant trois secondes plus tard.
38–45
Arcade
Annonce le rendu à 38 pile. Ouvre vxlverse.com/class/YOUR-CODE au vidéoprojecteur et joue trois ou quatre jeux d'élèves, l'auteur commentant. Appuient sur 🎒 Rendre. Puis regardent, et crient des consignes à celui qui tient le clavier. Le travail est fini, public pour la classe, et jouable par quelqu'un d'autre. C'est ça qui les fait revenir.

Étape 1 — 0–5 min : l'accroche

L'onglet du vidéoprojecteur contient déjà les six lignes. Ne montrez pas le code en premier.

Dites : « Personne ne touche à rien. Regardez ça pendant une minute. »

Cliquez sur le monde 3D à droite. Vous êtes maintenant dans le jeu. W A S D pour marcher, maintenez le bouton gauche de la souris et faites glisser pour regarder autour de vous, E pour parler à celui devant qui vous vous tenez. Marchez jusqu'à Mara, appuyez sur E, laissez sa réplique se terminer, puis allez trouver la couronne qui flotte. Prenez-la. L'écran de victoire apparaît.

Dites : « Ça, c'était un jeu en 3D. Quelqu'un devine — ça fait combien de lignes de code ? Levez la main. »

Prenez trois propositions. Ils diront des centaines. Maintenant, montrez le panneau de gauche.

Dites : « Six. Et les voilà. Lisez-les avec moi. »

Lisez chaque ligne et dites ce qu'elle fait, avec ces mots :

  • World "forest": — « où ça se passe. »
  • Character "Mara": — « qui est là. »
  • say … — « ce qu'elle dit quand tu lui parles. »
  • item 👑 crown — « un objet posé dans le monde et que tu peux ramasser. »
  • Win when: player has 👑 crown — « comment on finit. Sans cette ligne, ce n'est pas encore un jeu — gardez ça en tête. »

Maintenant, la question de fond. Cliquez dans le code et remplacez forest par volcano. N'appuyez sur rien d'autre — le monde se reconstruit tout seul en une seconde environ.

Demandez : « J'ai changé un mot. Qu'est-ce qui vient d'arriver au monde ? … Alors, à quoi sert le code, en vrai ? »

Vous voulez que quelqu'un dise à voix haute que le texte est le jeu, et non des instructions à propos du jeu. Remettez forest et passez à la suite. N'expliquez rien de plus.

Étape 2 — 5–10 min : la connexion

Lisez ces cinq étapes affichées au tableau, une à la fois, et attendez que les mains redescendent après chacune. Montrez le code au tableau chaque fois que vous le dites.

  1. « Ouvrez Chrome. Allez sur vxlverse.com/class — c'est v-x-l-verse point com slash class. »
  2. « À gauche, il y a une case qui dit J'ai un code de classe. Tapez ZEUS-K7M2Q — c'est au tableau. Appuyez sur Rejoindre. »
  3. « Vous devriez voir le nom de notre classe en haut. Appuyez sur le bouton jaune Crée ton jeu. »
  4. « On vous demande un pseudo. Pas votre vrai nom. Un nom de jeu — Astronaute, Crêpe, Serdaigle. C'est le nom sous lequel votre jeu apparaîtra sur la page de notre classe. »
  5. « Appuyez sur C'est parti. Vous devriez maintenant voir du texte à gauche et un petit monde en 3D à droite. Pouce en l'air quand vous y êtes. »

Dites une fois, simplement : « Il n'y a pas de mot de passe, il n'y a pas de compte, et on ne demande son adresse e-mail à personne. Si tu fermes l'onglet, ton travail est toujours là quand tu reviens sur ce même ordinateur. »

Ensuite, faites place nette :

Dites : « Il y a déjà un exemple de code là-dedans. Cliquez dessus, appuyez sur Ctrl et A en même temps, puis sur Backspace. Videz complètement. On part de rien. »

Les trois choses qui coincent ici, et le remède en une phrase chacune :

  • « Classe introuvable » — le code est mal tapé ; le tiret compte, les majuscules et minuscules non.
  • Un Chromebook partagé avec un camarade qui s'est connecté avant — touchez le pseudo dans la pastille jaune 🎒 en haut pour passer à un autre élève.
  • Rien du côté droit — l'éditeur est vide, ce qui est normal à ce stade. Le monde apparaît avec la première ligne.

Étape 3 — 10–20 min : votre premier monde

Tapez au vidéoprojecteur une ligne à la fois et faites-la taper à la classe en même temps. Marquez une pause après chaque ligne et regardez le côté droit.

Dites : « Ligne un. Où se passe votre histoire ? Tapez World, espace, puis le lieu entre guillemets, puis deux-points. »

World "snow":

Dites : « Regardez à droite. Vous êtes debout dedans. Essayez un autre mot — desert, jungle, dungeon, volcano, beach, city. Dix secondes. Allez-y. »

Laissez la classe crier les mondes qu'ils ont trouvés. Puis :

Dites : « Ligne deux. Il faut quelqu'un là-dedans. Tapez Character, espace, un nom entre guillemets, deux-points. »

Dites : « La ligne trois est importante — regardez mes doigts. Appuyez d'abord sur espace espace, pour que la ligne commence plus à droite que celle du dessus. Puis say et ce qu'il ou elle raconte. L'indentation, c'est comme ça que l'ordinateur sait que cette ligne appartient à ce personnage. »

World "snow":
Character "Bo":
  say Hello! Who are you?
  say I have been standing in this snow all morning.
Win when: talk to Bo

Dites : « Cliquez sur le monde. W A S D pour marcher, maintenez le bouton gauche de la souris et faites glisser pour regarder, approchez-vous de Bo et appuyez sur E. Quelqu'un que vous avez inventé est en train de vous parler. Allez-y. »

Donnez-leur quatre minutes. Circulez. Puis rassemblez-les pour la question qui fait tomber la notion.

Demandez : « Tout le monde regarde ses deux lignes say. Si je les inverse — celle du bas au-dessus — qu'est-ce qui va changer dans le jeu ? Dites-le avant de le faire. »

Prenez une prédiction, puis faites-leur faire l'essai et reparler à leur personnage. Confirmez à voix haute : « L'ordinateur exécute vos lignes dans l'ordre où vous les avez écrites. De haut en bas. Rien de malin, rien de caché — l'ordre à l'écran est l'ordre des choses. Ça porte un nom : la séquence, et c'est vrai de tous les programmes jamais écrits. »

Ils vont remarquer un message en bas de l'éditeur disant que le jeu n'a pas encore de moyen de gagner. Ne le corrigez pas. Dites : « Il a raison. Ce n'est pas encore un jeu. C'est le programme des dix prochaines minutes. »

Étape 4 — 20–30 min : en faire un jeu

Dites : « Vous avez un monde et une personne. Pourquoi ce n'est pas un jeu ? Qu'est-ce qui manque ? »

Insistez jusqu'à ce que quelqu'un dise quelque chose comme on ne peut pas gagner ou il n'y a rien à faire. C'est toute l'idée de cette étape.

Dites : « Un jeu a besoin de trois choses : quelque chose à aller chercher, quelqu'un qui le veut, et une règle qui dit que c'est fini. Trois lignes. Regardez. »

Tapez ces lignes au vidéoprojecteur, dans cet ordre, en disant ce qu'est chacune :

World "snow":
Character "Bo":
  say I have been standing in this snow all morning.
  say My dog ran off. Bring me a bone and I will call him back.
  wants: 🦴 bone
  gives: 🐕 puppy
item 🦴 bone
Win when: player has 🐕 puppy
  • wants: — « Bo va te demander ça et n'arrêtera pas de le demander tant que tu ne l'apportes pas. »
  • gives: — « ce qu'il te donne quand tu le fais. »
  • item 🦴 bone — « l'os existe vraiment dans le monde maintenant. Remarquez que cette ligne est tout à gauche, pas glissée sous Bo. Elle appartient au monde, pas à lui. »
  • Win when: — « la règle de fin. »

L'erreur volontaire — faites-la, ce sont les 60 secondes les plus utiles de la séance. Avant de taper la dernière ligne, arrêtez-vous avec seulement wants: et gives: en place et montrez la ligne d'état sous l'éditeur :

💡 Your game has no way to win yet — add `win` inside a choice, or a `Win when:` line.

Dites : « Personne n'y a joué. Personne ne l'a testé. L'ordinateur l'a déjà lu et m'a dit qu'on ne peut pas le terminer. C'est ça, un compilateur — une machine qui lit votre travail et trouve le trou avant votre joueur. »

Tapez maintenant la ligne Win when:. Le message bascule sur :

✓ Looks good — click the game to play it.

Dites : « Maintenant, allez gagner le vôtre. Parlez d'abord à votre personnage — la chose qu'il veut n'apparaît qu'une fois qu'il vous l'a demandée. »

En circulant, les deux erreurs que vous verrez vraiment :

  • L'objet est indenté sous le personnage. Si item 🦴 bone se trouve sous Character avec des espaces devant, il appartient au personnage et disparaît discrètement du monde. Symptôme : la ligne d'état dit qu'elle a « placé automatiquement » l'objet. Remède : supprimez les espaces pour que le mot item commence collé au bord gauche.
  • La ligne Win when: est indentée. Même cause, même remède — c'est une règle pour tout le jeu, donc elle vit tout à gauche.

Dites ceci à chaque enfant que vous aidez, à chaque fois, parce que c'est l'idée transférable : « L'endroit où la ligne commence dit à l'ordinateur à qui elle appartient. »

Étape 5 — 30–38 min : à ta façon

Ce bloc leur appartient. Écrivez trois consignes au tableau puis arrêtez de parler.

  1. Change le lieu. Change le mot dans World et regarde ce que tu obtiens.
  2. Ajoute un ennemi. Trois lignes, et les deuxième et troisième sont indentées :
    Enemy "Frost Wolf":
      kind: wolf
      tier: 2
    

    Dites ceci à voix haute en l'écrivant au tableau : « kind: va sur sa propre ligne, indentée. Si vous le mettez sur la même ligne que le nom, vous obtenez un monstre qui s'appelle Frost Wolf: kind: wolf — l'ordinateur croit que tout ça est son nom. Essayez si vous ne me croyez pas. » Les kinds à connaître : wolf dog bat spider skeleton zombie ghost slime robot drone golem raider wyrm. tier:, c'est la difficulté, de 1 à 50 — commencez à 2.

  3. Donne un choix au joueur. Les lignes say sous chaque choix sont indentées d'un cran de plus :
      if choice is "I will find him":
        say You are a good one. Hurry!
      if choice is "It is too cold out there":
        say ...Then I will wait a little longer.
    

Mis bout à bout, un jeu terminé à la 38e minute ressemble à ça — c'est la version à laisser au vidéoprojecteur pendant qu'ils travaillent :

Title: Bo and the Frost Wolf
World "snow":
Character "Bo":
  say My dog ran off into the storm.
  say Bring me a bone and I will call him back.
  wants: 🦴 bone
  gives: 🐕 puppy
  if choice is "I will find him":
    say You are a good one. Hurry!
  if choice is "It is too cold out there":
    say ...Then I will wait a little longer.
Enemy "Frost Wolf":
  kind: wolf
  tier: 2
item 🦴 bone
Win when: player has 🐕 puppy

Deux choses à dire à la classe pendant ce bloc, et rien d'autre :

  • À 34 minutes : « Si vous n'avez pas joué à votre propre jeu depuis deux minutes, jouez-y maintenant. » (L'itération. Ils oublient.)
  • À qui bloque : « Lis-moi le message en bas de ton éditeur. » (Pas « qu'est-ce qui ne va pas ? » — faites-leur lire le compilateur. À la troisième fois, ils le font sans vous.)

Pour ceux qui finissent vite, montrez le bouton 💡 Comment faire… dans la barre d'outils plutôt que d'enseigner quoi que ce soit de nouveau — il liste chaque commande avec une ligne à déposer telle quelle. Exemples ouvre des jeux terminés qu'ils peuvent ouvrir et démonter.

Étape 6 — 38–45 min : l'arcade

Annoncez-le fermement à 38. Personne n'a fini ; c'est très bien, et c'est même le but.

Dites : « On ne touche plus à rien. Tout le monde appuie sur le bouton 🎒 Rendre en haut. Des confettis jaunes veulent dire que ça a marché. Vous pourrez réappuyer plus tard — ça met votre jeu à jour, ça n'en crée pas un deuxième. »

Puis, au vidéoprojecteur, allez sur vxlverse.com/class/YOUR-CODE. Chaque jeu rendu est là, sous forme de carte avec le pseudo de son auteur. (Ces pages ne sont pas référencées dans les moteurs de recherche et les jeux des élèves n'apparaissent pas dans la galerie publique — c'est le code qui ouvre la page.)

Jouez-en trois ou quatre. Choisissez ceux que vous avez vus se construire, et un que vous n'avez jamais vu. La règle qui fait que ça marche :

Dites : « L'auteur ne touche pas au clavier. L'auteur reste assis et ne dit rien. C'est moi qui joue. Si je n'arrive pas à comprendre quoi faire, c'est une information. »

Jouez 60 à 90 secondes chacun. Puis posez une question à l'auteur — toujours la même :

Demandez : « Qu'est-ce que tu as dû réparer pour qu'on puisse le terminer ? »

Cette question referme la séance sur la bonne idée. Tout le monde est tombé sur quelque chose qui ne marchait pas, tout le monde a lu un message, tout le monde a changé une ligne et réessayé. C'est ça que vous enseignez vraiment, et ça vaut la peine de le nommer dans les trente dernières secondes :

Dites : « Personne dans cette salle n'a écrit un jeu qui marchait du premier coup. Vous en avez tous écrit un cassé et vous l'avez réparé. Ce n'est pas la mauvaise partie de la programmation. C'est la programmation. »

Si la classe prend du retard

  • La connexion a mangé 12 minutes. Réduisez l'étape 5 à cinq minutes et gardez l'arcade. L'arcade, c'est ce dont ils se souviennent ; la personnalisation, c'est ce qu'ils referont à la maison.
  • La moitié de la classe n'a pas de victoire à la minute 30. Mettez le jeu de Bo terminé, en huit lignes, au vidéoprojecteur et laissez-le là. Le recopier puis changer les noms est un chemin tout à fait légitime — de toute façon, la plupart s'en éloigneront en deux minutes.
  • Pas le temps pour l'arcade. Rendre prend quand même dix secondes ; faites-le, et ouvrez la page de la classe au début de la séance suivante. Les jeux n'expirent pas.

Ce qui a vraiment été enseigné

Nommé honnêtement, sans en rajouter : la séquence (les lignes s'exécutent de haut en bas, et l'inversion de l'étape 3 le prouve), la sélection (if choice is — le programme prend un chemin ou un autre), l'état (le joueur a l'os ou ne l'a pas, et la règle de victoire lit ça), la décomposition (un jeu, c'est un monde, plus des personnages, plus des objets, plus une règle), et le débogage comme situation normale (le compilateur signale, l'élève lit, change une ligne, reteste). Cela correspond aux axes séquence et sélection de la plupart des programmes d'informatique ; vérifiez la formulation de votre propre progression plutôt que de faire confiance à un numéro cité par un site web.

Ce qu'ils apprennent

Ce que les enfants apprennent vraiment

C'est une seule séance de 45 minutes, donc l'ambition est volontairement modeste : les enfants n'en ressortent experts en rien. Ils en ressortent après avoir rencontré six idées dans un contexte où ces idées comptaient — parce que se tromper voulait dire que le jeu ne marchait pas, et faire juste voulait dire qu'il marchait. Ci-dessous, chaque notion est donnée en une phrase simple, puis la minute exacte de la séance où un enfant la rencontre, puis ce qu'un enfant qui l'a comprise sait faire ensuite.

1. La séquence

Ce que c'est : les instructions s'exécutent dans l'ordre où on les écrit, et l'endroit où une ligne se trouve (indentée sous quelque chose, ou tout à gauche) décide à quoi elle appartient.

Où ils la rencontrent : 10–20, PREMIER MONDE. L'enfant tape trois lignes et appuie sur Jouer. Les deux lignes say sortent de la bouche du personnage dans l'ordre où elles ont été tapées — inversez-les et la conversation n'a plus de sens. L'indentation fait un vrai travail : ces lignes say sont indentées sous Mara, donc ce sont les répliques de Mara.

World "forest":
Character "Mara":
  say Welcome to the forest.
  say I have lost something precious.
Win when: talk to Mara

Un enfant qui a compris sait : prédire ce qui va se passer avant d'appuyer sur Jouer, et remettre en ordre une conversation qui sort à l'envers sans qu'on lui dise quelle ligne déplacer. Il sait aussi expliquer pourquoi une ligne indentée sous un personnage appartient à ce personnage — le premier pas vers la notion de portée.

2. La sélection (les conditions)

Ce que c'est : un programme peut tester quelque chose puis prendre un chemin ou un autre, si bien que tous les joueurs ne voient pas la même chose.

Où ils la rencontrent : 30–38, À TA FAÇON, quand ils ajoutent un choix. C'est le premier moment où le jeu cesse d'être un rail unique. Une branche termine le jeu ; l'autre non.

World "forest":
Character "Mara":
  say A wolf blocks the path. What do you do?
  if choice is "Share my bread":
    say The wolf steps aside and lets you pass.
    win
  if choice is "Run away":
    say You are back where you started.

Un enfant qui a compris sait : suivre les deux chemins sur le papier et dire lequel fait gagner ; écrire une bifurcation exprès pour qu'une option soit une impasse et l'autre un progrès. Le signe le plus fort, c'est un enfant qui teste les deux options plutôt que seulement celle qu'il a écrite en premier — c'est le début d'une réflexion sur la couverture des cas.

3. Variables et état

Ce que c'est : un programme retient des choses pendant qu'il tourne — ce que tu portes, combien de pièces tu as — et peut décider en fonction de ce qu'il retient.

Où ils la rencontrent : deux fois. À 20–30, l'inventaire est un état : Win when: player has 🌟 star est une question que le jeu pose sur quelque chose qu'il est en train de retenir. À 30–38, les groupes rapides rencontrent un compteur nommé qui monte pendant la partie et qui est testé à la fin.

World "forest":
Character "Mara":
  say Help me and I will pay you in coins.
  if choice is "Fetch the water":
    coins + 10
    say Thank you!
  if choice is "Chop the wood":
    coins + 10
    say Warmth at last!
Win when: coins is 20

Un enfant qui a compris sait : répondre à « combien de pièces as-tu en ce moment, et comment le sais-tu ? » et — le vrai test — comprendre qu'une victoire réglée sur coins is 30 avec seulement deux missions à dix pièces dans le jeu ne peut jamais arriver. C'est un raisonnement arithmétique sur un programme en train de tourner, et c'est exactement à ça que sert une variable.

4. La décomposition

Ce que c'est : une grande chose (« faire un jeu ») est construite à partir de petits morceaux qui font chacun un seul travail.

Où ils la rencontrent : 0–5 puis de nouveau à 20–30. L'accroche fait ça d'un seul geste : l'enseignant joue un jeu terminé, puis montre les six lignes qui sont derrière. La classe voit le tout fait de morceaux — un lieu, une personne, une chose, une règle. À 20–30, ce sont eux qui assemblent ces morceaux.

World "forest":
Character "Mara":
  say Find the lost star!
  wants: 🌟 star
item 🌟 star
Win when: player has 🌟 star

Un enfant qui a compris sait : montrer n'importe quelle ligne et dire quel travail elle fait, et répondre à « quelle ligne supprimerais-tu pour casser ça ? ». Il sait préparer la suite en nommant le morceau dont elle a besoin (« je veux une porte fermée à clé, donc il me faut un objet et un personnage qui le donne ») au lieu de demander en général « comment je fais pour que ce soit plus dur ».

5. Le débogage

Ce que c'est : quand le programme ne fait pas ce que tu voulais, tu lis ce qu'il dit vraiment, tu fais une hypothèse sur la cause, tu changes une seule chose, et tu retestes.

Où ils le rencontrent : partout, mais surtout à 20–30. Le compilateur tourne pendant qu'ils tapent, et ses messages sont écrits comme des phrases sur lesquelles un enfant peut agir, pas comme des codes d'erreur. Trois messages qu'ils risquent de croiser dans cette séance :

  • Aucun moyen de terminer. « Ton jeu n'a pas encore de moyen de gagner — ajoute win dans un choix, ou une ligne Win when:. » C'est l'état attendu à la fin du 10–20, et c'est ce qui alimente les vingt minutes suivantes.
  • Un nom qui n'existe pas. Si un enfant écrit une règle de victoire à propos d'un personnage dont il a mal orthographié le nom, la construction s'arrête avec « je ne connais personne qui s'appelle… ». C'est le seul échec du langage qui bloque net la construction, et c'est un bon échec : il apprend que les noms doivent correspondre exactement.
  • L'objet mis au mauvais endroit. item se place tout à gauche (ou directement sous un World), pas indenté sous un personnage. Un enfant qui l'indente verra le compilateur signaler qu'il a placé l'objet au sol tout seul pour que la victoire reste atteignable — un signe visible que la ligne ne faisait pas ce qu'il croyait. À mettre au tableau dès le début : les objets vivent au bord de la page.

Un enfant qui a compris sait : lire le message avant de lever la main, changer une seule chose au lieu de tout réécrire, et retester. L'habitude à féliciter à voix haute pendant cette séance, c'est « je le lis, je change une chose, je réappuie sur Jouer ».

6. But narratif et obstacle

Ce que c'est : une histoire ne retient l'attention que si quelqu'un veut quelque chose et que quelque chose se met en travers — et dans un jeu, ces deux choses doivent être écrites comme des règles, pas sous-entendues.

Où ils le rencontrent : 20–30 fournit le but (wants: et Win when:) ; 30–38 fournit l'obstacle (un ennemi, ou un choix qu'on peut rater).

World "cemetery":
Character "Mara":
  say Something is moving between the graves.
Enemy "Bone Rider":
  kind: skeleton
  count: 4
Win when: defeat all

Un enfant qui a compris sait : énoncer le but de son jeu et son obstacle en une phrase chacun, et voir pourquoi « une jolie forêt où on se promène » n'est pas encore un jeu. C'est la même analyse désir/obstacle qu'en cours de français, appliquée là où la réponse est vérifiable — l'histoire se résout ou non, et la machine vous dira laquelle.

Une remarque sur le bloc de l'ennemi : chaque trait va sur sa propre ligne indentée. Écrire Enemy "Bone Rider": kind: skeleton tout sur une ligne replie le trait dans le nom de l'ennemi et la créature sort de travers. C'est l'erreur de mise en forme la plus fréquente de la séance, et elle vaut la peine d'être devancée au vidéoprojecteur.

La vérification de victoire du compilateur comme signal d'évaluation

C'est ce qui rend cette séance évaluable en 45 minutes, donc il vaut la peine d'être précis sur ce qu'elle fait et ce qu'elle ne fait pas.

Avant qu'un jeu soit rendu, on vérifie s'il peut vraiment être terminé — pas s'il est bon, mais s'il existe un chemin jusqu'à la fin. Si rien dans le script ne peut jamais produire une victoire, on le dit à l'enfant en mots simples. Si la victoire dépend d'un objet qu'aucun joueur ne pourrait jamais ramasser, c'est signalé aussi. Cette vérification n'est ni une note ni un avis sur le style ; c'est une question d'accessibilité, et l'enfant doit y répondre en raisonnant sur son propre jeu.

Ce raisonnement, c'est la trace d'évaluation. Pour passer la vérification, un enfant doit tenir deux choses en tête à la fois — « voilà ce que mon jeu demande au joueur de faire » et « voilà le chemin qui le rend possible » — et remarquer quand le second n'existe pas. Un enfant qui a une étoile dans le monde, un personnage qui la demande et une règle de victoire qui la teste a montré qu'il sait suivre un chemin dans un système qu'il a construit. Un enfant dont le jeu dit « pas encore de moyen de gagner » et qui comprend ensuite, tout seul, qu'il a écrit un wants: mais jamais de Win when: a montré mieux encore.

Concrètement, cela veut dire que vous ne corrigez pas 28 jeux à la maison. En circulant, l'écran vous dit où en est chaque enfant : encore en train de taper, averti et perplexe, ou propre et jouable. Le signal à récolter côté enseignant n'est pas « est-ce que ça s'est construit » (presque tout se construit) mais « cet enfant sait-il dire, avec des mots, pourquoi son jeu peut être gagné ? » Posez la question à trois ou quatre enfants dans les dix dernières minutes et vous avez votre évaluation formative pour la séance.

En un coup d'œil

NotionOù dans les 45 minutesCe que vous pouvez voir ou entendre
Séquence10–20 Premier mondePrédit l'ordre des dialogues avant d'appuyer sur Jouer ; réordonne les lignes pour corriger
Sélection30–38 À ta façonTeste les deux branches, pas seulement celle qu'il a écrite
Variables et état20–30 et 30–38Dit ce que le joueur porte et pourquoi la victoire se déclenche ou non
DécompositionAccroche 0–5, 20–30Nomme le rôle de chaque ligne ; nomme le morceau qu'une nouvelle idée demanderait
DébogageTout du long, pic à 20–30Lit le message, change une chose, reteste, sans demander d'abord
But et obstacle20–30 et 30–38Énonce le but et l'obstacle en une phrase chacun

Pour une progression annuelle

En une séance de 45 minutes, des élèves de 10 à 14 ans écrivent un court script en texte qui construit un jeu 3D jouable dans le navigateur, puis jouent au travail des autres. Le script est du texte indenté écrit en mots simples — un lieu, un personnage, quelques répliques, un objet et une règle pour gagner — donc aucune expérience de programmation n'est nécessaire, ni pour les élèves ni pour l'enseignant, et rien ne s'installe. Les élèves rencontrent la séquence (l'ordre des lignes et ce que l'indentation regroupe), la sélection (un choix qui bifurque, où un chemin termine le jeu et l'autre non), les variables et l'état (l'inventaire du joueur, et un compteur testé par la règle de victoire), la décomposition (un jeu découpé en lieu, personnage, objet et règle) et le débogage (lire un message du compilateur écrit en langage clair, changer une chose, retester). Cela rejoint aussi le travail de français et de maîtrise de la langue : les élèves doivent exprimer explicitement un désir et un obstacle, parce que le jeu ne se résout que si les deux sont écrits comme des règles. Le travail correspond aux axes séquence, sélection et débogage communs à la plupart des programmes d'informatique, et il peut être évalué sans ramasser de cahiers : avant qu'un jeu puisse être rendu, on vérifie s'il peut vraiment être terminé, donc chaque élève doit raisonner sur — et savoir expliquer — le chemin qui rend son propre jeu gagnable. Prolongement suggéré : une deuxième séance qui ajoute un second lieu et un but en plusieurs étapes, ou une version interdisciplinaire où le script raconte à nouveau un texte étudié en classe.

L'évaluation

L'évaluation

Quatre axes, quatre niveaux. Chaque case décrit quelque chose que vous pouvez voir à l'écran — une étoile manquante, un message dans la barre d'état, un enfant qui change une ligne et réappuie sur Jouer. Rien ici ne vous oblige à lire du code que vous ne comprenez pas.

Les axes nomment des notions plutôt que des codes officiels : l'axe 1, c'est la séquence et la structure (l'ordre et l'indentation changent le résultat), l'axe 2, c'est l'état de victoire et la décomposition (ce qui doit être vrai pour que ce soit terminé, et ce qui doit exister pour que cela arrive), l'axe 3, c'est la construction du récit et la sélection (un but, un obstacle, une bifurcation), l'axe 4, c'est le débogage. Ils correspondent sans peine aux axes séquence/sélection et débogage de la plupart des programmes d'informatique — rattachez-les à votre propre référentiel plutôt que de faire confiance à un code imprimé par quelqu'un qui n'a jamais vu votre programme.

La grille

Axe Débutant En progrès Acquis Approfondi
Le jeu fonctionne Rien sur la page de la classe : le bouton Rendre a refusé le script avec « Corrige d'abord les petites erreurs, puis réessaie », et aucun monde ne s'est jamais construit dans l'aperçu. Ça se construit et ça se joue, mais quelque chose qu'ils ont écrit n'est pas à l'écran — l'objet tapé indenté sous un personnage ne traîne pas dans le monde, ou l'ennemi s'appelle 'Raider': kind: raider parce que le trait a été tapé sur la ligne du nom. On appuie sur Jouer : le monde, le personnage nommé et chaque objet qu'ils ont écrit sont tous là, et s'approcher puis appuyer sur E ouvre le dialogue exactement comme il est écrit. Le jeu se construit toujours proprement avec un ajout structurel — un deuxième World où le joueur peut entrer par le portail, ou un Enemy avec kind: sur sa propre ligne indentée, qui apparaît bien sous la forme de la créature voulue.
Le jeu peut être gagné Pas de ligne Win when: et pas de win nulle part ; la barre d'état sous l'éditeur affiche « Ton jeu n'a pas encore de moyen de gagner — ajoute win dans un choix, ou une ligne Win when:. » Un wants: tout seul donne des points et le jeu continue, c'est tout. Il y a une ligne Win when:, mais l'éditeur a dû la sauver — la barre d'état affiche « [item] placé automatiquement au sol pour que la victoire reste atteignable », ce qui veut dire que la chose demandée par la victoire n'a jamais vraiment été mise dans le monde. Vous pouvez jouer à leur jeu et atteindre l'écran de victoire : le Win when: nomme un objet qui existe au niveau du monde, écrit exactement pareil, et le joueur peut aller jusqu'à lui et le ramasser. Gagner demande une condition et pas seulement une promenade — le win est à l'intérieur d'un choix ou d'une branche if player has …:, ou l'objet gagnant n'existe que parce qu'un ennemi le drops — et il y a une ligne Ending: qui se déclenche à l'arrivée.
L'histoire a un but et un obstacle Chaque ligne say est une salutation ou du décor ; aucune ligne, nulle part, ne dit au joueur ce qu'il est censé faire. Une ligne say énonce le but (« Apporte-moi l'étoile ») mais l'étoile traîne à découvert à quelques pas, sans rien entre le joueur et elle. Le but est dit à voix haute et quelque chose se met en travers : un ennemi qui détient l'objet, une porte qui réclame d'abord un autre objet, ou un personnage qui ne le donnera pas tant qu'on ne lui apporte pas quelque chose. L'obstacle appartient à l'histoire — l'ennemi lâche exactement la chose que le personnage a demandée, ou un choix envoie le joueur vers un Ending: différent — et la phrase de fin répond à la phrase du but.
L'enfant a débogué quelque chose Le même message est à l'écran depuis deux minutes, la main levée ; rien n'a bougé dans le script. Ils lisent le message et changent quelque chose, mais ils ont besoin de vous ou du voisin pour leur montrer quelle ligne changer. Ils repèrent la panne en jouant (« l'étoile n'est pas là »), reviennent au script, trouvent la ligne, la corrigent, réappuient sur Jouer pour vérifier — et savent vous dire en une phrase ce qui n'allait pas. Ils prévoient une panne avant d'appuyer sur Jouer (« cet objet est indenté sous elle, il n'apparaîtra pas »), ou ils réparent le jeu d'un camarade et lui expliquent la réparation au lieu de la taper à sa place.

À quoi ressemble « acquis » à l'écran

Acquis sur les axes 1, 2 et 3 en même temps — six lignes, un but énoncé, une victoire atteignable :

Win when: player has 🌟 star
World "forest":
Character "Mara":
  say Bring me the star and the forest wakes up.
  wants: 🌟 star
item 🌟 star

Approfondi sur l'axe 3 — l'objet ne traîne pas par terre, un ennemi le détient, et la fin répond au but :

Title: The Cave Star
Win when: player has 🌟 star
Ending: The forest wakes up.
World "cave":
Character "Mara":
  say A raider took our star. Get it back!
Enemy "Raider":
  kind: raider
  drops 🌟 star

Approfondi sur l'axe 2 — la victoire est derrière une condition et il existe une vraie branche d'échec, donc le joueur peut se faire refouler :

Title: The Bridge
Ending: You crossed the bridge before dark.
World "forest":
Character "Toll Keeper":
  say Nobody crosses this bridge for free.
  if player has 🪙 coin:
    say A coin! Cross, friend.
    win
  else:
    say Come back when you have a coin.
item 🪙 coin

Corriger trente travaux en dix minutes

Ouvrez la page de votre classe à l'adresse /class/ suivie de votre code de classe et corrigez en descendant la grille : chaque travail rendu est une carte avec le pseudo de l'enfant, le titre qu'il a choisi et une image de son monde, et comme le bouton Rendre refuse un script qui ne se construit pas, chaque carte de cette page a déjà dépassé le niveau débutant sur l'axe 1. Pour les axes 2 et 3, cliquez sur une carte, puis sur Remixer ce jeu — cela ouvre le script de l'enfant dans l'éditeur, où la barre d'état vous dit en une ligne si le jeu peut être gagné (« Ton jeu n'a pas encore de moyen de gagner… » ou rien du tout) et où les lignes say sous vos yeux vous disent si un but a été énoncé, soit une quinzaine de secondes par enfant. L'axe 4 est le seul que la page de la classe ne peut pas vous montrer : cochez celui-là dans la salle, pendant les blocs 20-30 et 30-38 — une croix sur la liste dès que vous voyez un enfant lire un message, changer une ligne et réappuyer sur Jouer — et vous ressortez avec toute la grille remplie.

Si vous n'avez le temps que pour un seul jugement

  • Peut-on le gagner ? Cette seule question sépare un texte d'un jeu, et l'éditeur y répond pour vous en une ligne — c'est pourquoi elle mérite plus d'attention, au moment de corriger, que tout le reste de cette page.
  • Gardez les traces sans effort. L'adresse de la page de la classe contient tout le travail ; le script derrière n'importe quelle carte est à un clic, via Remixer, si un parent, un modérateur ou un responsable pédagogique veut voir ce qu'un enfant a réellement écrit.
Quand ça tourne mal

Dépannage : ce qui casse dans une vraie salle

Tout ce qui suit est écrit pour être réglé debout, en une trentaine de secondes, sans quitter la table de l'enfant. Chaque entrée vous donne le symptôme, une phrase que vous pouvez vraiment dire à voix haute, et le remède.

Deux règles qui vous sauveront la plus grande partie de la séance :

  • Ne prenez jamais le clavier. Montrez la ligne. C'est l'enfant qui tape la correction. Ça prend dix secondes de plus et c'est tout le sens de la séance.
  • Cassé, c'est normal. Si vous traitez un message rouge comme une catastrophe, trente enfants le traiteront comme une catastrophe. Traitez-le comme le jeu qui leur parle.

Recherche rapide

SymptômePresque toujours
« Ça dit que mon jeu ne peut pas être gagné »Pas de ligne Win when:, ou elle nomme une chose qui n'est pas dans le monde
Jouer montre un monde vide, personne dedansLa ligne Character a perdu ses deux-points ou ses guillemets
L'objet n'est nulle part dans le mondeitem est indenté sous un Character — il a été ignoré en silence
L'ennemi a un nom ridiculekind: a été tapé sur la même ligne que le nom
Le code de classe « ne marche pas »Confusion lettre/chiffre (O et 0, I et 1) ou un espace en trop
Tout saccadeTrop d'onglets ouverts. Fermez-les tous sauf un.
Écran blanc après Jouer, ça tourneLe wifi de l'établissement. Attendez quinze secondes, puis rechargez une fois.

1. « Ça dit que mon jeu ne peut pas être gagné »

Ce que ça donne : l'enfant appuie sur Jouer ou sur Rendre et reçoit un message disant que le jeu ne peut pas être terminé, en nommant quelque chose — un but manquant, ou un objet que personne ne peut jamais ramasser. L'enfant lit ça comme « j'ai raté ».

Dites ceci : « Ce n'est pas une erreur, c'est l'ordinateur qui te dit qu'il a joué à ton jeu et qu'il n'a pas pu le terminer. Donc une personne non plus. Qu'est-ce qu'elle est censée faire pour gagner ? »

Remède : passez trois questions en revue, dans l'ordre.

  1. Y a-t-il seulement une ligne Win when: ? Un jeu qui n'a que wants: donne au joueur une mission et un score, mais il n'y a pas de ligne d'arrivée, donc on ne peut jamais le gagner. C'est de loin le cas le plus fréquent sur la tranche 20-30 minutes.
  2. Est-ce que Win when: nomme exactement la même chose que la ligne item ? Même emoji, même mot. 👑 crown et 🌟 crown sont deux choses différentes pour le compilateur.
  3. La ligne item est-elle vraiment dans le monde ? Voyez le problème 3 ci-dessous.

La forme qui marche à tous les coups :

World "forest":
Character "Mara":
  say Find the lost crown!
  wants: 👑 crown
item 👑 crown
Win when: player has 👑 crown

Si vous manquez de temps, dites-le une fois à toute la classe : « Chaque jeu a besoin d'une dernière ligne qui commence par Win when:. » Cette seule phrase évite à peu près la moitié des cas.

2. Rien n'apparaît quand ils appuient sur Jouer

Ce que ça donne : le monde se charge — le sol, le ciel, ils peuvent marcher — mais il n'y a pas de personnage, ou il ne se passe rien du tout. Ou l'écran reste blanc avec une roue de chargement.

Dites ceci : « Le monde s'est bien construit, donc ta ligne World est bonne. Quelque chose en dessous n'est pas lu. Regarde la ligne avec le nom de la personne. »

Remède, dans cet ordre :

  • Deux-points manquants. Character "Mara" sans : à la fin. Chaque ligne World, Character et Enemy se termine par deux-points.
  • Guillemets manquants ou courbes. Si un enfant a collé un nom depuis un document, les guillemets peuvent être du type incliné. Supprimez-les et retapez des guillemets droits au clavier du Chromebook.
  • Rien n'est indenté. La ligne say doit être plus à droite que la ligne Character. Si tout est collé à gauche, le personnage n'a aucune réplique et reste muet.
  • Écran vide qui tourne, aucun monde. C'est le réseau, pas le script. Attendez quinze secondes. Puis rechargez la page une fois — leur texte est toujours là. Si ça arrive sur plus de trois machines en même temps, c'est le wifi de l'établissement et vous devriez basculer sur le plan vidéoprojecteur (voyez le problème 8).

3. L'objet est écrit mais il n'est pas dans le monde

Ce que ça donne : l'enfant jure qu'il a écrit l'étoile. Il peut parcourir tout le monde, il n'y a pas d'étoile. Aucune erreur n'apparaît — et c'est ce qui rend ce cas vicieux.

Dites ceci : « Regarde à quelle distance de la gauche ta ligne item commence. Elle est glissée sous Mara, donc le jeu croit que c'est quelque chose qui concerne Mara au lieu de quelque chose dans le monde. Pousse-la tout à gauche. »

Remède : item vit tout au bord à gauche, au même niveau que World — jamais indenté sous un Character. Indenté sous un Character, il est ignoré en silence, et c'est pour ça que rien ne proteste. Version correcte :

World "cave":
Character "Rook":
  say I dropped my lantern somewhere in here.
  wants: 🔦 lantern
item 🔦 lantern
Win when: player has 🔦 lantern

À dire une fois à toute la classe, vers la minute 22 : « item se colle tout à gauche. Les objets appartiennent au monde, pas à une personne. »

4. L'ennemi a un nom idiot

Ce que ça donne : un monstre qui se promène et qui s'appelle Raider kind: raider. La classe trouve ça extrêmement drôle, c'est très bien, mais le trait ne s'est pas appliqué.

Dites ceci : « Tout ce qui vient après le nom doit aller sur sa propre ligne en dessous, indentée. Une idée par ligne. »

Remède : coupez-la en deux.

World "desert":
Character "Sam":
  say The raiders took my water key.
  wants: 🔑 key
Enemy "Raider":
  kind: raider
item 🔑 key
Win when: player has 🔑 key

5. Le code de classe ne marche pas

Ce que ça donne : « Classe introuvable », ou la page reste là sans rien faire. En général un ou deux enfants, parfois toute la classe.

Dites ceci : « Relis-le-moi un caractère à la fois. » Neuf fois sur dix, ils le lisent correctement et l'ont tapé de travers.

Remède :

  • Un ou deux enfants : c'est une confusion de caractères. Zéro contre lettre O, un contre lettre I, cinq contre S. Écrivez le code au tableau en grandes capitales bien espacées et prononcez les caractères ambigus à voix haute (« ça, c'est un zéro »). Vérifiez aussi qu'il n'y a pas d'espace au début à cause d'un copier-coller, et qu'ils sont bien sur vxlverse.com/class et pas sur une page de résultats de recherche.
  • Toute la classe : vous lisez probablement le code d'hier, ou celui d'une autre classe. Ouvrez la page de votre classe au vidéoprojecteur et lisez le code dessus, en direct.
  • « On a un souci en ce moment » : c'est le serveur brièvement occupé, pas un mauvais code. Attendez une minute et appuyez sur réessayer. Ne régénérez pas le code — vous invalideriez celui qui est déjà au tableau.

Prévention : laissez le code au tableau pendant toute la séance, pas seulement les deux premières minutes. Les retardataires et les rechargements en ont besoin tous les deux.

6. Un Chromebook est lent ou la 3D saccade

Ce que ça donne : le monde avance par à-coups, comme un diaporama, ou le ventilateur s'entend, ou Jouer prend vingt secondes. Les Chromebooks de l'établissement sont en général le coupable et ce n'est presque jamais la faute du jeu.

Dites ceci : « Ferme tous les onglets sauf celui-là. Tout de suite, tous. »

Remède, du moins coûteux au plus coûteux :

  1. Fermez tous les autres onglets. Les enfants accumulent quinze onglets dès la deuxième heure ; ça seul règle la plupart des cas.
  2. Sortez du plein écran. Une image plus petite demande beaucoup moins de travail à dessiner.
  3. Appuyez sur Jouer, ne le laissez pas tourner. Demandez-leur d'arrêter le jeu pendant qu'ils écrivent, et de ne jouer que quand ils veulent vérifier quelque chose.
  4. Si c'est encore mauvais : gardez le monde petit. Un World, un ou deux personnages, un ennemi. Dites-leur que ce sont les ennemis qui coûtent le plus cher.
  5. Si une machine précise est irrécupérable, mettez l'enfant en binôme avec un voisin. Deux enfants sur un script, c'est une bonne séance, pas un pis-aller — l'un tape, l'autre lit l'histoire à voix haute, on échange à la moitié.

7. Un enfant finit en huit minutes et s'ennuie

Ce que ça donne : « J'ai fini. » Ils ont un jeu qui marche et qu'on peut gagner, et il reste trente minutes. Laissés seuls, ils vont se mettre à commenter l'écran des autres.

Dites ceci : « Bien. Maintenant fais en sorte que je ne puisse pas deviner ce qui va arriver. Donne-moi un choix où les deux réponses sont tentantes. »

Remède — donnez-leur l'une de ces pistes, dans cet ordre croissant. Ne leur donnez pas les quatre.

  • Ajouter un vrai choix avec if choice is, où aucune option n'est visiblement la bonne.
  • Ajouter un Enemy, puis leur faire justifier sa présence dans l'histoire — pourquoi est-il là, qu'est-ce qu'il veut.
  • Ajouter un deuxième personnage qui n'est pas d'accord avec le premier. Deux personnes qui veulent des choses différentes du joueur, c'est le chemin le plus rapide vers une vraie histoire.
  • Jouer au jeu du voisin et écrire une phrase honnête sur ce qui l'a perdu. C'est la meilleure piste : c'est de l'évaluation entre pairs, ça ne vous coûte rien, et ça rend l'arcade de la fin bien meilleure.
World "forest":
Character "Mara":
  say The crown is lost. Will you help me look?
  wants: 👑 crown
  if choice is "I'll help":
    say Try the tall rocks past the river.
  if choice is "Not today":
    say Then the forest stays dark a while longer.
Enemy "Thorn":
  kind: raider
item 👑 crown
Win when: player has 👑 crown

8. Un enfant se bloque et n'écrit rien

Ce que ça donne : un éditeur vide à la minute 18. L'enfant ne fait pas exprès — on lui a demandé d'inventer un monde à partir de rien, en public, et c'est vraiment difficile.

Ne dites pas « écris n'importe quoi » ou « sers-toi de ton imagination ». C'est précisément ce qu'ils n'arrivent pas à faire à cet instant.

Dites ceci : « N'invente rien. Recopie ça exactement, appuie sur Jouer, et ensuite change trois mots : le lieu, le nom de la personne, et la chose qu'elle veut. »

World "forest":
Character "Mara":
  say Hi! Bring me a star.
  wants: 🌟 star
item 🌟 star
Win when: player has 🌟 star

Remède : ce qui débloque, c'est toujours quelque chose qui marche et qu'on modifie, jamais une page blanche. S'ils calent encore, posez deux questions fermées plutôt qu'une question ouverte — « forêt ou désert ? » et « qui est dedans, une personne ou un animal ? » — et ne tapez rien vous-même. Dès qu'un mot est d'eux, le reste suit.

9. Deux enfants choisissent le même pseudo

Ce que ça donne : deux Dragon sur la page de la classe, et à l'arcade personne ne sait à qui est quel jeu. En général ce n'est même pas un hasard, ce sont deux amis qui l'ont fait exprès.

Dites ceci : « Il me faut un nom que je peux lire à la fin et que tout le monde sache qu'il est à toi. Ajoute quelque chose. »

Remède : demandez à l'un d'eux d'ajouter deux ou trois lettres — Dragon devient DragonJK. Il n'y a pas de compte, donc rien n'est cassé et rien n'est perdu ; le seul coût, c'est l'ambiguïté sur la page de la classe. Si ça arrive après qu'ils ont rendu, réglez-le à l'arcade en demandant « c'est à qui, celui-là ? » plutôt qu'en leur faisant refaire quoi que ce soit.

Prévention : énoncez la règle une fois au moment de la connexion — « ton pseudo doit être un nom que je peux lire à voix haute devant la classe, donc pas de vrai nom de famille et rien de grossier ». Prendre les devants prend dix secondes ; démêler après coup en prend cinq minutes.

10. Le vidéoprojecteur montre la mauvaise chose

Ce que ça donne : la page de votre code de classe est affichée pendant que vous essayez de faire la démonstration, ou c'est votre messagerie qui s'affiche, ou vous recopiez l'écran d'un enfant et son jeu à moitié écrit est sur le mur.

Remède : utilisez deux fenêtres de navigateur dès le départ, pas deux onglets — un onglet, c'est une touche qui vous sépare de la catastrophe.

  • Fenêtre un, sur le vidéoprojecteur : la page de votre classe. C'est ce qui est affiché pendant la connexion, et de nouveau pendant l'arcade.
  • Fenêtre deux, sur l'écran de votre portable seulement : tout le reste. Messagerie, appel, notes.

Si vous faites une démonstration, faites-la dans la fenêtre projetée puis revenez à la page de la classe. N'ouvrez jamais votre messagerie dans la fenêtre projetée « juste une seconde ».

Pour l'arcade : vous ouvrez le jeu de chaque enfant depuis la page de la classe, au vidéoprojecteur. C'est tout le mécanisme — il n'y a pas d'outil d'arcade séparé à préparer ou à rater. Ouvrir, jouer soixante à quatre-vingt-dix secondes, nommer la personne, passer au suivant. Décidez votre ordre à l'avance et commencez par un enfant discret, pas par le jeu le plus bruyant.

Si le vidéoprojecteur lâche complètement : la séance tient quand même. Sautez la démonstration et lisez les six lignes à voix haute pendant que les enfants les tapent. L'arcade devient des enfants qui se déplacent par deux jusqu'à la table des autres, pendant deux minutes.

11. « J'ai rendu mais mon jeu n'est pas sur la page de la classe »

Ce que ça donne : l'enfant est certain d'avoir appuyé sur Rendre ; la page de la classe ne l'affiche pas.

Dites ceci : « Recharge la page de la classe. S'il n'est toujours pas là, appuie de nouveau sur Rendre — il n'arrive rien de grave si tu le fais deux fois. »

Remède : rechargez d'abord la page de la classe (elle ne se met pas à jour toute seule tant que vous la laissez ouverte). Si le jeu manque vraiment, faites-leur appuyer de nouveau sur Rendre depuis leur onglet. Rendre deux fois met à jour la même entrée au lieu d'en créer une deuxième. Si leur onglet a complètement disparu, voyez le point suivant.

12. Un enfant a fermé l'onglet ou le Chromebook s'est mis en veille

Ce que ça donne : la panique. « Tout a disparu. »

Dites ceci : « Retourne sur la page de la classe, remets le code et ton pseudo. »

Remède : se reconnecter avec le même code et le même pseudo est le chemin de secours, et tout ce qui a déjà été rendu est en sécurité sur la page de la classe. Le travail fait depuis le dernier Rendre, peut-être pas. C'est la raison très concrète de dire, à la minute 25 puis à la minute 35 : « appuyez sur Rendre maintenant, vous pourrez toujours rendre de nouveau plus tard. » Traitez Rendre comme un bouton de sauvegarde, pas comme une remise définitive. Dites-le explicitement à la classe, sinon ils garderont leur travail jusqu'à la dernière minute et l'un d'eux le perdra.

13. Trente ordinateurs qui jouent de la musique en même temps

Ce que ça donne : la salle devient inutilisable vers la minute 20, quand les premiers jeux se lancent.

Remède : prenez les devants. Avant que quiconque appuie sur Jouer, dites : « Volume à zéro, ou un casque si vous en avez un. Le son revient à l'arcade. » Ensuite, le son uniquement sur le vidéoprojecteur, à la fin. C'est une consigne de deux secondes qui sauve la seconde moitié de votre séance.

14. Un enfant écrit quelque chose de grossier

Ce que ça donne : un nom ou une réplique que vous ne voudriez pas voir sur le mur. C'est un éditeur de texte et ils ont onze ans ; attendez-vous à un cas par classe.

Dites ceci, doucement et sans public : « Ça va passer sur le vidéoprojecteur à la fin. Change-le maintenant et on n'en reparle plus. »

Remède : la dissuasion qui marche vraiment s'annonce à l'avance, à la minute 5 : « Tout ce que vous écrivez, je le lis à voix haute sur le vidéoprojecteur à la fin. » Dites-le une fois, légèrement, et la plupart du temps ça n'arrive jamais. Quand ça arrive, réglez-le à la table de l'enfant. Si c'est encore là au moment de l'arcade, sautez ce jeu et réglez ça après la séance — ne le mettez pas au mur pour faire un exemple.

Avant la séance : la vérification de cinq minutes

Faites-la sur la vraie machine de classe, sur le vrai réseau de l'établissement, dans la salle où vous ferez cours. Une vérification faite chez vous sur votre wifi ne prouve rien sur les Chromebooks.

  1. Créez votre classe et notez le code. Mettez-le au tableau en grandes capitales bien espacées maintenant, pas pendant la séance. Prononcez pour vous les caractères ambigus : est-ce un zéro ou un O ?
  2. Rejoignez votre propre classe comme un élève depuis une deuxième fenêtre ou un Chromebook de rechange, avec un pseudo du genre TEST. Tapez le jeu de six lignes, appuyez sur Jouer, gagnez, appuyez sur Rendre. Ce sont les quatre-vingt-dix secondes de préparation les plus utiles — elles prouvent d'un seul coup le code, le réseau, la 3D et le rendu. Supprimez ou ignorez l'entrée de test ensuite.
  3. Vérifiez un vrai Chromebook d'élève, pas le bon, celui du premier rang. Appuyez sur Jouer et marchez dix secondes. Si cette machine est fluide, la salle ira bien. Si ça saccade, prévoyez de mettre les enfants en binôme et dites-le dès le début plutôt que de le découvrir à la minute 15.
  4. Préparez deux fenêtres pour la projection — la page de la classe au vidéoprojecteur, tout le reste sur votre écran — et vérifiez que le texte projeté se lit depuis le fond de la salle. Le texte de l'éditeur est petit ; augmentez dès maintenant le zoom du navigateur sur la fenêtre projetée.
  5. Ayez le jeu de six lignes au tableau ou sur papier. C'est votre réponse à l'enfant bloqué, votre secours si le vidéoprojecteur lâche, et votre script de démonstration. Ne comptez pas sur votre mémoire pendant que trente enfants vous regardent.

Facultatif, mais utile si vous avez deux minutes de plus : décidez à l'avance quels cinq jeux vous ouvrirez à l'arcade, et dans quel ordre. Trente jeux ne tiendront pas en sept minutes, et choisir sous pression revient à prendre le plus bruyant.

Fiche élève

Une page. Appuyez sur Ctrl/+P — seule cette fiche s'imprime.

VXLScript — fiche de bureau

C'est toi qui écris l'histoire. L'ordinateur construit le monde en 3D pendant que tu tapes. Si ton jeu ne peut pas être terminé, le vérificateur te le dit avant que tu le rendes.

Les six lignes qui font un jeu

World "forest":
Character "Mara":
  say Find the lost star!
  wants: 🌟 star
item 🌟 star
Win when: player has 🌟 star

Ça, c'est un jeu complet. Un monde, quelqu'un dedans, quelque chose qu'il veut, quelque chose à trouver, et un moyen de gagner. Tout le reste de ce que tu apprends aujourd'hui est une modification de l'une de ces six lignes.

Indentation = à l'intérieur. Les deux espaces devant say veulent dire « ceci appartient à Mara ». Les lignes sans espace devant appartiennent au jeu lui-même.

Ce que fait chaque mot

MotCe que ça faitExemple
WorldFixe le lieu où tu esWorld "desert":
CharacterMet une personne làCharacter "Rin":
sayCe qu'il te ditsay Hello, traveller!
wantsObjet à lui apporterwants: 🐟 fish
givesRécompense de la livraisongives: 🏅 medal
itemObjet posé au solitem 🔑 key
EnemyQuelque chose qui te combatEnemy "Sandclaw":
kindL'allure de l'ennemikind: raider
AllyUn ami qui te suitAlly "Rex":
if choice isLe joueur choisit une réponseif choice is "Yes":
if player hasSeulement s'il l'a sur luiif player has key:
if talked toSeulement après l'avoir vuif talked to "Elder":
Win whenLa règle pour gagnerWin when: player has 🔑 key
winFait gagner sur-le-champwin
MusicChoisit la musique de fondMusic: fantasy
ModeChange le type de jeuMode: waves

Mondes que tu peux demander : forest, beach, desert, snow, jungle, swamp, volcano, dungeon, city-night, canyon, cemetery, mushroom, crystal. Types d'ennemis : skeleton, zombie, wolf, raider, robot, slime, bat, spider, ghost, wyrm, golem.

Les trois choses qui cassent à tous les coups

1. Un item caché dans un Character

Celle-là est vicieuse parce que rien ne devient rouge — l'étoile n'apparaît simplement jamais dans le monde, et la quête ne peut jamais être terminée.

Faux (l'objet est indenté, donc il appartient à Mara) :

Character "Mara":
  wants: 🌟 star
  item 🌟 star

Correct (l'objet commence tout à gauche, donc il appartient au monde) :

Character "Mara":
  wants: 🌟 star
item 🌟 star

À retenir : les lignes item vivent tout à gauche, pas glissées sous une personne. Si tu appuies sur Jouer et que la chose dont tu as besoin est introuvable, vérifie ça en premier.

2. Écraser un ennemi sur une seule ligne

Faux — l'ordinateur croit que l'ennemi s'appelle en entier « Sandclaw": kind: raider » :

Enemy "Sandclaw": kind: raider

Correct — les deux-points terminent la ligne, les détails vont en dessous :

Enemy "Sandclaw":
  kind: raider

3. Une quête sans moyen de gagner

wants: te donne des points quand tu livres l'objet. Des points, ce n'est pas gagner. S'il n'y a pas de ligne Win when: et pas de win dans un choix, ton jeu tourne indéfiniment et personne ne peut le terminer. Ajoute une ligne tout à gauche :

Win when: player has 🌟 star

À toi — trois défis

Défi 1 — Fais-le à ta façon

Change le monde, renomme le personnage, et remplace l'objet par quelque chose que tu as inventé. Relis à voix haute ensuite : est-ce que l'histoire tient toujours debout ?

World "volcano":
Character "Ash":
  say My lantern fell in the lava. Find me another!
  wants: 🏮 lantern
item 🏮 lantern
Win when: player has 🏮 lantern

Défi 2 — Ajoute du danger

Ajoute un ennemi qui garde la chose dont tu as besoin. Rappelle-toi : kind: va sur sa propre ligne indentée. tier:, c'est sa difficulté — commence à 3, pas à 30.

World "desert":
Character "Rin":
  say Something is out there. Bring me the star and we run.
  wants: 🌟 star
Enemy "Sandclaw":
  kind: raider
  tier: 3
item 🌟 star
Win when: player has 🌟 star

Défi 3 — Donne une décision au joueur

Un choix, ça veut dire que deux joueurs peuvent jouer au même jeu et avoir des fins différentes. Remarque qu'il n'y a pas de Win when: ici — le win à l'intérieur de la première réponse est le moyen de gagner.

World "snow":
Character "Frost Guard":
  say The gate is locked. Do you have the key?
  if choice is "Here is the key":
    say Then the mountain is yours.
    win
  if choice is "Not yet":
    say Come back when you find it.
item 🔑 key

Pour aller plus loin : fais en sorte que la deuxième réponse mène quelque part elle aussi, ajoute un Ally qui te suit, ou utilise if player has key: pour que le garde réagisse différemment selon ce que tu portes.

Avant de rendre

  1. Appuie sur Jouer et termine vraiment ton propre jeu. Si tu n'y arrives pas, personne n'y arrivera.
  2. Vérifie que chaque ligne item commence tout à gauche.
  3. Vérifie que tu as une ligne Win when: ou un win que le joueur peut atteindre.
  4. Relis tes lignes say. Aurais-tu envie de les lire dans le jeu de quelqu'un d'autre ?

Ensuite, rends-le — et prépare-toi à jouer à celui des autres sur grand écran.

Prêt pour mardi ?

Créer une classe prend environ une minute et vous donne un code. Rien à installer, aucune inscription pour les enfants.