Ce tutoriel explique comment réaliser un jeu vidéo d’évitement d’obstacles.

Convient pour
Elèves (école primaire), Elèves (école secondaire), Jeunes en décrochage scolaire
Age
Adolescents, Enfants
Niveau de compétence i
Niveau 2
Format
Fiche d'activité
Droits d'auteur i
Creative Commons (BY-SA)
Langue(s)
Français , Anglais

Objectif général

Compétences

Temps de préparation pour l'animateur

moins d'une 1 heure

Domaine de compétence

3 – Création de contenu

Temps requis pour compléter l'activité (pour l'apprenant)

0 – 1 heure

Nom de l'auteur

Kamithou Mouhidine

Ressource originellement créée

Français
Déroulé

Introduction

Dans le jeu que nous allons créer, il faut piloter un hélicoptère tout en évitant les obstacles. Il faudra récupérer de l’essence, sinon votre hélicoptère s’écrasera. A chaque fois que vous percuterez un obstacle, vous perdrez une vie, représentée par un cœur. Si les trois vies sont perdues, la partie est finie.

Créer une scène et ajouter des lutins

Supprimer le chat Scratch, nous n’en aurons pas besoin pour cette activité.

1. Ajouter un arrière-plan. Par exemple, « stars » dans la catégorie « Space »

2. Ajouter un hélicoptère et un autre lutin, par exemple un chapeau de magicien qui permettra de récupérer de l’essence.

3. Il ne reste plus qu’à dessiner des rochers : deux partants du haut et deux autres du bas. Leur donner le même costume.

Les renommer en roche 1, roche 2, etc. Ne pas oublier de les centrer en cliquant sur le symbole en forme de croix.


4. Nous allons également avoir besoin d’un « cœur » pour représenter les vies de l’hélicoptère.

Importer par exemple « heart » de la catégorie « Choses ».


5. Ajuster la taille des rochers ainsi que celle de l’hélicoptère de façon à ce qu’il puisse passer entre les rochers.

Animer les rochers

1. Le script suivant va permettre de faire apparaître aléatoirement un rocher toutes les 1 à 3 secondes. Il disparaîtra une fois qu’il aura atteint le bord gauche de l’écran.
Ajouter les blocs suivants à rocher1 :

2. Dupliquer ce script pour les trois autres rochers. Positionner les rochers correctement sur l’écran (deux en bas et deux en haut). Tester le script en cliquant sur le drapeau vert. S’assurer que les rochers défilent aléatoirement de droite à gauche.

Piloter l’hélicoptère

Dans cette partie, il va falloir créer plusieurs scripts. Quatre pour diriger l’hélicoptère, un pour perdre de l’essence toutes les 0.1 secondes (pour un compteur d’essence réaliste).

1. Créer les scripts suivants pour déplacer l’hélicoptère avec les flèches directionnelles :

2. Nous allons maintenant faire en sorte que l’hélicoptère perde de l’altitude et de l’essence au cours du temps. Ecrire le script suivant :


Le choix de -0.1 simule une consommation continue d’essence. Quant à la diminution de Y, elle correspond à la perte d’altitude due à la gravité.

Système de points de vie

Il ne nous reste plus qu’à mettre en place un système de points de vie.

1. Dans le script de “scène”, créer une variable “vie” valable pour tous les lutins et entrer ceci :

2. Ensuite, il nous faut un script qui détruise les cœurs au fur et à mesure qu’ils sont perdus. Entrer le code suivant :

La commande “envoyer au premier plan” nous assure que le cœur ne sera jamais caché par un autre objet.

3. Maintenant, il vous faut dupliquer le cœur 2 autres fois. Pour le second, changer “si vie < 3” par “si vie < 2”, et pour le dernier cœur “si vie < 1”.

4. Lorsque l’hélicoptère rentre en collision avec un rocher, il faut que le nombre de vies baisse. Modifier ainsi le script de l’hélicoptère :

 

Après un choc, on attend une seconde, en effet il faut que l’hélicoptère ait le temps de réaliser le choc avec le rocher.

5. Enfin, il faut que le décompte de la variable « vie » se fasse. Autrement dit, à chaque fois que l’hélicoptère touche un rocher, le nombre de vies baisse de 1. Rajouter le script suivant à l’hélicoptère pour que le jeu s’arrête quand les vies sont à zéro :

Gagner de l’essence

1. Si vous avez testé votre jeu, vous devez avoir remarqué que même sans toucher les rochers vous ne pouvez pas aller bien loin, l’hélicoptère consommant de l’essence. Il va falloir gagner de l’essence.

Vous devriez avoir ajouté un autre lutin, celui que vous voulez (le chapeau pour notre exemple). Ce lutin va se placer en bas de l’écran et va vous permettre de récupérer de l’essence dès que vous le toucherez.

Écrire ce script pour ce lutin :

Bonus

Vous pouvez améliorer votre jeu en :

  • changeant la vitesse de l’hélicoptère ou en ajoutant d’autres rochers
  • Il pourrait y avoir des objets magiques qui donnent une vie en plus. Comment faire pour ajouter un cœur ? (indice : utilisez la notion de clone, il s’agit de créer automatiquement le même objet afin de pouvoir ensuite exécuter un script spécifique pour ce lutin).
  • pour le moment, il n’y a pas de score à proprement parler. Il faudrait que vous en ajoutiez un, par exemple en comptant le temps que le joueur tient sans décéder.

Pour aller plus loin

Conseil médiation 

Pour aller plus plus loin sur le sujet, nous vous conseillons de vous référer à la fiche outil « Guide de présentation de Scratch«