Home News Rilasciata la beta 29 di Scratch Everywhere! ora con porting per PSP...

Rilasciata la beta 29 di Scratch Everywhere! ora con porting per PSP e miglioramenti alla fedeltà di esecuzione

64
0

Pubblicata una nuova versione beta di Scratch Everywhere!, il runtime in C++ che consente di eseguire progetti realizzati con Scratch 3 su console di sesta, settima e ottava generazione, tra cui Nintendo Wii U, Wii, 3DS, Switch, GameCube e PlayStation Vita.

La novità più rilevante vede l’arrivo del porting per PSP, che si aggiunge all’elenco delle piattaforme supportate. Per la versione Switch è stato integrato l’ultimo aggiornamento di libnx, garantendo piena compatibilità con il firmware 21.0.0.

Su 3DS è stato invece risolto un problema che impediva alla app di chiudersi correttamente quando veniva terminata dal menu principale.

Il runtime è stato aggiornato anche sul fronte estetico e funzionale: il menu principale ora presenta un aspetto più allegro e il font Arial è stato sostituito con Liberation Sans Narrow.

Introdotti inoltre miglioramenti significativi nella gestione dei blocchi per avvicinare ulteriormente Scratch Everywhere! al comportamento reale della versione ufficiale.

I blocchi ora vengono eseguiti rispettando l’ordine dei livelli degli sprite, le direzioni sono correttamente arrotondate e limitate, e alcune istruzioni come “Cambia variabile di x” funzionano adeguatamente anche quando vengono inserite lettere come input.

Sono state corrette numerose incongruenze, tra cui la gestione dei blocchi senza refresh dello schermo, il funzionamento del blocco “Scegli un numero a caso” con valori non decimali e la gestione di NaN come numero valido quando inserito nei blocchi.

Anche le operazioni booleane ora rispecchiano il comportamento originale di Scratch, così come i colori espressi in esadecimale con lettere maiuscole.

Infine, è stato risolto un raro bug legato agli input nulli e un comportamento anomalo del blocco “Invia e attendi” quando eseguito da un clone prossimo alla cancellazione.

Controlli

Mouse

  • 3DS: Scorrere il dito o lo stylus sullo schermo inferiore per muovere il mouse e toccare lo schermo inferiore per cliccare.
  • Wii U GamePad: Utilizzare il touchscreen del GamePad.
  • Wii Remote: Utilizzare la barra sensore Wii per controllare il mouse.
  • PS Vita: Utilizzare il touchscreen frontale.
  • Altri controller: Entrare in modalità Mouse tenendo premuto L. Utilizzare il D-pad per muovere il mouse e premere R per cliccare.

Funzionalità uniche

Modalità schermo 3DS

  • Qualsiasi progetto Scratch con risoluzione non modificata verrà mostrato solo sullo schermo superiore.
  • Utilizzando un client Scratch modificato come TurboWarp, è possibile accedere alle Impostazioni Avanzate del progetto e modificare la risoluzione:
    • 400x480 abilita entrambi gli schermi.
    • 320x240 abilita solo lo schermo inferiore.
    • 400x240 adatta perfettamente il progetto allo schermo superiore.
    • Nota: Assicurarsi di cliccare su Store Settings In Project su TurboWarp per applicare correttamente le impostazioni.

Modalità schermo Wii U

  • Attualmente i progetti vengono visualizzati allo stesso modo su TV e GamePad, senza possibilità di cambiare modalità schermo.

Audio

  • Un suono potrebbe richiedere tempo per caricarsi se riprodotto per la prima volta.
  • [Piattaforme non-3DS]: Se riprodurre un suono dallo Stage, il suono verrà riprodotto come Streamed Sound e non richiederà caricamento.
    • Solo un Streamed Sound può essere riprodotto alla volta, utile per musica di sottofondo.
    • [Wii, GameCube, Vita]: Lo Streamed Sound non è supportato; Tutti i suoni presenti nello Stage verranno caricati e riprodotti come suoni normali.
  • [Wii, GameCube]: I suoni possono non caricarsi se troppo lunghi o se ci sono troppi suoni caricati contemporaneamente.

Framerate

  • Utilizzando un client Scratch modificato come TurboWarp, è possibile abilitare l’opzione avanzata 60 FPS (Custom FPS) e cambiare il valore di FPS.

Blocchi implementati in modo diverso

  • Il blocco Username restituisce il nickname del 3DS o il nome Mii corrente su Wii U.
  • Il blocco Touching __? utilizza collisioni a scatola semplificate, il che può causare comportamenti errati.
  • Il blocco Stop 'All' riporta al menu del progetto.

