Microsoft MakeCode pour Minecraft: apprenez JavaScript gratuitement tout en vous amusant
JavaScript (JS, ECMAScript, ES) est un langage de programmation polyvalent qui fournit des milliers d'emplois bien rémunérés dans le monde … il peut donc être surprenant que vous puissiez l'apprendre en jouant à Minecraft.
Microsoft MakeCode pour Minecraft cherche à apporter le monde du développement logiciel à tout le monde avec des projets amusants et gratuits qui donnent vie à votre code sous vos yeux dans le monde des blocs.
Qu'est-ce que Microsoft MakeCode?
Microsoft MakeCode est une plateforme d'apprentissage dédiée à rendre l'enseignement en informatique intéressant et accessible. C'est gratuit et open-source avec une variété de méthodes pour apprendre, construire et jouer.
Si vous avez déjà joué à Minecraft, cette option peut attirer votre attention. Vous pouvez apprendre Python et JavaScript dans cette section, ou utiliser l'éditeur de blocs pour travailler sur la logique de programmation sans vous soucier du code. Nous utiliserons JS dans cet article.
Cet article vous présentera les fonctionnalités de MakeCode pour Minecraft en décomposant le projet initial, Chicken Rain, ainsi qu'en introduisant quelques scripts personnalisés – le premier vous permettra de basculer les paramètres communs (comme la météo ou l'heure), et le second vous permettra de créer et de jouer à un mini-jeu personnalisé.
Remarque : pour profiter de toutes les fonctionnalités de MakeCode pour Minecraft, vous aurez besoin d'un compte Minecraft Bedrock Edition (Minecraft pour Windows 10) ou Minecraft Education Edition .
Configuration: connexion de code et un nouveau monde
Pour synchroniser votre code avec votre client Minecraft, téléchargez et installez Microsoft Code Connection .
Choisissez votre édition de Minecraft, puis suivez les étapes décrites sur la page Installation de Minecraft pour Windows 10 pour MakeCode pour installer et exécuter Code Connection.
Avec Code Connection en cours d'exécution, démarrez Minecraft et créez un nouveau monde ( Jouer> Mondes> Créer nouveau> Créer un nouveau monde> Créer ) avec les astuces activées. Activate Cheats doit être activé pour accéder à toutes les fonctionnalités de MakeCode.
Démarrez votre nouveau monde et entrez la commande affichée par Code Connection dans le chat pour synchroniser votre éditeur de texte et votre client de jeu.
Maintenant que Code Connection est configuré et qu'un nouveau monde vous attend, vous êtes prêt à vous lancer et à commencer à coder!
MakeCode Minecraft: Pluie de poulet
Le premier projet disponible est Chicken Rain . Ce didacticiel en cinq étapes vous aidera à vous familiariser avec l'interface utilisateur MakeCode (comme l'éditeur de texte, le menu, le bouton Lecture et la documentation utile.)
Nous allons également jeter un regard rudimentaire sur les «variables» et les «fonctions», deux éléments clés de l'informatique. Vous aurez également votre propre flot de poulets flottants lorsque vous aurez terminé d'écrire le script.
Cela peut ne pas sembler beaucoup si votre objectif est de créer des mods à part entière, mais voir votre code prendre vie est un sentiment incroyable qui rend de nombreux ingénieurs accro à la vie. Ceci est votre première étape!
Examinez l'invite avant de copier le code dans votre éditeur de texte. Ceci est un bon exemple pour montrer comment vous devriez penser comme un informaticien.
Remarque : vous ne comprenez pas le jargon du programmeur? Voici une feuille de triche JavaScript .
- Tout d'abord, nous appelons la fonction d'un objet avec mobs.spawn () . C'est ainsi que nous spécifions ce que nous voulons que l'ordinateur fasse. Nous voulons que Minecraft crée une foule.
- Génial, mais quel genre de foule? Ici, nous spécifions une variable – POULET – pour indiquer à l'ordinateur quel monstre nous voulons engendrer.
- mobs.spawn () prend deux paramètres: le type de mob et la position. Nous devons encore indiquer à l'ordinateur où nous voulons que la foule se reproduise. Nous faisons cela avec pos (0, 10, 0) où (0, 10, 0) est les coordonnées XYZ par rapport à votre personnage Minecraft.
mobs.spawn(CHICKEN, pos(0, 10, 0))
Cliquez sur le bouton Lecture pour exécuter votre code. Revenez à Minecraft et regardez! Si tout s'est bien passé, vous avez engendré un ami à plumes.
Et si nous voulons plus de poulets (et honnêtement, qui ne le fait pas?) Devrions-nous simplement copier et coller ce code plusieurs fois, puis appuyer à nouveau sur exécuter? Eh bien, vous pouvez, mais vous ne devriez pas – un bon mantra à apprendre tôt dans le codage est "DRY" (Ne vous répétez pas.) Cela fera de vous un développeur plus efficace.
Pour exécuter le même code plusieurs fois, nous utilisons une boucle.
Une boucle "for" exécutera le code que nous y avons placé pendant autant d'itérations que nous le spécifions – dans ce cas 100.
- Commencez par for () {} . Les accolades sont utilisées pour définir la portée de cette boucle – tout code à l'intérieur des accolades sera exécuté plusieurs fois.
- Nous devons dire à l'ordinateur combien de fois ce code doit s'exécuter. À l'intérieur de la parenthèse, créez une variable à l'aide de let et définissez cette variable sur 0 . Ensuite, nous spécifions combien de fois cette boucle doit s'exécuter en incluant i <100 . Enfin, nous spécifions ce qui doit se passer à la fin de chaque itération – la valeur de notre variable sera augmentée de un ( i ++ ).
- Collez le code de l'étape précédente dans les accolades. Assurez-vous de mettre en retrait comme indiqué.
for (let i=0; i<100; i++) {
mobs.spawn(CHICKEN, pos(0, 10, 0))
}
Cliquez sur le bouton Lecture et revenez à Minecraft. Chicken Rain!
MakeCode pour Minecraft: plus de plaisir avec JavaScript
Avec vos premières lignes de JavaScript à votre actif, vous pouvez accéder à un certain nombre d'autres didacticiels MakeCode comme Mega Jump ou Save the Cake, ou créer un document vierge et laisser libre cours à votre créativité.
Jetons un coup d'œil à quelques scripts personnalisés pour travailler sur nos compétences JS.
Contrôle de l'heure et d'autres paramètres
Dormez trop tard et ne tenez pas compte de votre ferme? Voulez-vous régler les horloges? Et pourquoi pleut-il toujours? Ne vous inquiétez pas, la programmation à la rescousse!
player.onItemInteracted(CLOCK, function() {
if(gameplay.isDaylightTime(DAY)){
gameplay.timeSet(DayTime.Night)
} else {
gameplay.timeSet(DayTime.Day)
}
})
Ce bloc de code introduit l'instruction if else , un élément de base de la logique informatique.
- Appelez la fonction de l'objet "player" qui s'exécute lorsque vous interagissez avec un certain élément, player.onItemInterACT () . Spécifiez l'élément que vous souhaitez utiliser, dans ce cas une HORLOGE , et configurez la fonction qui s'exécutera lorsque vous interagirez avec la fonction d' élément () {} .
- Incluez une instruction if else if () {} else {} pour agir comme un interrupteur marche / arrêt. Remplissez les paramètres if (gameplay.isDayLightTime (Day)) pour vérifier l'heure à laquelle il est dans Minecraft.
- Incluez le code que vous souhaitez exécuter à l'intérieur des accolades if {gameplay.timeSet (DayTime.Night)} . Jusqu'à présent, votre code vérifie si c'est Day , puis le définit sur Night si c'est le cas.
- Écrivez le code dans votre section else {gameplay.timeSet (Daytime.Day)} . Disons que votre instruction if n'est pas remplie (c'est actuellement la nuit dans le jeu) – votre code else s'exécutera.
Cliquez sur le bouton Lecture , puis passez à Minecraft et entrez / gamemode 1 dans le chat; ouvrez votre inventaire et apparaissez dans une horloge. Faites un clic droit avec l'horloge dans votre main à quelques reprises – si vous avez écrit le code correctement, votre monde basculera entre le soleil et la lune.
Les possibilités de ce peu de logique sont infinies. Utilisez le menu de gauche pour afficher toutes sortes de commandes et de variables avec lesquelles jouer. Mets-toi les mains sales; Découvrez ce qui fonctionne et ce qui ne fonctionne pas (et ce qui devrait fonctionner mais qui ne fonctionne toujours pas.) C'est ce que signifie explorer le monde de l'informatique.
MakeCode pour Minecraft Mini-jeu: Bat Hunter
player.onChat("batHunt", function () {
gameplay.setGameMode(
SURVIVAL,
mobs.target(LOCAL_PLAYER)
)
gameplay.setDifficulty(NORMAL)
mobs.give(
mobs.target(NEAREST_PLAYER),
BOW,
1
)
mobs.give(
mobs.target(NEAREST_PLAYER),
ARROW,
64
)
for (let i=0; i<32; i++) {
mobs.spawn(BAT, randpos(
pos(-5, 0, -8),
pos(5, 0, 5)
))
}
})
let points = 0
let addPoints = function () {
points += 1
player.say(`2 Points! Total: ${points}`)
}
let clearPoints = function () {
points = 0
player.say("Points Cleared.")
}
mobs.onMobKilled(BAT, addPoints)
player.onChat("clearPoints", clearPoints)
Cela peut ressembler à un saut par rapport aux projets précédents, mais ne vous inquiétez pas; vous connaissez déjà l'essentiel de la logique de ce mini-jeu. Tout ce que vous avez à faire est de garder l'esprit ouvert et de remplir les blancs.
- Nous appelons une fonction player.onChat () comme configuration. Cela définira votre mode de jeu sur Survie et votre difficulté de jeu sur Normal, puis vous fournira un arc et 64 flèches.
- Ensuite, nous avons mis en place une boucle for avec un appel à la fonction mobs.spawn () pour générer 32 chauves-souris. Nous utilisons randpos () pour spécifier la plage d'endroits dans lesquels les chauves-souris peuvent apparaître. Cela les amènera à se multiplier autour de vous de manière imprévisible.
- Nous mettons maintenant en place l'algorithme de suivi des points. Initialisez une variable de points avec une valeur de 0 . Créez maintenant une fonction qui suit 2 points par retrait de chauve-souris. Nous utilisons un modèle littéral pour combiner le texte de la chaîne ("2 points!" Total:) avec la valeur d'une variable ($ {points}).
- Créez une fonction similaire à celle de l'étape 3 pour effacer votre total de points.
- Créez maintenant les instances dans lesquelles ces fonctions doivent s'exécuter. Nous voulons que les addPoints s'exécutent lorsqu'une chauve-souris est tuée, nous utilisons donc mobs.onMobKilled (BAT, addPoints) . Nous voulons que clearPoints s'exécute lorsque vous tapez "clearPoints" dans le chat.
Cliquez sur Jouer et obtenez autant de points que possible! Je recommande de jouer dans une grande pièce (peut-être jeter des obstacles pour que les chauves-souris puissent se placer derrière) parce que jouer à l'extérieur permet aux chauves-souris de s'envoler trop facilement au loin.
Comme pour les autres scripts de ce didacticiel et tous les autres codes que vous rencontrez au cours de votre parcours en informatique, ce code est simplement une base pour vous permettre d'ajouter votre propre flair. Vous pouvez implémenter une minuterie pour ajouter des éléments d'urgence, ou un tableau de bord pour suivre vos jeux précédents; ce que vous construisez n'est limité que par votre propre créativité.
MakeCode pour Minecraft Agent
L'Agent est un PNJ astucieux qui vous permet de tester les interactions multijoueurs dans votre jeu solo, d'automatiser des tâches et bien plus encore.
MakeCode fournit des didacticiels guidés pour les vérificateurs d'agent, la navigation dans un labyrinthe avec votre agent, et il contient également une pléthore de code source lié à l'agent que vous pouvez modifier à votre guise.
Plongez-vous plus profondément dans JavaScript
Nous espérons que MakeCode pour Minecraft a piqué vos intérêts de codage! Nous soutenons sa mission de créer une nouvelle génération de programmeurs.
Alors que vous avez pratiqué certaines méthodes JavaScript vitales, nous avons simplement examiné la pointe de l'iceberg JavaScript dans cet article. Si vous voulez apprendre JavaScript pour être prêt pour le travail, vous devez apprendre comment JS interagit avec d'autres technologies Web telles que HTML et CSS. Il serait également judicieux d'étudier les structures de données et les algorithmes courants.