# Software libero a scuola/Minetest/Mod Lwscratch

Software libero a scuola
Copertina Tutti i moduli · Sviluppo
    CopertinaSoftware libero a scuola/Copertina
* Introduzione
* La storia della WiiLDSoftware libero a scuola/La nostra storia
* NovitàSoftware libero a scuola/Novità
* Solidarietà digitaleSoftware libero a scuola/Solidarietà digitale
* Fdroid
* VideotrackingSoftware libero a scuola/Vidanalisysfree
* Screen Stream over Http
* Jitsi Meet
* Commons
* Google - Animali e dinosauri in 3d
* Registra con AudacitySoftware libero a scuola/Registra con Audacity
* Registrare e creare file audio con AudacitySoftware libero a scuola/Registrare e creare file audio con Audacity
* SchoolcomSoftware libero a scuola/Schoolcom
* Calibre on line
* Attivare linux (beta)Software libero a scuola/Attivare linux (beta)
* Installare linux (beta)Software libero a scuola/Installare linux (beta)
* Usare Linux (beta)
* Installare Studio One 2 con wineSoftware libero a scuola/Installare Studio One 2 con wine
* Scratch e i suoi fratelliSoftware libero a scuola/Scratch e i suoi fratelli
* Open codingSoftware libero a scuola/OpenCoding
* OpenrobertaSoftware libero a scuola/Openroberta
* MblockSoftware libero a scuola/Mblock
* H5PSoftware libero a scuola/H5P
* Exelearning
* WordPressSoftware libero a scuola/WordPress
* Joomla
* Drupal
* Sito web della scuolaSoftware libero a scuola/Sito web della scuola
* ArawordSoftware libero a scuola/Araword
* Grid AstericsSoftware libero a scuola/Grid Asterics
* EviacamSoftware libero a scuola/Eviacam
* PictofacileSoftware libero a scuola/Pictofacile
* SIMCAA
* CrowdmapSoftware libero a scuola/Crowdmap
* OpenStreetMapSoftware libero a scuola/OpenStreetMap
** UmapSoftware libero a scuola/OpenStreetMap/Umap
* Gocarto
* Capire e farsi capire giocandoSoftware libero a scuola/Capire e farsi capire giocando
* MinetestSoftware libero a scuola/Minetest
** Comandi di MinetestSoftware libero a scuola/Minetest/Comandi di Minetest
** Fare cose su MinetestSoftware libero a scuola/Minetest/Fare cose su Minetest
** Scrivere libri su MinetestSoftware libero a scuola/Minetest/Scrivere libri su Minetest
** Mod bike
** Mod Chemistry
** Mod Digilines
** Mod FacadeSoftware libero a scuola/Minetest/Mod Facade
** Mod LettersSoftware libero a scuola/Minetest/Mod Letters
** Mod LwscratchSoftware libero a scuola/Minetest/Mod Lwscratch
** Mod Jukebox
** Mod MeseconsSoftware libero a scuola/Minetest/Mod Mesecons
** Mod Mesecons soundblockSoftware libero a scuola/Minetest/Mod Mesecons_soundblock
** Mod MinetestMovementFramesSoftware libero a scuola/Minetest/Mod MinetestMovementFrames
** Mod Moreblocks
** Mod Orienteering
** Mod painterSoftware libero a scuola/Minetest/Mod painter
** Mod power generator
** Mod presentationsSoftware libero a scuola/Minetest/Mod presentations
** Mod Sculpture
** Mod signs libSoftware libero a scuola/Minetest/Mod signs lib
** Mod street signs
** Mod VikidiaSoftware libero a scuola/Minetest/Mod Vikidia
** Mod vbotsSoftware libero a scuola/Minetest/Mod vbots
** Mod WikiSoftware libero a scuola/Minetest/Mod Wiki
** Mod WikipediaSoftware libero a scuola/Minetest/Mod Wikipedia
* DrawpileSoftware libero a scuola/Drawpile
* Gimp
* Inkscape
* Krita
* Sweethome3DSoftware libero a scuola/Sweethome3D
* BDnfSoftware libero a scuola/BDnf
* SynfigSoftware libero a scuola/Synfig
* Hardware, trashware
* TouchscreenSoftware libero a scuola/Touchscreen
* Videolezioni con OpenboardSoftware libero a scuola/Openboard
* FlipbookSoftware libero a scuola/Flipbook
* LadigitaleSoftware libero a scuola/Ladigitale
* StoryweaverSoftware libero a scuola/Storyweaver
* AI get startedSoftware libero a scuola/AI get started
* ChatGPTSoftware libero a scuola/ChatGPT
* lmstudioSoftware libero a scuola/lmstudio
* MachineLearningForKidsSoftware libero a scuola/MachineLearningForKids
* OllamaSoftware libero a scuola/Ollama
* RAG - Come fareSoftware libero a scuola/RAG - Come fare
* Stable DiffusionSoftware libero a scuola/Stable Diffusion
* Lavagne interattiveSoftware libero a scuola/Lavagne interattive
* OpenboardSoftware libero a scuola/Openboard
* Lezioni in webchat con JitsiSoftware libero a scuola/Jitsi
* Installazione server JitsiSoftware libero a scuola/Jitsi-installazione-su-vps
* Lezioni in webchat con BigBlueButtonSoftware libero a scuola/BigBlueButton
* Installazione server BigBlueButtonSoftware libero a scuola/BigBlueButton installazione
* Collaborare in modo sincronoSoftware libero a scuola/Collaborare in modo sincrono
* Chat testualiSoftware libero a scuola/Chat testuali
* Chat audioSoftware libero a scuola/Chat audio
* UnhangoutSoftware libero a scuola/Unhangout
* OpenDX
* MoodleSoftware libero a scuola/Moodle
** Moodle quizSoftware libero a scuola/Moodle/Moodle quiz
* AdaSoftware libero a scuola/Ada
* ChamiloSoftware libero a scuola/Chamilo
* Mappe mentali e concettualiSoftware libero a scuola/Mappe mentali e concettuali
* Wiki2mapSoftware libero a scuola/Wiki2map
* FreeplaneSoftware libero a scuola/Freeplane
* Draw.ioSoftware libero a scuola/Draw.io
* HeimerSoftware libero a scuola/Heimer
* MymarkmapSoftware libero a scuola/Mymarkmap
* Musescore
* FrescobaldiSoftware libero a scuola/Frescobaldi
* Costruisci una chiavetta UsbSoftware libero a scuola/Costruisci una chiavetta Usb
* Costruisci un DVDSoftware libero a scuola/Costruisci un DVD
* CD e DVD allegatiSoftware libero a scuola/CD e DVD allegati
* Video
* Gestore dei pacchettiSoftware libero a scuola/Gestore dei pacchetti
* Uso di VirtualboxSoftware libero a scuola/Uso di Virtualbox
* SodilinuxSoftware libero a scuola/Sodilinux
* BubbleSoftware libero a scuola/Bubble
* MblockSoftware libero a scuola/Mblock
* Mbot2Software libero a scuola/Mbot2
* Micro:Bit
* Mind DesignerSoftware libero a scuola/Mind Designer
* Opensource turtle robotSoftware libero a scuola/Opensource turtle robot
* Robotica risorse e approfondimentiSoftware libero a scuola/Robotica risorse e approfondimenti
* Spike prime
* SuperDoc
* ThymioSoftware libero a scuola/Thymio
** Thymio sensori di prossimitàSoftware libero a scuola/Thymio sensori di prossimità
** Thymio sensori terrenoSoftware libero a scuola/Thymio sensori terreno
* VideotrackingSoftware libero a scuola/Tracker
* Concord - Applet scienze onlineSoftware libero a scuola/Concord/
* Phet - Applet scienze onlineSoftware libero a scuola/Phet
* Simscale - Simulatore scienzaSoftware libero a scuola/Simscale
* CryptpadSoftware libero a scuola/Cryptpad
* CodimdSoftware libero a scuola/Codimd
** FlipbookSoftware libero a scuola/Flipbook
* Scrittura collaborativa, tabella di riepilogoSoftware libero a scuola/ScritturaCollaborativa
* Scrittura collaborativa con AbiWordSoftware libero a scuola/AbiWord
* LibreOffice
* PdfSoftware libero a scuola/Pdf
* PDFtk
* PDFedit
* PdfSam
* Pdf4TeacherSoftware libero a scuola/Pdf4Teacher
* Cmap Tools
* Learningapps
* VocarooSoftware libero a scuola/Vocaroo
* VideotrackingSoftware libero a scuola/Vidanalisysfree
* Gsuite
* Anydesk
* RemminaSoftware libero a scuola/Remmina
* Remotely
* ScreentaskSoftware libero a scuola/Screentask
* RustdeskSoftware libero a scuola/Rustdesk
* Laboratori con linuxSoftware libero a scuola/Laboratori con linux
** ProxmoxSoftware libero a scuola/Laboratori con linux/Proxmox
** ZentyalSoftware libero a scuola/Laboratori con linux/Zentyal
*** Gestione utenti LDAPSoftware libero a scuola/Laboratori con linux/Zentyal/Gestione utenti LDAP
* Allestimento PC linux per scuolaSoftware libero a scuola/Allestimento PC linux per scuola
** PFSenseSoftware libero a scuola/Gestire la rete/PFSense
* Orario scolastico - FETSoftware libero a scuola/Orario scolastico - FET
* Videoporama
* Imagination
* Polymny-studioSoftware libero a scuola/Polymny-studio
* VokoscreenSoftware libero a scuola/Vokoscreen
* Obs-studioSoftware libero a scuola/Obs-studio
* OpenshotSoftware libero a scuola/Openshot
* ShotcutSoftware libero a scuola/Shotcut
* KdenliveSoftware libero a scuola/Kdenlive
* VikidiaSoftware libero a scuola/Vikidia
* Wikiversity
* Wikibooks
* Wikivoyage
* Wiki2mapSoftware libero a scuola/Wiki2map
Modifica il sommario
chiudi indice
Lwscratch è una mod che aggiunge a Minetest dei robot programmabili con un linguaggio a blocchi simile a Scratch.