Blocchi personalizzati speciali

Blocchi di collegamento tra progetti

  • open (____) .sb3
  • open (____) .sb3 with data (____)
  • received data (variable)

Questi blocchi permettono di suddividere un gioco grande in parti più piccole (es. gioco principale, shop o cutscene) e caricarle al bisogno. Tutti i percorsi sono relativi alla cartella scratch-everywhere, quindi le sottocartelle devono essere specificate (es. MyGame/main.sb3).

Questo aiuta a evitare problemi di memoria, mantiene i progetti modulari e facilita la gestione dei giochi grandi.

Progetto di riferimento: https://scratchbox.grady.link/project/twStEkSKjQaH

Nota: In futuro questa funzione potrebbe essere sostituita da un’estensione dedicata una volta disponibile il supporto alle estensioni.

Limitazioni

Essendo un progetto in stato molto preliminare, si incontreranno molti bug, crash e funzionalità non funzionanti.

Lista delle limitazioni conosciute

  • Testo e immagini bitmap incorporate non verranno mostrati su immagini vettoriali.
  • Le estensioni (es. Penna e Musica) non sono ancora supportate.
  • Alcuni blocchi possono causare crash o comportamenti indesiderati.
  • Prestazioni scarse con molti clone (~50+).
  • [Wii, Switch, Vita]: Variabili cloud non supportate (ma probabilmente lo saranno in futuro).
  • [Wii, Wii U, GameCube, Switch]: Solo il primo controller connesso funziona.
  • [Wii]: PAL richiede 50Hz.
  • [GameCube]: Variabili cloud non supportate.
  • [GameCube, NDS]: Memoria limitata, mantenere i progetti piccoli.
  • [NDS]: Modalità doppio schermo non supportata.
  • [3DS]: Prestazioni scarse con molti blocchi in esecuzione. Immagini grandi potrebbero non caricarsi.
  • [Vita]: Touch posteriore non supportato.

