Salve a tutti,
visto che Moonstone per ora si è arenato causa mancanza di grafico serio, ho pensato di iniziare un altro progetto che avesse come particolarità che la grafica potesse essere disegnata dal sottoscritto. Non è che sia generalmente d'accordo con questo proverbio, ma in questo caso mi sa che chi fa da sè fa per tre... voi che ne dite?
Ad ogni modo, il gioco che ho scelto è Pushover, un altro gioco realizzato per Amiga e Pc, nel 1992. E' un puzzle game molto simpatico che per me sarà molto utile per impratichirmi con alcuni principi che ancora non padroneggio come si deve.
Dunque, nel mio sito troverete quello che ho fatto in queste 4 settimane.
Lo sfondo è naturalmente fatto con caratteri ridefiniti. Ogni "mondo" del gioco è costituito da 10 livelli che utilizzano lo stesso set di caratteri, anche se ogni livello è diverso dall'altro.
Ho disegnato lo sprite principale curando che fosse davvero simile a quello dell'Amiga, ho usato quindi lo sprite overlay.
Mancano soltanto alcune animazioni secondarie, come ad esempio quando si sporge troppo dal parapetto. Per il resto c'è tutto: movimento a destra a sinistra (6 frames per ogni direzione), in basso e in alto (in tutto altri 6 frames). Inoltre è attiva l'animazione "attesa": ovvero se non si muove il personaggio, inizia a battere i piedi e dopo un po' sbadiglia.
Il personaggio si controlla col joystick in porta 2.
Lo scopo del gioco è quello di creare una reazione a catena che, con un solo "push", faccia cadere tutti i mattoncini che si trovano sullo schermo. L'ultimo pezzo deve essere quello con le tre righe rosse.
I mattoncini rappresentano il principale problema informatico. Dovendo essere per forza costituiti di sprites bisogna fare che uno sprite contenga 2 mattoncini.
Questo crea parecchi problemi nell'animazione della caduta dei pezzi. La caduta di un pezzo infatti "allarga" di parecchio la posizione dei pezzi e, in pratica, è difficile fare la caduta senza utilizzare sprites addizionali. Ho risolto per fortuna, ed ora la caduta avviene tranquillamente usando 6 sprites ( perchè gli altri 2 sono utilizzati dal personaggio principale).
La tecnica che ho usato prevede che ogni pezzo che cade a terra venga rimpiazzato da un carattere, e che la posizione degli sprites venga aggiornata ogni volta. Questo richiede che quando il numero di pezzi che cade è dispari, si debba ricorrere ad un piccolo escamotage: lo sprite multicolor del personaggio diventa per un piccolo periodo uno sprite che contiene anche un mattoncino.
In conclusione, questo demino permette di vedere come è realizzata la caduta fino ad adesso. E' in funzione il multiplexor che servirà ( ecco perchè ci sono quei pezzi fuori posto un po' più su) e la caduta è attiva. Quello che non si può fare ancora è spostare i pezzi... quello sarà alla prossima preview.
Il limite grosso del fatto di usare gli sprites per i mattoni è che non si possono avere più di 12 mattoncini per ogni linea. Questo determina che alcuni livelli del gioco originale non potrebbero essere realizzati. Stavo parlando con Ian della questione e sperimenterò qualche via nuova per cercare di risolvere il problema.
Fatemi sapere questo "assaggino" come vi sembra:
Pushover Preview 1