Apprendre La Programmation en Jouant (débutants)

Apprendre la programmation en jouant (débutants)

Vous êtes débutants ? Vous souhaitez apprendre la programmation de jeu vidéo facilement ? Voici un exercice parfait pour vous initier à la programmation en jouant à un jeu vidéo. Aucune notion n’est requise. En quelques minutes, vous aurez déjà acquis facilement les principales bases de la programmation et de l’algorithme :

  • Instructions ;
  • Fonctions ;
  • Boucles ;

En revanche, la notion de conditions n’est pas encore accessible à ce stade.

Apprendre la programmation

Sans programmation, un jeu vidéo n’est pas un jeu vidéo.

Les mécaniques de jeux, les événements et les interactions sont scriptés grâce à un langage comme le C#, le C, le Java, etc. Mais avant d’apprendre un langage, il faut OBLIGATOIREMENT passer par l’algorithme, ou l’algo pour les intimes.

Ce sont des notions très importantes que tout développeur de jeux vidéo doit connaître. Cet exercice permettra également :

  • D’apprendre à structurer les actions ;
  • Comprendre comment un programme s’exécute ;
  • Comment optimiser son programme ;

Avant de programmer, l’algorithme c’est quoi ?

Pour faire bref, l’algorithme est une méthode pour résoudre des problèmes. Une suite d’instructions et de vérifications permettront de résoudre n’importe quel problème.

Exemple de l’algorithme de la recette : Un œuf au plat.

Si l’on schématise la recette d’un œuf au plat, on obtient ceci.

Algorithme - La recette

Algorithme – La recette

Mais si l’on détaille les instructions de la recette, on remarque que plusieurs actions sont nécessaires.

Algorithme - L'œuf au plat

Algorithme – L’œuf au plat

Certes, ce sont des schémas plus ou moins détaillés, mais nous pensons tous les jours de cette manière lorsque nous devons résoudre un problème que nous rencontrons.

Lightbot Code Hour : apprendre la programmation en jouant

Le jeu vidéo qui permet d’apprendre à programmer s’appelle Lightbot Code Hour (développé par Ferro Nato). Une première version Flash est sortie il y a très longtemps, mais voici une version simplifiée et remise au goût du jour. Ce jeu vidéo fait toujours figure de référence pour moi. J’initie depuis des années des dizaines d’étudiants avec. C’est une valeur sure, accessible, rapide et ultra efficace pour débuter la programmation.

Gardez cet article de côté et bien téléchargez-le gratuitement Lightbot Code Hour pour PC ou macOS ou bien sur votre smartphone iOS ou Android. Ensuite, continuez la lecture car je vais approfondir toutes les notions importantes à connaître avec l’aide des différents niveaux de Lightbot.

★ Les lecteurs ont aussi apprécié cet article :▶︎  Comment devenir développeur de jeux vidéo indépendants

Lightbot - Choix des langues

Lightbot Code Hour est traduit en Français. Comme le jeu sur navigateur est en Flash, il ne fonctionne plus aujourd’hui mais vous trouverez un clone en HTML5 ici.
https://www.lightbot.lu/ 

Comment jouer à Lightbot Code Hour ?

Lightbot est un jeu en 3D isométrique, dans lequel vous devez programmer un petit robot pour qu’il allume toutes les cases bleues dans chaque niveau.

Vous résoudrez une suite de puzzles qui vous obligeront à penser comme un programmeur. La difficulté est bien dosée pour les débutants. Inconsciemment, vous apprendrez très rapidement à repenser votre algorithme comme les pros !

Les instructions

Vous avez à disposition une liste d’actions simples qu’il faut disposer dans des cases :

  • Avancer tout droit ;
  • Tourner à droite ;
  • Tourner à gauche ;
  • Sauter ;
  • Lancer une fonction ;
  • Allumer la case ;

En programmation, nous appelons ça des instructions. Une instruction correspond à une ligne de code.

Ces actions contrôlent le personnage. Une fois vos instructions scriptées, un bouton « Run » permet de lancer le processus. Elles seront exécutées l’une après l’autre jusqu’à la dernière. Tout comme dans un vrai programme, ces instructions seront exécutées dans l’ordre et vous verrez très vite si votre algo fonctionne.

Lighbot Code Hour : Les instructions

Lighbot Code Hour : Les instructions

On a tendance à répéter cette phrase en programmation :

Si ça ne fait pas exactement ce qu’on veut, ce n’est pas la faute de la machine !

Lancez les niveaux « les Bases » pour commencer l’initiation.

