Forum MUGENATION: Fumble, impatto perfetto, rasoiata. - Forum MUGENATION

Salta al contenuto

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

Fumble, impatto perfetto, rasoiata. Per aggiungere una nuova dimensione ai comandi.

#1 L   puffolotti 

  • Kohai
  • PuntoPunto
  • Gruppo: Membro
  • Messaggi: 267
  • Iscritto: 18-February 08

Inviato 17 February 2010 - 19:01

3 elementi che contraddistinguono alcune delle mosse di "Eclisse dei sentimenti" erano stati scartati nello sviluppo dei giochi di combattimento, qui vengono reintrodotti come chiavi per la vittoria.

Il concetto é che una mossa fa piú o meno male, a seconda di quanto é ampia o pesante, o entrambi, quello che si introduce é che se viene sferrata nel modo giusto fa piú male, se viene sferrata nel modo sbagliato fa meno male.

Si invita cosí il giocatore a valutare tempi, distanze ed esecuzioni con un criterio in piú, se vuole ottenere i vantaggi derivati da impatti perfetti o rasoiate.

Cominciamo parlando del fumble.

Il fumble é niente di piú e niente di meno che una mossa eseguita male.
Illustreró il concetto con un esempio che di certo é noto a tutti, il calcio rovesciato di Guile.

Per ottenere tale mossa il giocatore deve tener premuto "giú" per un secondo circa, poi mollare "giú" e premere "su" e quindi premere un pulsante di calcio.
Ora, decidiamo di inserire una versione fumble della mossa, in cui ad esempio inciampa e cade di schiena.
dovremo realizzare il paragrafo AIR adeguato, e nel file CMD e CNS inserire il fumble.
Nel file CMD dovremo inserire le condizioni di "fumble", ad esempio se si é tenuto premuto "Giú" per troppo poco tempo.

Il fumble in questo caso va sotto la mossa eseguita correttamente, nel file CMD, ma a seconda di come si differenzia dalla mossa corretta potrebbe andare sopra.

_________

Impatto perfetto

L´impatto perfetto si ottiene scomponendo l´animazione (e azione) nel file AIR in due animazioni (e azioni)distinte, nel momento dell´esplosione.

Nel caso di un pugno, (azione 220) diciamo che l´esplosione avviene al 4° frame, che é seguito da altri 3 frames, la persistenza di ogni frame nell´animazione é di 4 ticks.

Per inserire nel pugno l´impressione di impatto perfetto bisogna creare una seconda animazione che parte con l´esplosione del colpo, la chiameremo 221

Quando il colpo é definito bisogna inserire un changestate su movecontact

Quote

[state 220, impatto perfetto]
Type = changestate
Value = 221
trigger1 = MoveContact = 0
trigger1 = time = 16; Il momento dell´impatto imperfetto.


Quindi, se il colpo non connette nei primi due ticks dell´esplosione, lo stato passa all´animazione che parte con lo stesso colpo, ma fa piú danno, oppure fa cadere, oppure tiene l´avversario in stato di sofferenza incontrollata piú a lungo. Addirittura il ritorno potrebbe essere piú veloce.

In generale per certi colpi a mano aperta o a gamba tesa, l´impatto perfetto dovrebbe avere la scatola di collisione rossa leggermente piú estesa che l´impatto imperfetto.

Rasoiata

La rasoiata é come l´impatto perfetto, un colpo che a certe condizioni ha effetti differenti, solo che questi vengono definiti direttamente nel paragrafo Hitdef del file CNS.

Prendiamo ad esempio la spazzata di Kung Fu Man, é l´azione 440 nel file CNS di kung fu man, nella vostra distro di MUGEN.

Quote

[State 440, 3]
type = HitDef
trigger1 = Time = 0
attr = C, NA
damage = 72
hitflag = MAFD
guardflag = L
pausetime = 12,12
sparkno = 1
sparkxy = -5,-10
hitsound = 5,2
guardsound = 6,0
ground.type = Trip
ground.slidetime = 10
ground.hittime = 17
ground.velocity = -1.5,-2
air.velocity = -1.2,-3
guard.velocity = -5
fall = 1


Ho evidenziato il fall = 1 per fare un esempio semplice: vogliamo che la mossa faccia cadere l´avversario solo se la barra del power é sopra il valore arbitrario di 731. (ho scelto un numero bizzarro per far comprendere l´esempio, per quello che ne sapevo quando me lo sono inventato potrebbe persino essere un numero primo.

Dunque, vogliamo un dato che ci restituisca 1 se il furore é maggiore di 732 e 0 in caso contrario.

Per la proprietá dei valori booleani non ci interessa molto che valore sia il flag, se anche fosse "banana" o "scarpa" farebbe comunque al caso nostro.

quindi metteremo

fall = floor(power/732)

In questo modo la spazzata fará cadere l´avversario se il valore di power é maggiore di 731, non lo fará cadere se il valore di power é uguale o inferiore, ció in quanto il floor di un numero compreso fra 0 e 1 é 0
0

Condividi questa discussione:


Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

1 utenti stanno leggendo questa discussione
0 utenti, 1 ospiti, 0 utenti anonimi