Présentation de l'atelier

Cet atelier propose de réaliser un jeu de course automobile avec des niveaux de difficulté croissants, pour le joueur comme pour le programmeur:

  • au début, la voiture doit aller jusqu'à la ligne d'arrivée sans toucher les bords de la route,
  • puis (leçon suivante) on compte les vies et la voiture peut accélérer ou freiner,
  • puis c'est chronométré et on compte les tours,
  • puis apparaissent des obstacles, la neige commence à tomber ou pire ce sont des pierres, ...
  • puis ... c'est à vous d'inventer les ennuis auxquels le pilote doit faire face.

Commencer

Public et contextes d'utilisation :

Ce jeu peut être utilisé en initiation (8-11 ans)
  • sur un atelier de deux heures, en 2° partie de hour of code (minecraft). On peut alors réaliser la première version(1° leçon).
  • sur un atelier d'une semaine (5 x 2h) avec trois ou quatre jours basés sur les leçons proposées, suivis d'une ou deux journées de création. Vous trouverez ici une présentation de travaux réalisés à la bibliothèque Vaclav Havel avec des participants n'ayant jamais programmé.
  • Enfin, cet atelier -en version complète - peut être proposé sur 10 à 12 séances (~3 mois) en milieu scolaire ou péri-scolaire pour des ateliers hebdomadaires. Nous avons utilisé cette version "longue" à l'Espace40 de Montreuil avec Léo, Hader, Lisa et . Le résultat avec plusieurs niveaux est présenté ici.
N'oubliez pas de commencer par jouer vous-même, et n'hésitez pas à vous éloigner des exemples proposés. Nous vous recommandons quand même de commencer par 45 mn ou une heure de " hour of code".
C'est ce que nous avons fait à la bibliothèque Jean-Pierre Melville, pour une gamejam des voyageurs du code, avec 2h d'initiation le matin et 2h de création l'après-midi. Voir la présentation par les participants qui ont défini le scénario (design). L'algorithmie est très voisine. Les participants de 10 à 13 avaient déjà quelques notions sur Scratch.

Etapes et notions abordées (enseignants)

Etape Notions abordées
version 1
  • utilisation du dessin (en mode pixel ou raster)
  • scripts et séquences d’instructions ordonnées,
  • blocs de branchement conditionnel (si ….)
  • test sur capteur : couleur touchée
  • couleur des blocs : correspondance avec à leur catégorie (fonctionnelle)
  • forme des blocs : correspondance aux règles d'assemblage
  • (coordonnées x et y)
Nombre de vies et vitesse et sons
  • variables
  • opérateurs mathématiques + -
  • tests logiques mathématiques = < >
  • sons
Ergonomie
  • boucles infinies et conditionnelles
  • capteurs sous forme de variables booléenne ou réelle (distance)
  • négation logique
Chronométrer le tour
  • capteurs
Compter les tours, faire une course en 3 tours
  • tests logiques utilisés dans une boucle (qui modifie la condition)
Qualité logicielle : l’abstraction
  • abstraction fonctionnelle
  • abstraction procédurale