Aloittelijan opas Minecraftin komentolohkoihin

Minecraft on yksi parhaista tavoista tutustuttaa nuoret ja uudet ihmiset koodaukseen. Komentolohkot on helppo oppia ja käyttää, ja Java-ohjelmointi on aivan kulman takana Minecraft-modien ja Bukkit-laajennusten avulla. Se on myös vain erittäin hauska paikka kokeneille koodereille.

Mitä ovat komentolohkot ja miksi minun pitäisi käyttää niitä?

Komentolohkot ovat redstone-komponentti, joka suorittaa konsolikomennot virran ollessa kytkettynä. Konsolikomennot voidaan suorittaa chat-ikkunasta suorittamalla ne eteenpäin vinoviivalla '/'. Komentoja käytetään muokkaamaan pelimaailmaa tavoilla, jotka eivät ole käsin mahdollisia, ja kun niitä käytetään oikein komentolohkoissa, antavat Minecraftille omanlaisensa psuedo-ohjelmointikielen. Koodi koostuu kahdesta asiasta: logiikasta ja suorituksesta, ja useimmat ohjelmointikielet edellyttävät molempien kirjoittamista tekstiksi. Minecraft-koodaus vie eri reitin; ohjelman logiikka ja rakenne määräytyy sen mukaan, mihin lohkot sijoitetaan ja miten ne on kytketty, mikä tarkoittaa, että voit lentää maailmasi yli ja nähdä ohjelmasi eri osat lohkoittain.

Ok, joten miten aloitan?

Tässä oppaassa käytetään version 1.9 uusia komentolohkoja. Se toimii versiossa 1.8, mutta saattaa vaatia hieman enemmän asiantuntemusta.

Avaa uusi Minecraft-maailma (Superflat toimii parhaiten), varmista, että olet luovassa tilassa, ja paina “/” -painiketta. Tämä on komentoikkuna, joka on sama asia kuin chat-ikkuna, paitsi että se aloittaa sinut '/': lla, ja kaikki eteenpäin kauttaviivalla alkavat ovat komento. Ensimmäinen komento, jonka voit suorittaa, on

/ anna @p minecraft: command_block

Hajotetaan tämä. Komento "/ antaa" lisää kohteet pelaajien luetteloon ja sillä on kaksi argumenttia: pelaaja ja annettava kohde. ”@P” on kohdevalitsin. Valitsin “@p” valitsee lähimmän pelaajan. Vaihtoehtoisesti voit käyttää myös Minecraft-käyttäjänimeäsi, mutta jos suoritat komennon konsolista, olet aina lähin pelaaja. Muut kohdevalitsimet ovat “@a” kaikille pelaajille, “@r” satunnaiselle pelaajalle ja “@e” kohdistavat kaikille  entiteeteille. Entiteetit sisältävät kaiken, mikä ei ole lohko, kuten hirviöt, lumipallot, eläimet ja nuolet.

Komennon tulisi suorittaa onnistuneesti ja antaa sinulle uusi lohko. Aloita sijoittamalla se mihin tahansa maahan.

Voit nähdä, että komentolohko osoittaa suuntaan, johon se sijoitetaan, kuten suppilot tai uunit. Tämä on tärkeää myöhemmin.

Napsauta hiiren kakkospainikkeella lohkoa (tai käytä mitä tahansa avainta, jolla pääset käsittelemään pöytiä ja uuneja) ja sinut tervehditään komentolohkon käyttöliittymällä.

Aluksi tuntuu hieman pelottavalta, mutta älä huoli, kaikki nämä painikkeet tekevät jotain. Impulssi-painike muuttaa komentolohkon tyypin. Komentolohkoja on kolme erilaista:

  • Impulse, joka suorittaa komentoja  punakivivirran nousevalla reunalla . Tämä tarkoittaa, että kun he saavat virran, he suorittavat komennon kerran ja pysähtyvät, vaikka heillä olisi edelleen virtaa. Tämä on oletusasetus ja ainoa, joka on saatavana versiossa 1.8
  • Toista, joka suorittaa komennot jokaisen rasti päälle . Merkki on kuin kehys, ja useita komentoja voidaan suorittaa yhdellä rasti, jopa 20 kertaa sekunnissa.
  • Ketju, joka toimii vain, jos siihen osoittava komentolohko on suorittanut komennon. Nämä suoritetaan järjestyksessä peräkkäin yhdellä rasti, josta nimi "Ketju".

Painike, joka sanoo ”Ehdollinen”, estää komentolohkon tarkistamasta, onko ketjun edellinen lohko suoritettu onnistuneesti. Toinen vaihtoehto, ”Ehdollinen”, toimii vain, jos edellisessä lauseessa ei ole virheitä.

Painike, joka sanoo “Needs Redstone”, suorittaa komennon vain, jos komentolohko on päällä. Toinen vaihtoehto, "Aina aktiivinen", estää komentolohkon tarkistamasta, onko sillä virta ja olettaa vain olevan. Tätä vaihtoehtoa ei tule käyttää Impulse-komentolohkojen kanssa, koska se tekee niistä hyödyttömiä.

Tehdään ketju, ensimmäinen 'käsikirjoituksemme'. Aseta ketjun komentolohko tai kaksi ensimmäiseen impulssikomentolohkoon seuraavasti:

