Forum MUGENATION: Ultimate mugen tutorial - Forum MUGENATION

Salta al contenuto

  • 9 Pagine +
  • « Primo
  • 2
  • 3
  • 4
  • 5
  • 6
  • Ultimo »
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

Ultimate mugen tutorial speriamo funzioni

Discussione: Cosa ne pensi di quello che e stato ottenuto fino adesso

Cosa ne pensi di quello che e stato ottenuto fino adesso

Non puoi visualizzare i risultati del sondaggio prima di aver votato. Per favore fai il login ed invia il tuo voto.
Voto I visitatori non possono votare

#61 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 14 February 2008 - 22:31

Vabè mica è un problema.. tanto non ha speranze, è solo un insulso Stickman :rotfl:
0

#62 L   Ciampa 

  • Il Cazzaro Razionale
  • PuntoPuntoPunto
  • Gruppo: Membro
  • Messaggi: 801
  • Iscritto: 12-October 07

Inviato 14 February 2008 - 22:55

Grazie Verza, hai sottolineato l'ingiustificata meritocrazia per quanto riguarda Stickman! Bannatelo dalle discussione serie!
0

#63 L   Stickman 

  • Stickman fancazzista
  • PuntoPuntoPunto
  • Gruppo: Membro
  • Messaggi: 896
  • Iscritto: 10-October 07

Inviato 15 February 2008 - 08:52

Visualizza MessaggiMenjoso, su Feb 14 2008, 22:31, detto:

Vabè mica è un problema.. tanto non ha speranze, è solo un insulso Stickman :rotfl:

