M E N U
N E W S
News
Mugen News
Site News
Old News
D O W N L O A D
Characters
Athena 2001
Athena 2002
Neo Athena
Evil Ryu
Violent Ken
Lynn Baker
Karin
Sissy
Sakura
Hosted
Diao
Kyo
Stages
Neogeo 1
Neogeo 2
Neogeo 3
Neogeo 4
EFZ
EFZ 2
Melty Blood
Others
Add-ons
Screen Pack
Tools/Others
Video
W I P
Characters
Mina
D O C S
Tutoriels (FR)
Personnages
Stages
Barres de vie
Screen Pack
Intro-Fin
FAQ (FR)
Lexique
Mugen
Personnages
Stages
Screen Pack
Communauté
Mugen Torch
Text in French
Text in English
A R T S
Iris-Net
|
3/ Création du SFF
Pour créer un SFF d'un stage n'utilisez surtout pas MCM.
Prenez tout simplement le bloc note et sprmaker
Créez un fichier .txt avec le bloc note du style :
vocal_concert.sff
sol1.pcx
0
0
0
0
so12.pcx
0
1
0
0
foreground.pcx
1
0
0
0
...
| ; Nom du fichier SFF qui sera crée
; Nom de la première image .pcx
; Numéro de groupe
; Numéro d'image
; Position en X
; Position en Y
; Nom de la deuxième image .pcx
; Nom de la troisième image .pcx |
Pour les numéros de groupe et image vous pouvez mettre ce que vous voulez mais pensez à être ordonné,
par exemple le même numéro de groupe pour toutes les images d'un même animation et un numéro de 0 ou 1 à x pour le numéro d'image.
Pour les positions en X et Y vous pouvez tout laisser à 0.
Une fois toutes les images listé dans le .txt, ouvrez une Fenêtre de commande DOS.
Allez dans le répertoire ou se trouve les images, le fichier .txt et sprmaker et tapez :
sprmaker < fichier.txt -c (ou fichier est le nom du .txt) (-c pour rogner les images .pcx automatiquement)
tapez entrée et sprmaker créera votre SFF.
4/ Création du DEF
Première Partie : les info du stage
Un fichier .def se présente sous cette forme :
[Info]
name = "Nom du Stage" ; c'est le nom qui apparaitra dans Mugen.
[Camera]
startx = 0 ; Position X de la caméra au départ, 0 en général.
starty = 0 ; Position Y de la caméra au départ, 0 en général.
boundleft = -x ; Distance max du bord gauche.
boundright = x ; Distance max du bord droit.
boundhigh = y ; Distance max du haut du stage, c'est une valeur inférieure ou égale à 0 en général.
boundlow = z ; Distance max du bas du stage, 0 en général.
verticalfollow = .3 ; Vitesse à laquelle la caméra suit les joueurs qui s'élévent (lors d'un saut par exemple).
floortension = 0 ; Distance verticale minimum à partir de laquelle la caméra suit les joueurs.
tension = 60 ; Distance horizontale minimum à partir de laquelle la caméra suit les joueurs.
[PlayerInfo]
p1startx = -70 ; Position horizontale du joueur 1.
p1starty = 0 ; Doit rester à 0.
p1startz = 0 ; Doit rester à 0.
p1facing = 1 ; Direction de regard du joueur 1 (1 = droit, -1 = gauche).
p2startx = 70 ; Position horizontale du joueur 2.
p2starty = 0 ; Doit rester à 0.
p2startz = 0 ; Doit rester à 0.
p2facing = -1 ; Direction de regard du joueur 2 (1 = droit, -1 = gauche).
leftbound = -1000 ; Valeur à ne pas modifier.
rightbound = 1000 ; Valeur à ne pas modifier.
topbound = 0 ; Valeur à ne pas modifier.
botbound = 0 ; Valeur à ne pas modifier.
[Scaling]
topz = 0 ; Valeur à ne pas modifier.
botz = 50 ; Valeur à ne pas modifier.
topscale = 1 ; Valeur à ne pas modifier.
botscale = 1.2 ; Valeur à ne pas modifier.
[Bound]
screenleft = 15 ; Distance maximum à gauche à laquelle un joueur peut traverser en dehors de l'écran.
screenright = 15 ; Distance maximum à droite à laquelle un joueur peut traverser en dehors de l'écran.
[StageInfo]
zoffset = 216 ; Position Y des joueurs par rapport au haut de l'écran.
autoturn = 1 ; Valeur à ne pas modifier.
resetBG = 0 ; Permet de relancer le stage entre les rounds (les animations repartent à 0)
[Shadow]
intensity = 96 ; Intensité de l'ombre de 0 (clair) à 256 (foncé).
color = 70,70,70 ; Valeur RGB de l'ombre des joueurs.
yscale = -0.15 ; Taille de l'ombre (la valeur positive ou négative détermine la direction de l'ombre).
reflect = 0 ; Permet de réflechir (comme un mirroir) l'image des joueurs (comme pour le reflet de l'eau).
[Music]
bgmusic = sound/music.mp3 ; chemin déterminant la musique du stage.
bgvolume = 0 ; Volume de la musique.
[BGdef]
spr = stages/fichier.sff ; chemin déterminant le sff du stage.
debugbg = 1 ; Mode débug, il faut le laisser à 1 lors de la création d'un stage.
|
Exemple de reflection du sol, du screenright et d'ombres :
Calcul des Bounds :
(Largeur du stage - Largeur d'un écran) / 2 =
(Largeur du stage - 320) / 2
par exemple :
(752 - 320) / 2 = 216
le boundleft = - boundright
Pour le boundhigh il suffit de faire :
Hauteur d'un écran - Hauteur du stage =
240 - Hauteur du stage
par exemple :
240 - 256 = -16
Deuxième Partie : les BG du stage
On a ici 2 type de BG (background) :
- Les BG de type normal
- Les BG animés
Le type normal
Lorsqu'on veut afficher un élément d'un stage non animé on utilise généralement le type normal.
[BG Normal]
type = normal
spriteno = 1,0
start = x, y
delta = 1,1
; Paramètres facultatifs
layerno = 0
mask = 0
tile = 0, 0
tilespacing = 0,0
trans = none
Pour indiquer quel sprite du sff on veut afficher on utilise : spriteno = numéro groupe, numéro image
Le start permet quand à lui de placer ce sprite en x et y par rapport au point d'origine (au milieu, en haut de l'écran).
Le delta permet de déplacer (horizontalement et verticalement) l'élément en fonction de la caméra.
Si l'élément est censé bouger en même temps que la caméra on laisse les valeurs à 1.
Le layerno permet d'afficher les éléments devant ou derrière les personnages (1 pour devant, 0 par défaut pour derrière).
Le mask permet d'afficher ou non la couleur d'index 0 (inutil si cette couleur est cachée ou si elle n'apparait pas dans l'image).
Le tile permet de répetter une même image autant de fois la valeur de tile en x et en y.
Le tilespacing est tout simplement l'espace entre les répetition en x et en y.
Le trans permet d'afficher un élément avec transparence. Les valeurs possible sont add, add1, addalpha ou sub.
Calcul du delta
Pour calculer un delta celà peut sembler compliquer mais c'est juste un simple calcul mathématique.
Imaginez que vous avez un fond qui represente toute la largeur du stage (le sol par exemple) son delta à lui sera donc de 1.
Si en revanche il existe un autre fond qui reprente le reste du stage (horizon et ciel)
et que cet élément soit plus petit en largeur que le sol il faudra utiliser un delta inférieur à 1.
En effet l'effet que l'ont appel scrolling donne l'impression que les personnages évolue dans un vrai décors et non dans une simple image.
Il faut donc que lorsque la caméra se déplace l'élément du fond bouge plus vite vers la gauche ou la droite que le sol (qui lui semble être fixe.
Le delta represente en gros le pourcentage de déplacement d'un décors par rapport à celui qui est fixe et on le calcul ainsi :
(Largeur element - 320) / (Largeur Max - 320) = delta X
Ici par exemple on a 2 éléments. Le sol represente toute la largeur du stage (752 pixels)
et les gens sont un autre BG qui doit avoir un delta différent de celui du sol (1) sinon on aura un trou à gauche et à droite du stage.
On utilise donc la formule :
(560 - 320) / (752 - 320) = 240 / 432 = 0.5555
le delta X de ce BG est donc de 0.5555
Pour un delta en Y on utilise le même principe.
Le type anim
Lorsqu'on veut afficher une animation (plusieurs éléments qui forment une animation) on utilise le type anim.
[BG Anime]
type = anim
actionno = 0
start = x, y
delta = 1,1
Là on ne donne qu'un numéro d'animation (actionno = 0) il faut donc créer cette animation.
Pour ce faire on liste chaque élément de l'animation en indiquand le numéro de groupe puis d'image,
un offset en x et en y et sont temps d'affichage.
[Begin action 0]
0,0,0,0,4
0,1,0,0,4
0,2,0,0,5
0,3,0,0,6
...
si on prend cette ligne : 0,3,0,0,3
Le premier 0 correspond au numéro de groupe de l'image.
Le 3 correspond au numéro d'image du groupe 0.
Les second et troisième 0 correspondent à une postion x et y par rapport au start du BG (généralement on les laisse à 0).
Le 6 correspond au temps d'affichage de cette élément de l'animation (temps en ticks).
| |
| | |
|