Pietrarossa e blocchi interattivi di Minecraft
I blocchi interattivi di Minecraft, tra cui la pietrarossa (redstone), sono componenti che consentono di costruire meccanismi, congegni e automatismi più o meno complessi da collocare nel mondo di gioco per arricchire l’esperienza ludica. Per blocchi interattivi intendiamo una categoria di blocchi di Minecraft con specifiche caratteristiche ovvero elementi e oggetti in grado di interagire non solo con l’avatar del giocatore ma anche tra loro, attraverso la trasmissione di un segnale e/o la rilevazione di segnali emanati da altri blocchi.
Tra i blocchi interattivi, la pietrarossa o più precisamente la polvere di pietrarossa svolge una funzione fondamentale in quanto è in grado di veicolare gli impulsi generati dagli altri blocchi interattivi in modo simile a quanto accade con un cavo elettrico nel mondo reale.
La combinazione di blocchi interattivi e di pietrarossa consente inoltre la creazione di veri e propri circuiti di pietrarossa in grado di manipolare il segnale emesso da un generatore, ma approfondiremo questo aspetto in un prossimo articolo.
I principali blocchi interattivi di Minecraft sono: la polvere di pietrarossa, i pulsanti, la leva, le pedane a pressione, il gancio a filo, la cassa intrappolata, la torcia di pietrarossa, il blocco di redstone, il sensore luce diurna, l’osservatore, il ripetitore di pietrarossa, il comparatore di pietrarossa, i pistoni, lo sgancio, il distributore, la tramoggia, il binario alimentato, il binario rilevatore, il binario attivatore, l’espositore con una freccia.
Sono blocchi interattivi (in base alla nostra definizione) anche le porte, le botole, la lampada di pietrarossa, il blocco sonoro, la TNT e tutti i vari oggetti che possono cambiare il proprio stato in conseguenza di un impulso proveniente da altri oggetti o elementi, tuttavia il loro utilizzo appare abbastanza intuitivo.
La polvere di pietrarossa ha due stati - spento e acceso - identificati da un cambiamento di colore. Quando la polvere di pietrarossa è accesa trasporta un impulso la cui forza è decrescente, infatti in assenza di altri elementi l’impulso può percorrere una distanza massima di 15 blocchi. La polvere di pietrarossa si comporta, quindi, come una sorta di cavo elettrico e visivamente ricorda la striscia di polvere da sparo di un film western. Il posizionamento della polvere di pietrarossa varia in base a come viene distribuita nei blocchi adiacenti, potendo quindi virare, incrociare, creare dei “loop”, delle griglie e degli sbalzi in verticale.
Occorre evidenziare che una unità di polvere di pietrarossa occupa lo spazio di un intero blocco per cui se si vuole nascondere un cablaggio, ad esempio per una trappola, è necessario capirne il comportamento in fase di posizionamento, soprattutto per quanto riguarda l’asse verticale. Infatti, la distribuzione della polvere di pietrarossa in verticale necessita di alcuni accorgimenti poiché eventuali blocchi posizionati a spigolo su una traccia verticale di pietrarossa ne troncherebbero il segnale. Fortunatamente, sono stati implementati diversi metodi per convogliare un segnale verso l’alto o verso il basso, come l’utilizzo di lastre di pietra al posto dei blocchi, la sovrapposizione di blocchi e torce di pietrarossa e l’uso di pistoni.
I pulsanti e la leva, sebbene percepiti come interruttori, sono in effetti dei generatori di segnale. Generalmente vengono definiti come “attivatori manuali”, poiché devono essere azionati dagli avatar dei giocatori. La differenza tra pulsante e leva è data dalla durata dell’impulso generato. La leva, una volta azionata invia un impulso continuo (con forza pari a 15 ma sempre decrescente) che deve essere interrotto ri-azionando la leva. Il pulsante, invece, genera una impulso di durata definita ovvero di “15 tick”, che corrispondono a circa 1 secondo e mezzo. Il “tick” della pietrarossa vale un decimo di secondo e misura la velocità di spostamento del segnale da un blocco all’altro.
Collegando con la polvere di pietrarossa un pulsante e una leva rispettivamente a due lampade di pietrarossa si possono visualizzare le differenze di comportamento, inoltre variando la distanza che intercorre tra attivatore e lampada oltre i 15 blocchi si può visualizzare anche cosa si intende per “forza” del segnale.
In pratica, le due dimensioni che modificano il comportamento del segnale di pietrarossa sono la durata dell’impulso, che può essere continua o temporizzata (e anche intermittente come vedremo successivamente con i circuiti di pietrarossa), e la forza del segnale che in realtà misura la distanza che l’impulso può percorrere e non la sua intensità che invece resta costante.
Le pedane a pressione, il gancio a filo e la cassa intrappolata sono attivatori di segnale molto usati nella predisposizione di trappole poiché possono essere azionati involontariamente o inconsapevolmente dai giocatori. Si differenziano tra loro per diverse caratteristiche che ne condizionano le modalità d’uso. Ad esempio, la pedana a pressione in pietra emette un segnale fintanto che è calpestata dall’avatar del giocatore e dai mob mentre quella in legno attiva il segnale anche qualora un qualsiasi oggetto vi finisca sopra. Le pedane a pressione in oro o in ferro, invece, emettono un segnale con forza proporzionale al numero di entità (mob, avatar e oggetti) che vi sono depositate sopra e si differenziano per il numero di oggetti necessario a raggiungere la forza massima, pari a 15 oggetti per quella in oro e 141 per quella in ferro, in quanto il primo step si ottiene con un solo oggetto anche per la pedana in ferro (se volete verificare il loro funzionamento per raggiungere il numero di entità necessarie conviene usare frecce scagliate in quanto gli oggetti rilasciati dall’avatar generalmente vengono raggruppati automaticamente).
Il gancio a filo è un attivatore da utilizzare in coppia collegando una corda, che può estendersi per 40 blocchi, tra due ganci. Questa trappola risulta quasi invisibile e quando la corda viene attraversata si genera un segnale da ciascun terminale.
La cassa intrappolata si differenzia solamente per un piccolo particolare dalla cassa di stoccaggio normale, ma una volta aperta genera un impulso che può attivare direttamente un blocco di TNT o essere instradato attraverso la polvere di pietrarossa. La forza del segnale generato dalla cassa intrappolata varia in funzione del numero di giocatori che aprono la cassa (è pari a 1 per il primo avatar che apre la cassa, sale a 2 per il secondo e cosi via).
La torcia di pietrarossa, il blocco di pietrarossa e il sensore di luce diurna sono definiti come “attivatori costanti” poiché generano sempre (costantemente) un segnale, anche se, a eccezione del blocco di pietrarossa, possono cambiare il proprio stato. La torcia di pietrarossa genera un segnale che si irradia nei blocchi imediatamente circostanti ma che è in grado di attraversare un blocco posizionato direttamente sopra di essa. Lo stato della torcia di pietrarossa se opportunamente posizionata su un blocco solido è invertito dalla presenza di un’altro attivatore nel suo raggio di azione o da un segnale proveniente da polvere di pietrarossa, determinando quindi il suo spegnimento e l’interruzione del segnale. Ad esempio, la disposizione in successione sull’asse verticale di torce di pietrarossa intervallate da blocchi solidi, crea un’alternanza dello stato di spegnimento e accensione delle stesse, per cui la variazione dello stato della prima torcia fa variare in successione lo stato di tutte le altre torce determinando di fatto una trasmissione del segnale.
Il blocco di pietrarossa trasmette un impulso a tutti i blocchi interattivi direttamente a contatto con le sue sei facce e può essere collegato a un pistone in modo che il suo spostamento determini l’accensione o lo spegnimento di un segnale.
Il sensore di luce diurna genera un segnale quando è esposto a un livello di luce non artificiale sufficiente. La forza del segnale varia in base al livello di luce a cui è esposto, quindi anche in funzione delle condizioni meteo. Il suo funzionamento può essere invertito, ovvero può generare un segnale - sempre di forza variabile ma in base a un diverso algoritmo - in assenza di luce diurna.
L’osservatore, come si intuisce dalla sua denominazione, è un blocco in grado di osservare (rilevare) i cambiamenti di un blocco posto frontalmente come, ad esempio, la crescita o il taglio dell’erba in un blocco di terra, l’attivazione e la disattivazione di un pistone, l’impulso generato da un binario alimentato. L’osservatore è inoltre in grado di rilevare il proprio spostamento quando determinato da un pistone. Come altri blocchi che vedremo successivamente, va posizionato nel verso giusto poiché è dotato di un ingresso, ovvero il lato che “osserva”, e di un’uscita che emette un impulso ogni volta che viene rilevata una variazione di stato.
Il ripetitore di pietrarossa può svolgere diverse funzioni ma la principale è dare forza a un segnale debole o indebolito, riportandola al valore massimo ovvero alla capacità dell’impulso di percorrere 15 blocchi di distanza, consentendo così di creare cablaggi lunghi e complessi. Un’altra funzione è di impedire il passaggio del segnale in senso inverso, infatti il ripetitore di pietrarossa ha un verso, ovvero un ingresso e un’uscita, che consente di creare flussi separati d’impulsi, sfruttando anche un’altra sua funzionalità che è la capacità di ritardare gli impulsi che lo attraversano. Il ripetitore di pietrarossa può essere regolato su 4 posizioni che ritardano il segnale da 1 a 4 tick ovvero da 1 a 4 decimi di secondo circa. Ovviamente posizionando più ripetitori di pietrarossa un impulso può essere ritardato in misura anche maggiore.
Infine, un’altra funzionalità simile a quella di un interruttore è ottenibile posizionando a T due ripetitori di pietrarossa. Uno dei due ripetitori si comporterà come una sorta di interruttore, poiché fintanto che è alimentato da un segnale impedirà a un altro flusso di segnale (proveniente ad esempio da un’altro generatore) di attraversare l’altro ripetitore. Il segnale principale riuscirà a passare solo quando l’alimentazione del ripetitore che fa da tappo verrà disattivata. Tuttavia, una volta che il segnale principale è passato il ripetitore/tappo non sarà più in grado di interrompere nuovamente il flusso del segnale se viene riattivato (il segnale che ha attraversato il tappo rimane attivo).
Il comparatore di pietrarossa assolve tre funzioni principali:
- interrompere un segnale in base all’input proveniente da uno o due altri segnali;
- manipolare la forza di un segnale in base all’input proveniente da uno o due altri segnali;
- valutare lo stato di determinati oggetti e inviare un segnale di output proporzionale.
In pratica, il comparatore di pietrarossa è una sorta di misuratore poiché è in grado di:
- misurare fino a tre segnali per compararli tra loro e quindi decidere se lasciar passare il segnale principale o interromperlo;
- misurare fino a tre segnali per effettuare una sottrazione e generare come output un segnale con forza corrispondente al risultato;
- misurare gli elementi quantificabili associati a determinati blocchi e generare come output un segnale con forza proporzionale.
Se inserito in un cablaggio, ad esempio tra un generatore e una lampada, il comparatore di pietrarossa restituisce in output un segnale di forza pari a quella dell’input, per cui se la forza del segnale antecedente il comparatore è 10, la forza del segnale in uscita sarà 10. Nel nostro esempio, affinché la polvere di pietrarossa abbia forza 10 nel blocco antecedente il comparatore, deve avere già percorso 6 blocchi. In pratica includendo il blocco occupato dal comparatore il segnale si estende di 17 blocchi invece di 15.
La suddetta precisazione può essere utile per verificare il comportamento del comparatore di pietrarossa in modalità comparazione e, a maggior ragione, per calcolare la forza del segnale di output in modalità sottrazione.
Anche il comparatore, come altri blocchi interattivi, ha un verso (indicato da una freccia) ovvero un ingresso per l’input principale, due ingressi laterali per gli input secondari e un’uscita. E’ inoltre dotato di uno switch per cambiare la modalità di calcolo da comparazione a sottrazione.
In modalità comparazione (torcia anteriore spenta) il comparatore di pietrarossa blocca il segnale di output se uno dei due segnali di input secondari (laterali) ha una forza maggiore del segnale di input principale.
In modalità sottrazione (torcia anteriore accesa) il comparatore di pietrarossa genera un segnale di output con forza pari al risultato ottenuto sottraendo al valore della forza del segnale di input principale (ad esempio 10) il maggiore dei valori di forza dei segnali di input secondari (ovvero se i due segnali laterali hanno uno forza 7 e l’altro 8 sui blocchi adiacenti il comparatore, verrà sottratto il valore 8 ottenendo un segnale di output con forza 2).
Il valore di forza del segnale generato dal comparatore in modalità misurazione dipende dal tipo di blocco contenitore (fornace, tramoggia, distributore, cassa, cassa grande, jukebox - per il quale conta il titolo del disco e non la quantità), potendo ovviamente variare da 0 (completamente vuoto) a 15 (completamente pieno).
I pistoni di Minecraft sono blocchi capaci di estendersi in una direzione occupando lo spazio di due blocchi e di conseguenza spostare fino a 12 blocchi adiacenti. I pistoni si estendono e restano nello stato esteso fintanto che sono alimentati da un generatore. L’interruzione dell’impulso ricompatta il pistone che torna a occupare lo spazio di un solo blocco. La loro capacità di spostare i blocchi è correlata alla presenza di due tipi di pistone: il pistone normale e il “pistone appiccicoso” che, come si intuisce dal nome, fa in modo che il blocco spostato sia incollato al pistone e quindi trascinato nella posizione originale quando il pistone si ritrae. Lo spostamento dei blocchi attraverso i pistoni è correlato anche al blocco di gelatina (slime) che è in grado di incollarsi oltre che al pistone ad altri titpi di blocchi (con l’eccezione del blocco di ossidiana). I pistoni possono essere convenientemente sfruttati nei circuiti di pietrarossa e in altre situazioni, ad esempio per creare passaggi segreti.
Lo sgancio e il distributore sono blocchi contenitori in grado di, rispettivamente, rilasciare e lanciare gli oggetti immagazzinati al loro interno, quando attivati da un impulso. Se contengono differenti tipi di oggetti la loro espulsione è casuale. Entrambi devono essere collocati nel giusto verso per rilasciare o lanciare gli oggetti, ma accettano e emettono impulsi in tutte le direzioni. Lo sgancio collegato a una tramoggia e a un comparatore di pietrarossa può essere utilizzato per creare un congegno simile a un interruttore, utile ad esempio per avviare e fermare la manipolazione di un segnale all’interno di un circuito di pietrarossa.
La tramoggia è un blocco contenitore dinamico, nel senso che è in grado di raccogliere gli oggetti che vi finiscono sopra e di inviarli al contenitore a cui è collegata. In pratica, si comporta in modo simile a un collettore ma la sua capacità di muovere gli oggetti può essere sfruttata collegando tra loro due tramogge per creare un “loop”, ovvero lo spostamento continuo di un oggetto da una tramoggia all’altra. Affiancando a una delle due tramogge un comparatore di pietrarossa è possibile visualizzare l’impulso intermittente generato dal congegno. La tramoggia si disattiva quando è alimentata da un impulso.
Il binario alimentato, il binario attivatore e il binario rilevatore sono varianti interattive del binario normale, ognuna delle quali assolve a funzioni specifiche:
- il binario alimentato, o più propriamente alimentabile, deve essere collegato a un generatore di segnale per generare una forza propulsiva nei carrelli ferroviari che vi transitano sopra, mentre se non è alimentato si comporta come un freno. Quando è alimentato cambia colore, non ha un verso - nel senso che la direzione impressa al carrello è quella inerziale - e può a sua volta alimentare fino a otto binari alimentati adiacenti, per ogni lato;
- il binario attivatore, se alimentato da un generatore, attiva i carrelli che vi transitano sopra con effetti dipendenti dal tipo di carrello. Se il carrello contiene mob o avatar del giocatore questi vengono espulsi, se il carrello contiene un blocco di comando questo viene eseguito, se il carrello contiene TNT questa viene accesa, se il carrello contiene una tramoggia questa viene disabilitata (ovvero il carrello con tramoggia smette di raccogliere gli oggetti che incontra lungo il tracciato ferroviario). Al contrario, se il binario attivatore non è alimentato ri-attiva un carrello con tramoggia spento. Anche il binario attivatore, se alimentato, può a sua volta alimentare fino a otto binari attivatori adiacenti, per ogni lato;
- il binario rilevatore è un generatore di segnale che si attiva quando un carrello ferroviario vi transita sopra, ovvero ha un comportamento simile alle pedane a pressione. Più precisamanete, il binario rilevatore genera un segnale che dura almeno 10 tick (un secondo) o fintanto che il carrello ferroviario permane sopra di esso. Può essere usato per alimentare binari alimentati e binari attivatori o per inviare impulsi attraverso polvere di pietrarossa e ripetitori. Il binario rilevatore può alimentare un blocco opaco sottostante il rilevatore e qualsiasi blocco interattivo posto sotto, ai lati o sopra di esso. Se connesso a un comparatore di pietrarossa, quando viene attraversato da un carrello con cassa o da un carrello con tramoggia, genera un segnale proporzionale al contenuto del contenitore.
I binari interattivi, a differenza dei binari normali, non possono curvare.
L’espositore con una freccia è un oggetto composto che si comporta in modo simile a un potenziometro. Si ottiene appendendo a un blocco un’espositore, collocandovi una freccia e posizionando un comparatore di pietrarossa dietro al blocco cui è appeso l’espositore. Quando la freccia è posizionata in posizione 1 (ovvero l’una e trenta del quadrante di un orologio) il potenziometro emette un segnale di forza pari a 1, ruotando di uno scatto la freccia in senso orario (ore 3 dell’orologio) si ottiene un segnale di forza pari a 2 e così via fino alla posizione 8 (freccia che punta verso l’alto, ore 12) che conferisce al segnale una forza pari a 8.
Per maggiori informazioni sulle caratteristiche dei blocchi interattivi sinteticamente descritti in questo articolo potete consultare il wiki ufficiale di Minecraft.