Con l’intento di spingere ulteriormente il piede sull’acceleratore e mostrare a chi ancora non si è avvicinato ad HTML5 cosa è possibile fare con le nuove specifiche del linguaggio di markup nato – nella sua veste originaria – dalla mente del professor Tim Berners-Lee tra il 1989 ed il 1991, Mozilla ha da poco presentato un videogioco che può essere avviato ed utilizzato ricorrendo unicamente al browser web.
Battezzato “BrowserQuest” e sviluppato dai programmatori francesi di Little Workshop, il videogioco può essere fruito utilizzato un qualunque browser web in grado di supportare le nuove specifiche di HTML5 (in particolare, le WebSockets) e di eseguire codice JavaScript.
Omaggio ai titoli “classici” che hanno segnato la storia dei videogiochi, “BrowserQuest” è una sorta di gioco di ruolo multiplayer, un MMORG (Massive(ly) Multiplayer Online Role-Playing Game).
Massima compatibilità è assicurata per gli utenti di Firefox, Chrome ed Opera oltre che per i possessori di device iOS e del browser Firefox per la piattaforma Android.
Tralasciando le specificità del gioco firmato Mozilla, dal punto di vista tecnico il progetto vuole non soltanto dimostrare le potenzialità di HTML5 ma, soprattutto, mettere in luce che cosa è possibile fare usando WebSocket, tecnologia che consente di stabilire dei canali di comunicazione bidirezionali, full-duplex, utilizzando un singolo socket TCP. Le API WebSockets sono al momento in corso di standardizzazione da parte del W3C – l’associazione fondata da Tim Berners-Lee che ha come obiettivo primario quello di sviluppare e migliorare i linguaggi ed i protocolli utilizzabili sul web promuovendone la continua crescita – mentre sono già state approvate dall’IETF (Internet Engineering Task Force), ente di standardizzazione caratterizzato da una struttura “aperta” formata da specialisti, tecnici e ricercatori.
Non appena “BrowserQuest” viene avviato (questa la pagina che permette di accedere al videogioco), il browser provvede ad istanziare una connessione con uno dei server utilizzando proprio WebSockets. Ciascuno dei quattro server del gioco “ospita” differenti “mondi” ed è incaricato di sincronizzare i dati tra i vari giocatori di volta in volta collegati. Altri due server sono invece incaricati di trasmettere solamente gli elementi statici che caratterizzano “BrowserQuest“.
Chi volesse studiare il sorgente del gioco, potrà trovarlo pubblicato su Github, a questo indirizzo.