N. B. Dans un programme, les instructions sont exécutées en quelques millisecondes. En revanche, dans Lightbot, les actions s’enchaînent très lentement afin d’avoir le temps d’observer le déroulement du processus.

Les fonctions (procédures)

Dans Lightbot, les fonctions sont appelées des procédures. Elles regroupent une succession d’instructions. Il suffit d’appeler une fois cette procédure pour lancer un processus d’actions.

Lighbot Code Hour : Les fonctions

Lighbot Code Hour : Les fonctions

La base de la programmation : éviter la redondance.

Lorsqu’on doit exécuter plusieurs fois les mêmes actions, autant les regrouper dans une seule fonction, puis l’exécuter plusieurs fois, à chaque fois que l’on en a besoin.

Exemple d’algorithme transposé dans la vie : L’ouverture de porte simple

Si l’on décortique cette action humaine anodine en algorithme. On obtient une suite d’instructions :

  1. S’approcher de la porte
  2. Lever la main à hauteur de la poignée
  3. Attraper la poignée
  4. Baisser la poignée
  5. Pousser (ou tirer) la porte

Grâce à sa mémoire, le cerveau humain va se souvenir de comment effectuer ces actions. Il va donc exécuter ces instructions les unes après les autres et ordonner aux muscles d’agir en fonction d’innombrables paramètres captés par les différents sens.

Imaginez si l’on devait décrire tout ceci à chaque fois que l’on demande à quelqu’un d’ouvrir une porte. On nous prendrait pour des fous. Il suffit de dire « Ouvre la porte » et l’être humain comprendra qu’il devra utiliser la fonction « OUVERTURE DE PORTE ».

Lancez les niveaux « Procédures » pour découvrir cette nouvelle notion.

Il existe différentes manières de terminer un niveau. À vous d’imaginer l’algorithme le plus optimisé et le plus logique.

Les boucles

Les boucles permettent des répéter plusieurs fois les mêmes instructions.

Dans Lightbot, une boucle se crée en ajoutant la brique de la Procédure (PROC1) à la fin de la même procédure (PROC1). En programmation, on appelle cela de la récursivité.

De ce fait, le programme va relancer la même fonction en boucle. Tant que le programme n’a pas allumé toutes les cases, la boucle va tourner indéfiniment.

Lighbot Code Hour : Les boucles

Lighbot Code Hour : Les boucles

Lancez les niveaux « Boucles » pour découvrir cette nouvelle notion.

Ici, aucune crainte de créer une boucle infinie. Cette erreur de code est redoutée par les programmeurs, synonyme de freeze et de crash du programme.

Apprendre à coder des jeux en C-Sharp (formation gratuite)

Si vous souhaitez apprendre à programmer en pur code C# des jeux vidéo pour Unity 3D, vous pouvez apprendre les bases du C-Sharp dans cette formation gratuite pour débutants.

Cliquez ici pour apprendre les bases du code C# pour Unity 3D

Apprendre Coder Jeux C-Sharp-Unity Formation Gratuite

Conclusion

Voilà ! En quelques minutes seulement, vous avez appris les principales notions de programmation (instructions, fonctions et boucles). Bien sûr, Lightbot permet seulement de survoler les notions de base. Pour devenir un programmeur, il va falloir passer à l’étape suivante : apprendre un langage de programmation et l’appliquer aux jeux vidéo.

Avez-vous facilement résolu tous les niveaux ?


Benoît Freslon

J'adore amuser les gens avec mes jeux depuis mon plus jeune âge. Je suis développeur professionnel de jeux vidéo depuis 2006, créateur de jeux vidéo indépendants, formateur dans les écoles de jeux vidéo, mais aussi game designer et développeur en Freelance.

Vous aimerez aussi...

2 réponses

  1. Jeremy dit :

    Ce jeu me fait pense à robot rally, un jeu de plateau créé par Gathering. Si on fait le parallèle avec Lightbot, vous devez programmer votre robot, c’est dire faire la procédure de 5 instructions (5 cartes dans le jeu). Tous les joueurs lancent leur procédure en même temps… Le but aller chercher un drapeau. Simple ? Non il y a des interactions dans tous les sens (plateau, robots, dégâts, temps,…). Et vous relancez autant de procedure que necessaire. Ce jeu est super ! Il peut se jouer en equipe aussi !

  2. Lobo dit :

    Les explications de l’algorithmique , voire du raisonnement algorithmique sont énormément simplifiées. Merci pour vos efforts d’illustrations.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

×
DISPONIBLE !

[variable_1] a acheté le livre Créer un jeu vidéo : le guide de A à Z

En savoir plus ▶︎

Commencez dès maintenant à créer votre jeu vidéo comme les pros