## Installare la mod

Lwscratch si installa decomprimento il file zip nella cartella delle mod del mondo e rinominando la cartella ottenuta in lwscratch, come per tutte le mod.
Sul server didasharing.it è stata installata posizionando la cartella lwscratch in ~/.minetest/worlds/world/worldmods.

## Inserire un robot

La prima volta che un robot viene posizionato nel mondo si apre un modulo che chiede al giocatore che lo ha posizionato se la macchina è pubblica o privata. Se è selezionato privato, il giocatore diventa il proprietario e gli altri giocatori (tranne quelli con privilegio protection_bypass) non possono accedervi.
Il pulsante di persistenza si può attivare e disattivare. Se la persistenza è attiva, il blocco in cui si trova il robot rimane funzionante anche quando è fuori portata. Questa persistenza viene mantenuta anche se il mondo viene riavviato. I robot mantengono il loro stato di persistenza quando vengono spostati.
Se avviato per fare un lavoro ripetitivo all'infinito un robot è difficile da fermare, lo si deve selezionare e velocissimamente spegnere dal suo pannello di programmazione clikkando sul tasto interruttore.

## Programmare un robot

I robot vengono programmati graficamente, trascinando un comando dalla griglia dei comandi (in alto a destra) al foglio del programma (a sinistra).
I materiali possono essere trascinati dagli inventari. Questi sono solo marcatori, l'oggetto non viene utilizzato.
Per rimuovere un elemento dal foglio del programma, trascinalo in uno spazio vuoto nella tavolozza dei comandi.
Per cancellare l'intero programma fare clic sul pulsante Clear, in alto sopra il foglio di programmazione.
I comandi vengono eseguiti in ordine, da sinistra a destra per riga, quindi lungo le righe.

