Principal Serveis De Transmissió Hacking Minecraft al Raspberry Pi

Hacking Minecraft al Raspberry Pi



El Raspberry Pi 2 és un dispositiu amb una capacitat sorprenent, tenint en compte el seu preu inferior als 30 lliures. Inclou una versió de Minecraft preinstal·lada, juntament amb una API que us permet escriure codi per executar-lo al món virtual. Ho feu a Python, que és senzill d’aprendre. La combinació de Pi, Python i Minecraft ofereix una gran oportunitat per començar a explorar les possibilitats de programació. I l’emoció de veure com una casa es construeix sobre un paisatge virtual tampoc no és només per als nens.

puc canviar el meu nom de vigilància

Scripting a Minecraft

Minecraft és un joc de sandbox obert que no té una línia argumental a seguir. De vegades es descriu com a Lego virtual, ja que el jugador pot construir qualsevol tipus d’estructura mitjançant els blocs que té a la seva disposició. La versió inclosa amb el Raspberry Pi té un conjunt de funcions limitat adequat al seu paper educatiu; per tant, no us haureu de preocupar de ser perseguit per zombis, per exemple. La interacció amb aquest món no requereix cap configuració especial, només una compilació recent del sistema operatiu Raspbian més un entorn de programació. Optaria per Geany, que podeu instal·lar obrint LXTerminal i escrivint:

sudo apt-get install geany

Comencem creant un guió per construir una casa davant del reproductor, però en lloc de donar-li un cop al lloc, l'animarem. També crearem diversos paràmetres configurables, que permetran al jugador experimentar amb diferents dimensions i materials. Això també farà que el programa sigui modular, de manera que es pot utilitzar com a base per crear pous més sofisticats.

Per fer que el codi funcioni, carregueu-lo a Geany i després inicieu Minecraft i creeu un món nou. Premeu la tecla Tabulador per deixar anar el cursor de la finestra de Minecraft i feu clic a la icona d'engranatge de Geany (o premeu F5) per iniciar el script. Hauríeu de veure com una casa es munta màgicament. Si no ho feu, proveu de donar la volta; potser us quedareu enrere. Podeu veure el guió en acció aquí . Llavors, com funciona el guió? Bé, primer obre un enllaç a Minecraft:

importar mcpi.minecraft com a minecraft, temps mc = minecraft.Minecraft.create ()

A Python, és important prestar atenció a la sagnia, ja que així es divideix el codi en blocs. En aquest cas, ambdues línies són a la paret amb el marge esquerre: la primera línia importa les biblioteques Minecraft i Time i la segona crea un objecte Minecraft per a la nostra utilització. Les properes 25 línies estableixen unes quantes variables per als blocs que farem servir, de manera que podem referir-nos-hi com, per exemple, wood_planks en lloc del seu identificador de bloc (5, en aquest cas). A continuació, indiquem quin d'aquests blocs s'utilitzarà per a les parets, quin per al sostre, etc. Podem canviar fàcilment la construcció de la casa completament canviant parets de maó per llambordes, per exemple. Finalment, establim l’amplada, la longitud i l’alçada del nostre habitatge desitjat.

Ara anomenem la funció Minecraft mc.player.getTilePos () per localitzar el reproductor al paisatge i els valors que tornen s’utilitzen per crear dues variables, esquerra i inferior, per descriure on serà el primer racó de l’habitatge. .

Després, l'estructura del guió coincideix amb el procés de Minecraft de construir manualment una casa. Comencem netejant un espai perquè, si el jugador decideix construir la casa a l’interior, per exemple, d’una muntanya, la zona d’estar no serà de pedra massissa. Aquí teniu el bloc de codi (la funció de Python) que fa això:

def clear_house (nuclear):
si nuclear == True:
zona_explosió = 20
en cas contrari:
zona_blast = 0
mc.setBlocks (left-blast_zone, player_
terra, part inferior + zona explosió, esquerra + amplada + explosió_
zona, terra_jugador + alçada + explosió_
zona + 10, zona de fons-longitud-blast, bloc_aire)

Quan anomenem clear_house, passem el paràmetre nuclear. Té el valor True o False. Podeu provar de trucar-lo amb True per esborrar un volum més gran al voltant de l'àrea objectiu o bé trucar-lo amb False per limitar l'espai lliure a les dimensions internes de la casa. A Minecraft, la funció mc.setBlocks s’utilitza per crear un cub de blocs passant-li les coordenades, en tres dimensions, de cantonades oposades seguides del tipus de bloc que voleu utilitzar. En aquest cas, netejem un espai, de manera que fem servir l’aire.

Un cop netejat l’espai, és hora de passar a la construcció. Cadascuna d’aquestes etapes de construcció té lloc en la seva funció. Al final de l’escriptura, veureu una funció anomenada main (), que controla el flux del programa cridant cada fase de construcció al seu torn. En nomenar les nostres funcions amb criteri i anomenar-les des de main (), és fàcil entendre què fa el programa:

def main ():
clear_house (fals)
start_pos = [esquerra, inferior, jugador_
terra]
build_floor (start_pos)
course = build_walls (start_pos)
add_door (porta_posició)
time.sleep (retard * 10)
build_roof (start_pos, curs)

La següent funció anomenada in main () construeix el sòl: això fa servir mc. setBlocks de nou per esculpir una base (amb efecte artístic) i, a continuació, afegiu un cub de rajoles amb una profunditat d’un bloc per crear un sòlid sòlid a casa nostra.

comproveu si els controladors estan actualitzats

Construint les parets

