Accueil du SiteAccueil du Site  AccueilAccueil  FAQFAQ  RechercherRechercher  MembresMembres  GroupesGroupes  ConnexionConnexion  S'enregistrerS'enregistrer  




Partagez | 
 

 VX Ace Quest Manager

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
iVarlix
Paysan (niveau 3)
Paysan (niveau 3)
avatar

Masculin
Messages postés : 26
Date d'inscription : 03/05/2013
Jauge LPC :
10 / 10010 / 100


MessageSujet: VX Ace Quest Manager   Jeu 13 Mar 2014 - 22:25

Bonjour ou bonsoir!^^
Je vient vous présenter mon premier projet en C#!^^

Je me suis servir d'un Template: Quest Designer.
J'ai demander à l'auteur (Zarby), m'a autoriser de refaire le logiciel.
Donc, le logiciel n'est pas réellement fait par moi, mais de Zarby.
Tout ce que j'ai fait et de corriger des bugs, refaire l'apparence, rajouter etc... .

J’espère qui vous plaira!^^

VX Ace Quest Manager
Il vous permet de faciliter la création des quêtes, pour le script "Quest Journal" de Modern Algebra!

ChangeLog:
Spoiler:
 

Image:
Spoiler:
 

Composant requis{1.0.0 à 2.0.0}:
Spoiler:
 

Les bugs/Indisponibilité{1.2.6}:
Spoiler:
 

Prochaine Version{2.x.x}:
Spoiler:
 


Téléchargement du logiciel:

{01/1.0.0}Télécharger...
{02/1.2.6}Télécharger...
{03/2.0.0}Télécharger...


Téléchargement pack de langage du logiciel:

{01/2.0.0/Fr-1.0}Télécharger...
{02/2.0.0/En-1.0}Télécharger...


Téléchargement Aide:

{01/2.0.0/Fr-1.0}Télécharger...[/url]
{02/2.0.0/En-1.0}Télécharger...[/url]

Les remerciements:
-Zarby d'avoir créer le logiciel: Quest Designer
-Biwy de m'avoir aider a créer les scripts: QuestDatabase &  a modifier Quest MA
-Est a vous, qui utiliseront ce logiciel.


La création du .rvdata2:
Il seras mis dans l'aide, vous avez juste a prendre le script avec l'icon de script, et cliquer sur "Modifier", copier coller le
script au dessous de main ou material, et vous copier ceci au dessus de main (Obligatoire):
Code:
################################################################################
##### QUEST DATABASE
####################
################################################################################
##### Pour ajouter une nouvelle quête dans la QuestDatabase :
#
# /!\ Il faut faire tout ça avant de faire quest(id) /!\
#
# Pour ajouter une quête par le .txt, il faut ajouter une ligne comme ceci :
# ID|NAME|LEVEL|ICONE_INDEX|DESCRIPTION|OBJECTIF1#OBJECTIF2#OBJECTIF3#OBJECTIF4|OBJPRIME1#OBJPRIME2|CATEGORIE|BANNIERE|TEINTE|GIVER|LOCATION|EVENTCOMMUN|TYPE/ID/NUMBER#TYPE/NUMBER|LAYOUT
#
# Suivez l'exemple de la démo !
#
# /!\ Il faut faire tout ça avant de faire quest(id) /!\
#
################################################################################
##### Début du Script
#####################
#####################
# DataManager
# - Création et sauvegarde du fichier Quests.rvdata2
#####################
module DataManager  
  class << self
    alias lnd_quest load_normal_database
    def load_normal_database
      lnd_quest
      load_data_quest # Chargement
    end    
    def load_data_quest
      name = "Data/Quests.rvdata2"
      if FileTest.exist?(name)
        $data_quests = load_data(name)
      else
        initialize_data_quests(name) # Si le fichier n'existe pas, on le crée
      end
      update_quest if $quests
    end
    
    alias sgwr_quest save_game_without_rescue
    def save_game_without_rescue(index)
      save_data_quests
      sgwr_quest(index)
    end
    
    def initialize_data_quests(name)
      File.open(name.to_s, "a+")
     $data_quests = Hash.new   # il faut que $data_quests contienne au moins une ligne, sinon ça plante
      save_data_quests          # on le sauvegarde
    end
    
    def save_data_quests
      name = "Data/Quests.rvdata2"
      File.open(name, "w") do |file|
        Marshal.dump($data_quests, file)
      end
    end
    # Lecture des Quêtes contenues dans Quest.txt
    def update_quest
      $quests.each do |quest|
        $data_quests[quest[0]] = Quest.new
        $data_quests[quest[0]].name                 = quest[1]
        $data_quests[quest[0]].level                = quest[2]
        $data_quests[quest[0]].iconindex            = quest[3]
        $data_quests[quest[0]].description          = quest[4]
        $data_quests[quest[0]].objectives.mission   = quest[5]
        $data_quests[quest[0]].objectives.prime     = quest[6]
        $data_quests[quest[0]].categorie            = quest[7]
        $data_quests[quest[0]].banniere             = quest[8]
        $data_quests[quest[0]].teinte               = quest[9]
        $data_quests[quest[0]].giver                = quest[10]
        $data_quests[quest[0]].location             = quest[11]
        $data_quests[quest[0]].evcommun             = quest[12]
        $data_quests[quest[0]].rewards              = quest[13]
        $data_quests[quest[0]].layout               = quest[14]
      end
      $quests.clear
      save_data_quests          # on le sauvegarde
    end
  end
