Skriv Python-kode som bygger for deg i Minecraft For ungdom

Skriv Python-kode som bygger for deg i Minecraft

5 linjer kode. Én pyramide.

Fem linjer kode i Python. Enter. Og midt i Minecraft-verdenen din reiser det seg en pyramide. Blokk for blokk, lag for lag, rett foran øynene dine.

Det er ikke magi. Det er programmering. Og det er den beste måten å lære det på.

Hvordan det fungerer

Minecraft Java Edition kan kjøre en lokal server med en plugin som heter RaspberryJuice. Denne pluginen lar Python-kode snakke med Minecraft. Du skriver kode, koden sender kommandoer til serveren, og ting skjer i spillet.

Biblioteket som gjør dette mulig heter mcpi (Minecraft Pi). Det er gratis, open source, og overraskende enkelt å bruke.

Oppsett (vi har det klart)

På kodeklubben har vi alt ferdig:

  • En Paper-server som kjører med RaspberryJuice-pluginen
  • Python installert med mcpi-biblioteket
  • VS Code klart til bruk

Du kobler deg til serveren i Minecraft, åpner VS Code ved siden av, og begynner å kode. Null oppsett, rett på sak.

Din første kodelinje

from mcpi.minecraft import Minecraft
mc = Minecraft.create()

pos = mc.player.getPos()
mc.setBlock(pos.x + 1, pos.y, pos.z, 1)  # Plasser en steinblokk ved siden av deg

Kjør scriptet. Se til høyre i Minecraft. Der ligger en steinblokk som ikke var der før. Du plasserte den med kode.

Tallet 1 på slutten er blokk-ID for stein. Bytt til 4 for brostein. 41 for gullblokk. 57 for diamant. Ja, du kan bygge hva som helst av diamant. Koden spør ikke om lov.

Bygg en vegg

for i in range(10):
    mc.setBlock(pos.x + i, pos.y, pos.z, 1)

Ti blokker i en rekke. En vegg. Du skrev to linjer, og Minecraft plasserte ti blokker. Allerede nå sparer du tid.

Bygg et gulv

for x in range(10):
    for z in range(10):
        mc.setBlock(pos.x + x, pos.y - 1, pos.z + z, 1)

To løkker inni hverandre. 100 blokker. Et steingulv på 10 ganger 10. Prøv å legge det for hånd. Det tar minutter. Med kode: ett sekund.

Bygg en pyramide

hoyde = 10
for lag in range(hoyde):
    bredde = hoyde - lag
    for x in range(-bredde, bredde):
        for z in range(-bredde, bredde):
            mc.setBlock(pos.x + x, pos.y + lag, pos.z + z, 24)  # Sandstein

Kjør. Se opp. En pyramide av sandstein vokser opp foran deg. Ti lag, hvert lag litt smalere enn det under. Koden gjør jobben. Du bestemte formen.

Fra blokker til hus

Når du kan plassere blokker med løkker, kan du lage funksjoner:

def bygg_hus(x, y, z):
    # Vegger
    for bx in range(5):
        for by in range(4):
            for bz in range(5):
                if bx == 0 or bx == 4 or bz == 0 or bz == 4:
                    mc.setBlock(x + bx, y + by, z + bz, 1)
    # Dør
    mc.setBlock(x, y, z + 2, 0)   # Luft (fjern blokk)
    mc.setBlock(x, y + 1, z + 2, 0)

Nå kan du skrive bygg_hus(10, 0, 10) og et hus dukker opp. Skriv det fem ganger med forskjellige koordinater, og du har en landsby.

Hvorfor dette funker som læringsmetode

Vanlig Python-opplæring: du skriver print("Hallo") og ser tekst i et svart vindu. Greit nok.

Minecraft-Python: du skriver kode og ser resultatet i 3D. Du kan gå rundt det. Du kan gå inn i det. Hver linje kode har en synlig, fysisk effekt.

Variablene, løkkene og funksjonene er identiske med “ekte” Python. Det du lærer her, kan du bruke til å lage nettsider, apper, spill, og alt annet Python brukes til.

Serveren er klar

På kodeklubben har vi serveren klar. Du skriver koden, Minecraft gjør resten.

Prøv med én blokk. Så ti. Så hundre. Og plutselig bygger du pyramider med kode.

Ofte stilte spørsmål

Må jeg kunne Python fra før?

Nei, vi starter fra null. Du lærer Python mens du bygger i Minecraft. Første linje kode plasserer en blokk. Derfra bygger vi opp.

Fungerer dette med vanlig Minecraft?

Du trenger Java Edition og en lokal server med RaspberryJuice-pluginen. Vi har alt klart på kodeklubben, så du trenger ikke sette opp noe selv.

Digital kompetanse for alle i Ryfylke. Gratis kodeklubb for ungdom og digital hjelp for seniorer.