Bonjour cher maker
Je vien vous proposer un script de quête fort sympathique et facilement configurable.
Omegas7's Ultimate Quest System Script
Voici le Script : Cliquez ici
Une fois le script installer, rendez vous dans le Script Scene_Menu et rendez vous a la ligne 54
et remplacer ceci :
- Spoiler:
- Code:
-
s1 = Vocab::item
s2 = Vocab::skill
s3 = Vocab::equip
s4 = Vocab::status
s5 = Vocab::save
s6 = Vocab::game_end
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
Par ça :
- Spoiler:
- Code:
-
s1 = Vocab::item
s2 = Vocab::skill
s3 = Vocab::equip
s4 = Vocab::status
s5 = Vocab::save
s6 = Vocab::game_end
s7 = 'Quêtes'
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7])
Et ensuite rendez vous a la ligne 97 (la ou il y a le 1er end) faite un espace pour pouvoir rajouter ceci :
- Spoiler:
- Code:
-
when 6
$scene = Omega_Quest.new
A quoi ça sert ?
ça sert a rajouter le Sous-Menu Quête dans le menu de base (ici en dessous de game end)
Comme voici :
- Spoiler:
§§§§§§§
Ensuite Copier puis coller ces images ci-dessous dans le dossiers graphique/systeme de votre projet.
- Spoiler:
§§§§§§§
§§§§§§§
La première image étant le menu en lui même que vous devraient renommer : QUEST HUD
La deuxième image étant le fond que l'on voit derrière que vous devraient renommer : QUEST BG
Vous pouvez évidemment modifier les image pour faire votre propre menu (ce que j'ai fait^^)
tant que les cadres restent au même endroit
Donc une fois tout installer votre menu va ressembler a ça:
- Spoiler:
§§§§§§§
Voila pour la partie installation
Maintenant passons à la partie la plus intéressante, Mais comment créer une quête ?
Nous allons créer une quête ou il faudra tuer 3 slimes
Rendez vous dans le script d'Omega et rendez vous a la lignes 90 et nous avons ceci :
- Code:
-
QUESTS[0] = [' Slime de trop.',141,99,101,'']
TASKS[0] = ['Ce debarrasser de trois slime.\v[150]',
'Retourner voir Mira',]
DESCRIPTIONS[0] = ['Mira ma demander de tuer trois slimes']
QUESTS[0] = le nom de votre quête, étant donner que c'est notre premières quête on met [0] (et oui 0 et pas 1^^)
TASKS[0] = c'est les tache que vous devraient accomplir pur finir votre quête ([0] et a mettre a 0 comme ci-
dessus cela n'influe pas sur le nombre de taches c'est pour identifier la quête)
DESCRIPTIONS[0] = comme son nom l'indique est la description de la quête(le [0] est l'identifieur de la quête,comme les autre en fait^^)
Comme il l'est indiquer notre quête s'appellera donc Slime de trop et notre objectif sera de tuer 3 Slimes
à cette ligne :
QUESTS[0] = [' Slime de trop.',141,99,101,'']
-' Slime de trop.' le nom de la quête (mettez bien 3 espaces au début sinon le début de la phrase va s'ecrire
sur l'icone)
-141 étant l'ID de la variable a laquelle la quête est associées
-99 l'icone de mission inachevées (le rond rouge)
-101 l'icone de mission terminées
-"" Ne rien mettre si vous ne souhaiter pas afficher une image spécifique pour votre quête
TASKS[0] = ['Ce debarrasser de trois slime.\v[150]',
'Retourner voir Mira',]
Ici est la partie la plus importante pour ma part car il définit chaque tache a accomplir pour finir la quête
-'Ce debarrasser de trois slime.\v[150]', C'est la première tache a accomplir(n'oubliez pas de mettre une
virgule a la fin de chaque taches)
\v[150] est l'ID de la variable des 3 slimes a tuer
-'Retourner voir Mira', C'est la deuxième tache a accomplir une fois les 3 slimes tuer
DESCRIPTIONS[0] = ['Mira ma demander de tuer trois slimes'] entre les guillemets mettez la descriptions de
votre quête.
Une fois que vous avez préparer votre quête allez dans modifier une variable:
variable 141: que vous renommerai Quête slime (141 étant l'ID de la quete)
variable 150: que vous nommerai tuer 3 slimes (150 étant l'objectif)
Maintenant créer un évènement comme ceci.
- Spoiler:
§§§§§§§
Le seul event qui importe est la variable 141 ici qui est égale a 1 ( 1étant la premiére tache c'est a dire"tuer 3 slimes)
Ensuite sur ce même event faire une deuxième page et mettre ceci :
- Spoiler:
§§§§§§§
la condition de declechement doit etre que la variable 141 soit egale a 1 (sa empeche le pnj de radoter)
maintenant creer un autre evenement comme ceci.
- Spoiler:
§§§§§§§
L'apparence importe peu il faut juste mettre la variable 150 +=1(=1 est égale aux nombre de slime présent dans le combat, si vous voulez mettre 3 slimes mettre =3)
Copier cette évènement 2 fois de plus pour que cela fasse 3 combat a faire.
Ensuite créer un évènement ou vous voulez sur la map (doit se situer sur la même map ou ce trouve les 3 combats a faire.)comme ceci
- Spoiler:
§§§§§§§
Mettez bien cette event en automatique et la condition de déclenchement doit être que la variable 150 vaut 3 ou plus, et a la deuxième page mettez en condition interrupteur local A activé.
C'est ce qui va faire que quand les 3 slime seront vaincu,vous aurez accès a la deuxièmes tache de votre quête.
Ensuite retourner a votre premier event (le PNJ qui donne la quête) et créez une troisième pages et mettez ceci.
- Spoiler:
§§§§§§§
la condition doit être que la variable 141 vaut 2 ou plus(2 étant l'event auto qui c'est declencher quand les 3 slimes ont été tuer).
mettez ici les récompense de la quête(moi j'ai mit 500G) car votre quête est maintenant terminer....pas encore en fait^^
On peut voir que a la fin de l'event j'ai mit que la variable 141 est égale a 3 !
"Mais il n'y avait que deux taches a accomplir" me diraient vous !!
En fait 3 est ce qui va faire en sorte que dans votre menu de quêtes la quête soit afficher comme accomplis et non inachevées.
Donc pensez bien a toujours mettre une variable en plus quelque soit le nombre de taches.
a la fin mettez operation : interrupteur local A = activé
Pour finir créez une 4eme pages et mettez comme condition 'interrupteur local A est activé'
(sa évitera de recevoir indéfiniment la récompense)
et mettez par exemple un message "merci pour votre aide"
Et voila c'est enfin terminé, mais comme je suis gentil je vous met une petite vidéo pour vous montrer ce que ça donne.
http://vimeo.com/28914791
PS : je tient a préciser que je suis une vrai bille en script donc si quelqu'un comme moi arrive a le faire...tout le monde le peut.
Bien sur on peut toujours améliorer ce script.