Bienvenue sur RM-Land : Le forum ! Après votre inscription, vous aurez accès à tout le forum : Partage de ressources, de scripts, résolution de vos problèmes, présentations de projets et montage de teams. |
| | Gestion de quête très simplifié | |
| | |
Auteur | Message |
---|
tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Gestion de quête très simplifié Jeu 24 Jan - 23:52 | |
| Voici un nouveau script de gestion de quête très simplifié. La gestion de quête est l'un de mes premiers travaux sur RPGmakerXP. La première version était très complexe à mettre en place, légèrement buggée, et pas forcément esthétique. Corwin, a donc ensuite remodelé le systeme pour qu'il soit plus fonctionnel et surtout bien mieux visuellement. Hors, je me suis rendu compte, que beaucoup de gens avaient des difficultés à le mettre en place. J'ai donc refait un systéme complet, plus intuitif, ressemblant à la gestion de quêtes sur WoW (Descriptif, objectif(s), récompense(s)). La seule chose a faire, contrairement à l'ancien systeme, et de copier les scripts au dessus du script main et vous avez un systeme fonctionnel. Il reste toujours à définir les quêtes, mais je fournis une page web qui permet de générer le code à copier. Voici les scripts: Définition de quêtes : http://perso.orange.fr/tonyryu2/DATA/Def_Quete.txtGestion des quêtes : http://perso.orange.fr/tonyryu2/DATA/Gestion_Quete.txtet l'image à importer dans le dossier 'Picture' : Vous êtes parfaitement libre de choisir une autre image, du moment qu'elle à le nom de 'grim1' Voici le lien qui vous permettra de générer le code correspondant à vous quêtes : http://tonyryu.free.fr/pages/RMXP/quete_gen.htmlJe récapitule les commandes à utiliser pour intéragir avec la gestion de quête : $scene = Scene_Quete.new # Ouvre le livre de quete $game_party.quete_demarrer(id_quete) # Démarre une quete $game_party.quete_echouer(id_quete) # Fait echouer la quete $game_party.quete_finir(id_quete) # Fait réussir la quete et donne les récompenses $game_party.quete_parler(nom) # Permet de valider l'objectif de parler, quelque soit les quetes $game_party.quete_termine?(id_quete) # Vérifie si les objectifs sont terminé # Dans commande condition $game_party.quete_trouve?(id_quete) # Vérifie si la quête est trouvé # Dans commande condition $game_party.quete_en_cours?(id_quete) # Vérifie si la quête est en cours # Dans commande condition $game_party.quete_reussie?(id_quete) # Vérifie si la quête est réussi # Dans commande condition $game_party.quete_echoue?(id_quete) # Vérifie si la quête est échoué # Dans commande condition Les monstres tués sont automatiquement comptabilisés Pour ajouter une quête, allez dans le script de définition de quête, et vous y trouverez cette classe au début : - Code:
-
#============================================================================== # ■ Data_Quete #------------------------------------------------------------------------------ # Contient la définition des quêtes # Version Date Auteur Commentaires # 1.00 12/09/2007 Tonyryu Création # #============================================================================== class Data_Quete attr_reader :tab_def_quete #-------------------------------------------------------------------------- # ● initialize #-------------------------------------------------------------------------- def initialize # Création du tableau de quêtes @tab_def_quete = [] # Définition des quêtes @tab_def_quete[0] = { "nom" => "Allégeance au roi de Flid", "desc" => "Votre arrivée au sein du royaume ne sait"+ "\npas faite sans remous."+ "\nAller porter allégeance au roi de Flid."+ "\n "+ "\nIl serait bon de ne pas trainer.", "but" => [["PARLER",0,"Roi de Flid"],["CHASSER",5,1]], "gain" => [["EXP",2000,],["ARGENT",300,],["OBJ",1,10]]}
@tab_def_quete[1] = { "nom" => "Force d'outre-tombe II", "desc" => "Cela fait maintenant 2 semaines que les"+ "\nfantomes envahissent nos plaines, il faut"+ "\nles réexpédier d'où ils viennent. Usez"+ "\nde tous les moyens nécessaires.", "but" => [["CHASSER", 5, 1]], "gain" => [["ARME",1,5],["OBJ",2,1],["EXP",200]]}
end end Si vous avez déjà généré une quête via la page web, vous pouvez constater que vous retrouver à peu de chose près les mêmes blocs : - Code:
-
@tab_def_quete[1] = { "nom" => "Force d'outre-tombe II", "desc" => "Cela fait maintenant 2 semaines que les"+ "\nfantomes envahissent nos plaines, il faut"+ "\nles réexpédier d'où ils viennent. Usez"+ "\nde tous les moyens nécessaires.", "but" => [["CHASSER", 5, 1]], "gain" => [["ARME",1,5],["OBJ",2,1],["EXP",200]]} Les descriptifs de quêtes, fournis avec le script, sont des exemples, n'hésitez surtout pas à les remplacer par vos définitions. Attention, il faut juste respecter une chose, l'ID (index) de la quête, utilisé pour le tableau '@tab_def_quete'. La première définition doit avoir l'ID égale à 0, et ensuite il faut incrémenter de 1 en 1. Voici un petit exemple d'événement : - Code:
-
Map ID: 1, Nom: MAP001 Evènement ID: 004, Nom: EV004
------ PAGE 1 ------
Conditions de l'évènement :
Apparence: - Character : 010-Lancer02, Ton : 0, Regarde en Bas, Modèle n°0, Opacité : 255, Transparence : Normal
Mode de déplacement: - Type de déplacement : Fixe - Vitesse de déplacement: Lent - Fréquence de déplacement: Basse
Options: - Animé lorsqu'il se déplace
Conditions de déclenchement: - Par la touche action
Commandes d'évènement:
<>Condition : si Script : '$game_party.quete_trouve?(1)' <>Condition : si Script : '$game_party.quete_reussie?(1)' <>Message : Nous sommes heureux de te compter : : parmis nous!! <> : Sinon <>Condition : si Script : '$game_party.quete_termine?(1)' <>Message : Je vois que tu as fait ce qu'il fallait, : : prend ta récompense. <>Script : $game_party.quete_finir(1) <> : Sinon <>Message : Continue ainsi. <> : Fin <> : Fin <> : Sinon <>Message : Quelques mort-vivants nous agace. : : Veux tu nous aider à les renvoyer : : d'où ils viennent? <>Proposer un choix : Oui, Non : Si [Oui] faire : <>Message : Merci pour ton aide! <>Script : $game_party.quete_demarrer(1) <> : Si [Non] faire : <>Message : Tampis, je t'aurais cru plus courageu. <> : Fin <> : Fin <>
Et pour finir, un petit screenshoot du rendu : N'hésitez pas à poster des commentaires ou des demandes d'amélioration. | |
| | | Sam-rpg Administrateur
Nombre de messages : 2492 Age : 30 Localisation : Bayonne Date d'inscription : 01/05/2007
| Sujet: Re: Gestion de quête très simplifié Ven 25 Jan - 0:03 | |
| Très jolie ! Ce script est sans doutes très utiles pour certains types de jeux (bien que ce ne soit pas le cas pour le mien). | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Ven 25 Jan - 0:14 | |
| c'est un bon script ! Tu as mis combien de temps pour le faire ? Est-ce qu'on peut le modifié ou le "irci" nous l'interdit ? Si j'ai bien compris, tu avais fait une première version trop compliqué que Corwin a modifié, mais c'était encore trop compliqué alors tu l'as refait en le simplifiant ? merci des indications P.S : tu as beau avoir posté un très bon script, tu es quand même obligé de te présenter, qustion de respect, ca me permettra de mieux te connaitre par exemple ! edit : merci pour les indic'
Dernière édition par le Ven 25 Jan - 11:46, édité 2 fois |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Ven 25 Jan - 0:51 | |
| excellent ce script ! j'en avais trouvé un dans le même style mais il était moche et pleins de bug. je sens qu'il va beaucoup me servir... |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Ven 25 Jan - 9:53 | |
| Oui très pratique et très bien fait ce script, merci à toi tonyryu |
| | | tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Re: Gestion de quête très simplifié Ven 25 Jan - 10:38 | |
| - ZZZZHack a écrit:
- c'est un bon script ! Tu as mis combien de temps pour le faire ? Est-ce qu'on peut le modifié ou le "irci" nous l'interdit ?
Si j'ai bien compris, tu avais fait une première version trop compliqué que Corwin a modifié, mais c'était encore trop compliqué alors tu l'as refait en le simplifiant ? merci des indications
P.S : tu as beau avoir posté un très bon script, tu es quand même obligé de te présenter, qustion de respect, ca me permettra de mieux te connaitre par exemple ! L'irpi est une norme calqué de la base légale sur la protection de création, au titre de la propriété intellectuelle. Cependant chacun est libre de mettre ces scripts dans ses projets, je ne demande même pas d'apparaitre dans les remerciement du moment que mon travail est respecté en tant que tel, ça me convient emplement. Tout ça pour dire que chacun est aussi libre de modifier mes scripts à leurs convenances, c'est d'ailleur pour cela que je prend pas mal de temps à tout bien commenter. Pour l'historique du script, j'avais fais une gestion de quête à l'arrache version usine AZF qui fonctionnait très bien dans mon projet de l'époque, mais qui lors de son partage à la communauté, c'est révélé une calamité. Corwin a donc retravaillé dessus à partir du fonctionnement et des scripts de base, mais en l'améliorant énormément, cependant cela restait toujours très très lourd a installer. J'ai donc refais le systeme en recommençant tout à zéro, en utilisant l'expérience ruby que j'ai pu aquérir en 3 ans. J'ai mis à tout péter une quinzaine d'heure sur ce script, il est très simple, il y'a peu de fenêtre et j'avais fais une doc avant de me lancer dans le codage. je me suis présenté | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Ven 25 Jan - 21:54 | |
| si je l'utilise (et je l'utiliserais sans doute), je mettrais quand même ton nom dans les crédits (sauf si tu veux garder l'anonymat). c'est ma façon de respecter ton travail. |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Sam 26 Jan - 14:54 | |
| Tonyryu tu pourrais expliquer un peu plus en détail comment utiliser la définition et la gestion des quêtes ainsi que l'interêt et l'utilisation du code s'il te plaît ^^ ? |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Sam 26 Jan - 16:04 | |
| J'adore ce script génial le livre ouvert avec les quêtes frenchement je te bravo voilas un bon script |
| | | tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Re: Gestion de quête très simplifié Sam 26 Jan - 16:49 | |
| - monstre a écrit:
- Tonyryu tu pourrais expliquer un peu plus en détail comment utiliser la définition et la gestion des quêtes ainsi que l'interêt et l'utilisation du code s'il te plaît ^^ ?
Je suis désolé, mais non, je peux difficilement faire plus détaillé. L'installation et l'utilisation du script nécessite la lecture du topic d'installation et des essais, je ne peux maleheuresement le faire pour toi. | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Sam 26 Jan - 17:21 | |
| Ah d'accord... Et tu peux pas juste m'éclairer pour "générer nos codes" ? |
| | | tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Re: Gestion de quête très simplifié Sam 26 Jan - 20:19 | |
| As tu cliquer sur le lien t'ammenant sur un formulaire pour générer le code de ta quête a copier dans le script de définition de quête? | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Sam 26 Jan - 23:12 | |
| Oui j'ai vu à quoi ça ressemblait en cliquant sur le lien que tu as donné. |
| | | tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Re: Gestion de quête très simplifié Dim 27 Jan - 2:00 | |
| Et bien une fois que tu aura remplis tous les champs nécessaire pour faire ta quête, tu appuis sur "générer la définition de quête", ce qui te donneras le code Ruby à copier dans le script. C'est tout bête | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Dim 27 Jan - 14:33 | |
| A quoi ça correspond "ID" (juste au dessus de nom) et "Nombre ID" ? |
| | | tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Re: Gestion de quête très simplifié Dim 27 Jan - 18:38 | |
| Ca correspond à la position qu'aura la quête dans le tableau de quête. Comme pour les variables où les interrupteurs. | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Lun 28 Jan - 9:56 | |
| D'accord, il faut donc mettre 3 ID en tout c'est bien ça ? |
| | | tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Re: Gestion de quête très simplifié Lun 28 Jan - 15:31 | |
| J'aimerais, que tu fasses divers essais du script et de paramètrage avant de poser tes questions, a chaque fois que je t'ai répondu, je n'ai fait que reformuler ce qu'il y avait dans le premier post de ce topic.
Il est évident que l'on est pas limité en nombre de quête, la première devant juste avoir l'id 0, les autres n'ont qu'a ce suivre, la deuxieme l'ID 1, la troisième, l'id 2, etc.... | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Mer 30 Jan - 12:14 | |
| Super ton script. Il m'est obligatoire dans mon jeu. C'est vrai la version precedent est tres compliqué j'ai pas peut l'utilisé. J'ai une question: Si on fait l'objectif est de parler a quelqu'un on met l'id le nom de l'event ? Et pour "chasser" il faut indiqué l'id du monstre dans la base de donne? Et comment je peut faire pour mettre une option dans le menu pour ouvrir le livre de quete(j'ai essayé mais le livre s'ouvre desque j'ouvre le menu)? |
| | | tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Re: Gestion de quête très simplifié Jeu 31 Jan - 12:33 | |
| Alors pour ce qui est de l'objectif de parler a quelqu'un, c'est un peu particulier car il faut le gérer manuellement, c'est à dire qu'il faut mettre en objectif un nom unique pour un PNJ, car pour finir la quete il faut utiliser la fonction 'quete_parler(nom)' qui parcourera toutes les quêtes en cours et validera tous les objectifs PARLER qui auront le même nom. Ce qui à l'avantage d'avoir plusieurs quêtes ayant le même objectif pour parler à quelqu'un.
Quant à l'objectif CHASSER, il faut juste mettre l'id du monstre de la base de données. | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Jeu 31 Jan - 13:18 | |
| Et pour mettre la commende quete dans le menu ? c'est ce qui manque dans le script. |
| | | tonyryu Membre actif
Nombre de messages : 83 Date d'inscription : 24/01/2008
| Sujet: Re: Gestion de quête très simplifié Jeu 31 Jan - 13:42 | |
| - Citation :
- $scene = Scene_Quete.new # Ouvre le livre de quete
Après pour les rajouts d'option dans le menu, c'est la base de la base du custom scripté dans RPGmaker XP. Vu le nombre de topic qui traite de se sujet sur bon nombre de forum, je n'en vois pas forcément l'interret dans remettre une couche. | |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Jeu 31 Jan - 20:14 | |
| Tu peut me donner le liens de ce Tutor. S'il te plait |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Sam 16 Fév - 14:35 | |
| Ce script à l'air très bien, seulement si on a pas internet sur l'ordi dans lequel on a rmxp on ne peut pas s'en servir non ?
Puisque qu'il faut un lien web pour l'ID des quêtes... |
| | | Invité Invité
| Sujet: Re: Gestion de quête très simplifié Sam 16 Fév - 21:53 | |
| un lien web pour l'ID des quêtes... que veux tu dire par la ? personne ne parle de lien web dans tous ce topic. |
| | | Contenu sponsorisé
| Sujet: Re: Gestion de quête très simplifié | |
| |
| | | | Gestion de quête très simplifié | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |
|