La funció build_walls és el cor del programa. La manera més eficient de crear la closca d’una casa seria abatre un cub massís de maons i després utilitzar clear_house per esculpir l’interior. Tot i això, volem que la casa aparegui per construir-se, de manera que hem de col·locar blocs individualment, un darrere l’altre. Aquí teniu una versió simplificada del codi de construcció de murs:

def build_course (start_pos, direction,
curs):
blocs = 1
current_horiz = start_pos [0]
current_vert = start_pos [1]

si direcció == cap amunt o
direcció == cap avall:
nombre_de_blocs = longitud
en cas contrari:
nombre_de_blocs = amplada

mentre que blocsmc.setBlock (current_horiz, player_
terra + rumb, current_vert, wall_block)
si direcció == cap amunt:
actual_vert- = 1
direcció elif == cap avall:
actual_vert + = 1
direcció elif == dreta:
horitzó_actual + = 1
en cas contrari:

horitzó_actual- = 1
blocks = blocks + 1 # passa al següent bloc
time.sleep (retard)

Comencem emmagatzemant la posició inicial: aquesta serà la posició de l’últim bloc posat del curs anterior de blocs. A continuació, especifiquem quants blocs cal col·locar, en funció de si anem al llarg de l’edifici o de l’amplada.

La fase de construcció es troba dins del bloc while; continua funcionant fins que hem col·locat tots els blocs. mc.setBlock col·loca un sol bloc a les coordenades que es mostren i, a continuació, augmenta una d’aquestes coordenades en funció de la direcció en què estiguem col·locats. L'efecte és que els blocs es col·loquen al llarg d'una paret abans de girar una cantonada i continuar en un rectangle fins que es completa el curs.

com es pot saber si algú llegeix el vostre missatge sense comprovar-los

La versió final del codi està una mica més implicada, afegint finestres a cada paret. Les finestres tenen una mida dinàmica de manera que tinguin la meitat de la longitud de la paret i estiguin centrades. També registra la posició de la porta; s’afegeix un cop construïdes les parets. Els cursos es controlen des de la funció build_walls, que repeteix la funció build_course per a cada recorregut de blocs fins que arriba a l'alçada final.

Fins i tot podeu provar de construir la vostra casa a l'oceà o a l'aire: feu-ho prement dues vegades la barra espaiadora per volar i premeu de nou per aixecar-vos abans d'executar el guió. Altereu les variables wall_block i roof_block per veure què passa si creeu les parets o el sostre amb or o, de fet, amb lava. Podeu afegir els vostres propis blocs consultant la llista completa aquí i afegir la variable associada a l'script. Les modificacions més difícils poden incloure l'addició de diversos pisos a l'estructura si la variable d'alçada s'estableix en un valor prou gran. Esbrineu com afegir torretes, per exemple, i teniu el disseny d’un castell de Minecraft.

Aquests ajustaments poden semblar trivials, però he estat programant professionalment des de fa més de 20 anys i encara sento emoció quan un fragment de codi funciona com es volia. Si mai no heu programat mai, espero que ho proveu i, si teniu un ventilador de Minecraft a la llar, us suggereixo deixar-los anar al codi i veure on els porta. Trobareu enllaços a recursos de Minecraft Pi a kevpartner.co.uk/programming .

Articles D'Interès

L'Elecció De L'Editor

Com afegir dies a una data a Smartsheet
Com afegir dies a una data a Smartsheet
Smartsheet és un programari de gestió de treball popular. Ofereix diferents opcions per ajudar-te a planificar i gestionar els teus projectes, tasques, calendaris, etc. Fer un seguiment de les dates és un factor important en cada programari de gestió. Si vols aprendre
Com es poden trobar totes les imatges al dispositiu Windows 10
Com es poden trobar totes les imatges al dispositiu Windows 10
Windows 10 inclou una carpeta d’imatges dedicada on totes les vostres fotos s’han d’emmagatzemar correctament. Però, malauradament, és notòriament difícil mantenir totes les fotos en un sol lloc. Per exemple, les fotos que heu baixat d'Internet
Com comprar jocs a Meta (Oculus) Quest 2
Com comprar jocs a Meta (Oculus) Quest 2
Els jocs de Quest 2 es poden comprar a VR a través de la botiga integrada, o podeu comprar jocs fora de VR mitjançant l'aplicació Meta Quest del vostre telèfon.
Com trobar i fer esborranys a Tik Tok
Com trobar i fer esborranys a Tik Tok
https://www.youtube.com/watch?v=T_Zn8yVTXZM TikTok s'està convertint en una aplicació popular que s'utilitza per publicar vídeos curts. Des de
Com esborrar tots els missatges a Discord
Com esborrar tots els missatges a Discord
Esborrar missatges de qualsevol plataforma de vegades és necessari per alliberar espai, reinventar-se o eliminar anys de desordre. Discord no és diferent, i alguns usuaris se senten obligats a suprimir tots els seus missatges en un moment o altre. Mentre
Com es pot comprovar si el vostre PC admet Bluetooth 4.0
Com es pot comprovar si el vostre PC admet Bluetooth 4.0
Bluetooth 4.0 afegeix l'estàndard Bluetooth Low Energy a més de l'especificació Bluetooth clàssica. Consulteu la manera més ràpida de saber si el vostre PC és compatible amb Bluetooth 4.0.
Com desactivar i eliminar anuncis a uTorrent
Com desactivar i eliminar anuncis a uTorrent
Quan uTorrent (o µTorrent per ser més precisos) va introduir la seva versió compatible amb anuncis, vaig decidir utilitzar qBittorent com a alternativa sense anuncis. Però molts usuaris van decidir no canviar a cap client alternatiu de BitTorent i seguir utilitzant uTorrent. El que sembla que molta gent no sap és que és possible desactivar els anuncis amb uTorrent natiu