Per farti tutti questi problemi vuol dire ke qualke speranza ce l'ho :rolleyes:
INSULSO A CHI?! >:(
E POI VABBE' SI SCRIVE CON 2 B!

Visualizza MessaggiCiampa, su Feb 14 2008, 22:55, detto:

Grazie Verza, hai sottolineato l'ingiustificata meritocrazia per quanto riguarda Stickman! Bannatelo dalle discussione serie!

E parli tu ke in off topic posti più di me ?! haha niubbone..
0

#64 L   Ciampa 

  • Il Cazzaro Razionale
  • PuntoPuntoPunto
  • Gruppo: Membro
  • Messaggi: 801
  • Iscritto: 12-October 07

Inviato 15 February 2008 - 10:42

Infatti io sono un uomo da Off Topic come te!!
0

#65 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 15 February 2008 - 12:14

Quote

E POI VABBE' SI SCRIVE CON 2 B!

No, se uno dice vabbè, scrive con 2.. se no lo scrivo con una :zzz:
0

#66 L   Stickman 

  • Stickman fancazzista
  • PuntoPuntoPunto
  • Gruppo: Membro
  • Messaggi: 896
  • Iscritto: 10-October 07

Inviato 15 February 2008 - 17:44

SOVRANI DEL CAZZEGGIO!
:rulez: :rulez: :rulez: (uno l'uno)
0

#67 L   Ciampa 

  • Il Cazzaro Razionale
  • PuntoPuntoPunto
  • Gruppo: Membro
  • Messaggi: 801
  • Iscritto: 12-October 07

Inviato 15 February 2008 - 22:26

Guardate il mio avatar e piangete!
0

#68 L   Stickman 

  • Stickman fancazzista
  • PuntoPuntoPunto
  • Gruppo: Membro
  • Messaggi: 896
  • Iscritto: 10-October 07

Inviato 15 February 2008 - 22:58

Visualizza MessaggiCiampa, su Feb 15 2008, 22:26, detto:

Guardate il mio avatar e piangete!

Cosa vuoi dire io vedo sempre lo stesso O_o
0

#69 L   Ciampa 

  • Il Cazzaro Razionale
  • PuntoPuntoPunto
  • Gruppo: Membro
  • Messaggi: 801
  • Iscritto: 12-October 07

Inviato 16 February 2008 - 16:13

ORA!
0

#70 L   Stickman 

  • Stickman fancazzista
  • PuntoPuntoPunto
  • Gruppo: Membro
  • Messaggi: 896
  • Iscritto: 10-October 07

Inviato 16 February 2008 - 21:24

Visualizza MessaggiCiampa, su Feb 16 2008, 16:13, detto:

ORA!

STUPENDO!!!
0

#71 L   unknown 

  • Kohai
  • PuntoPunto
  • Gruppo: Membro
  • Messaggi: 146
  • Iscritto: 03-February 08

Inviato 17 February 2008 - 14:16

ho aggiornato,scusate il ritardo ma ho avuto da fare(non è vero,sono il sovrano del cazzeggio :rotfl: )
0

#72 L   Verza 

  • Guerriero Nero
  • Gruppo: Moderatore
  • Messaggi: 1547
  • Iscritto: 20-January 08

Inviato 17 February 2008 - 20:38

:azz: il Menjo è in vantaggio di brutto!
0

#73 L   unknown 

  • Kohai
  • PuntoPunto
  • Gruppo: Membro
  • Messaggi: 146
  • Iscritto: 03-February 08

Inviato 17 February 2008 - 20:40

beh voi altri rispondete poco ^_^
0

#74 L   Verza 

  • Guerriero Nero
  • Gruppo: Moderatore
  • Messaggi: 1547
  • Iscritto: 20-January 08

Inviato 17 February 2008 - 20:50

Ma è colpa mia se il Menjo sa tutto???
La colpa è sua che risponde troppo e non lascia spazio agli altri :rotfl: :rotfl: :rotfl: :rotfl:
0

#75 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 17 February 2008 - 21:41

Quote

1.spiega il file cns
2.spiega il file cmd
3.spiega come programmare le basi di una char (standing,walk,run,jump)
rispondete a queste poi arriva un altro pacco di domande.


Uffa devo proprio farlo? Stavo scrivendo un tutorial sul Cns.. non mi resta che postarlo :azz:

Quote

>>> Tutorial sul Cns, by Menjoso <<<

Introduzione: Prima di fare pratica con il Cns è consigliabile diventare "esperti" in tutti gli altri file, o avrete grandissime difficoltà. Questo tutorial tratterà del codice Cns, e non degli altri file (che dovreste sapere gia, prima di affrontare questo). Fare esperienza con gli altri file non serve ad altro che ambientarsi e capire come ragiona il Mugen, senza quelle basi avrete meno possibilità di imparare qualcosa da questo tutorial. Detto questo..


1) Esaminiamo un codice

Ogni codice di una mossa è formato da uno statedef, che si mette all'inizio. Questo sta a specificare di che tipo di mossa si tratta. Ad esempio:

[Statedef 200]
Type = S
Movetype = A
Physics = S
Anim = 200
Velset = 3,0
Poweradd = 15
Ctrl = 0

Gli statedef sono obbligatori, in ogni codice, Intro comprese.

Type -> Specifica la posizione del char quando esegue la mossa. In questo caso, la lettera S, significa che il char eseguirà la mossa quando è in Standing. Ce ne sono diversi tipi. Esiste A, che significa che la mossa verrà eseguita in aria. Poi c'è C, che significa che la mossa verrà eseguita quando sei abbassato..

Movetype -> Specifica l'azione della mossa. A significa che il char deve colpire (A = Attack). Ce ne sono anche qui diversi tipi.. Esiste ad esempio S, che significa che il char sta fermo (poco usato). Poi H, che significa che la mossa viene eseguita quando il char viene colpito. In poche parole, se volete programmare un attacco, usate A.

Physics -> Questo di solito è uguale al Type. Quindi se avete uno statedef di Type S, mettete S anche qui.

Anim -> Questa è l'animazione del char. Ad esempio, 200 per me è l'animazione del pugno.

Velset -> Indica lo spostamento del char mentre esegue l'azione. Ad esempio, 3,0, significa che mentre il char esegue quella mossa si sposta di 3. Il primo numero indica lo spostamento laterale, il secondo verticale. Nota, che se usi ad esempio un simbolo "meno" (-) davanti al numero, puoi spostare il char in direzioni diverse.

Poweradd -> Questo indica la quantità di Power che il char guadagna quando esegue la mossa. Nel mio caso, 15, sta a significare che durante il pugno, il mio char guadagna 15 di Power (barre di energia).

Ctrl -> Stabilisce se il giocatore ha il controllo del char o meno. E' molto importante mettere 0 durante una mossa, oppure avrete il controllo durante l'esecuzione di essa.

Dopo lo statedef, vengono gli State Controls, ovvero tutti i codici della mossa (vedi tutorial della cartella docs "Sctrl"). Nota: in ogni mossa ci deve essere almeno uno State Control, oppure il Mugen da errore.

Ad esempio, possiamo esaminare un Hitdef, che permette il contatto tra i box rossi del nostro char, e quelli blu dell'avversario:

[State 200, hit]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
hitflag = MAF
guardflag = MA
animtype = Light
air.animtype = Light
priority = 3,Hit
damage = 25
pausetime = 7,7
sparkno = S6021
sparkxy = -30,-80
hitsound = S10,2
guardsound = S3,0
ground.type = High
air.type = High
ground.slidetime = 10
guard.slidetime = 10
ground.hittime = 10
guard.hittime = 10
air.hittime = 10
ground.velocity = -1,0
air.velocity = -1,-0

Type -> Indica il tipo di State Control. In questo caso, un Hitdef.

Trigger1 -> I trigger sono importantissimi. Dall'inglese "grilletto", indicano la condizione per l'attivazione dello State Control. In questo caso, Trigger1 = Animelem = 3, significa che l'Hitdef si attiverà durante il 3° frame dell'animazione. Ce ne sono diversi (per gli Hitdef è piu comodo usare gli Animelem). Ad esempio, Trigger1 = Time = 120, significherebbe che si attiva dopo 120 tics. Poi ci sono i Triggerall, che sarebbero i "capo Trigger". Cioè, se in un codice troviamo un Trigger1 e un Triggerall, il Trigger1 si attiva SOLO se è attivato anche il Triggerall, il piu importante. Ad esempio:

[State 200, Changestate]
Type = Changestate
Value = 1200
Trigger1 = Command = "x"
Triggerall = Power >= 2000

In pratica.. il Trigger1 dice che questo codice si attiva se premi "x". il Triggerall dice che tutto questo, SOLO se hai Power maggiore o uguale a 2000. Altrimenti, anche premendo "x", la mossa non funziona.

Torniamo all'Hitdef. Tutti gli altri parametri potete trovarli nei Docs. Non è molto importante perchè solitamente gli Hitdef dei pugni sono piu o meno tutti uguali. Però ci sono comandi come damage (vedi nel mio Hitdef), che permettono di modificare il danno del colpo. Poi c'è Sparkno = S6021, che sarebbe l'animazione di impatto. Ad esempio potreste mettere il sangue, così quando il pugno colpisce da quell'effetto..


Alla fine di una mossa, solitamente c'è uno State Control chiamato Changestate, che serve per far si che il char torni in posizione di Stand, dopo aver eseguito la mossa.

Esempio:

[State 200, Changestate]
Type = Changestate
value = 0
Ctrl = 1
Trigger1 = Animtime = 0

Type -> Gia spiegato, serve per specificare lo State Control

Value -> Indica la posizione in cui deve tornare il char. Il numero 0 (animazione 0), è la stand.

Ctrl -> Indica se il giocatore deve avere il controllo del char o meno. Quando si usa un Changestate che porta alla Stand, è importantissimo mettere Ctrl = 1, altrimenti una volta in Stand, non potremmo piu muoverci.

Trigger1 -> Gia spiegato. Animtime = 0 significa che questo changestate si attiva appena finisce l'animazione. Avremmo potuto usare anche un Trigger1 = Time o altro.


2) Esempio di codice

