Microsoft MakeCode para Minecraft: aprende JavaScript gratis mientras te diviertes

JavaScript (JS, ECMAScript, ES) es un lenguaje de programación versátil que ofrece miles de trabajos bien remunerados en todo el mundo … por lo que puede ser una sorpresa que puedas aprenderlo jugando Minecraft.

Microsoft MakeCode para Minecraft busca acercar el mundo del desarrollo de software a todos y cada uno con proyectos divertidos y gratuitos que dan vida a su código ante sus propios ojos en el mundo de los bloques.

¿Qué es Microsoft MakeCode? Logotipo de Microsoft MakeCode Minecraft

Microsoft MakeCode es una plataforma de aprendizaje dedicada a hacer que la educación en informática sea interesante y accesible. Es gratis y de código abierto con una variedad de métodos para aprender, construir y jugar.

Si has jugado a Minecraft antes, esta opción puede llamarte la atención. Puede aprender Python y JavaScript en esta sección, o usar el editor de bloques para trabajar en la lógica de programación sin preocuparse por el código. Usaremos JS en este artículo.

Este artículo le presentará las funciones de MakeCode para Minecraft al desglosar el proyecto inicial, Chicken Rain, y también le presentará algunos scripts personalizados; el primero le permitirá alternar configuraciones comunes (como el clima o la hora), y el segundo te permitirá crear y jugar un minijuego personalizado.

Nota : Para aprovechar la funcionalidad completa de MakeCode para Minecraft, necesitará una cuenta de Minecraft Bedrock Edition (Minecraft para Windows 10) o Minecraft Education Edition .

Configuración: conexión de código y un mundo nuevo

Para sincronizar su código con su cliente de Minecraft, descargue e instale Microsoft Code Connection .

Elija su edición de Minecraft, luego siga los pasos establecidos en la página de configuración de Minecraft para Windows 10 para MakeCode para instalar y ejecutar Code Connection.

Con Code Connection ejecutándose, inicie Minecraft y cree un mundo nuevo ( Jugar> Mundos> Crear nuevo> Crear mundo nuevo> Crear ) con los trucos habilitados. Activar Trucos debe estar activado para acceder a la funcionalidad completa de MakeCode.

Inicie su nuevo mundo e ingrese el comando que muestra Code Connection en el chat para sincronizar su editor de texto y el cliente del juego.

Relacionado: Hoja de trucos de los comandos definitivos de Minecraft

Ahora que Code Connection está configurado y un nuevo mundo lo está esperando, ¡está listo para comenzar a codificar!

Minecraft MakeCode: Lluvia de pollo

El primer proyecto disponible es Chicken Rain . Este tutorial de cinco pasos lo ayudará a familiarizarse con la interfaz de usuario de MakeCode (como el editor de texto, el menú, el botón Reproducir y documentación útil).

Relacionado: ¿Quieres aprender a programar? Términos clave que debe conocer

También echaremos un vistazo rudimentario a las "variables" y las "funciones", dos bloques de construcción clave de la informática. También tendrás tu propia avalancha de pollos flotantes cuando hayas terminado de escribir el guión.

Puede que esto no parezca gran cosa si su objetivo es crear mods completos, pero ver que su código cobra vida es una sensación increíble que engancha a muchos ingenieros de por vida. ¡Este es tu primer paso!

Examine el mensaje antes de copiar el código en su editor de texto. Este es un buen ejemplo para demostrar cómo debería pensar como un informático.

Nota : ¿No entiende la jerga del programador? Aquí hay una hoja de trucos de JavaScript .

  1. Primero, llamamos a la función de un objeto con mobs.spawn () . Así es como especificamos lo que queremos que haga la computadora. Queremos que Minecraft genere una mafia.
  2. Genial, pero ¿qué tipo de mafia? Aquí especificamos una variable, POLLO, para decirle a la computadora qué mafia queremos generar.
  3. mobs.spawn () toma dos parámetros: tipo de mob y posición. Todavía tenemos que decirle a la computadora dónde queremos que se genere la mafia. Hacemos esto con pos (0, 10, 0) donde (0, 10, 0) son las coordenadas XYZ con respecto a tu personaje de Minecraft.
 mobs.spawn(CHICKEN, pos(0, 10, 0))

Haga clic en el botón Reproducir para ejecutar su código. ¡Vuelve a Minecraft y mira hacia arriba! Si todo salió bien, habrá engendrado un amigo emplumado.

¿Qué pasa si queremos más gallinas (y honestamente, quién no?) ¿Deberíamos copiar y pegar este código unas cuantas veces y luego presionar ejecutar nuevamente? Bueno, puede, pero no debería. Un buen mantra para aprender al principio de la codificación es "DRY" (No se repita). Esto lo convertirá en un desarrollador más eficiente.

Para ejecutar el mismo código más de una vez, usamos un bucle.

Un bucle "for" ejecutará el código que ponemos dentro para tantas iteraciones como especifiquemos, en este caso 100.

  1. Empiece con for () {} . Las llaves se utilizan para definir el alcance de este bucle; cualquier código dentro de las llaves se ejecutará varias veces.
  2. Necesitamos decirle a la computadora cuántas veces debe ejecutarse este código. Dentro del paréntesis, cree una variable usando let y establezca esa variable en 0 . Luego especificamos cuántas veces debe ejecutarse este ciclo incluyendo i <100 . Finalmente, especificamos lo que debería suceder al final de cada iteración: el valor de nuestra variable aumentará en uno ( i ++ ).
  3. Pegue el código del paso anterior en las llaves. Asegúrese de aplicar sangría como se indica.
 for (let i=0; i<100; i++) {
mobs.spawn(CHICKEN, pos(0, 10, 0))
}

Haga clic en el botón Reproducir y vuelva a Minecraft. ¡Lluvia de pollo!

MakeCode para Minecraft: más divertido con JavaScript

Con sus primeras líneas de JavaScript en su haber, puede acceder a cualquier cantidad de otros tutoriales de MakeCode como Mega Jump o Save the Cake, o crear un documento en blanco y dejar fluir su creatividad.

Echemos un vistazo a algunos scripts personalizados para trabajar en nuestras habilidades de JS.

Relacionado Cómo declarar variables en JavaScript

Control del tiempo y otras configuraciones

¿Dormir demasiado tarde y no atender a su granja? ¿Quieres retrasar los relojes? ¿Y por qué siempre llueve? ¡No te preocupes, programando al rescate!

 player.onItemInteracted(CLOCK, function() {
if(gameplay.isDaylightTime(DAY)){
gameplay.timeSet(DayTime.Night)
} else {
gameplay.timeSet(DayTime.Day)
}
})

Este bloque de código presenta la declaración if else , un elemento básico de la lógica informática.

  1. Llame a la función del objeto "jugador" que se ejecuta cuando interactúa con un elemento determinado, player.onItemInteracted () . Especifique el elemento que desea utilizar, en este caso un RELOJ , y configure la función que se ejecutará cuando interactúe con la función del elemento () {} .
  2. Incluya una declaración if else if () {} else {} para que actúe como un interruptor de encendido / apagado. Complete los parámetros if (gameplay.isDayLightTime (Day)) para verificar qué hora es en Minecraft.
  3. Incluya el código que desea ejecutar dentro de las llaves if {gameplay.timeSet (DayTime.Night)} . Hasta ahora, su código verifica si es Día , luego lo establece en Noche si lo es.
  4. Escribe el código en tu sección else {gameplay.timeSet (Daytime.Day)} . Digamos que su declaración if no se cumple (actualmente es de noche en el juego); su código más se ejecutará.

Haga clic en el botón Reproducir , luego cambie a Minecraft e ingrese / gamemode 1 en el chat; abre tu inventario y engendra en un reloj. Haz clic derecho con el reloj en tu mano unas cuantas veces; si escribiste el código correctamente, tu mundo cambiará entre el sol y la luna.

Las posibilidades de esta lógica son infinitas. Utilice el menú de la izquierda para ver todo tipo de comandos y variables para jugar. Ensuciarse las manos; averigüe qué funciona y qué no (y qué aparentemente debería funcionar pero aún no funciona). Esto es lo que significa explorar el mundo de la informática.

MakeCode para el minijuego de Minecraft: 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)

Esto puede parecer un gran salto con respecto a los proyectos anteriores, pero no se preocupe; ya conoces la mayor parte de la lógica de este minijuego. Todo lo que tienes que hacer es mantener la mente abierta y completar los espacios en blanco.

  1. Estamos llamando a una función player.onChat () como configuración. Esto establecerá tu modo de juego en Supervivencia y la dificultad de tu juego en Normal, luego te proporcionará un Arco y 64 flechas.
  2. A continuación, configuramos un bucle for con una llamada a la función mobs.spawn () para generar 32 murciélagos. Usamos randpos () para especificar el rango de ubicaciones en las que los murciélagos pueden desovar. Esto hará que se agolpen a tu alrededor de manera impredecible.
  3. Ahora configuramos el algoritmo de seguimiento de puntos. Inicialice una variable de puntos con un valor de 0 . Ahora crea una función que rastrea 2 puntos por derribo de murciélago. Usamos una plantilla literal para combinar texto de cadena ("¡2 puntos!" Total:) con el valor de una variable ($ {puntos}).
  4. Cree una función similar a la del paso 3 para borrar su total de puntos.
  5. Ahora cree las instancias en las que deben ejecutarse estas funciones. Queremos que addPoints se ejecute cuando un murciélago muere, por lo que usamos mobs.onMobKilled (BAT, addPoints) . Queremos que clearPoints se ejecute cuando escriba "clearPoints" en el chat.

¡Haz clic en Jugar y obtén tantos puntos como puedas! Recomiendo jugar dentro de una habitación grande (tal vez poner algunos obstáculos para que los murciélagos se queden atrás) porque jugar afuera hace que sea muy fácil para los murciélagos volar en la distancia.

Al igual que con los otros scripts de este tutorial, y todos los demás códigos que encuentre en su viaje por la informática, este código es simplemente una base para que agregue su propio estilo. Puede implementar un temporizador para agregar elementos de urgencia, o un marcador para rastrear sus juegos anteriores; lo que construyes solo está limitado por tu propia creatividad.

MakeCode para el agente de Minecraft

El agente es un NPC ingenioso que te permite probar las interacciones multijugador en tu juego para un solo jugador, automatizar tareas y mucho más.

MakeCode proporciona tutoriales guiados para los verificadores de agentes, navegando por un laberinto con su agente, y también tiene una gran cantidad de código fuente relacionado con el agente que puede modificar como desee.

Sumérjase más en JavaScript

¡Esperamos que MakeCode para Minecraft despierte sus intereses de codificación! Respaldamos su misión de crear una nueva generación de programadores.

Mientras practicaba algunos métodos vitales de JavaScript, simplemente examinamos la punta del iceberg de JavaScript en este artículo. Si desea aprender JavaScript para estar listo para el trabajo, debe aprender cómo JS interactúa con otras tecnologías web como HTML y CSS. También sería prudente estudiar las estructuras de datos y los algoritmos comunes.