MUGEN LA DOC
_________________________________
Werewolf.
Sommaire :
AVANT-PROPOS
Cette notice est plus une notice
technique. Elle se rapporte à Mugen en tant que moteur de jeu de combat, plus
qu’à Mugen en tant que jeu lui-même. En conséquence, on va s’intéresser aux
différents fichiers qui composent Mugen, que ce soit au niveau des personnages,
des musiques, des décors ou du système de jeu.
Cette notice a donc surtout un
intérêt si vous décidez de modifier les paramètres de Mugen, voire, si vous
voulez apporter votre propre touche personnelle en créant vos stages, en
incorporant vos musique, etc. Pour le reste, la notice MUGEN LE JEU est tout à
fait suffisante pour jouer à Mugen.
Mugen n'est pas un jeu de combat,
mais un moteur de jeu de combat. C'est à dire qu'à la base, il n'y a qu'un
programme permettant au jeu de fonctionner, mais il n'y a aucun personnage,
aucun décor, aucune musique. Tout est à faire, ou plutôt, à incorporer. On
obtient ainsi peu à peu son propre jeu de combat.
Pour pouvoir jouer à Mugen, il
convient donc au préalable de créer des personnages, des décors et des musiques
que l'on va intégrer au jeu. L'avantage, c'est qu'on n'est pas obligé de créer
réellement tout cela, puisqu'il est possible de télécharger sur Internet tous
les composants du jeu. C'est ce que font une très grande majorité des
joueurs.
On peut ainsi créer un jeu de
combat (à titre personnel ; si vous souhaitez le distribuez, vous devez
préalablement demander l'accord des auteurs de personnages, screenpacks, décors, etc.), tout en sachant que ce jeu reste
évolutif, car il est toujours possible d'intégrer de nouveaux personnages, de
nouveaux décors, de nouvelles musiques.
L'intérêt de Mugen, c'est que
tout est paramétrable : pas seulement les combattants, les décors ou les
musiques, mais également toutes les options de jeu : le niveau de vie des
combattants, leur rapidité, leur puissance, leur taille, le nombre de matchs à
jouer pour remporter le tournoi, le nombre de rounds pour gagner un match,
etc.
Du coup, il devient vite possible
de paramétrer le jeu pour le rendre adapté à ses capacités. Il est ainsi
possible de "booster" un personnage que l'on utilise souvent pour être plus
puissant que ses adversaires (revers de la médaille : ça chauffe quand on tombe
contre son double !).
Les personnages sont constitués
d'un ensemble de fichiers plus ou moins importants. En général, plus un
personnage possède de coups, de tenues, d'intro différentes, plus le nombre de
fichiers est grand et leur taille imposante. Ainsi, les personnages de Mortal Kombat et de DBZ font
rarement plus de 500 Ko chacun, alors que Evil Ken
fait plusieurs mégas (certains persos atteignent même les 10 Mo !).
Les fichiers de personnages sont
placés dans le dossier "chars", puis dans un dossier spécifique au personnage.
Les fichiers qu'on retrouve tout le temps sont : perso.def, perso.cmd, perso.sff, perso.air, perso.act et perso.cns. On peut
parfois trouver plusieurs fichiers sff (pour les intros, les fins, par exemple), ou plusieurs fichiers act ou cns. On trouve également un
fichier snd (sons du personnage) assez souvent, mais
il n'est pas obligatoire.
Les fichiers air, def, cmd, et cns sont lisibles par un éditeur de texte tel que le Bloc-Note, et il d'ailleurs plus confortable de les associer
à ce programme pour pouvoir les modifier ou les consulter facilement. A noter
dans ces fichiers : lorsqu'il y a un point-virgule dans une ligne, tout ce qui
le suit sur la ligne est ignoré par le programme. En revanche, ce qui est avant
le ; est normalement interprété par le programme. Ceci permet notamment de
mettre des commentaires, ou de court-circuiter une commande erronée.
Ils contiennent la définition
principale du personnage. On y trouve son nom (obligatoirement entre guillemets
pour les dernières versions de Mugen) et les noms des fichiers associés. Le
programme s'en sert pour savoir quels fichiers utiliser. Etant donné que ce
fichier sert de "tour de contrôle de fichiers" du personnages, il faut
impérativement que le programme puisse l'identifier. Pour cela, il y a une
condition de base : le nom du fichier def doit être le
même que le nom du dossier du personnage, et le même que celui mis dans le
fichier Select.def (on y viendra plus tard).
Donc, si j'ai un nouveau
personnage qui s'appelle Ryu par exemple, mais que, en
ayant déjà un portant ce nom, je suis obligé de mettre les fichiers de ce
nouveau personnage dans un dossier "Ryu2", dès lors, le fichier def devra s'appeler Ryu2.def, et la ligne à ajouter pour
intégrer le personnage dans le fichier Select.def
devra être :
Ryu2, random
Du coup, si on change l'un des
trois noms (nom du fichier def, nom du dossier ou nom
dans le fichier Select.def), il faut impérativement
changer les deux autres noms.
Ces fichiers sont les plus
intéressants, puisqu’ils contiennent toutes les données relatives aux
personnages. Ces fichiers sont divisés en plusieurs paragraphes : Data,
Size, Velocity, Movement.
Chaque partie contient plusieurs lignes de commande définissant le personnage.
Etudions le fichiers CNS d’Evil Ken :
[Data]
life = 2000
attack = 200
defence = 100
fall.defence_up = 50
liedown.time = 60
airjuggle = 15
sparkno = 2
guard.sparkno = 40
KO.echo = 1
volume = 50
IntPersistIndex = 30
Life définit le niveau de
vie du combattant. Un niveau entre 2000 et 3000 semble idéal (avis personnel,
car beaucoup de joueurs utilisent une life de 1000). Ainsi, les personnages ne
meurent pas au premier coup, mais les combats ne s’éternisent pas non plus.
Attack définit le niveau d’attaque du combattant.
Plus il est haut, plus les coups portés sont puissants. La norme est de 100.
De même, Defence définit le niveau de résistance du
combattant. Plus il est élevé, et moins il subira de dommage sur un même coup.
La norme, là aussi, est de 100.
Fall.defence_up est un concept assez difficile à
décrire. En gros, chaque fois que le personnage est touché, il perd de la vie,
mais plus il subit de coups enchaînés (« hit combo »), plus sa
résistance augmente. Un exemple : si Evil Ken
lance deux hypers identiques d'affilé, le second enlèvera moins de vie que le
premier. Et si on en sort encore un troisième identique (toujours en
enchaînement), le troisième sera encore moins puissant que le second. Et cette
résistance ira croissante au fur et à mesure que l’adversaire subira les coups,
tant et si bien qu’à force, les coups peuvent devenir sans effet sur
l’adversaire. En revanche, une fois que le combo se termine, l’adversaire
retrouve son niveau normal de résistance. Le nombre est en fait un pourcentage
qui augmente à chaque coup reçu la défense du perso. Ainsi, après chaque coup,
la défense du joueur touché augmente dans notre exemple de 50%.
Liedown.time définit le temps minimum durant lequel
un personnage mis au sol y reste avant de se relever.
Airjuggle, sparkno,
guard.sparkno : Désolé, je ne sais pas à
quoi ça sert !
KO.echo, ou echo ne
peut avoir qu’une valeur de 0 ou 1. Lorsque le personnage perd un round, il émet
un cri de défaite. Avec une valeur de 1, ce cri résonne trois fois, comme un
écho. Personnellement, je trouve cela plus sympa.
Volume : définit le
niveau du volume des sons associés au personnage, compris entre 0 et 255.
IntPersistIndex et FloatPersistIndex : désolé, mais là non plus, je
ne sais pas ce que c’est. Ça serait une histoire de valeurs gardées d’un round
ou d’un match à l’autre, mais je n’en sais pas plus.
Voyons maintenant la suite du
fichier, qui s’intéresse à la taille. Je ne connais malheureusement qu’assez peu
de commandes dans cette partie.
[Size]
xscale = 1
yscale = 1.05
ground.back = 15
ground.front = 17
air.back = 13
air.front = 13
z.width = 3
height = 60
attack.width = 4,4
attack.dist = 160
proj.attack.dist = 90
proj.doscale = 0
head.pos = -14, -87
mid.pos = -5, -60
La partie Size définit la taille
des sprites relatifs au personnage. Un sprite (mot anglais, se prononce comme la boisson gazeuse)
est un élément actif dans une scène de jeu vidéo. Ainsi un personnage est un
sprite, mais un projectile projeté par ce personnage
également !
Xscale et Yscale
définissent la taille en largeur et en hauteur du personnage. Ainsi, si certains
personnages peuvent sembler plus petits que d’autres, on peut les "grossir".
C’est le cas généralement des personnages de Dragon Ball Z et de certains de
Mortal Kombat (inconvénient
: les persos ainsi zoomés peuvent alors paraître pixellisés).
Proj.doscale est une fonction qui s’active si elle a la
valeur 1 et qui est inactive avec 0. Elle permet, lorsque l’on met des
paramètres de Xscale et Yscale différents de 1 de mettre les projectiles de ce
personnage à la même échelle que lui. Par exemple, si on met Yscale = 1.2, avec Proj.doscale = 1, la taille du projectile sera multiplié
par 1.2 en hauteur. En général, on ne s’en sert pas.
Head.pos a pour but de définir approximativement la
position de la tête du personnage, tandis que Mid.pos définit la position approximative du corps du
personnage.
Continuons dans le fichier et
abordons la partie Velocity.
[Velocity]
walk.fwd = 3.0
walk.back = -2.5
run.fwd = 6.0,0
run.back = -4,-4.5
jump.neu = 0,-8.5
jump.back = -3.4
jump.fwd = 3.4
runjump.back = -3,-9
runjump.fwd = 3.5,-10.3
airjump.neu = 0,-9.1
airjump.back = -2.9,-10.6
airjump.fwd = 6,-11.6
walk.fwd est la vitesse de déplacement vers l’avant
du personnage
walk.back est sa vitesse de recul
run.fwd est sa vitesse de course vers l’avant (certains perso courent en faisant deux fois avant)
run.back est sa vitesse de course vers l’arrière
jump.neu est son amplitude de saut sur place
jump.back est son amplitude de saut vers l’arrière
jump.fwd est son amplitude de saut vers l’avant
runjump.neu est son amplitude de saut sur place pendant une course
runjump.back est son amplitude de saut vers l’arrière pendant une course
runjump.fwd est son amplitude de saut vers l’avant pendant une course.
airjump.neu est, je crois, l’amplitude d’un air jump (saut en l’air – voir section « movement ») sur place.
airjump.back est, je crois, l’amplitude d’un air jump vers l’arrière
airjump.fwd est, je crois, l’amplitude d’un air jump vers l’avant
Lorsqu’il y a deux nombres
(ex : jump.neu = 0, -8.5), le premier
s’applique pour les x (axe avant-arrière) et le second
pour les y (axe vertical, celui de la hauteur).
Passons enfin à la dernière
partie de donnée, la partie « movement » :
[Movement]
airjump.num = 0
airjump.height = 40
yaccel = .45
stand.friction = .85
crouch.friction = .82
airjump.num indique le nombre de saut que peut
effectuer le personnage une fois en l’air (on appelle un tel saut « air
jump » – si ce nombre est supérieur à 0, le
personnage peut donc ressauter en plein saut, autant de fois que ce nombre le
lui permet, dans des directions totalement différentes).
airjump.height est la distance minimale par rapport au sol à laquelle doit se trouver le personnage pour effectuer un air jump.
Les autres options me sont
inconnues, je ne sais pas à quoi elles servent. Elecbyte précise toutefois dans
son personnage de base, Kung-Fu Man, que yaccel est l'accélération
vertical, stand.friction est le coefficient de friction debout, et
crouch.friction, le coefficient de friction accroupi. Je ne sais
toutefois pas comment ces données influent sur la manipulation du
personnage.
La partie suivante du fichier
définit les actions en fonction des commande effectuées, selon la situation
et/ou le coup donné/reçu par le personnage. Inutile
d’entrer dans les détails, puisqu’il n’y a aucune raison de modifier ces
paramètres. Pour information, ce fichier est directement lié au fichier AIR qui
définit les animations à afficher.
On ne doit pas modifier ces
fichiers, ou alors avec prudence. On s’en sert plus en consultations. En effet,
ces fichiers définissent les coups des personnages. Cela va des coups basiques
et des déplacements aux hypers en passant par les coups spéciaux. Toutes les
commandes sont indiquées. Conclusion : si vous voulez savoir de quels coups
dispose un personnage, et que vous n'avez pas de fichier readme.txt, explorez un
peu son fichier CMD. Chaque commande est faite sur le
même principe :
; shinryuken
[Command]
name = "QCF2_a"
command = ~D, DF, F, D, DF, F, a
time = 20
En premier, il y a très souvent
le nom de l’attaque, précédée d’un « ; » puisque c’est une simple
information. Ici, nous avons donc le fameux « Shinryuken » d'Evil Ken.
Ensuite, on trouve [Command] qui
indique à l’ordinateur qu’il va trouver une commande.
Name donne le nom qui sera utilisé comme référence pour que l’ordinateur identifie cette attaque. Le plus souvent, ce nom reprend la manipulation à effectuer. Ici : QCF2_a indique QCF (Quarter of Circle Forward – Quart de cercle vers l’avant) répété deux fois, suivi du bouton a.
Command indique ensuite à l’ordinateur la manipulation à effectuer pour réaliser cette commande. Les boutons pressés sont mis en minuscule, et appelé normalement (a, b, c, x, y, z). Start est appelé « s ». Les directions sont indiqué par leur initiale en anglais et en majuscule : F, DF, D, DB, B, UB, U, UF désignent respectivement : avant (Forward), bas avant (Down Forward), bas (Down), bas arrière (Down Backward), arrière (Backward), haut arrière (Up Backward), haut (Up), haut avant (Up Forward). Enfin, sont utilisés divers caractères pour indiquer l’action à réaliser :
/ pour « enfoncé » : /D signifie direction bas maintenue
~ pour « relâché » : ~D signifie direction bas relâchée
$ pour direction principale : en mettant $D, on peut utiliser bas, bas avant et bas arrière indifféremment
+ pour indiquer plusieurs boutons à presser en même temps : a+b signifie qu’il faut presser a et b en même temps
exemple de commande combinée : ~30$D, a+b : laisser bas enfoncé pendant 30 « ticks » (60 ticks font une seconde de temps de jeu), donc une 1/2 seconde, puis relâcher en pressant a et b en même temps.
Time indique en ticks le temps dont on dispose pour réaliser la commande. Cette information est optionnelle, mais souvent présente toutefois.
Ce sont des fichiers d’animation,
qui indique à l’ordinateur où et comment afficher les sprites des fichiers SFF. On ne
s’en sert que pour créer des personnages, et on ne s'étendra donc pas
dessus.
On les a beaucoup évoqués, il est
temps de les étudier un peu plus ! Il s’agit des fichiers graphiques du
personnage. C’est là que l’on retrouve toutes les positions que peut adopter un
combattant ! Ce sont également les fichiers les plus volumineux composant
un personnage.
Ces fichiers peuvent s’ouvrir
notamment avec un utilitaire nommé « MCM » (Mugen Character Maker). Ce programme n'est pas le seul qui puisse
ouvrir ces fichiers, mais c'est celui qui est le plus universellement reconnu.
Ce programme permet de lire les fichiers SFF, mais également d'en composer,
lorsque l'on crée des décors, des screenpacks, des personnages, des intros,
etc.
Nous ne nous en servirons
cependant que pour visionner les images propres à un personnage. Lorsqu’on ouvre
un fichier SFF, voici ce que l’on a :
La barre de défilement permet
d’afficher toutes les images relatives au personnage. Evil Ken version 5.0 comprend 1031 images différentes, mais
KFM, personnage de base de Mugen, n’en contient qu’à peine 200 ! Au dessus
de l’image, on trouve « Group » et « Image ». Group indique
le numéro du groupe auquel appartient l’image, et
« Image », le numéro de l’image dans ce groupe. On constate que les
images formant une animation sont souvent regroupées dans un même groupe. En
effet, ce sont les groupes d’images qui sont appelés par les fichiers AIR vus
avant.
Il est fortement conseillé de ne
pas modifier ces fichiers. En revanche, on peut exporter ces images au format
PCX (lu par Paint et de nombreux autres programmes de
retouches d’images) en faisant SFF>Export to PCX.
Si on fait « Export all to PCX », ce sont toutes les images du fichier
qui seront extraites en PCX !
LES FICHIERS ACT
On vient de le voir, ces fichiers
permettent de créer des tenues de couleurs différentes pour un personnage.
Vous en savez désormais assez sur les personnages pour les triturer à votre guise ! Nous verrons comment ajouter, ôter, désactiver, et placer un personnage dans la section « Modifier les Paramètres généraux ». Noter quand même que dans une utilisation simple d'un personnage, vous ne devriez modifier que les sections Data et à la rigueur Size du fichier CNS. Par ailleurs, vous êtes fortement invité à respecter une certaine éthique lorsque vous manipulez ces fichiers : les personnages étant la propriété "morale" de leur créateur, vous ne pouvez pas vous amuser à les modifier dans le but de les redistribuer. Egalement, même sans modifier les personnages, vous ne pouvez pas distribuer les personnages (notamment sur le net) sans avoir demandé (et reçu !) l'autorisation de le faire à l'auteur. Il en va de même pour inclure ces personnages dans un jeu en vu de le distribuer. Si vous voulez, l'auteur vous prête son personnage, il ne vous le donne pas. En conséquence, on ne peut pas en faire ce qu'on veut. Je vous invite à lire la partie qui traite de l'éthique très attentivement, car c'est extrêmement important.
Appelés Stages en anglais, ce
sont les décors dans lesquels se déroulent les combats. Ils ne sont constitués
que de deux fichiers : un fichier DEF et un fichier SFF.
Contrairement aux personnages,
les stages ne sont pas regroupés dans des sous-dossiers spécifiques. Ils sont
tous en vrac dans le dossier Stages, mais comme ils ne comportent que deux
fichiers, il est assez simple de les repérer, d’autant qu’il porte dans 99% des
cas le même nom, seule l’extension changeant.
Nous allons utiliser le décor
« Last Street’s », composé des fichiers 10zoBG.def et 10zoBG.sff pour
étudier les décor, tout en sachant qu’il n’y a pas de raison de modifier un
décor qui fonctionne.
Comme pour les personnages, il
s’agit d’un fichier de définition. Mais il est plus complet que pour les
personnages. Nous n'allons pas étudier ce fichier en détail, puisqu'une telle
étude trouvera bientôt sa place dans un tutorial pour la création de décor. Ici,
nous nous contenterons donc d'étudier les éléments qui peuvent être intéressant
du seul point de vue du joueur :
[Info]
name = "Last Street's"
Ceci est la première chose que
l’on trouve dans un fichier DEF de décor : le nom du stage, obligatoirement
entre guillemets. Toujours pour respecter l'éthique, il est conseillé de ne pas
changer le nom donner par un auteur. Une exception peut venir nuancer cette
remarque : si deux stages portent le même nom, il est plus judicieux de le
changer dans l'un des deux, afin de les distinguer. Dans ce cas cependant, il
vaut mieux mettre l'ancien nom en commentaire : name = "nouveau nom" ;
"ancien nom".
Vers la fin du fichier on trouve
également la rubrique suivante :
[Music]
bgmusic =
bgvolume = 200
C’est là que l’on peut mettre la
musique d’un stage. Il suffit d’entrer le nom de la musique. Par exemple bgmusic = sounds/ma_musique.mp3. Le bgvolume permet d’indiquer le volume sonore, 255 étant le
maximum, 0 étant le volume par défaut.
C’est l’essentiel à savoir sur
ces fichiers. Le reste concerne la création de stage, qui fera l'objet d'un
autre tutorial (actuellement en cours de développement).
Tout comme pour les personnages,
c’est ici que l’on trouve les graphismes. On les ouvre toujours avec MCM. Ils sont cependant moins volumineux, leur nombre
d’images dépassant rarement 20 (cas de décor animé, sinon, il n'y en a qu'une ou
deux dans les décors simples). On retrouve également le principe de groupe
d’images.
Il n’y a pas grand-chose à savoir
sur les musiques. On peut utiliser quatre types de musiques, dont un
particulier : les mp3, les mod, les mid, et les cda. Les MP3 sont bien
sûr les plus répandus et d’une excellente qualité. Les MOD sont des fichiers
moins volumineux, mais beaucoup plus difficiles à trouver. Les
midi sont peu volumineux, mais de qualité douteuse. Reste les CDA, repris
avec l'extension DA dans Mugen, qui sont en fait des pistes audio de CD. Par
exemple, dans un décor, si vous mettez :
[Music]
bgmusic = 2.da
bgvolume = 255
Vous aurez alors la seconde piste
du CD audio que vous aurez mis dans le lecteur CD qui sera jouée. L’inconvénient
est qu’on est limité, puisqu’un CD comprend au maximum une trentaine de piste,
et que le temps d’accès au lecteur peut ralentir le jeu le temps du
chargement.
On peut distinguer deux types de
musiques : les musiques de décors, que l’on vient de voir, et les musiques
intermédiaires, que l’on peut placer à divers moment dans le jeu (intro du jeu,
écran de sélection…). Pour ces dernières, se reporter à « Modifier les
Paramètres Généraux de Mugen.
5. Modifier les
paramètres généraux de Mugen
C’est la partie la plus longue de
ce tutorial. Nous allons étudier plusieurs fichiers qui permettent de paramétrer
le jeu. Ces fichiers se trouvent dans le répertoire Data.
C’est un des principaux fichiers.
C’est là que l’on s’occupe des personnages et des décors, essentiellement.
Etudions le début de ce fichier :
[CHARACTERS]
evilken, STAGES\SHINMB.DEF
evilryuMB, STAGES/MUKUROBG.DEF
Darkchun, STAGES/WALL.DEF
Evil Ryu,STAGES\GAIRA.DEF
La section Characters indique à l’ordinateur les personnages à
utiliser. C’est donc là que sont manipulés les persos.
Ajouter un
personnage : Imaginons qu’on ait récupéré sur Internet un personnage
Toto.zip. Il faut décompresser l’archive dans un
répertoire Toto du dossier Chars. Il faut maintenant rechercher le fichier DEF
du personnage. Mettons qu’il se nomme Toto1.def. Il faudra renommer soit le
fichier DEF en Toto.def,
soit le nom du dossier de Toto en Toto1. On va dire que l’on renomme le fichier
DEF en Toto.def. Seconde
étape, ajouter le personnage dans la liste des « characters ». On ouvre le fichier select.def du dossier Data, et dans la section [Characters], on ajoute une ligne :
Toto, random
Et voilà, notre personnage peut désormais être utilisé ! Petite précision quand même : les fichiers de notre Toto doivent se trouver dans le dossier ../Mugen/Chars/Toto/, ce qui signifie que si la décompression vous crée un sous-dossier Toto (../Mugen/Chars/Toto/Toto/) comme cela arrive parfois, votre personnage ne marchera pas. Deux solutions s'offrent à vous : soit vous faites un couper-coller des fichiers se trouvant dans Chars/Toto/Toto pour les mettre dans Chars/Toto, et vous supprimez ensuite le dossier Chars/Toto/Toto devenu inutile, soit vous modifiez votre entrée dans le select.def, en mettant la ligne suivante : Toto/Toto, random, pour indiquer à Mugen qu'il s'agit d'un sous-répertoire.
Affecter un stage particulier
à un personnage.
Le nom du personnage est suivi d’une virgule, puis du stage dans lequel on affronte ce personnage en mode Arcade. En mettant « random », l’ordinateur choisira un décor au hasard. On peut cependant préciser un stage précis en mettant :
Toto,
Stages/10zoBG.def
Dans ce cas, le personnage Toto
se battra toujours dans le décor « Last’s Street » que nous avons vu
lors de l’étude des Décors. Attention à ne pas oublier de préciser
« Stages/ » avant le nom du décor, sinon, ça ne marchera
pas !
Comme on peut le constater dans
l’extrait du fichier select.def, que l’on mette
« / » ou « \ » n’a que peu d’importance. De même, Mugen
n’est pas « case sensitive », c'est-à-dire qu’on peut indifféremment
écrire en majuscule ou en minuscule (sauf pour les fichiers CMD).
Pour désactiver un
personnage qu’on ne souhaite plus utiliser mais qu’on ne veut pas effacer,
la méthode est simple : il suffit de mettre un « ; » en début de
ligne. Celle-ci sera alors interprétée comme un commentaire et sera ignorée par
le jeu.
Pour effacer un
personnage, il faut enlever la ligne correspondante dans le fichier Select.def, et supprimer le dossier du personnage dans le
dossier Chars.
Pour afficher les personnages
dans un ordre précis à l’écran de sélection, il suffit de d’indiquer la
liste dans l’ordre souhaitée. Ici, Evil Ken est en
premier, suivi de Evil Ryu,
puis de Dark Chun Li, et du
second Evil Ryu. Si on veut
mettre Dark Chun Li en
première position, il suffit de modifier le fichier ainsi :
[CHARACTERS]
Darkchun, STAGES/WALL.DEF
evilken, STAGES\SHINMB.DEF
evilryuMB, STAGES/MUKUROBG.DEF
Evil Ryu,STAGES\GAIRA.DEF
On peut regrouper ainsi les
personnages par jeux d'origine. Exemple :
[CHARACTERS] ;Street Fighters Chars Darkchun, random evilken, random ;SNK Chars ;Mortal Kombat Chars |
On peut également ajouter sur une
même ligne des paramètres optionnels, séparés les uns des autres par une
virgule, et dont la syntaxe est :
nomparam = valparam
nomparam désigne le nom du paramètre, et valparam la valeur du paramètre.
PARAMETRES OPTIONNELS :
les noms en gras (ex : music) remplace nomparam
· music : remplacer valparam par un
fichier son à lire pour ce personnage. Ce son va remplacer la musique
éventuellement attribuer par défaut à un décor. Ainsi, on peut avoir plusieurs
personnages qui aient le même décor, mais qui se battent sur des fonds musicaux
différents. Ex : kfm, random, music = sounds/54.mp3
· includestage : mettre le
paramètre à zéro évite d’inclure le stage en question lors de la sélection du
stage (en mode entraînement, démonstration, combat entre amis…). Ex : kfm, random, includestage =
0
· order : La valeur peut varier entre 1 et 10. Elle détermine l’ordre des combattants. L’intérêt est de pouvoir assigner un certain niveau de référence à des combattants. Par exemple, on peut assigner un order à 1 pour des personnages faibles, 9 pour les personnages puissants, avec une valeur intermédiaire (3 ou 4) pour les bonus stages. Ce paramètre fonctionne avec la section [Options], détaillée un peu plus loin. Reportez-vous à cette partie du tutorial pour comprendre le système des order. Ex : kfm, random, order=1
On peut enfin ajouter un
« randomselect », c'est-à-dire une case
marquée d’un « ? » qui va sélectionner au hasard le personnage
que vous manipulerez. Cette case se rajoute comme un personnage normal :
randomselect, random, order=3, par exemple.
Poursuivons plus loin dans le
fichier select.def :
[EXTRASTAGES]
STAGES\MOYENMOUTIER.DEF
STAGES\FALL.DEF
STAGES\MIST.DEF
STAGES\5TH.DEF
La section « ExtraStages » est la section dans laquelle vous ajoutez les décors que vous souhaitez pouvoir utiliser en mode autre que Arcade ou Team Arcade. En théorie, il n’y a pas besoin de remettre ici les stages déjà affectés à des combattants, à moins que vous ayez utilisé le paramètre "includestage = 0" pour un personnage. Cette partie sert donc à mettre des décors dans lesquels vous ne pouvez pas vous battre en mode Arcade.
Il suffit juste de mettre
« Stages/ » suivi du nom du fichier DEF du stage, comme dans l'exemple
ci-dessus.
Enfin, on arrive à la section
[Options] :
[Options]
arcade.maxmatches = 12,0,0,0,0,0,0,0,0,0
team.maxmatches = 8,0,0,0,0,0,0,0,0,0
On va retrouver ici le principe
du « Order » vu dans les paramètres
optionnels des personnages.
Arcade.maxmatches s’applique au mode Arcade, et team.maxmatches
au mode Team Arcade. Les deux commandes fonctionnent exactement sur le même
principe :
Ce principe diffère selon que
vous ayez ou non inclus des orders pour les
personnages. Si ce n’est pas le cas, seul le premier nombre est important,
puisqu’il indique le nombre de matchs qu’il vous faut gagner pour terminer le
mode Arcade ou Team Arcade.
Si vous avez des orders pour les personnages, dans ce cas, le premier nombre
indique le nombre de matchs contre des personnages d’order 1 à gagner, le second, le nombre de matchs contre des
personnages d’order 2, etc. Exemple :
[Options]
Arcade.maxmatches = 4,3,1
Team.maxmatches = 2,1,1
Dans ce cas, en mode Arcade, vous affronterez quatre personnages pris au hasard
parmi ceux qui ont un order à 1, puis vous combattrez
trois personnages pris au hasard parmi ceux qui ont un order à 2, et enfin 1 personnage pris hasard parmi ceux qui
ont un order à 3, soit au total 8 matchs.
En mode Team Arcade, vous
affronterez deux équipes de personnages d’order 1 au
hasard, puis une équipe de personnages d’order 2, et
une équipe de personnages d’order 3, soit 4 machs au total.
On peut ainsi créer dix groupes
de niveau de combattant, puisqu’on peut mettre une valeur de 1 à 10 pour le
paramètre order. Par ailleurs, si vous n'attribuez un
order fort (order=10, par exemple) qu'à un unique combattant, et que l'incluiez
dans le Arcade.maxmatches, vous aurez ainsi un boss dans le jeu, que vous
affronterez fatalement. Ex :
Arcade.maxmatches =
3,0,0,3,0,0,3,0,0,1
Vous affronterez ainsi 3
personnages d'order 1, puis trois persos d'order 4, puis trois persos d'order 7,
et enfin un perso d'order 10 (le boss en question). Notez que les zéros sont
indispensables, car si on avait mis 3,3,3,1, l'ordinateur vous aurait fait
affronter 3 persos d'order 1, 3 persos d'order 2, 3 persos d'order 3 et un perso
d'order 4. Et ce, même si vous n'avez aucun combattant avec un order = 2 (dans
ce cas, l'ordinateur passe à l'order suivant).
Notez aussi qu'on peut utiliser
la même technique pour insérer des bonus stages à un emplacement précis dans le
mode Arcade.
Ce système peut ainsi permettre de faire augmenter de façon progressive et logique la difficulté des tournois en jeu seul.
Si vous souhaitez modifier ce
fichier, il est fortement conseillé de conserver une copie de ce fichier, qui
servira de copie de sauvegarde. En effet, certains paramètres de ce fichier ne
doivent pas être modifiés. Je vous présente les parties qui peuvent
l’être :
[Music]
title.bgm =
title.bgm.loop = 0
select.bgm =
select.bgm.loop = 0
vs.bgm =
vs.bgm.loop = 0
Il s’agit ici des musiques
intermédiaires, évoquées dans la section « Musiques ». Lorsque le nom
du fichier est invalide, aucune musique n’est jouée. Si vous ne voulez pas de
musique, laissez les valeurs vides, comme ci-dessus. Pour les pistes CD Audio,
mettez le numéro de la piste avec l’extension *.da (ex : 4.da pour jouer la
piste 4 du CD). Pour un fichier 54.mp3 (exemple) placé dans le répertoire
« sounds » voici la syntaxe : title.bgm = sounds/54.mp3
Title.bgm est la musique à jouer à l’écran
principal (ou écran titre)
Title.bgm.loop indique si la musique de titre doit être répétée indéfiniment (1) ou si elle ne doit être jouée qu’une seule fois (0).
Select.bgm est la musique à jouer à l’écran de sélection des personnages
Select.bgm.loop indique si la musique de l’écran de sélection des personnages doit être jouée indéfiniment (1) ou une seule fois (0).
Vs.bgm est la musique à jouer lors de l’écran présentant les deux personnages qui vont s’affronter (appelé aussi écran versus).
L’écran suivant concerne l’écran
de sélection des personnages :
[Select Info]
rows = 10
columns = 15
wrapping = 1
pos = 2,2
showemptyboxes = 0
moveoveremptyboxes = 0
cell.size = 10,10
cell.spacing = 8
cell.bg.spr = 151,0
cell.random.spr = 151,0
cell.random.switchtime = 4
rows = nombre de lignes dans l’écran de
sélection des personnages
columns = nombre de colonnes dans l’écran de sélection des personnages.
Il peut être utile de modifier ce nombre si le nombre de personnages augmente.
Ici, on a donc la possibilité de mettre 150 personnages.
Wrapping = ne pas modifier ce paramètre
Pos = ne pas modifier ce paramètre
Showemptyboxes = montre (1) ou non (0) les emplacements vides (lignes vides ou invalides du fichier select.def)
Moveoveremptyboxes = autorise (1) ou non (0) à pouvoir placer le curseur sur des emplacements vides. Ceci n’a d’intérêt que si l’option précédente est à 1, bien sûr. Par défaut, les deux sont à 0.
Cell.size = taille (x,y) de la cellule d’affichage des portraits.
Cell.spacing = censé être la taille entre les cellules. A mon avis, ça ne marche pas bien…
Cell.bg.spr = ne pas changer ce paramètre
Cell.random.spr = ne pas changer ce paramètre
Cell.random.switchtime = temps que reste
affiché un portrait avant de passer à un autre lorsqu’on se place sur une case
randomselect.
[VS Screen]
time = 150
Cette partie est relative à
l’écran versus déjà évoqué avant. C’est l’écran où s’affichent les portraits des
deux combattants qui vont s’affronter. Time indique la durée d’affichage
de cet écran.
La portion de fichier suivante se
rapporte à la démo qui se lance à l’écran titre lorsque le jeu reste inactif un
certain temps.
[Demo Mode]
enabled = 1
select.enabled = 0
vsscreen.enabled = 1
title.waittime = 600
fight.endtime = 3000
fight.playbgm = 1
fight.bars.display = 1
intro.waitcycles = 1
debuginfo = 0
enabled = 1 pour autoriser la démo, 0
pour la désactiver.
Select.enabled = 1 pour afficher l’écran de sélection des personnages, 0 pour le désactiver.
Vsscreen.enabled = 1 pour afficher l’écran versus, 0 pour le désactiver
Title.waittime = temps pendant le jeu doit rester inactif pour que la démo se lance.
Fight.endtime = temps que dure le combat de démo
Fight.playbgm = 1 pour jouer la musique du décor pendant la démo, 0 pour la désactiver.
Fight.bars.display = 1 affiche les barres de vie des combattants, 0 ne les affiche pas.
Intro.waitcycles = nombre de fois où la démo doit être jouée avant de repasser l’intro du jeu (s’il y en a une, par défaut, il n’y en a pas).
Debuginfo = 1 affiche le mode Debug (détection d’erreurs), 0 ne l’affiche pas (uniquement
si le mode Debug est lui-même actif).
[Continue Screen]
enabled = 1
Cette section permet d’indiquer
si une défaite entraîne un Game Over (fin de jeu), ou si le joueur peut recommencer (mode
Continue). Enabled à 1 autorise le
continu en cas de défaite, 0, entraîne le Game Over.
[Game Over Screen]
enabled = 1 ;Set to 1 to show game over screen, 0 to disable
storyboard = ;Game over storyboard filename
Ceci se rapporte à l’écran de
Game Over.
Enabled = 1 indique au jeu d’afficher l’écran de Game Over, 0 le désactive
Storyboard = indique le nom du fichier DEF du
Game Over. Un vide indique
qu’il n’y a pas d’écran de Game Over. Je suppose (sans l’avoir vérifié) qu’un Game Over se compose d’un fichier
DEF et d’un fichier SFF, un peu comme une intro ou une fin de jeu. Chez certains
personnages, on trouve aussi des fichiers Intro.def,
intro.sff, ending.def, ending.sff, qui sont des fichiers d’introduction et de fin.
Le Game Over devrait être
construit sur un modèle similaire… A ce jour, je n'ai jamais vu de Game
Over.
[Win Screen]
enabled = 1 ;Set to 1 to show win screen, 0 to disable *2001.04.01 NEW*
wintext.text = Bravo ! Vous etes le nouveau champion !
Ceci est l’écran de victoire qui
s’affiche si le personnage n’a pas de fin personnelle.
Enabled = 1 pour afficher un écran de victoire, 0 pour le désactiver.
Wintext.text = texte à afficher sur l’écran de
victoire. Attention, les accents ne sont pas reconnus !
[Default Ending]
enabled = 1
storyboard =
Cette partie se rapporte à une
fin plus générale du jeu, et se déroule sur le même principe que le Game Over sauf qu’il intervient en
cas de victoire. Les options sont les mêmes et fonctionnent de la même
façon.
[End Credits]
enabled = 1
storyboard =
Encore un écran basé sur le même
principe. Cette fois, il permet d’afficher les « crédits »,
c’est-à-dire l’ensemble des noms des personnes qui ont participé à la
réalisation du jeu.
C’est tout pour le system.def
C’est le fichier qui définit
l’ensemble des paramètres de l’écran de combat. La première partie est consacrée
au positionnement des divers éléments (barres de vie, nom, etc.) et nous
passerons dessus sans nous attarder pour arriver au milieu du fichier :
[Time]
pos = 160,23
;bg.spr =
counter.offset = 0,0
counter.font = 2,0, 0
framespercount = 60
pos = ne pas changer ce paramètre
; bg.spr = cette ligne commence par un « ; » et est donc en commentaire. Elle permet de mettre un son sur chaque seconde décomptée (ce qui peut-être très énervant…). Pour ce faire, enlever le « ; » et mettez un son devant le paramètre.
Counter.offset et counter.font : ne pas changer ces paramètres
Framespercount = nombre de ticks dans une seconde. La valeur par défaut est 60.
[Combo]
pos = 10,80
start.x = -40
counter.font = 2,4
counter.shake = 1
text.text = Hit Combo
text.font = 1,0
text.offset = 3,0
displaytime = 90
Cette partie s’intéresse aux
enchaînements (Hit Combo).
Pos, start.x, counter.font : ne pas changer ces paramètres.
Counter.shake = 1 permet de « secouer » le texte à chaque nouveau coup, 0 désactive cette fonction.
Text.text = texte à afficher lors des coups. Par défaut, c’est « Hit Combo ». Mais on peut franciser la chose en mettant par exemple « COUPS ENCHAINES ». On peut aussi utiliser « %i » pour mettre le nombre de coups (exemple : Enchainement de %i coups ! ») mais dans ce cas, il faut mettre un « ; » devant le paramètre counter.font pour que l’on ait pas un affichage « 5 Enchainement de 5 coups ! ».
Text.font et text.offset : ne pas modifier ces paramètres
Displaytime : temps pendant lequel le
texte est affiché
[Round]
match.wins = 3
start.waittime = 0
match.wins = indique le nombre de rounds qu’il
faut gagner pour remporter un match. Dans les jeux courants, c’est 2, mais on
peut trouver plus intéressant un match en 3 rounds gagnants. Inversement, pour
corser, on peut mettre en 1…
start.waittime = temps à attendre avant de lancer l’intro d’un personnage.
On s’arrêtera là pour ce fichier.
Cela dit, on peut trouver ensuite une section KO, Double KO, Time Over, et Draw, dans lesquels il
est possible de changer le texte à afficher pour le mettre en français.
Vous avez peut-être rencontré
déjà des fichiers CFG dans d’autres programmes ou jeux. Ce sont des fichiers
définissant des options. Voyons ce que nous pouvons modifier :
[Options]
; Basic options
Difficulty = 8
Life = 100
Time = 60
GameSpeed = 1
WavVolume = 100
MidiVolume = 100
On retrouve là les principales
options du jeu, qui sont pour la plupart accessible directement depuis
l'interface du jeu. On peut donc ici modifier la difficulté (Difficulty – de 1 à 8), la vie (Life –
entre 0 et l’infini ! c'est un pourcentage appliqué au paramètre Life de la
section Data des fichiers CNS des personnages), la durée d’un round (Time
– de 0 à l’infini), la vitesse de jeu (GameSpeed – de -10 à +10) et le volume des
sons WAV (WavVolume – de 0 à 255) et
MIDI (MidiVolume – de 0 à 255).
L’avantage, c’est que lorsqu’on
modifie ces options dans le jeu, on ne peut mettre par exemple qu’un temps de
round à 40 ou 60 secondes. Là, on peut mettre 50, ou même 47 si ça nous
chante !
; Team-only config
Team.1VS2Life = 100
Team.LoseOnKO = 1
Là, il s’agit de la configuration
du mode Team.
Team.1VS2Life = indique l’avantage en vie dont dispose une équipe contre un joueur seul. On peut mettre une valeur inférieure à 100, mais elle sera utilisée par l’ordinateur comme si c’était 100.
Team.LoseOnKO = indique si en mode Team Arcade, l’équipe perd si l’humain est KO, ou bien si l’ordinateur doit continuer le combat seul.
Ne modifier pas les options
suivantes jusqu’à la partie [Rules].
[Rules]
GameType = VS
Default.Attack.LifeToPowerMul = 5
Default.GetHit.LifeToPowerMul = .5
Super.TargetDefenceMul = 1
GameType : Comme indiqué en anglais, il
faut laisser VS car c’est le seul mode actuellement disponible.
Default.Attack.LifeToPowerMul = La valeur est un coefficient qui s’applique aux dommages reçus par un adversaire pour déterminer le niveau de Power qu’acquiert l’attaquant. Plus l’attaque est puissante, plus le power augmente. Cependant, attention : les Hyper ne rapporte aucun power normalement (sauf souvent s’ils utilisent des coups basiques).
Default.GetHit.LifeToPowerMul = C’est la même chose, mais pour la personne touchée, cette fois ! Le coefficient s’applique aux dommages reçus, et détermine le niveau de power accumulé.
Super.TargetDefenceMul = Ceci est coefficient
d’incrémentation de la résistance de l’adversaire sur des enchaînements dans
lesquels interviennent des attaques spéciales. En gros, plus ce chiffre est
grand, et moins les dommages infligés lors d’enchaînement avec des attaques
spéciales seront importants. Pour que cette fonction
soit sans effet, gardez la valeur à un. Si vous mettez un chiffre différent, il
vous faut savoir que ce coefficient s’applique tant que l’enchaînement n’est pas
terminé.
[Config]
GameSpeed = 50
DrawShadows = 1
HelperFrameEffects = 1
FirstRun = 0
GameSpeed = C’est la vitesse de déroulement du
jeu, indiquant à l’ordinateur le nombre d’images à afficher en une seconde
(elle-même précédemment définie cf. p.15). Ainsi, plus le nombre est grand, plus
le jeu va vite. Il ne faut pas mettre de valeur inférieure à 10.
DrawShadows = Indique au jeu s’il doit afficher (1) ou non (0) les ombres des personnages. Si le jeu est trop lent, dû à une configuration faible, mettez sur 0. Cependant, à partir de processeur de 300 Mhtz, il ne devrait pas y avoir de problèmes.
HelperFrameEffects = indique au jeu s’il doit afficher (1) ou non (0) les trames de fonds des aides. Mettez à 0 si le jeu a des ralentissements.
FirstRun = Mettez 1 si c’est la première fois que vous jouez !
Nous passerons sur la partie
Debug qui sert essentiellement à vérifier lorsqu’on
crée un personnage d’où viennent les erreurs. Si vous en arrivez au stade de la
création d’un personnage, je doute que vous ayez encore besoin de moi pour
comprendre cette partie !
Nous arrivons ensuite au mode
vidéo. Ici, tout dépend de votre carte graphique, et de la manière dont Mugen la
reconnaît et la gère.
[Video] Width = 640 Height = 480 Depth = 16 Stretch = 1 DoubleRes = 2 Vesamode = LINEAR VRetrace = 1 |
Les paramètres ci-dessus offrent
normalement une bonne qualité d'image, proche de ce qu'on peut voir sur un jeu
traditionnel.
Width et Height définissent la résolution de l'écran. 640x480 est un maximum, et par défaut, la configuration est en 320x240.
Depth est le nombre de couleurs à afficher. 16 est le standard, et vous ne devriez changer ce nombre que si l'affichage a un problème.
Stretch permet (en le mettant à 1) de mettre à l'échelle l'écran par rapport à la résolution choisie, si bien que vous serez toujours en plein écran, que vous jouiez en 320x240 ou en 640x480. Laissez-le donc à 1.
DoubleRes est un paramètre offrant une résolution avec un double filtrage, et donc une meilleure image. Voici les modes proposés : 0-Inactif (pour les petites configurations), 1-Diagonal Edge detection (personnellement, je n'ai pas vu de différence avec 0), 2-Bilinear filtering (permet de lisser les images, réduisant l'impression de pixellisation. Par contre, les premiers temps, on a l'impression que l'image est plus floue), et 3-Horizontal Scanlines (offre un affichage similaire à celui d'un écran TV, et du coup, une ligne sur 2 n'est pas affichée - personnellement, je trouve ça horrible...).
Vesamode paramètre le mode VESA. A voir en fonction de votre carte graphique, et comment elle réagit aux différents réglages. Pour les cartes les plus récentes, les paramètres 3 et LINEAR sont les plus recommandés.
Enfin, VRetrace permet une synchronisation dans la reconstitution de l'image en vertical. En gros, ça améliore la qualité de l'image. Mettez sur 1 sur la puissance de votre machine vous le permet.
Nous arrivons maintenant au son,
qui comporte beaucoup d’options :
[Sound]
Sound = 1
StereoEffects = 1
PanningWidth = 2
ReverseStereo = 0
WavDevice = AUTO
WavChannels = 16
ModVoices = 16
MidiDevice = AUTO
MasterWavVolume = 255
;Set the volume of wav, midi, mods and CD audio.
;Note: WavVolume does not affect mp3 or mod volume.
;Valid values are from from 0 to 255.
;For CDAVolume only, using -1 will leave the volume unchanged.
WavVolume = 255
MidiVolume = 255
MP3Volume = 255
ModVolume = 255
CDAVolume = -1
PlayMIDI = 1
PlayMP3 = 1
PlayMOD = 1
PlayCDA = 1
CDADevice =
Sound = 1 pour que le son soit actif, 0 pour
ne pas avoir de son
StereoEffects = 1 pour activer le son en Stéréo, 0 pour l’avoir en Mono.
PanningWidth = C’est l’amplitude stéréo. Il faut que le StereoEffects soit sur 1. Plus le nombre est élevé, et plus on aura l’impression que le son vient du centre, alors que plus il est faible, et plus on distinguera la séparation du son stéréo, et son propre à chaque enceinte.
ReverseStereo = Pour inverser la stéréo, et avoir le son de l’enceinte droite sur celle de gauche et réciproquement. Mettre 1 pour l’activer, 0 pour la désactiver.
WavDevice = C’est le périphérique qui va lire les son MP3 et CD. Le plus sûr est de laisser sur Auto. S’il n’y a pas de son, c’est qu’il peut y avoir un problème avec les drivers de la carte son (c’est rare, mais c’est mon cas), ou que votre matériel n’est pas supporté par Mugen. Il y a quand même peu de chance que ça se produise.
WavChannels = Nombre de canaux utilisés pour la lecture des sons Wave (MP3 essentiellement). Par défaut, c’est 16. Toutefois, si le son n’est pas bon, réduisez à 8, voire 4.
ModVoices = Nombre maximum de voix utilisés par les fichiers MOD. Ce nombre réduit le nombre de canaux réservés aux Wave. ModVoices doit être inférieur à WavChannels, car s’ils sont égaux, il n’y aura plus d’effets sonore, car tous les canaux seront utilisés pour les MOD.
MidiDevice = Même principe que pour WavDevice, mais pour les fichiers midi. Encore une fois, il est plus prudent de laisser Auto.
MasterWavVolume = Volume général pour les Wav (affecte essentiellement les MP3). Les valeurs autorisées vont de 0 à 255.
WavVolume, MidiVolume, MP3Volume, ModVolume , CDAVolume : Respectivement le volume des Wave, Midi, MP3, Mod, et pistes CD. A noter que là, le WavVolume n’a pas d’incidence sur le volume des MP3 ou des MOD. La valeur doit être comprise entre 0 et 255. Pour les CDA uniquement (pistes CD), on peut mettre -1, et dans ce cas, le volume restera inchangé (volume normal du CD).
PlayMIDI, PlayMP3, PlayMOD, PlayCDA = Pour chaque ligne, 1 autorise la lecture de fichier du type en question (respectivement Midi, Mp3, Mod, et CD), alors que 0 désactive ces sons.
CDADevice = Pour indiquer un lecteur de CD (si on plus d’un lecteur). Laisser cette ligne blanche pour utiliser le lecteur par défaut.
Notez que Mugen a beaucoup de
problèmes avec les sons, et qu'il a peu de chances de fonctionner sous XP et
Win2000. Cela vient essentiellement du fait que Mugen tourne sous DOS, et que le
DOS n'est plus qu'émulé dans ces dernières versions de Windows (alors que dans
les versions précédentes, le DOS existait comme un vrai système d'exploitation
implémenté par Windows). Mais même sur Win9.x, il se peut que vous n'ayez pas de
son. C'est mon cas, car ma carte son (VIA AC'97) ne gère pas la musique sous
DOS.
Voici maintenant la partie Miscellaneous, abrégée Misc,
c'est-à-dire la rubrique Divers :
[Misc]
PlayerCache = 0
BufferedRead = 1
;Set to 1 to free system.def
data from memory whenever possible.
;This decreases memory usage, in exchange for loading time
;before system screens.
UnloadSystem = 1
PlayerCache = Je ne suis pas sûr, mais je
crois que ça permet de mettre des combattants en mémoire, afin de les charger
plus rapidement. A voir si vous avez assez de mémoire.
BufferedRead = Apparemment c’est une option qui, activée (1), permet d’accélérer le chargement des personnages, décors et musique. L’inconvénient est que c’est gourmand en mémoire. A vous de voir si ça va vraiment plus vite ! 0 pour désactiver.
UnloadSystem = En mettant 1, vous permettrez au jeu de vider les données du fichier system.def de la mémoire vive à chaque fois que c’est possible. Vous gagnerez ainsi en mémoire. Cependant, vous aurez un temps de chargement avant les écrans systemes… Encore une fois, c’est une question de choix personnel !
A ce niveau, vous pouvez rajouter
une commande très utile :
Expires = 12,12,2003,FFFFF827 |
Elle vous permet de supprimer
l'écran d'information qui apparaît à chaque démarrage de Mugen, et qu'il faut
enlever avec la touche F1. Notez que les trois premiers chiffres forment en fait
une date d'expiration de la version bêta, et que cette ligne permet simplement
d'indiquer à quelle date expire la version bêta. C'est une fois que cette date
est passée que l'écran d'information apparaît. Ce qui fait qu'en entrant tel
quel cette ligne, vous êtes tranquille jusqu'en décembre 2003. Si vous voulez
avoir une date qui va plus loin, changer simplement 2003 par une autre année.
Passons à la rubrique Arcade,
très succincte :
[Arcade]
AI.RandomColor = 1
;This option allows the AI to input commands without
;having to actually press any keys (in effect, cheating)
;Set to 1 to enable, 0 to disable. Enabling this option
;can give the illusion of a smarter AI.
AI.Cheat = 0
AI.RandomColor = En mettant 1, vous permettez
à l’ordinateur de choisir au hasard la couleur de la tenue des combattants qu'il
va diriger. En mettant à 0, c’est la couleur par défaut qui sera utilisée.
AI.Cheat = Cette option autorise l’ordinateur qui contrôle votre adversaire à exécuter les attaques spéciales sans réaliser la combinaison nécessaire. De plus, certains personnages – dont Evil Ken ou Ogre – possèdent des combinaisons hyper complexes destinées à l’ordinateur, qui leur permettent de faire des enchaînements souvent mortels.
La fin du fichier correspond à la
configuration des boutons – clavier ou joystick. Il est plus simple de
paramétrer directement à partir du jeu.
Voilà à peu près l’essentiel de
ce que l’on pouvait dire sur Mugen. Sur Internet également, vous pourrez
retrouver d’autres personnages, d’autres décors, parfois des musiques, des
outils ou des aides.
HAVE FUN !!!
Auteur du tutorial : Mike Werewolf
Site : http://mike.werewolf.free.fr/
Date de création :
Ce texte reste ma propriété, et je vous demanderai donc de bien vouloir me contacter avant de distribuer ce tutorial autour de vous. Il en va de même si vous souhaitez modifier ce texte en y apportant des modifications, ou en supprimant des passages. Merci de respectez l'éthique Mugen afin que Mugen puisse continuer à vivre et à progresser.
L'ETHIQUE DE MUGEN, QUELQUES MOTS...
Le problème est que pas mal de personne passe outre cette éthique morale et prenne leurs aises en "hostant" (rendant téléchargeables directement depuis leur site) des personnages sans demander l'autorisation à l'auteur, en les incluant dans des jeux de la même façon, en les modifiant, ou encore pire, en vendant des jeux mugen, qui est et doit rester dans tous les cas gratuit.
Bafouer cette éthique engendre énormément de problèmes que les "pirates" (appelons-les ainsi...) n'imaginent pas toujours, ou dont ils se foutent des conséquences. Pourtant, elles existent, et se traduisent pour l'instant par le départ de créateurs de persos et de stages. Ces auteurs, qui voient leur travail (bénévole, rappelons-le) galvaudé par des profiteurs, préfèrent arrêter de créer pour la communauté Mugen, la privant ainsi de ses créations. C'est assez grave en soi puisqu'ils n'existent pas tant de créateur de personnages que cela, puisque la réalisation d'un perso demande souvent beaucoup de travail, de temps, d'énergie. Seuls les passionnés s'y risquent, et il est dommage de leur faire perdre la foi.
L'autre risque est, d'une certaine manière, plus grand encore, même s'il ne s'est pas réalisé pour l'instant : il s'agit des réactions des éditeurs. La plupart des personnages créés, sont en fait "mugenisés", c'est à dire adaptés d'un jeu vidéo pour Mugen. Ces personnages appartiennent aux firmes qui les créent (Capcom, SNK, Akklaim, etc.), et leur utilisation pour Mugen est simplement tolérée, du fait que ce concept est entièrement gratuit, et constitue une sorte "d'hommage" aux personnages. Mais si certains s'amusent à vendre Mugen, ces sociétés pourraient voir d'un mauvais oeil que des petits malins se fassent du fric sur leur travail. Elles pourraient ainsi décider d'user de leur droit de propriété pour se faire verser des royalties sur leurs créations. Le problème est qu'il y a peu de chance que ce soit les pirates qui paient, mais plutôt les créateurs : pour créer un personnage censé être distribué gratuitement, il faudrait alors payer. Mais les sociétés pourraient également envisager d'interdire purement et simplement l'utilisation de leurs créations pour Mugen. Ce serait alors la fin de ce concept.
C'est pourquoi vous êtes invités à respecter l'éthique morale de Mugen, pour lui permettre de continuer de vivre, tout simplement.