Un informazione sul programmare stages
#21
Inviato 16 June 2007 - 16:38
Ecco la lista degli errori. Ti ho inviato anche lo stage già corretto.
Leggi attentamente così saprai come evitare di nuovo gli errori fatti.
------------------
Errore 01
------------------
Il primo errore (che è poi l'errore principale) è questo.
Ogni immagine dell'sff deve essere associata ad una coppia di numeri unica.
Quindi e' un errore mettere tutte le immagini a 0,0 come avevi fatto tu!
Come vedrai (usa MCM), nell'sff da me corretto io ho messo le sei immagini a
0,1
0,2
0,3
0,4
0,5
0,6
Quindi tutte le immagini della animazione sono associate il gruppo 0, ma ogni singola
immagine ha un diverso numero immagine (in questo caso da 1 a 6).
Di conseguenza ho modificato anche l'animazione 0 nel file def dello stage
[Begin Action 0]
0,1, 0,0, 14
0,2, 0,0, 14
0,3, 0,0, 14
0,4, 0,0, 14
0,5, 0,0, 14
0,6, 0,0, 14
(infatti i primi due numeri della lista come avrai visto, identificano il numero gruppo
e il numero immagine)
------------------
Errore 02
------------------
Questo è un errore minore, che infatti nel forum non riporto (tecnicamente non è
l'oggetto della tua domanda).
Per "scorrere" TUTTO lo stage devi calcolare lo scorrimento orizzontale in questa maniera:
scorrimento = (lunghezza immagine / 2) - 160
In questo caso quindi
scorrimento = (1000 / 2) - 160 = 500 - 160 = 340
Questo valore ti serve per settare lo scorrimento. Lo scorrimento si setta modificando
i valori "boundleft" e "boundright". Devi usare il valore prima ottenuto settandolo
negativo "boundleft" e "boundright". e quindi
boundleft = -340
boundright = 340
------------------
Errore 03
------------------
Simile a quello di prima. Lo scorrimento verticale deve essere calcolato in questo modo
scorrimento = altezza immagine - 240
In questo caso quindi
scorrimento = 488 - 240 = 248
(come vedi il valore è 248 lo stesso che hai messo nell'accentramento SFF).
e pertanto si modifica di conseguenza "boundhigh" con il valore negativo corrispondente
boundhigh = -248
(boundlow va sempre settato a 0 e quindi va bene).
------------------
Errore 04
------------------
L'intestazione del DEF degli stages è diversa da quella dei personaggi.
Come vedi tra le righe iniziali ho salvato solo "name" perché le altre sugli stages
non c'entrano nulla.
Mettendo "Capsule Corporation" in "name" ecco quello che succede:
nella selezione stages apparirà proprio "Capsule Corporation" ;)
------------------
Giusto invece...
------------------
Giusto invece è stato il posizionamento delle immagini nell'sff.
x = lunghezza / 2
y = altezza - 240
(Vedi SFF da me modificato).
-----------------------------------
Spero di essere stato utile ed esauriente ;)
Leggi attentamente così saprai come evitare di nuovo gli errori fatti.
------------------
Errore 01
------------------
Il primo errore (che è poi l'errore principale) è questo.
Ogni immagine dell'sff deve essere associata ad una coppia di numeri unica.
Quindi e' un errore mettere tutte le immagini a 0,0 come avevi fatto tu!
Come vedrai (usa MCM), nell'sff da me corretto io ho messo le sei immagini a
0,1
0,2
0,3
0,4
0,5
0,6
Quindi tutte le immagini della animazione sono associate il gruppo 0, ma ogni singola
immagine ha un diverso numero immagine (in questo caso da 1 a 6).
Di conseguenza ho modificato anche l'animazione 0 nel file def dello stage
[Begin Action 0]
0,1, 0,0, 14
0,2, 0,0, 14
0,3, 0,0, 14
0,4, 0,0, 14
0,5, 0,0, 14
0,6, 0,0, 14
(infatti i primi due numeri della lista come avrai visto, identificano il numero gruppo
e il numero immagine)
------------------
Errore 02
------------------
Questo è un errore minore, che infatti nel forum non riporto (tecnicamente non è
l'oggetto della tua domanda).
Per "scorrere" TUTTO lo stage devi calcolare lo scorrimento orizzontale in questa maniera:
scorrimento = (lunghezza immagine / 2) - 160
In questo caso quindi
scorrimento = (1000 / 2) - 160 = 500 - 160 = 340
Questo valore ti serve per settare lo scorrimento. Lo scorrimento si setta modificando
i valori "boundleft" e "boundright". Devi usare il valore prima ottenuto settandolo
negativo "boundleft" e "boundright". e quindi
boundleft = -340
boundright = 340
------------------
Errore 03
------------------
Simile a quello di prima. Lo scorrimento verticale deve essere calcolato in questo modo
scorrimento = altezza immagine - 240
In questo caso quindi
scorrimento = 488 - 240 = 248
(come vedi il valore è 248 lo stesso che hai messo nell'accentramento SFF).
e pertanto si modifica di conseguenza "boundhigh" con il valore negativo corrispondente
boundhigh = -248
(boundlow va sempre settato a 0 e quindi va bene).
------------------
Errore 04
------------------
L'intestazione del DEF degli stages è diversa da quella dei personaggi.
Come vedi tra le righe iniziali ho salvato solo "name" perché le altre sugli stages
non c'entrano nulla.
Mettendo "Capsule Corporation" in "name" ecco quello che succede:
nella selezione stages apparirà proprio "Capsule Corporation" ;)
------------------
Giusto invece...
------------------
Giusto invece è stato il posizionamento delle immagini nell'sff.
x = lunghezza / 2
y = altezza - 240
(Vedi SFF da me modificato).
-----------------------------------
Spero di essere stato utile ed esauriente ;)
#22
Inviato 19 June 2007 - 14:13
Grazie mille Nobun!! Mi hai tolto moltissimi dubbi, però adesso mi è capitato un errore che mi capita sempre quando programmo gli stages animati (questo è il secondo), dopo che li programmo e vado a provarli sul mugen, la maggior parte del colore nero presente nei vari sprite mi appare viola :wacko: !!! Siccome non è la prima volta che mi capita, Nobun, mi spiegheresti passo per passo come correggerlo?? Grazie!! :birra:
#23
Inviato 22 June 2007 - 19:48
Molto semplicemente perché molti programmi di conversione utilizzano il nero anche sul colore 0 e quindi quei pixel (indicizzati a 0) non vengono disegnati (i layer animati, a differenza di quelli fissi, non mostrano MAI il colore 0 ma lo rendono SEMPRE trasprarente. Li vedi viola perché "debugbg" disegna in viola tutti gli "spazi vuoti" (uno stage non deve mai avere spazi vuoti).
Il modo migliore sarebbe quello di individuare i pixel indicizzati a 0 e cambiare l'indice con un altro colorato di nero (o colore simile).
Però se i tuoi stage si basano semplicemente su una immagine sola (anche se animata) come quello che ti ho sistemato puoi fare anche un'altra cosa forse più semplice...
Ovvero anziché definire solo un layer ne definisci 2. Prima definisci una schermata nera
[BG Dark]
type = normal
spriteno = 0,0
start = 0,0
delta = 0,0
trans = none
layerno = 0
e poi definisci la tua animazione come al solito
[BG Sfondo]
type = anim
...
----
Ovviamente lo sfondo nero deve avere anche una coppia unica di "numero gruppo, numero immagine" e non usata da nessun altro frame.
Per questo sfondo devi fare una PCX tutta nera colorata con un solo colore che non sia indicizzato a 0 e poi la salvi e la posizioni.
Il criterio è che i vari layer si sovrappongono l'uno all'altro... quindi lo sfondo si sovrappone all'immagine nera... e quindi si vedono in nero le parti lasciate "vuote" dallo sfondo.
Il modo migliore sarebbe quello di individuare i pixel indicizzati a 0 e cambiare l'indice con un altro colorato di nero (o colore simile).
Però se i tuoi stage si basano semplicemente su una immagine sola (anche se animata) come quello che ti ho sistemato puoi fare anche un'altra cosa forse più semplice...
Ovvero anziché definire solo un layer ne definisci 2. Prima definisci una schermata nera
[BG Dark]
type = normal
spriteno = 0,0
start = 0,0
delta = 0,0
trans = none
layerno = 0
e poi definisci la tua animazione come al solito
[BG Sfondo]
type = anim
...
----
Ovviamente lo sfondo nero deve avere anche una coppia unica di "numero gruppo, numero immagine" e non usata da nessun altro frame.
Per questo sfondo devi fare una PCX tutta nera colorata con un solo colore che non sia indicizzato a 0 e poi la salvi e la posizioni.
Il criterio è che i vari layer si sovrappongono l'uno all'altro... quindi lo sfondo si sovrappone all'immagine nera... e quindi si vedono in nero le parti lasciate "vuote" dallo sfondo.
#24
Inviato 27 June 2007 - 08:39
Grazie Nobun, utile come sempre, ora però mi sorge un dubbio... Se per esempio io ho uno stage di una foresta, e in primo piano ci sono delle piante, come faccio a far apparire le piante davanti ai chars?
#25
Inviato 02 July 2007 - 12:27
UP!!! Ho bisogno di questa risposta o non posso finire di programmare due stages del DBAF Mugen Project
#30
Inviato 15 July 2007 - 20:03
Dann, su Jun 27 2007, 09:39, detto:
Grazie Nobun, utile come sempre, ora però mi sorge un dubbio... Se per esempio io ho uno stage di una foresta, e in primo piano ci sono delle piante, come faccio a far apparire le piante davanti ai chars?
basta che modifichi il parametro layerno dell'elemento che si deve portare davanti ai chars
layerno = 1
--------
Ti chiedo scusa per non averti risposto prima, ma un po' forse perché non avevo visto la domanda ed un po' ho avuto un periodo parecchio incasinato (semmai ne ho mai avuto uno semplice) non sono riuscito a risponderti prima.
Nota finale: ho eliminato un po di tuoi topic con "UP!!!!" che sennò si intasa il forum...
#31
Inviato 16 July 2007 - 14:53
Si lo so, scusa per tutti quegli up, ma se non li facevo il topic sprofondava e non potevo conoscere la risposta ^^ Grazie mille!!
EDIT: Ma la stringa "layerno=1" dove la devo mettere di preciso?
RIEDIT: Ho risolto però non riesco a far apparire solo le piante davanti ai chars, xkè mi appare anche lo sfondo tutto bianco o tutto viola (come quello che hanno gli sprite di char per intenderci) anche attivando la trasparenza, come si fa?
EDIT: Ma la stringa "layerno=1" dove la devo mettere di preciso?
RIEDIT: Ho risolto però non riesco a far apparire solo le piante davanti ai chars, xkè mi appare anche lo sfondo tutto bianco o tutto viola (come quello che hanno gli sprite di char per intenderci) anche attivando la trasparenza, come si fa?
#32
Inviato 16 July 2007 - 16:25
Approfitto di questa discussione per chiedervi un piccolo aiuto sugli stage: voglio fare uno stage animato dove a un certo punto cade un fulmine e il malcapitato si prende la scossa provocandoli dei danni! :rotfl: :rotfl:
Più o meno so come farlo: mi creeo il file .def con "StageEditor", mi creo il file .sff (dopo, naturalmente, aver modificato le immagini a 256 colori), mi creo le "begin Action" (che vanno inserite nel file .def), ora il problema è questo: come faccio a programmare il momento in cui deve venire il fulmine, la quantità di danni che deve infliggere e il suono? :unsure:
Più o meno so come farlo: mi creeo il file .def con "StageEditor", mi creo il file .sff (dopo, naturalmente, aver modificato le immagini a 256 colori), mi creo le "begin Action" (che vanno inserite nel file .def), ora il problema è questo: come faccio a programmare il momento in cui deve venire il fulmine, la quantità di danni che deve infliggere e il suono? :unsure:
#33
Inviato 16 July 2007 - 16:50
Il fatto è che per il colore di sfondo devi usare il colore 0 se vuoi evitare il problema!
E se il layer è fisso (sprite) ricordati di inserire anche
mask = 1
tanto per essere sicuro.
---------
X Goku SSj5... ti consiglio di aprire una nuova discussione quando le domande sono così diverse...
Allora quello che tu chiedi di fare non è possibile... o almeno non c'è un modo per creare questo effetto direttamente nello stage...
E' però possibile (se associ lo stage ad un char specifico) fare in modo che questo effetto sia programmato nel char che si avvale di questo stage... Il codice in questione, quindi, va per forza inserito in un char...
E se il layer è fisso (sprite) ricordati di inserire anche
mask = 1
tanto per essere sicuro.
---------
X Goku SSj5... ti consiglio di aprire una nuova discussione quando le domande sono così diverse...
Allora quello che tu chiedi di fare non è possibile... o almeno non c'è un modo per creare questo effetto direttamente nello stage...
E' però possibile (se associ lo stage ad un char specifico) fare in modo che questo effetto sia programmato nel char che si avvale di questo stage... Il codice in questione, quindi, va per forza inserito in un char...

Aiuto