end

#####################
# Quest
# - Object qui correspond aux quêtes
#####################
class Quest
  attr_accessor :name, :giver, :description, :questnote, :location, :level, :iconindex, :teinte, :evcommun, :categorie, :banniere,
  :objectives, :rewards, :layout
  
  def initialize(*args) # Même ordre qu'au-dessus
    @name = args[0] ? args[0] : ""
   @giver = args[1] ? args[1] : ""
   @description = args[2] ? args[2] : ""
   @questnote = args[3] ? args[3] : ""
   @location = args[4] ? args[4] : ""
    @level = args[5] ? args[5] : 0
   @iconindex = args[6] ? args[6] : 0
    @teinte = args[7] ? args[7] : 0
    @evcommun = args[8] ? args[8] : 0
    @categorie = args[9] ? args[9] : 0
    @banniere = args[10] ? args[10] : ""
    @objectives = args[11] ? args[11] : Quest_Objectives.new
    @rewards = args[12] ? args[12] : Quest_Rewards.new
    @layout = args[13] ? args[13] : false
  end
end

#####################
# Quest Rewards
# - Object qui correspond aux primes des quêtes
#####################
class Quest_Rewards
  def initialize(*args) # Même ordre qu'au-dessus
    @rewards = args
  end
  def []=(id, a)
    @rewards[id] = a
  end
  def tb
    @rewards
  end
end

#####################
# Quest Rewards
# - Object qui correspond aux objectifs des quêtes (et le numéro des objectifs qui ont des primes)
#####################
class Quest_Objectives
  attr_accessor :mission, :prime
  def initialize(*args) # Même ordre qu'au-dessus
    @mission = args[0] ? args[0] : []
    @prime = args[1] ? args[1] : []
  end
end

#####################
# QuestData
# - Ajout de notre $data_quests au script de ModernAlgebra
#####################
module QuestData
  class << self
    def setup_quest(quest_id)
      if $data_quests.keys.include?(quest_id)
        q = { :objectives => [], :prime_objectives => [] }
        q[:name]          = $data_quests[quest_id].name
        q[:level]         = $data_quests[quest_id].level
        q[:iconindex]     = $data_quests[quest_id].iconindex
        q[:description]   = $data_quests[quest_id].description
        q[:client]        = $data_quests[quest_id].giver
        q[:location]      = $data_quests[quest_id].location
        $data_quests[quest_id].objectives.mission.each do |obj|
          q[:objectives] << obj
        end
        q[:prime_objectives]  = $data_quests[quest_id].objectives.prime
        q[:custom_categories] = $data_quests[quest_id].categorie
        q[:banner]            = $data_quests[quest_id].banniere
        q[:banner_hue]        = $data_quests[quest_id].teinte
        q[:common_event_id]   = $data_quests[quest_id].evcommun
        q[:rewards]           = $data_quests[quest_id].rewards
        q[:layout]            = false
        return q
      else
        print "Quête non configurée !\n"
        return {}
      end
    end
  end
end




module Quest_Text
  extend self
  
  def open_file
    name = "Quest.txt"
   @file = File.open(name.to_s, "a+")# if FileTest.exist?(name)    
  end
  
  def close_file
    return unless @file
    @file.close
  end
  
  def read
    return unless @file
    quests = Array.new
    @file.each_line { |line| quests << line.split("|") }
    return quests
  end
end

################################################################################
##### Lecture du .txt
# > se lance avant main
#####################
begin  
  Quest_Text.open_file
  $quests = []
  quests = Quest_Text.read
  Quest_Text.close_file  
  quests.each do |quest|
    quest[0] = quest[0].to_i # ID
    quest[2] = quest[2].to_i # Level
    quest[3] = quest[3].to_i # IconIndex
    quest[5] = quest[5].split("#")
    quest[6] = quest[6].split("#")
    quest[6].size.times { |i| quest[6][i] = quest[6][i].to_i }
    quest[9] = quest[9].to_i # Teinte
    quest[12] = quest[12].to_i # Event Commun
    quest[13] = quest[13].split("#")
    quest[13].size.times do |i|
      quest[13][i] = quest[13][i].split("/")
      quest[13][i].size.times do |i2|
        quest[13][i][i2] = :item if i2 == 0 && quest[13][i][i2] == ":item"
        quest[13][i][i2] = :gold if i2 == 0 && quest[13][i][i2] == ":gold"
        quest[13][i][i2] = quest[13][i][i2].to_i if i2 > 0
      end
    end
    quest[14] = false if quest[14] == "false" || quest[14] == "nil"
    $quests << quest
  end
end
###################
##### Fin du Script
################################################################################

Maintenant, vous avez juste a enregistrer en .rvdata2 (icône du .rvdata2).

