Visualizzazione post con etichetta engine. Mostra tutti i post
Visualizzazione post con etichetta engine. Mostra tutti i post

stelle e rialzo differenziale

Due sono le particolarità degli atterramenti in IK+:
  1. più botte si sono incassate e più si rimane a terra (rialzo differenziale). C'è un solo altro gioco in cui mi ricordo di aver visto qualcosa del genere... Hokuto No Ken: sensei no michi, realizzato anch'esso col MUGEN.
  2. quando il personaggio è "privo di sensi" sono presenti delle stelline... quando queste scompaiono questi rimane a terra sino a che il giocatore non impartisce il comando di rialzo (l'UP). Questo incrementa la gestione tattica dei match, riducendo il rischio che gli avversari si appostino come avvoltoi pronti ad approffittare dei tempi morti del rialzo.
Entrambe queste particolarità sono state implementate in IKK+.

colpo allo stomaco

Due diverse modalità di atterramento non bastavano per Archer McLean, così pensò di inserirne anche un terzo tipo... quello derivante dal pugno allo stomaco...

Poteva mancare in IKK+? No, e infatti ora c'è, anche se mi ha fatto un po' penare...

score e scorebubbles

Aspettare che venga implementato dalla Elecbyte un sistema di gestione dei punteggi potrebbe significare aspettare mesi e mesi, perciò ho deciso di crearne uno io. Al momento viene visualizzato solo per il giocatore umano (in IK+ era presente e funzionante sia per il giocatore che per i char controllatti dalla CPU).


In caso di vittoria del match si riceve il time bonus, che fa incrementare progressivamente lo score.

Inseriti (per tutti i char) gli scorebubbles, indicanti il valore di ciascun colpo effettivamente andato a segno e che vorrebbero spronare il giocatore ad utilizzare le mosse più remunerative (in termini di punteggio), anche se più difficili da utilizzare.

tempi e livelli

La struttura del classico videogioco anni '80 è una sequenza infinita di schermi a difficoltà crescente: l'unico sistema di riproporre questo schema di gioco del MUGEN è usare la modalità Survival.

Il problema sta nel fatto che il MUGEN non permette di utilizzare il timer in detta modalità di gioco... pertanto ho provveduto a crearmene uno, facendo anche in modo che nel momento in cui rimanessero meno di 10 secondi il colore delle cifre cambiasse da azzurro a bianco e rosso alternati.

Realizzato anche l'indicatore del livello, pari pari all'originale presente in IK+.

venerabile maestro

Implementato il venerabile maestro... a differenza che nel gioco originale però non comparirà dal nulla a mo' di ninja a fine degli incontri (o all'inizio dei bonus stage), ma assisterà per tutta la durata dei match.

Sto anche pensando di realizzare qualche frase originale e spiritosa da sparare in caso di game over.

perdere... e vincere perdendo

Nel picchiaduro classico si vince quando l'avversario arriva a zero punti vita, oppure quando il proprio compagno di team riesce nella stessa impresa, anche nel caso a zero punti vita si trovi il giocatore. Semplice.

Provate a spiegare al MUGEN che in IK+ si vince quando si raggiungono 3 punti (6 pallini), ma non si deve arrivare al game over a meno che il proprio punteggio non sia il più basso in assoluto tra i contendenti e che non sia pari a quello di nessun altro? Aggiungete anche che lo score del vostro partner (eventuale) non deve avere niente a che fare col vostro, e che anzi esiste il caso concreto che sia la concausa della vostra eliminazione...

Cercate di fare capire tutto questo ad un engine che è estremamente monolitico in quando a condizioni di vittoria e sconfitta...

In ogni caso, con un po' di fatica, sono riuscito nell'impresa, realizzando anche i contatori di punteggio, molto simili agli originali.

Ovviamente possono essere 2, 3 o 4 a seconda del numero di giocatori. La barra superiore per ora svolge funzioni di debug, ma in futuro verrà utilizzata per... vabbè lo vedremo un'altra volta. Il nome del char (assolutamente provvisorio) occupa per adesso il posto dell'indicatore numerico dello score... Elecbyte dovrebbe implementare l'apposita funzione nelle prossime versioni dell'engine, vedremo.

bianco, rosso, blu... e verde ?!?

I contendenti in IK+ indossavano una divisa bianca (player 1), rossa (player 2/CPU) o blu (CPU).

Il MUGEN tenderebbe ad assegnare a caso, tra le palette disponibili, i colori degli avversari, mentre quello dei giocatori umani viene deciso da loro stessi, al momento della selezione... questo in linea di massima non va bene, perchè il maestro non avrebbe modo di declarare le frasette ed inoltre gli indicatori di punteggio sarebbero oltremodo confusionari ("sto vincendo.... no aspetta la CPU è il rosso... ma come è possibile se sono io quello vestito di rosso?...")

Per ovviare a questo problema ho fatto in modo che i colori dei player 1,2,4 siano quelli classici e comunque fissi, mentre l'eventuale player 3 sia di verde vestito (colore provvisorio). Ciò non impedisce in futuro di rendere disponibili mise alternative, che tuttavia non stravolgano lo schema dei colori "base".

...e alle spalle

Implementata la funzione che rende possibile l'atterramento differenziato (e il conseguente rialzo) a seconda che il char incassi frontalmente o posteriormente un colpo.

attraversamenti e glitch

In IK+ i combattenti seguivano un "modello" fisico ben diverso dai picchiaduro dell'era moderna: anzichè spingersi una volta giunti a contatto si oltrepassavano tranquillamente, inoltre il turn non era automatico.

Il MUGEN, anche se lo permette, non gradisce che due sprites si attraversino e genera, in alcuni casi, dei glitch grafici... ho quindi programmato una soluzione che permetta di aggirare il problema anche se i contendenti su schermo fossero 4.

Implementato anche il turn manuale, sia da stand che da crounch (più lento del primo e non presente nel gioco originale).

si parte

Oggi iniziano i lavori... ho optato per il MUGEN, un engine datato ma il cui sviluppo sembrerebbe essere stato recentemente ripreso, e su cui ho una qualche esperienza. Allo stato attuale soffre di bug, poca efficienza e restrizioni non da poco, tuttavia...

Mi sono procurato il materiale che dovrebbe costituire la base di partenza del gioco: sprites, sfx, grafica aggiuntiva e sfondo, tutto roba proveniente dalla versione AMIGA e che deve essere convertita e adattata ovviamente.