Il primo livello di Super Mario in Javascript
Martedì 22 Aprile 2008 - 09:08
di Riccardo Degni

Ho notato la notizia tramite un articolo apparso sul blog AjaxWeb2.0 e sono corso subito alle demo.
Il primissimo livello del primissimo Super Mario (che girava sul NES negli anni 90) realizzato in Javascript con soli 14kb (compresso con YUI Compressor)!
Da totale amante delle saghe dell’idraulico italiano e di Javascript non posso che fare i complimenti all’autore di tale script e riportarvi l’articolo ufficiale.
Un pò di dettagli tecnici:
- lo script non fa uso di immagini, ma solo di canvas (o div trasformabili per la compatibilità con IE);
- ogni sprite è codificato e salvato in stringhe customizzate; fa uso di una scala di soli 4 colori;
- il livello non è perfetto all 100%: non si spostano i mattoni se ci si salta addosso e non sono presenti i mushrooms (funghetti che donano power ups) e i koopa;
- le musiche sono codificate in base64 senza collegamenti esterni;
- le performance possono variare da browser a browser. Sono riscontrati problemi di velocità con le ultime versioni che utlizzano WebKit.
Ora le demo:
- Versioni regolari: senza musica - con musica
- Versioni doppie: senza musica - con musica
Qui invece trovate lo script nella versione integrale. Davvero impressionante.
Categoria: Scripting | Permalink
Commenti
1
Che dire, impressionante!
# - postato da Giovanni Battista Lenoci - 22 Aprile 2008 - 10:01
2
Il gioco di suo, o la sua implementazione, e’ pointless, come qualcuno ha gia’ detto altrove, ma la cosa interessante e’ l’insieme di tecniche utilizzate per embeddare il tutto, abilmente descritte in questo post di John Resig
3
Fantastico!!
segnalo, comunque, che il link della demo “regolare - senza musica” non è corretto.
4
Grande! Ecco cosa significa “avere in mano” il linguaggio.
5
troppo forte :)
però nei primi punti c’è il fungo che fa crescere mario e nella demo non c’è! :D
6
Cacchio questo sta fuori! Gurdate pure gli oggetti 3d in javascript negli altri post del suo blog!
# - postato da Nemesis Design - 22 Aprile 2008 - 10:52
7
@Paolo: grazie della segnalazione, corretto :)
@Frank: è vero, ma come ho detto nel punto 2 i mushrooms che danno a Mario i powerups non ci sono, cosi come altre sottili differenze: porva a saltare sotto i mattoni per esempio :)
# - postato da RiccardoDegni - 22 Aprile 2008 - 11:37
8
Davvero bello!
9
posso metterlo sul mio blog di myopera?
come?# - postato da AzeveL - 22 Aprile 2008 - 11:53
10
Semplicemente spettacolare… ma come fa a far leggere il suono?
11
@darkmavis: in pratica codifica in base64 un midi e lo racchiude in una stringa che poi viene elaborata.
Nel codice sorgente cerca l’array aSounds e la funzione che lo utilizza playMusic.
# - postato da RiccardoDegni - 22 Aprile 2008 - 12:26
12
Come salvava la musica l’avevo capito, non capivo come la eseguiva semplicemente :-)
Buono a sapersi, anche se dubito che difficilmente lo utilizzero eheheh
13
non riesco a passare il livello con il fuoco in super mario !!!! uffa qualcuno può aiutarmi ????
# - postato da VALERIA - 06 Maggio 2008 - 11:50