### Videotutorial ed esempi

I videotutorial sono pubblicati in rete e llinkati nel testo e nei collegamenti esterni in fondo alla pagina.

#### Costruire un gradino

Nel videotutorial Minetest - LwScratch costruire un gradino si vede come sia possibile programmare un robot per costruire un gradino in metallo. Il codice usato è questo

#### Scavare un tunnel 3x3

Questo programma permette al robot di scavare un tunnel largo 3 cubi e altro 3 cubi.
Il robot deve essere messo affacciato al cubo centrale del tunnel che si vuole scavare in modo che con i primi tre comandi scavi una colonna di tre cubi davanti a se. Il robot ripeterà per 50 volte
Il loop conta le volte che le operazioni vengono ripetute, il controllo si fermerà a 50 numero che è stato settato posizionando l'etichetta sulla casella in alto e assegnandogli il valore 50.
Lo scavo di 9 cubi, 3 x 3, comincia scavando i tre cubi davanti a se
poi si sposta a sinistra si gira verso lo scavo e scava (dig) altri tre cubi
si porta sulla destra e scava
lo scavo è finito si gira sulla sinistra e si gira guardando lo scavo
fa un passo avanti rimettendosi nella posizione iniziale pronto a scavare un'altra parete di 9 cubi.

#### Scavare un tunnel 6x4 con pavimento

Un videotutorial lo trovate qui Minetest - LwScratch - Scavare tunnel 6x4 con pavimento.

### Nome del robot

Ad ogni robot può essere assegnato un nome, inserendo il nome nel campo Robot e facendo clic sul pulsante Set, in alto a sinistra, nell'immagine al robot è stato assegnato il nome Itch. Il nome verrà visualizzato quando il robot è puntato o come suggerimento se si trova in un inventario.

### Comandi

| Colore | Tipo di comando |
| Arancione | Situazioni |
| Verde' | Valori |
| Giallo | Condizioni |
| Blu | Azioni |
| Bianco | Azioni programmate |