Muista asettaa ketjulohkoiksi ”Aina aktiivinen”. Muuten joudumme sijoittamaan redstone-lohkot tai virran, joka vie tarpeetonta tilaa. Aseta painike ketjun alussa olevaan impulssikomentolohkoon ja paina sitä.

Mitään ei tule tapahtumaan. Tämä johtuu siitä, että emme ole vielä täyttäneet niitä komennoilla! Muokkaa hiiren kakkospainikkeella impulssilohkoa ja aseta peruskomento

sano alku

Huomaa, kuinka emme tarvitse eteenpäin kauttaviivaa komentolohkoissa. Voit käyttää yhtä, jos haluat, mutta se ei ole tarpeetonta. "/ Say" -komento ottaa yhden argumentin, tekstin, ja sanoo sen sen toteuttavan henkilön näkökulmasta. Jos suoritat sen, se näkyy "viestinä" aivan kuten tavallinen chat. Jos se suoritetaan komentolohkosta, se on “[@] viesti”. Vaihtoehtoisesti on olemassa "/ tell", joka vie pelaajan argumentin, ja "/ tellraw", joka on kuin "/ tell", paitsi että se vie raakaa JSONia tekstin sijaan.

Voit täyttää ketjukomentolohkot kirjoittaaksesi lisää juteltavia asioita. Ne suoritetaan järjestyksessä viipymättä samalla rasti. Jos haluat käyttää niitä viiveellä, sinun on asennettava ne redstone-toistimilla. Sanan "/ say" ohella on muita peruskomentoja, jotka tekevät enemmän asioita, kuten "/ antaa", joka antaa kohteille, "/ effect", joka käyttää juomaefektejä, "/ setblock" ja "/ fill", jotka muuttavat maailmaa , ja monet muut. Suuri tietokanta komentoista löytyy Minecraft-wikistä sekä muuta hyödyllistä sisältöä.

Kohteen valitsimet

”@P” -kohdevalitsimet ovat itse asiassa paljon tehokkaampia kuin miltä ensi silmäyksellä vaikuttaa. Esimerkiksi, jos haluaisimme kohdistaa kaikkiin entiteetteihin, käytämme "@e" -merkkiä, mutta jos haluaisimme kohdistaa vain zombeihin, käytämme

@e [type = zombie]

Huomaa hakasulkeet “@e”: n jälkeen. Näiden sulkeiden sisällä on kohdevalitsimen argumentit , joista täydellinen luettelo löytyy Minecraft-wikistä. "Tyyppi" -argumentti valitsee vain tietyn tyyppisiä kokonaisuuksia, tämä on "Zombie". Jos haluaisimme kohdistaa kaikkiin zombeihin 10 korttelin sisällä komentolohkosta, käytämme sitä

@e [tyyppi = zombie, r = 10]

R-argumentin ollessa säde. Voit kohdistaa myös sijainnin, nimen, joukkueen ja pisteet mukaan.

Ketjutuskomennot

Otetaan käyttöön toinen komento, joka ei ole kuin muut. Komento on "/ suorita". Tämä komento ottaa toisen komennon syötteeksi ja suorittaa sen toisen kokonaisuuden näkökulmasta. "/ Suorita" -rakenteen rakenne on

/ suorita @target XYZ / -komento

X, Y ja Z ovat koordinaatteja komennon suorittamiseksi. Tällä ei ole merkitystä useimmissa komennoissa, mutta sillä on merkitystä, jos käytät  suhteellista sijaintia. Suhteellinen sijainti alkaa "~": lla ja sitä seuraa positiivinen tai negatiivinen luku, joka osoittaa, kuinka monta lohkoa alkuperästä, jota merkitään "~ ~ ~". Joten esimerkiksi, jos halusimme suorittaa "/ say" ikään kuin kyläinen puhuisi, voimme asettaa komennon näin:

/ suorita @e [type = Villager] ~ ~ ~ / sano Hei

Tämä komento saa viestin lähtemään kaikille jokaiselle kyläläiselle. Tämä ei ole optimaalinen, jos meillä on useampi kuin yksi henkilö tai useampi kuin yksi kyläinen, joten muotoilkaamme tämä komento uudelleen:

/ suorita @a ~ ~ ~ / suorita @ e [tyyppi = kyläläinen, c = 1] ~ ~ ~ / kerro @p Hei

Tämä on paljon monimutkaisempi kuin ensimmäinen, ja siihen kuuluu kahden "/ suorita" -komennon ketjutus yhteen. Komennon ensimmäinen “/ execute” suoritetaan jokaiselle pelaajalle, sitten toinen tarkistaa tarkalleen yhden kyläläisen lähistöllä, ja käskee sitten Villagerin kertoa lähimmälle pelaajalle ”Hei”. Tämä varmistaa, että vain yksi kyläinen puhuu henkilöä kohti.

Syntaksin oppiminen

Minecraftissa on varmasti paljon komentoja, joista jokaisella on oma syntaksinsa. Kunkin komennon ohjevalikot kertovat yleensä nopeasti, mitä argumentteja komento tarvitsee, ja Minecraft-Wikissä on yksityiskohtainen luettelo siitä, mitä kukin tekee. Kyse ei ole niinkään siitä, että tiedämme tarkalleen, mitä kukin komento tekee, vaan siitä, kuinka tietää niitä yhdessä. Minecraft on loppujen lopuksi peli, joten komentojen kanssa pelaaminen on osa oppimisprosessia.