Pagina 1 di 1
state controller
#1
Inviato 31 October 2008 - 19:35
Sto cercando di riprogrammare da capo il cns di mr.karate ma quando vado a caricare il mugen mi dice errore: necessita aalmeno di 1 state controller
ma io ce l'ho messo :
[Statedef 20]
type = S
ctrl = 0
anim = 20
velset = 0,0,0
[State 192, 2]
type = ChangeState
trigger1= Command! = "holdfwd"
trigger2 = AnimTime = 0
value = 21
-------------------------------------------------------------------------------------------
[Statedef 21]
type = S
ctrl = 0
anim = 21
velset = 0,0,0
[State 192, 2]
type = ChangeState
trigger1= Command! = "holdback"
trigger2 = AnimTime = 0
value = 0
ma io ce l'ho messo :
[Statedef 20]
type = S
ctrl = 0
anim = 20
velset = 0,0,0
[State 192, 2]
type = ChangeState
trigger1= Command! = "holdfwd"
trigger2 = AnimTime = 0
value = 21
-------------------------------------------------------------------------------------------
[Statedef 21]
type = S
ctrl = 0
anim = 21
velset = 0,0,0
[State 192, 2]
type = ChangeState
trigger1= Command! = "holdback"
trigger2 = AnimTime = 0
value = 0
#2
Inviato 31 October 2008 - 20:05
Il problema sta in un altro file CNS. Probabilmente nel DEF richiami un file che NON ha uno statedef (comunque NON è una buona abitudine sovrascrivere gli statedef del common1.cns se non si sa cosa scrivere).
Io ti consiglio di scaricare il mio char vuoto (anche se va un po' modificato)... lo trovi nella sezione tutorials del forum. Ecco un esempio di file CNS "vuoto" che non produce quell'errore
Ovviamente va poi cancellato quando si scrive uno state vero e proprio.
Io ti consiglio di scaricare il mio char vuoto (anche se va un po' modificato)... lo trovi nella sezione tutorials del forum. Ecco un esempio di file CNS "vuoto" che non produce quell'errore
[StateDef 200] type = S [State 200, 0] type = Null trigger1 = time = 0
Ovviamente va poi cancellato quando si scrive uno state vero e proprio.
#4
Inviato 01 November 2008 - 14:22
nel cns del char vuoto ho iniziato a programmare la camminata avanti e indietro
ma il char si muove da fermo (cioè cammina suse stesso ma rimanendo sempre allo stesso punto)
[Statedef 20]
type = S
ctrl = 1
anim = 20
velset = 0,0,0
[State 0, VelSet]
type = VelSet
trigger1 = Command! = "FF"
x = 10
;y = 0
;ignorehitpause =
;persistent =
[State 20, 4]
type = changestate
trigger1 = AnimELem = 1
value = 21
ctrl = 1
;---------------------------------------------------------------------------
;•à‚«iCPUj
[Statedef 21]
type = S
physics = N
sprpriority = 0
anim = 21
ctrl = 0
velset = 0,0
[State 20, 1]
type = Turn
trigger1 = P2dist X < 0
[State 20, 4]
type = changestate
trigger1 = animelem = 1
value = 0
ctrl = 1
cmd
;walk Forward
[State -1, walk fw]
type = ChangeState
value = 20
triggerall = command = "FF"
trigger1 = (statetype = s) && ctrl
;walk backward
[State -1, walk bk]
type = ChangeState
value = 21
triggerall = command = "BB"
trigger1 = (statetype = s) && ctrl
[Command]
name = "FF" ;Required (do not remove)
command = F, F
time = 10
[Command]
name = "BB" ;Required (do not remove)
command = B, B
time = 10
ma il char si muove da fermo (cioè cammina suse stesso ma rimanendo sempre allo stesso punto)
[Statedef 20]
type = S
ctrl = 1
anim = 20
velset = 0,0,0
[State 0, VelSet]
type = VelSet
trigger1 = Command! = "FF"
x = 10
;y = 0
;ignorehitpause =
;persistent =
[State 20, 4]
type = changestate
trigger1 = AnimELem = 1
value = 21
ctrl = 1
;---------------------------------------------------------------------------
;•à‚«iCPUj
[Statedef 21]
type = S
physics = N
sprpriority = 0
anim = 21
ctrl = 0
velset = 0,0
[State 20, 1]
type = Turn
trigger1 = P2dist X < 0
[State 20, 4]
type = changestate
trigger1 = animelem = 1
value = 0
ctrl = 1
cmd
;walk Forward
[State -1, walk fw]
type = ChangeState
value = 20
triggerall = command = "FF"
trigger1 = (statetype = s) && ctrl
;walk backward
[State -1, walk bk]
type = ChangeState
value = 21
triggerall = command = "BB"
trigger1 = (statetype = s) && ctrl
[Command]
name = "FF" ;Required (do not remove)
command = F, F
time = 10
[Command]
name = "BB" ;Required (do not remove)
command = B, B
time = 10
#5
Inviato 01 November 2008 - 15:22
beh, se tu metti come comando nello statedef:
velset = 0,0,0 ci credo che non si muove XD elimina quella stringa ;)
Saluti
Squall
velset = 0,0,0 ci credo che non si muove XD elimina quella stringa ;)
Saluti
Squall
#6
Inviato 01 November 2008 - 16:14
Ed inoltre velset accetta 2 parametri, non 3...
In ogni caso, ascolta un cretino... non stare a programmare gli state predefiniti. Lascia che li gestisca il common1.cns...
In ogni caso, ascolta un cretino... non stare a programmare gli state predefiniti. Lascia che li gestisca il common1.cns...
#7
Inviato 01 November 2008 - 17:38
Nobun, su Nov 1 2008, 16:14, detto:
Ed inoltre velset accetta 2 parametri, non 3...
In ogni caso, ascolta un cretino... non stare a programmare gli state predefiniti. Lascia che li gestisca il common1.cns...
In ogni caso, ascolta un cretino... non stare a programmare gli state predefiniti. Lascia che li gestisca il common1.cns...
scusa Nobun ma quali sarebbero gli state predefiniti? praticamente sto ripartendo da zero x cui ora nn so da ke parte cominciare e quindi sto prendfendo come riferimento il char di warusaki3
ho tolto i velset ma continua darmi lo stesso problema(tra l'altro quando esegue l'animzione di camminata viene rikiamato anke un frame 0 dello standing)
[Statedef 20]
type = S
ctrl = 1
anim = 20
[State 192, 2]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1
#8
Inviato 01 November 2008 - 18:09
tutti gli state già programmati nel common1.cns (il common1.cns lo trovi nella cartella "data" del Mugen).
Ovvero...
Standing, abbassamento, accovacciata, salto (centrale, avanti, indietro), parata, camminata (avanti ed indietro), cadute (* qui il personaggio vuoto fatto da me ti aiuta parecchio, perché le animazioni sono tutte pronte, basta solo inserire gli sprite obbligatori e poi definire, all'interno delle animazioni 5000+ già presenti, i clsn2 boxes *).
Di tutte queste cose basta solo programmare le animazioni (es. l'animazione 0 per la standing) ed inserire i frames nel SFF... non occorre scrivere nulla né nel CMD né nel CNS...
Ovvero...
Standing, abbassamento, accovacciata, salto (centrale, avanti, indietro), parata, camminata (avanti ed indietro), cadute (* qui il personaggio vuoto fatto da me ti aiuta parecchio, perché le animazioni sono tutte pronte, basta solo inserire gli sprite obbligatori e poi definire, all'interno delle animazioni 5000+ già presenti, i clsn2 boxes *).
Di tutte queste cose basta solo programmare le animazioni (es. l'animazione 0 per la standing) ed inserire i frames nel SFF... non occorre scrivere nulla né nel CMD né nel CNS...
#9
Inviato 01 November 2008 - 18:16
Adesso ke melo hai fatto notare è vero funziona bene senza statedef (mi aveva disorientato il fatto ke warusaki aveva programmato gli state anke x la camminata e x il salto...
ma quindi quando si riprogramma un personaggio partenndo da zero da quale statedef bisogna di norma cominciare a programmare?
ma quindi quando si riprogramma un personaggio partenndo da zero da quale statedef bisogna di norma cominciare a programmare?
#10
Inviato 01 November 2008 - 18:34
Io di solito faccio così...
Prima di tutto, programmo, una alla volta, tutte le animazioni fondamentali, e - volta per volta - faccio il test nel Mugen. L'ordine con cui procedo è variabile, ma normalmente è più o meno questo
0, 5 (turning stand), camminate (20 e 21), accovacciata (10,11,12 se non ricordo male), 6 (turning crouch), salti (40 etc), cadute (mi limito a mettere tutti i frame obbligatori posizionati come si deve e poi vado a prendere le varie animazioni per definirne i box di collisione), parate.
Normalmente le intro pose e le ending pose le metto più in là, più che altro perché è già abbastanza noioso mettere tutta sta roba senza scrivere una linea di codice CNS (ma solo codice AIR)... mentre infatti le animazioni che ho elencato servono per un buon funzionamento del char, le intro e le ending possono pure mancare...
Poi, se voglio inserire una corsa, ho bisogno di programmare l'evento nel CMD (state 100 per avanti e 105 per indietro, se non ricordo male). Non è detto però sia necessario scrivere gli state 100 e 105 (c'è già una versione del common1.cns... dipende dal tipo di effetto che vuoi...).
La prima mossa vera e propria di programmazione CNS con tutti i coinvolgimenti del caso arriva nel momento in cui si programmano i singoli colpi.
E allora incomincio con lo state 200 (pugno debole stand). L'ordine di programmazione nello state 200 è
1) Inserire le immagini nell'SFF
2) Definire l'animazione AIR (e fin qui nessuna novità rispetto a quanto si è fatto per le animazioni di base)
3) Inserire CORRETTAMENTE l'istruzione [State -1, tipo di colpo] nel CMD per attivare la mossa
4) Programmare nel CNS la mossa attivata
5) testare il tutto nel Mugen.
Prima di tutto, programmo, una alla volta, tutte le animazioni fondamentali, e - volta per volta - faccio il test nel Mugen. L'ordine con cui procedo è variabile, ma normalmente è più o meno questo
0, 5 (turning stand), camminate (20 e 21), accovacciata (10,11,12 se non ricordo male), 6 (turning crouch), salti (40 etc), cadute (mi limito a mettere tutti i frame obbligatori posizionati come si deve e poi vado a prendere le varie animazioni per definirne i box di collisione), parate.
Normalmente le intro pose e le ending pose le metto più in là, più che altro perché è già abbastanza noioso mettere tutta sta roba senza scrivere una linea di codice CNS (ma solo codice AIR)... mentre infatti le animazioni che ho elencato servono per un buon funzionamento del char, le intro e le ending possono pure mancare...
Poi, se voglio inserire una corsa, ho bisogno di programmare l'evento nel CMD (state 100 per avanti e 105 per indietro, se non ricordo male). Non è detto però sia necessario scrivere gli state 100 e 105 (c'è già una versione del common1.cns... dipende dal tipo di effetto che vuoi...).
La prima mossa vera e propria di programmazione CNS con tutti i coinvolgimenti del caso arriva nel momento in cui si programmano i singoli colpi.
E allora incomincio con lo state 200 (pugno debole stand). L'ordine di programmazione nello state 200 è
1) Inserire le immagini nell'SFF
2) Definire l'animazione AIR (e fin qui nessuna novità rispetto a quanto si è fatto per le animazioni di base)
3) Inserire CORRETTAMENTE l'istruzione [State -1, tipo di colpo] nel CMD per attivare la mossa
4) Programmare nel CNS la mossa attivata
5) testare il tutto nel Mugen.
#11
Inviato 01 November 2008 - 20:18
Si penso di aver capito in pratica si può affermare ke la programmazione del cns vero e proprio parta dagli intro state mentre x la camminata crouch jump e run bisigna solo scrivere l'air giusto?
Condividi questa discussione:
Pagina 1 di 1

Aiuto