Facciamo un esempio di codice semplice, il pugno del mio magnifico Cell:

[Statedef 200];Light Punch
Type = S
Movetype = A
Physics = S
Ctrl = 0
Anim = 200
Velset = 3,0
Poweradd = 15

[State 200, hit]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
hitflag = MAF
guardflag = MA
animtype = Light
air.animtype = Light
priority = 3,Hit
damage = 25
pausetime = 7,7
sparkno = S6021
sparkxy = -30,-80
hitsound = S10,2
guardsound = S3,0
ground.type = High
air.type = High
ground.slidetime = 10
guard.slidetime = 10
ground.hittime = 10
guard.hittime = 10
air.hittime = 10
ground.velocity = -1,0
air.velocity = -1,-0

[State 200, 2]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1

Questa è una mossa semplicissima, con quello che ho spiegato credo che siate in grado di farla ora. E' consigliabile esercitarsi con quello fin'ora spiegato prima di andare avanti con il tutorial. Ovviamente dovete anche scrivere per bene il comando nel Cmd usando il Changestate. Ma non serve un tutorial per spiegarlo, guardate da Kfm =P


3) Aggiungere un suono?

Per i suoni, molto semplici da inserire, esiste uno State Control chiamato PlaySnd. Facciamo un esempio:

[State 200, PunchSound]
Type = PlaySnd
Value = 200,1
Trigger1 = Animelem = 2