### Situazioni

Loop - Questo comando deve essere seguito da una condizione che restituisce vero o falso. Le righe di comandi successive con rientro maggiore dell'istruzione loop verranno eseguite ripetutamente finché la condizione non è falsa.
Ogni ciclo ha un contatore interno, che inizia da zero e aumenta di uno ogni iterazione.
testo

### Movimento

* LwscratchTurnRight: Robot gira a destra
* LwscratchTurnLeft: Robot gira a sinistra

### Condizioni
#### Contatori

Un contatore deve essere inserito in un ciclo, al di fuori di un cilo il valore del contatore è zero.
* LwscratchCounterOdd: restituisce vero se il contatore è dispari
* LwscratchCounterEven: restituisce vero se il contatore è pari
* LwscratchCounterEqual: restituisce vero se il contatore raggiunge un dato valore
* LwscratchCounterLess: restituisce vero se il contatore è minore di un dato valore
* LwscratchCounterGreater: restituisce vero se il contatore è maggiore di una dato valore

#### Variabili

Ad una variabile va sempre assegnato un nome utilizzando la tab di inserimento in alto nelle scheda di programmazione
* LwscratchVariableOdd: restituisce vero se la variabile è dispari
* LwscratchVariableEven: restituisce vero se la variabile è pari
* LwscratchVariableEqual: restituisce vero se la variabile è uguale ad un valore dato
* LwscratchVariableLess: restituisce vero se la variabile è minore di un valore dato
* LwscratchVariableGreater: restituisce vero se la variabile è maggiore di un valore dato

#### Test

Con questo comando di test il robot controlla gli otto blocchi che lo circondano. Che partendo da sopra sono:
* LwscratchDetectUp.png: controlla il blocco sopra
* LwscratchDetectForwardUp.png: controlla il blocco davanti sopra
* LwscratchDetectForward.png: controlla il blocco davanti
* LwscratchDetectForwardDown.png: controlla il blocco davanti sotto
* LwscratchDetectdown.png: controlla il blocco sotto
* LwscratchDetectBackDown.png: controlla il blocco dietro sotto
* LwscratchDetectBack.png: controlla il blocco dietro
* LwscratchDetectBackUp.png: controlla il blocco dietro sopra
Il comando test può restituire vero o falso:
* Se un comando di test è seguito da un materiale il test restituisce vero se lo trova nella direzione indicata
* Se il comando è seguito da un testo o da una variabile il test restituisce vero se trova il testo o il valore della variabile nella direzione indicata
* Se dopo il comando non c'è nessuna indicazione il test restituirà vero se troverà un blocco di qualsiasi cosa nella direzione indicata
Testo
Testo
* LwscratchAnd: And messo tra due condizioni è vero se sono vere entrambe.
* LwscratchOr: Or messo tra due condizioni è vero se è vera una di esse o entrambe.
* LwscratchNot: Not inverte la condizione che lo segue, da vero a falso e viceversa.

### Operatori

Se seguito da un nome, assegna a questa variabile il nome del nodo nella direzione data. Se seguito da un numero, testo o variabile, assegna a questa variabile il valore nel seguente numero, testo o variabile. Se seguito da articolo di inventario, assegna il nome dell'articolo di inventario a questa variabile. Deve essere impostato con un nome nello slot in alto.
Se seguito da un nome, aggiunge il nome del nodo nella direzione data alla fine del valore corrente di questa variabile. Se seguito da un numero, testo o variabile. Se uno dei valori è testo, aggiunge il seguente valore alla fine del valore corrente di questa variabile. Altrimenti somma, come numeri, i due valori e assegna il risultato a questa variabile. Deve essere impostato con un nome nello slot in alto.
Seguito da un numero o da una variabile. Sottrae il seguente valore dal valore di questa variabile e assegna il risultato a questa variabile. Deve essere impostato con un nome nello slot in alto.
Seguito da un numero o da una variabile. Moltiplica il seguente valore con il valore di questa variabile e assegna il risultato a questa variabile. Deve essere impostato con un nome nello slot in alto.
Seguito da un numero o da una variabile. Divide il valore di questa variabile per il valore seguente e assegna il risultato a questa variabile. Deve essere impostato con un nome nello slot in alto.
La delimitazione dei blocchi (for loop e if) avviene tramite indentazione. Quando una riga successiva è rientrata allo stesso livello o meno, questo segna la fine del blocco.

## Collegamenti esterni

* Minetest - LwScratch costruire un gradino
* Minetest - Lwscratch review inglese
* ↑ Forum minetest lwscratch