Rechercher

mercredi 22 janvier 2014

Devenez un développeur en jouant au jeu Code Combat



C++, JavaScript, PHP, VBA… Tant de langages informatiques que seules ces divinités plus communément appelées "développeurs" ont réussi à comprendre. Imaginez un instant que vous pourriez apprendre les clés du développement tout en jouant à jeu vidéo, l’idée est tentante n’est-ce pas ? Alors arrêtez tout de suite ce que vous êtes en train de faire et venez découvrir le jeu CodeCombat (lisez cet article avant quand même).

CodeCombat est donc une application dédiée à l'apprentissage du code. Nous voici avec un petit jeu d'aventure très graphique qui va vous permettre de rapidement améliorer vos compétences en développement. Commencez donc par vous créer un compte puis cliquez sur "JOUER" pour attaquer le premier niveau, que nous allons d'ailleurs faire ensemble au cours de cet article.

Au départ, vous allez voir que le jeu est en partie traduit en français (en tout cas pour les textes). La bonne nouvelle est que CodeCombat est en open source, donc le code, les musiques, les graphismes, etc. sont accessibles en cliquant ici. Le tout est sous licence MIT et CC, ce qui signifie que chacun d'entre vous peut participer en aidant au développement, au design ou à la documentation du jeu.

Trêve de bavardage, commençons maintenant l'aventure !
Comme tout jeu de rôle, ce jeu commence avec une petite histoire et des interactions entre différents PNJ (Personnages Non Jouables) et vous.

Afin de faire défiler le texte, il vous faut appuyer sur les touches "Shift+Espace". Une fois l'histoire lancée, vous accédez au premier niveau. Pour commencer, le personnage nommé Tharin vous demande de cliquer sur le bouton "Lecture".

Malheureusement pour Tharin, le développeur en charge de ses mouvements s'est légèrement trompé en écrivant son code et a donc envoyé notre pauvre chevalier dans le vide, c'est ici que vous allez intervenir.


Après avoir fait un peu avancer le texte, ce bon vieux chevalier vous explique quelle est l'erreur et vous demande de la corriger. Il suffit juste d'effacer la ligne 6. Avant d'aller plus loin, je vais vous expliquer un peu cette ligne. Elle est composé de deux parties, le mot-clé "this" suivi de la méthode "moveRight()".
  • "this" : Si il y a bien un mot-clé puissant dans JavaScript, c'est celui-ci. Malheureusement, il est très difficile de l'employer si vous ne connaissez pas exactement son fonctionnement. Voici donc l'excellent tutoriel d'openclassrooms afin que vous compreniez un minimum.
  • Méthode : Derrière ce mot se cache une fonction associée à un objet, c'est-à-dire une action que l'on peut faire exécuter à un objet.
Maintenant que vous avez effacé votre ligne, il est temps pour vous de commencer réellement à coder. Commencez donc par ajouter la ligne this.moveUp(); à la fin de votre code, soit la ligne 7 normalement.

Youhou!!! Vous avez réussi à faire avancer Tharin vers le haut. Encore 3 lignes à écrire avant d'arriver sur l'ennemi à abattre, je pense que vous n'avez pas besoin de moi pour ces 3 lignes, mais au cas où voici le code à écrire.

Il ne vous reste plus qu'un pas pour finir le niveau ! Comme vous le demande Tharin, placez votre souris sur la commande "this.attackNearbyEnemy();" en bas, dans votre liste des "sorts disponibles" pour en avoir la description avant de l'écrire dans votre code.

Félicitations !!! Vous venez de réussir à faire vos premiers pas en tant que développeur, bravo !

Vous êtes maintenant prêt pour attaquer le niveau 2, rein de bien compliquer, à vous de faire appel aux bonnes méthodes. La difficulté du jeu n'est pas bien élevé au départ, il suffit juste de bien faire attention à la syntaxe et aux ";" en fin de ligne. Il évolue cependant assez rapidement, toujours de façon logique, par exemple à partir du niveau 4, vous allez commencer à utiliser les arguments et les commentaires, puis au niveau 7 les déplacements dans l'espace...

Pour finir cet article, je vais revenir sur le fait que le jeu est open source. Il est complètement développé en CoffeeScript, un langage très proche du JavaScript, donc n'attendez plus, apprenez le métier de développeur, et qui sait, vous développerez peut être des améliorations pour ce jeu un jour, puis ensuite vous pourrez nous faire un nouvel épisode de Final Fantasy, alors, à vous de jouer !