Type -> Non lo ripeto piu =P

Value -> Qui dovete mettere gruppo e numero del suono che volete. Nel file Snd quando mettete il vostro suono, dovete specificare gruppo e numero. Semplice, basta riportarlo qui.

Trigger1 -> Si attiva durante il secondo frame

Un codice potrebbe essere ad esempio questo. Un pugno con un suono in piu:

[Statedef 200];Light Punch
Type = S
Movetype = A
Physics = S
Ctrl = 0
Anim = 200
Velset = 3,0
Poweradd = 15

[State 200, 1]
Trigger1 = Time = 0
Type = PlaySnd
Value = 400,3

[State 200, hit]
type = HitDef
trigger1 = AnimElem = 3
attr = S, NA
hitflag = MAF
guardflag = MA
animtype = Light
air.animtype = Light
priority = 3,Hit
damage = 25
pausetime = 7,7
sparkno = S6021
sparkxy = -30,-80
hitsound = S10,2
guardsound = S3,0
ground.type = High
air.type = High
ground.slidetime = 10
guard.slidetime = 10
ground.hittime = 10
guard.hittime = 10
air.hittime = 10
ground.velocity = -1,0
air.velocity = -1,-0

[State 200, 2]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1


Questo è uno dei codici piu semplici, ora andiamo avanti..


4) Aggiungere un effetto grafico?

Per gli effetti dello scenario si usano gli Explod. L'Explod è un effetto grafico, esso non puo produrre danno o nient'altro. Mettiamo caso di un aura attorno al personaggio:

[State 1200, Aura]
Type = Explod
Trigger1 = Animelem = 1
Scale = 1,1
Anim = 334
Id = 334
Pos = 0,0
Removetime = 150
Sprpriority = 5

Anim -> Questo indica il numero dell'animazione dell'effetto. Ad esempio, il mio 334, è l'aura (vedi file Air).

Pos -> Indica la posizione dell'Explod. Potete cambiarla a seconda delle esigenze.

Removetime -> Tempo di rimozione. Nel mio caso, si rimuove dopo 150 tics. Nota: Avreste potuto usare un -1 per far si che non si cancelli piu.

Sprpriority -> Priorità dell'Explod. Piu è alta, piu l'explod coprirà. 5 significa che l'explod sta sopra il pg. Fate un po di prove..

Scale -> Indica la grandezza

Id -> Questo è a piacimento. Serve solo come numero di identificazione/riconoscimento. Non è obbligatorio.

Per rimuovere gli Explod, è possibile usare uno State Control chiamato RemoveExplod. I RemoveExplod si mettono nello Statedef -2 del char, altrimenti non hanno effetto. Facciamo un esempio:

[State -2, RemoveAura]
Type = RemoveExplod
Trigger1 = Stateno != 1200
Id = 334

Trigger1 -> Questo è particolare. Significa che questo RemoveExplod si attiva quando il char non è in state 1200. Ma potete usare quello che volete.

Id -> Indica l'Id dell'Explod che vuoi rimuovere, vedi il codice dell'Explod sopra.


Poi ci sono le onde di energia, dette Projectiles. Penso che non sia un problema esaminare altri char =P



Cmd?

Il Cmd racchiude tutti i comandi del char. I comandi possono essere scritti così in lettere, che hanno precisamente questo significato:

D = Down/Giu
U = Up/Su
B = Back/Indietro
F = Foward/Avanti

Poi ci sono i tasti da premere:

a, b, c, x, y, z

Infine c'è il tasto s = Start


Programmiamo una mossa nel Cmd? Allora, per prima cosa si inserisce il comando e la combinazione di tasti in alto, insieme a tutti i comandi. Si scrive una cosa tipo:

[Command]
Name = "Energy" (questo è come un Id)
Command = D,DF,F,x
Time = 30 (Il tempo entro il quale devi premere)

Fatto questo, passiamo alla parte nello statedef -1. Cos'è sto statedef -1? E' liddove si mettono i changestate (esaminati prima, nel tutorial) che fanno riferimento al Cns e la mossa.

Proviamo un codice di esempio. Andate nello statedef -1 (in fondo al Cmd) e inserite una cosa simile:

[State -1, Energy]
Type = Changestate
Value = 700
Trigger1 = Ctrl
Trigger1 = Command = "Energy"
Triggerall = Statetype = S
Triggerall = Power >= 100

Abbiamo gia studiato il Cns e a questo punto dovreste gia saper fare i changestate, ma lo spiego di nuovo:

Il value è semplicemente il numero di statedef della mossa.

Trigger1 = Ctrl significa che la mossa puo essere eseguita solo quando si ha il controllo del char. E' importantissimo, perchè se lo mancate va a finire che la mossa diventa eseguibile anche mentre ne fai un altra, insomma.. un casino.

Triggerall = Power >= 100 significa che la mossa è eseguibile solo se hai power maggiore di 100.

Triggerall = Statetype = S significa che la mossa la puoi eseguire solo da Stand.

Trigger1 = Command = "Energy" significa che la mossa parte quando premi la combinazione di quel comando.

Ricordate che il Cmd è Case Sensitive, ovvero bisogna stare attenti a maiuscole o minuscole, se no fa degli errori, specie con i nomi dei comandi.



Programmiamo la base?

Le cose come Walk, Jump, e tutte le mosse base del char, sono gia programmate nel Common1.cns, rintracciabile nella cartella data del Mugen. Ora, non c'è bisogno di programmarle, non dovete fare altro che inserire l'animazione nell'Air con il numero giusto. Per vedere il numero giusto basta sbirciare nel Common. Facciamo un esempio:

Vogliamo mettere una stand? La stand è gruppo 0 nel common, quindi creiamo l'animazione di gruppo 0, e la mettiamo nell'Air.

Stesse cose per il Jump e roba del genere, e ad ogni modo la cartella docs è piena di esempi e di immagini in quanto. Leggete lì =P


Raga, programmare non è da tutti. Se non siete svegli e intuitivi con questo genere di cose manco un tutorial passo passo ve lo fa capire. Ora, io ho detto TUTTO il necessario per imparare a programmare. Se non avete ancora capito, 2 sono le cose:

1) Non avete fatto pratica con le basi.

2) Siete andati di corsa, alle cose difficili.

Ora dico apertamente che mi sono rotto i coglioni, e che se unknown non fa un cazzo e io scrivo libri, lo ammazzo (oppure programmo un Helper ed evoco un Broly). Basta, basta, basta, basta :rotfl:

Ah, dimenticavo:

ARRANGIATEVI

PS: PER QUESTO ESIGO 50 PUNTI COME MINIMO!!
0

#76 L   Verza 

  • Guerriero Nero
  • Gruppo: Moderatore
  • Messaggi: 1547
  • Iscritto: 20-January 08

Inviato 17 February 2008 - 21:58

:azz: quanto è lungo!!!
0

#77 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 17 February 2008 - 22:00

Menjoso :rulez:

Ma cmq non è nemmeno metà del necessario per creare un bel char :P
0

#78 L   Verza 

  • Guerriero Nero
  • Gruppo: Moderatore
  • Messaggi: 1547
  • Iscritto: 20-January 08

Inviato 17 February 2008 - 22:03

e cosa aspetti a scrivere l'altra metà?
Unknow ti prego correggi un pò di errori di grammatica nella schermata princiapale che ce ne sono una marea
-_-
0

#79 L   Menjoso 

  • Sensei
  • Gruppo: Membro Speciale
  • Messaggi: 3995
  • Iscritto: 16-August 07

Inviato 17 February 2008 - 22:04

L'altra metà viene dal cervello vostro -_-

Cmq come al solito, i miei errori grammaticali si contano su una mano :rotfl: :rotfl:
0

#80 L   Verza 

  • Guerriero Nero
  • Gruppo: Moderatore
  • Messaggi: 1547
  • Iscritto: 20-January 08

Inviato 17 February 2008 - 22:07

Ma il mio cervello è già la metà di quello di una persona normale...
Comunque gli errori non sono quelli che scrivi tu,ma quelli che poi fa unknown,fa errori di grammatica anche facendo copia incolla
:rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl: :rotfl:
0

Condividi questa discussione:


  • 9 Pagine +
  • « Primo
  • 2
  • 3
  • 4
  • 5
  • 6
  • Ultimo »
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

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