_____________________
2D-Gamers présente:

Un forum qui parle de tout:
http://2d-gamers.activebb.net/

Tutoriel de java, rgss3, visual basic, c#, python, c++ etc...
Vous pouvez aussi y participer aux tutoriels et la vie du forum!

Si vous avez des remarques, des suggestions, ou autres, proposer-nous.

A bientôt sur le forum!

L'équipe: 2D-Gamers


Dernière édition par iVarlix le Dim 18 Mai 2014 - 12:31, édité 4 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Zexion
Administrateur
Administrateur
avatar

Masculin
Messages postés : 6223
Date d'inscription : 04/01/2012
Jauge LPC :
97 / 10097 / 100












MessageSujet: Re: VX Ace Quest Manager   Jeu 13 Mar 2014 - 22:47

Sympa ! Un p'tit lien vers le script de Modern Algebra qui fonctionne avec et ce sera parfait. oui
Je t'ajoute des points. ^^
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
iVarlix
Paysan (niveau 3)
Paysan (niveau 3)
avatar

Masculin
Messages postés : 26
Date d'inscription : 03/05/2013
Jauge LPC :
10 / 10010 / 100


MessageSujet: Re: VX Ace Quest Manager   Dim 18 Mai 2014 - 12:33

Merci!
Mais le script et directement intégrer dans le logiciel.
Pour avoir le script, faut appuyer sur l'icône a coter de l'imprimante! Smile

EDIT: Nouvelle version! Wink
Il corrige pas mal de truc, si vous avez des problème sur ce logiciel, merci de poster ici! Wink

EDIT2:
Donc voici la petite news:
-Démarrage optimiser.
-Fini les bugs du "Ouverture impossible: Un projet est ouvert!".
 Les erreurs du "Ouverture impossible: Un projet est ouvert!":
  -Que vous avez une ancienne version du "Quest.rvdata2", donc a supprimer.
  -Soit les fichier ne sont pas correctement effacer, l'erreur ne devrai plus se produire.
-L'image "IconSet.png", seras dans le dossier "Projet\\Graphics\\System"! (Il récupère l'image sans copier)
-L'image "IconSet" peut être en format .png/.jpg/.bmp.
-Plus besoins de supprimer les fichiers, ils se mettent a jour tout seul!
Est c'est tout pour le moment! Wink

Je travaille toujours dessus, dans une ou la prochaine version, le .rvdata2 seras bien en ruby!

D'autres news viendront! Wink

EDIT3: Nouvelle version!
Encore plus de nouveauté dans cette version, a vous de les découvrir!

_____________________
2D-Gamers présente:

Un forum qui parle de tout:
http://2d-gamers.activebb.net/

Tutoriel de java, rgss3, visual basic, c#, python, c++ etc...
Vous pouvez aussi y participer aux tutoriels et la vie du forum!

Si vous avez des remarques, des suggestions, ou autres, proposer-nous.

A bientôt sur le forum!

L'équipe: 2D-Gamers
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
lafouine
Paysan (niveau 1)
Paysan (niveau 1)
avatar

Messages postés : 7
Date d'inscription : 18/08/2012
Jauge LPC :
4 / 1004 / 100


MessageSujet: Re: VX Ace Quest Manager   Dim 19 Oct 2014 - 15:36


when 7
q[:name] = "Allez chez le sorcier"
q[:level] =0
qf3300]_index] = 1052 ....................<= il manque le petit tiret dans la genération du texte de quetes
q[:description] = "Aller chez le sorcier"
q[:client] = "Le sorcier"
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
iVarlix
Paysan (niveau 3)
Paysan (niveau 3)
avatar

Masculin
Messages postés : 26
Date d'inscription : 03/05/2013
Jauge LPC :
10 / 10010 / 100


MessageSujet: Re: VX Ace Quest Manager   Ven 13 Fév 2015 - 22:01

Excusez-moi du retard, bizarre, je penser que tout était mis, j'essayerais de le corriger, enfin si je retrouve mon projet. Very Happy
Mais sinon, tu peux aussi utiliser le script MA qui est modifier, il convertira le .txt dans le dossier projet en .rvdata2, il y a aucun bug, je pense.
Est encore désoler, j'ai rien reçu d’émail en me disant que j'avais un message.

_____________________
2D-Gamers présente:

Un forum qui parle de tout:
http://2d-gamers.activebb.net/

Tutoriel de java, rgss3, visual basic, c#, python, c++ etc...
Vous pouvez aussi y participer aux tutoriels et la vie du forum!

Si vous avez des remarques, des suggestions, ou autres, proposer-nous.

A bientôt sur le forum!

L'équipe: 2D-Gamers
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: VX Ace Quest Manager   

Revenir en haut Aller en bas
 
VX Ace Quest Manager
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» VX Ace Quest Manager
» Quest-ce qui sera déductible en 2011?
» mac laren MX3
» De l'utilité à renommer un événement ou autres...
» Le terme "Drakkar".

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Le Palais Créatif :: ~ PARTAGE ~ :: Ressources :: Utilitaires-
Sauter vers: