Minecraft Pi: programando el mundo de Minecraft con Python

Hoy os traigo un vídeo que hace mucho tiempo que quería grabar, pero que no fue posible por dificultades técnicas. Es una demostración de cómo podemos obtener resultados visibles en un videojuego programando en Python. De forma parecida a cuando, mediante Scratch, conseguimos influir en la “vida” que un gato lleva en nuestra pantalla, mediante Python y la versión de Minecraft que incluye Raspbian conseguiremos transformar el mundo de Minecraft en nuestra Raspberry Pi.

¿Qué es Minecraft?

Pero, ¿quién no lo conoce a estas alturas? En cualquier caso: es un videojuego famosísimo que permite jugar de dos formas: de modo creativo y en modo supervivencia.

  • El modo creativo propone al jugador un mundo abierto donde es todopoderoso y posee una cantidad ilimitada de materiales para construir estructuras y mecanismos cualesquiera.
  • El modo supervivencia propone al jugador un mundo abierto donde puede morir, por la noche es atacado por distintos monstruos, y donde parte sin nada: debe sobrevivir y construir por sus propios medios hasta viajar entre varias dimensiones tratando de vencer a un Dragón (o, al menos, ese era el objetivo el año pasado).

Minecraft Pi

La Raspberry Pi incorpora una versión muy reducida del modo creativo del juego, llamada Minecraft PI Edition, con un complemento que permite programar en el mundo de Minecraft mediante Python. En este vídeo, que os recomiendo ver a pantalla completa, os muestro cómo:

Recursos

Podéis encontrar información sobre las librerías que proporciona este juego en este enlace (en inglés), pero estad seguros de que seguiré publicando contenido acerca de este videojuego tan particular, y ejemplos escritos en Python sobre él. Para que exploréis, os dejo también el enlace a la hoja de trabajo (en inglés) disponible en la página de la fundación Raspberry Pi. Incluye varios ejercicios muy parecidos a los que os he mostrado y, de hecho, fue mi primer recurso de consulta y me he basado por entero en él. Os dejo aquí el código Python que he usado en el vídeo:

from mcpi.minecraft import Minecraft
from mcpi import block
import time

# Crea el objeto que nos permitirá acceder a Minecraft
mc = Minecraft.create()

# Obtiene la posición
x, y, z = mc.player.getPos() 

# Teletransporte vertical
mc.player.setPos( x, y+10, z) 

# Hombre de Hielo
while True:
    # Posición del jugador
    x, y, z = mc.player.getPos()
    
    #Si el bloque que piso no es de hielo, pongo un bloque de hielo
    if mc.getBlock(x, y, z) != block.ICE:
        mc.setBlock†(x, y - 1, z, block.ICE)
        
    # Aunque aparentemente no haga falta siempre es más responsable
    # ceder tiempo a Minecraft para atender a otros aspectos del juego.
    time.sleep (0.1) 

No dudéis en dejarme comentarios al respecto, ¡incluyendo propuestas de experimentos con este juego! 🙂

Un comentario en “Minecraft Pi: programando el mundo de Minecraft con Python

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *