Una demo giocabile porta su MSX2 l’atmosfera di Eye of the Beholder, adattando grafica VGA, introduzione, creazione di quattro personaggi e musica originale ai limiti della macchina. Il primo dungeon include esplorazione in prima persona, combattimento, chiavi, porte, pozioni e un’uscita, con 111 viste ricostruite nello SCREEN 5.

La demo è disponibile nel browser tramite WebMSX e il progetto, distribuito su GitHub, include codice sorgente, strumenti di conversione e ROM. L’implementazione è ancora in sviluppo: mappe originali, inventario, magie, salvataggi e regole più complete sono previsti tra i prossimi obiettivi.

Dopo Into the Eagle’s Nest, nel Retrobottega ho aperto un nuovo cantiere: portare su MSX2 l’atmosfera di Eye of the Beholder, partendo dalla grafica VGA della versione PC. Il risultato è una prima demo giocabile, con introduzione, creazione di quattro personaggi e musica originale adattata ai chip sonori MSX. Si può provare direttamente nel browser, senza installare nulla.

Gioca alla demo MSX2 in WebMSX

Il titolo di Eye of the Beholder nella demo MSX2

Dal castello al dungeon

Con Into the Eagle’s Nest avevo lavorato su un gioco d’azione visto dall’alto. Questa volta la sfida cambia: una visuale in prima persona, corridoi che devono mantenere la giusta prospettiva, porte, creature e un gruppo di avventurieri da gestire.

La domanda da cui sono partito era semplice: quanto di Eye of the Beholder possiamo far vivere su un MSX2?

Per cercare una risposta ho scelto di partire dalla grafica VGA originale. Volevo conservare il carattere delle pareti, dei ritratti e dell’interfaccia, adattandoli alle possibilità della macchina. Il progetto è sviluppato in C con Fusion-C, compilato con SDCC e organizzato per lavorare da Visual Studio Code, con l’aiuto di Codex durante lo sviluppo.

Dalla VGA ai sedici colori dello SCREEN 5

Uno dei passaggi più interessanti è stato recuperare le risorse grafiche PC e capire come ricostruire le diverse viste del dungeon.

Le pareti e il pavimento utilizzano dati e tasselli che devono essere interpretati e ricomposti. Da queste risorse ho ricostruito le immagini necessarie al livello dimostrativo, per poi convertirle nello SCREEN 5 dell’MSX2: 256 × 212 pixel e sedici colori scelti dalla palette della macchina.

Ridurre i colori richiede qualche attenzione. Una parete deve restare leggibile, il pavimento deve distinguersi dai muri e una porta deve emergere abbastanza da essere riconosciuta mentre ci si orienta nel labirinto. Il lavoro sulla palette serve proprio a conservare queste differenze.

La demo contiene 111 viste distinte del dungeon, ricostruite a partire da 1.575 tasselli originali. Le immagini vengono preparate e compresse durante la costruzione del progetto; quando si gioca, è lo Z80 a leggerle dalla cartridge e a trasferirle nella memoria video. Le copie del processore video completano la composizione con gli elementi presenti nella scena.

La ROM usa il mapper ASCII8 e occupa 2 MB. Un piccolo computer a 8 bit può così accedere, un banco alla volta, a una raccolta di immagini e dati più ampia del suo normale spazio di indirizzamento.

Prima di entrare: introduzione e creazione del gruppo

Il progetto è partito dal dungeon, ma mancava una parte importante dell’esperienza: prepararsi all’avventura.

Ho quindi aggiunto un’introduzione costruita su sei scene originali adattate all’MSX2, con dissolvenze, sottotitoli italiani e accompagnamento musicale. Si attraversano il logo, il titolo e le immagini che conducono verso le fogne di Waterdeep. È una ricostruzione con immagini fisse: le animazioni complete della versione PC restano un lavoro ulteriore.

Dal menu si può rivedere l’introduzione, scegliere un gruppo predefinito oppure creare quattro eroi.

La creazione offre 44 ritratti originali, nomi personalizzabili, sei razze e sei classi singole. Si possono scegliere sesso e allineamento e modificare le sei caratteristiche: forza, destrezza, costituzione, intelligenza, saggezza e carisma. È presente anche il comando per ritirare i valori, rispettando i limiti previsti dalla selezione di razza e classe.

Le scelte passano al gioco: nomi, ritratti e punti vita rimangono quelli del gruppo confermato. La classe e la costituzione partecipano al calcolo dei punti vita; la forza del combattente influisce sul danno. Le regole sono ancora parziali, ma la creazione del gruppo comincia già ad avere un effetto sull’esplorazione.

Il primo labirinto giocabile

Per verificare il funzionamento dell’insieme ho costruito una mappa dimostrativa originale di 12 × 12 caselle.

L’obiettivo è attraversare il labirinto, sconfiggere un kobold, raccogliere una chiave, aprire una porta e raggiungere l’uscita. Ci sono collisioni, attacchi, contrattacchi, due pozioni di cura e punti vita individuali. La mappa di debug aiuta a capire dove ci si trova; le schede del gruppo sono consultabili durante la partita.

Questo livello permette di provare un percorso completo, dall’ingresso alla vittoria. Il combattimento procede ancora a comandi e il nemico reagisce ai colpi: il sistema in tempo reale e le regole complete richiedono altro lavoro.

È quindi una base giocabile sulla quale continuare lo sviluppo. Le mappe originali, l’inventario, le magie, i salvataggi e una gestione più articolata dei mostri sono tra i passi successivi.

Ritrovare la musica originale

Anche il sonoro ha riservato una piccola scoperta. Durante l’esplorazione della versione PC originale si ascoltavano soprattutto gli effetti, mentre la musica accompagnava momenti come introduzione, creazione dei personaggi e finale.

Per questa demo ho recuperato le tracce originali di Paul Mudra e le ho adattate alle possibilità sonore dell’MSX. I temi dell’introduzione accompagnano le scene iniziali; Character Generation viene usato nei menu e, per scelta di questa conversione, anche durante il dungeon. Alla vittoria parte il tema finale.

Il PSG di base offre una riduzione a tre voci, così la musica resta disponibile anche senza espansioni. L’SCC porta l’adattamento a cinque voci, mentre FM-PAC e MSX-MUSIC utilizzano nove voci con strumenti sostitutivi. Il backend OPL4 usa la sezione FM per riprodurre gli eventi AdLib originali, con temporizzazione adattata a 50 Hz.

Le diverse versioni hanno quindi rese differenti. L’OPL4 FM è disponibile nelle prove con openMSX; sul sito WebMSX 6.0.8 permette di scegliere PSG, SCC e FM-PAC, perché il suo supporto OPL4 riguarda la sezione Wave e non quella FM utilizzata dalla ROM.

Gli effetti di passi, urti, combattimento e oggetti sono invece nuove sintesi PSG, collegate alle azioni del gioco.

Provarlo e leggere il codice

La demo è disponibile online attraverso WebMSX. Basta aprire il sito, scegliere il suono e premere Gioca ora. Serve una tastiera; un clic sullo schermo assegna il controllo al gioco.

I comandi principali sono:

  • W / S: avanti e indietro.
  • Q / E: rotazione; A / D: passo laterale.
  • Spazio: attacco.
  • F: apertura della porta; H: pozione di cura.
  • M: mappa; P: schede del gruppo.
  • R: ricomincia il dungeon; F2: torna all’introduzione.

Nell’introduzione, Spazio consente di passare subito al menu. Nel sito e nel README sono riportati anche i comandi per creare i personaggi e gestire l’audio.

Il progetto è pubblicato su GitHub con sorgenti, convertitori, ROM pronta, schermate e anteprime sonore. Il codice è distribuito sotto GPL-3.0-or-later; grafica e musica originali conservano i diritti dei rispettivi titolari, come indicato nei crediti del repository.

Le verifiche automatiche in openMSX hanno superato 24 controlli di gioco, 29 su introduzione e creazione dei personaggi e 36 sull’audio: 89 controlli complessivi. Sono prove in emulazione; la verifica su un MSX2 fisico resta da fare.

Gioca online · Esplora il progetto su GitHub

Nel Retrobottega questo cantiere prosegue da qui: una porta che si apre, quattro ritratti nell’interfaccia e un corridoio che invita a fare ancora un passo. La prossima sfida sarà dare più vita a ciò che si trova oltre quella porta.

Dal Retrobottega, alla prossima avventura.


Andrea Di Dio

Sono un Ingegnere e Project Manager certificato PMP®, lavoro come consulente con oltre 20 anni di esperienza. Sono stato ingaggiato presso Cantieri di grandi opere, industrie del settore Energia, Automotive, Logistica ed Istituzioni Finanziarie, sia pmi che multinazionali come responsabile di Servizi e Progetti (manager) sono esperto nel controllo di gestione di progetti nei settori delle Costruzioni, Telecom, Assicurativo e nel Digital