Blocchi non implementati:

  • Tutti i blocchi say e think (#393).
  • La maggior parte degli effetti dei costumi (solo Ghost e Brightness sono supportati).
  • Effetti audio Pitch e Pan left-right.
  • Quando il volume è > ___.
  • Tutti i blocchi Touching colore.
  • Loudness.

Installazione

Scratch Everywhere! è un software Homebrew e richiede una console hacked/modded. Ci sono due metodi per installare il runtime:

  1. Scaricare la release o la nightly build (facile).
  2. Compilare il file da soli (più complesso).

Nota: Le nightly build sono significativamente più instabili rispetto alle release e dovrebbero essere utilizzate solo se indicato in un bug report o se si conoscono esattamente le implicazioni dell’uso delle nightly.

Avvio su 3DS

Scaricare il file .cia o il file .3dsx nella scheda Releases o dalla nightly build.

Nota: Scratch Everywhere! per 3DS è disponibile anche su Universal Updater, quindi è possibile scaricarlo e mantenerlo aggiornato direttamente da lì.

.cia (App installabile)

  • Posizionare il file .cia nella cartella cias/ della scheda SD del 3DS.
  • Aprire l’applicazione FBI, navigare nella cartella cias/ e installare il file .cia.
  • Posizionare i progetti Scratch in 3ds/scratch-everywhere e aprire l’app Scratch Everywhere! dal menu Home.

.3dsx

  • Posizionare il file .3dsx nella cartella 3ds/ della scheda SD del 3DS.
  • Posizionare i progetti Scratch in 3ds/scratch-everywhere.
  • Aprire il Homebrew Launcher sul 3DS e avviare l’app.

Avvio su NDS

  • Scaricare il file .nds nella scheda Releases o dalla nightly build.
  • Posizionare il file nella scheda SD e i progetti Scratch in sd:/scratch-ds/.
  • Avviare l’app.

Avvio su Wii U

Scaricare il file scratch-wiiu.zip nella scheda Releases o dalla nightly build.

Nota: Scratch Everywhere! per Wii U è disponibile anche su Homebrew App Store, quindi è possibile scaricarlo e mantenerlo aggiornato da lì.

  • Scompattare il file nella cartella sdcard:/wiiu/apps/.
  • Posizionare i progetti Scratch in sdcard:/wiiu/scratch-wiiu/.
  • Aprire l’app dal Wii U Menu o dal Homebrew Launcher.

Avvio su Wii

Scaricare il file scratch-wii.zip nella scheda Releases o dalla nightly build.

Nota: Scratch Everywhere! per Wii è disponibile anche su Open Shop Channel, quindi è possibile scaricarlo e mantenerlo aggiornato da lì.

  • Scompattare il file e posizionare la cartella apps/ nella root della scheda SD.
  • Posizionare i progetti Scratch in sdcard:/apps/scratch-wii/.
  • Aprire l’app dal Homebrew Menu sulla Wii.

Avvio su GameCube

  • Scaricare il file scratch-gamecube.dol nella scheda Releases o dalla nightly build.
  • Posizionare i progetti Scratch nella cartella scratch-gamecube sul dispositivo di archiviazione.
  • Aprire l’app sulla GameCube.

Avvio su Nintendo Switch

  • Scaricare il file scratch-nx.nro nella scheda Releases o dalla nightly build.
  • Nota: Scratch Everywhere! per Nintendo Switch è disponibile anche su Homebrew App Store.
  • Posizionare i progetti Scratch in sdcard:/switch/scratch-nx/.
  • Aprire l’app sulla Nintendo Switch.

Avvio su PS Vita

Nota: Scratch Everywhere! per PS Vita è disponibile anche su VitaDB, quindi è possibile scaricarlo direttamente dalla Vita usando VitaDB Downloader. Tuttavia, la build su VitaDB potrebbe essere qualche versione indietro.

  • Scaricare il file scratch-vita.vpk dalla scheda Releases o dalla nightly build, trasferirlo sulla memoria della Vita e installarlo usando VitaShell.
  • Posizionare i progetti Scratch in ux0:data/scratch-vita/ (creare la cartella se non esiste).
  • Aprire e avviare l’app dalla LiveArea della Vita.

Avvio su PS4

  • Scaricare il file scratch-ps4.pkg dalla scheda Releases o dalla nightly build e installarlo usando il proprio HEN preferito (GoldHEN, Mira, ecc..).
  • Posizionare i progetti Scratch in /data/scratch-ps4/. Se la cartella non esiste, crearla.
  • Aprire l’app dalla XMB della PS4.

Changelog

Nuove funzionalità

  • Porting PSP.

Modifiche Switch

  • Aggiornata all’ultima versione di libnx, il che significa che Scratch Everywhere! ora è supportato sul firmware 21.0.0.

Modifiche 3DS

  • Corretto il problema dell’app che non si chiudeva quando veniva chiusa dal menu principale.

Modifiche Runtime

  • Il menu principale ha un’aria un po’ più festosa…
  • Modificato il font Arialn con il font Liberation Sans Narrow.

Modifiche di parità

  • Aggiunta l’esecuzione istantanea dei blocchi.
    • In Scratch, se sullo schermo non accade nulla, tutti i blocchi vengono eseguiti come se Run Without Screen Refresh fosse attivo. SE! ora gestisce questo comportamento.
  • Gli sprite ora eseguono correttamente i loro blocchi secondo l’ordine dei livelli.
  • I blocchi direction ora vengono correttamente limitati e arrotondati.
  • Il blocco Change Variable by x ora funziona correttamente anche quando si inseriscono lettere come input.
  • Corretti alcuni blocchi che non venivano eseguiti senza aggiornamento dello schermo quando invece avrebbero dovuto.
  • Il blocco Pick random ora funziona correttamente anche con numeri non decimali.
  • NaN ora viene gestito correttamente come numero quando viene inserito nei campi dei blocchi.
  • I valori booleani ora funzionano come in Scratch.
  • Le lettere maiuscole nei colori esadecimali ora funzionano correttamente.
  • SE! ora gestisce correttamente il raro bug di Scratch relativo all’input null.
  • Corretto il comportamento anomalo del blocco Broadcast and wait quando viene eseguito da un clone in fase di eliminazione.

Download: Scratch Everywhere! Beta Build 29 (3DSX) (CIA)

Download: Scratch Everywhere! Beta Build 29 (DS)

Download: Scratch Everywhere! Beta Build 29 (Gamecube)

Download: Scratch Everywhere! Beta Build 29 (Switch)

Download: Scratch Everywhere! Beta Build 29 (Vita)

Download: Scratch Everywhere! Beta Build 29 (PS4)

Download: Scratch Everywhere! Beta Build 29 (PSP)

Download: Scratch Everywhere! Beta Build 29 (Wii)

Download: Scratch Everywhere! Beta Build 29 (Wii U)

Download: Source code Scratch Everywhere! Beta Build 29

Download: Release attestation (json)

Fonte: github.com