RPG Creator : créez votre MMORPG ou RPG sans aucune connaissance en programmation


Disponible le 4 Juin !




- Jouez à votre jeu sur tablettes tactiles, Smartphones et navigateurs Web
- Personnalisez vos menus
- Dessinez facilement et rapidement vos cartes
- Créez des actions pour le combat A-RPG


www.rpgcreator.net


Heures au format UTC + 1 heure [ Heure d’été ]


Règles du forum


-Mettez un titre clair et explicite, pas un titre vague.
-Fournissez le plus d'informations possible, soyez clair et concis.
-Pensez à éditer votre sujet afin d'ajouter [Résolu] dans le titre, lorsque votre demande est résolue.



Publier un nouveau sujet Répondre au sujet  [ 17 messages ]  Aller à la page 1, 2  Suivant
Auteur Message
 Sujet du message: Script de vérification de données [Résolu]
MessagePublié: 29 Jan 2012, 17:17 
Villageois (Nv 2)
Avatar de l’utilisateur

Inscrit le: 19 Mai 2010, 22:06
Messages: 30
Logiciel(s) préféré(s): After Effect, Gimp, RpgMaker, Bleder
Sexe: Masculin
Points d'aide: 0/60

Créations :

Voir ses créations

Salut les gens ! :)
Voilà, j'ai vraiment besoin pour mon jeu amateur d'un script qui me permettrait à tout moment d'aller vérifier les variables et les interrupteurs d'un autre fichier de sauvegarde que celui sur lequel le joueur est entrain de jouer. Donc, par exemple, imaginons que je me trouve dans le fichier de sauvegarde 1 (ou même dans aucun fichier existant), il faudrait que par une commande (en script ou en commentaire ou tout ce que vous voulez) je puisse aller vérifier si l’interrupteur XX est activé dans le fichier de sauvegarde 2 afin d'effectuer une action ou non en fonction de ce que me renvoi la condition (et de faire pareil avec les variables, effectuer une action en fonction de la valeur de la variable, vérifier si elle est plus grande qu'un nombre, plus petite qu'un nombre)

Voilà, je sais que c'est surrement un peu complexe mais j'en ai vraiment besoins :D
Merci d'avance ! ;)

_________________
Image


Dernière édition par Jibtou le 30 Jan 2012, 22:28, édité 1 fois au total.

Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données
MessagePublié: 29 Jan 2012, 17:48 
Artisan (Nv 5)
Avatar de l’utilisateur

Inscrit le: 22 Nov 2011, 22:01
Messages: 199
Niveau RPG Maker: Moyen
Logiciel(s) préféré(s): RPG Maker XP
Point(s) Fort(s): Scripts
Sexe: Masculin
Points d'aide: 17/60

Créations :

Voir ses créations

Salut Jibtou,
Je pourrais savoir à quoi ça va te servir? Je vais essayer de le faire,
je ne crois pas que ce soit si compliqué par contre d'après ce que j'ai en tête
tu devras faire comme suit:
Dans insérer un script (cmd d’event) il faudra écrire:
recuperer_variable(a, b, c)
recuperer_interrupteur(d, e, c)
a = id variable à récupérer
b = id variable récupérant la valeur
c = dans quelle sauvegarde chercher la valeur
d = id interrupteur à récupérer
e = id interrupteur récupérant la valeur
Bon je vais te faire ça.

Edit:
Code: Tout sélectionner
def get_switch(id1, id2, save)
  filename = "sauvegarde#{save}.rxdata" ; file = File.open(filename, "rb")
  game_switches = $game_switches
  for i in 0..3 ; $game_switches = Marshal.load(file) ; end
  switch = $game_variables[id1] ; $game_switches = game_switches
  $game_switches[id2] = switch
end
def get_variable(id1, id2, save)
  filename = "sauvegarde#{save}.rxdata" ; file = File.open(filename, "rb")
  game_variables = $game_variables
  for i in 0..4 ; $game_variables = Marshal.load(file) ; end
  var = $game_variables[id1] ; $game_variables = game_variables
  $game_variables[id2] = var
end

Il faut coller le code dans un nouveau script au dessus de main.
Ca fonctionne, il faut écrire:
get_variable(a, b, c) pour obtenir la valeur d'une variable et
get_switch(d, e, c) pour obtenir la valeur d'un interrupteur.

Tout d'abord avant de tester si ça fonctionne vérifies que tes sauvegardes ont bien
pour nom "Sauvegarde1" "Sauve..." Car si c'est pas le cas tu peux avoir un message
d'erreur.

_________________
--- Bad_maker ---

_________________


2 PA donné(s) par Samarium le 29 Janvier 2012


Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données
MessagePublié: 29 Jan 2012, 20:02 
Villageois (Nv 2)
Avatar de l’utilisateur

Inscrit le: 19 Mai 2010, 22:06
Messages: 30
Logiciel(s) préféré(s): After Effect, Gimp, RpgMaker, Bleder
Sexe: Masculin
Points d'aide: 0/60

Créations :

Voir ses créations

Incroyable, ça marche super bien, j'ai du changer "sauvegarder" dans le nom du fichier de ton script par "save" à cause d'un autre système mais c'est super!!! Ca marche du tonner, merci :D

En fait je fait un écran titre et un choix du fichier en event et j'avais envie de pouvoir afficher l'avancement de chaque partie sur l'écran de choix du fichier et c'est possible maintenant, grâce à toi, merci beaucoup.

Sinon, je vais pas faire le rabat-joie mais est-ce que se serait possible de faire une commande pour changer une valeur de variable ou de switch dans un autre fichier? se serait super (et ça m'éviterais un système plus foireux :lol:
Sinon, tu me demandais ce que je compte faire avec, et bah j'ai peut être pour idée de faire communiquer les différents fichiers de jeux. Comme ça, imaginons que je finisse une partie, et bah je pourrais avoir une deuxième partie mais avec des choses que j'ai déjà gagné dans la première et tout ;)

Encore merci pour ton aide :)

_________________
Image


Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données
MessagePublié: 29 Jan 2012, 20:38 
Artisan (Nv 5)
Avatar de l’utilisateur

Inscrit le: 22 Nov 2011, 22:01
Messages: 199
Niveau RPG Maker: Moyen
Logiciel(s) préféré(s): RPG Maker XP
Point(s) Fort(s): Scripts
Sexe: Masculin
Points d'aide: 17/60

Créations :

Voir ses créations

Je n'ai pas bien saisi ta demande, j'avais prévu d'essayer quelque chose mais
ça déconne. Donc je préfère être sûr de ce que tu veux si je dois me casser la tête ^^'

_________________
--- Bad_maker ---


Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données
MessagePublié: 30 Jan 2012, 01:02 
Villageois (Nv 2)
Avatar de l’utilisateur

Inscrit le: 19 Mai 2010, 22:06
Messages: 30
Logiciel(s) préféré(s): After Effect, Gimp, RpgMaker, Bleder
Sexe: Masculin
Points d'aide: 0/60

Créations :

Voir ses créations

Et bien c'est de pouvoir activer ou désactiver un interrupteur ou bien pouvoir changer la valeur d'une variable dans un autre fichier de sauvegarde que celui dans lequel on joue sur le moment

_________________
Image


Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données
MessagePublié: 30 Jan 2012, 06:19 
Artisan (Nv 5)
Avatar de l’utilisateur

Inscrit le: 22 Nov 2011, 22:01
Messages: 199
Niveau RPG Maker: Moyen
Logiciel(s) préféré(s): RPG Maker XP
Point(s) Fort(s): Scripts
Sexe: Masculin
Points d'aide: 17/60

Créations :

Voir ses créations

Ok, j'étais bien parti ailleurs moi ^^', j'avais compris en gros:
Changer la variable x qui a pour valeur y càd, si une variable x parmi toutes
celles existantes à pour valeur y, transférer cette valeur dans une autre
variable. Bref je vais essayer de te faire ça :lol: .

Edit: Bon je t'ai fait le script, cependant je n'ai pas trouvé de moyen pour le
raccourcir (ça prend 100 lignes et quelques). Il faut que tu remplaces tout par
ça:
Code: Tout sélectionner
def get_switch(id1, id2, save)
  filename = "save#{save}.rxdata" ; file = File.open(filename, "rb")
  game_switches = $game_switches
  for i in 0..3 ; $game_switches = Marshal.load(file) ; end
  switch = $game_variables[id1] ; $game_switches = game_switches
  $game_switches[id2] = switch
  file.close
end
def get_variable(id1, id2, save)
  filename = "save#{save}.rxdata" ; file = File.open(filename, "rb")
  game_variables = $game_variables
  for i in 0..4 ; $game_variables = Marshal.load(file) ; end
  var = $game_variables[id1] ; $game_variables = game_variables
  $game_variables[id2] = var
  file.close
end

def change_switch(id, value, save)
  filename = "save#{save}.rxdata" ; file = File.open(filename, "rb")
  characters = []
  for i in 0...$game_party.actors.size
    actor = $game_party.actors[i]
    characters.push([actor.character_name, actor.character_hue])
  end
  charas = characters
  grphFC = Graphics.frame_count
  game_system = $game_system
  game_switches = $game_switches
  game_variables = $game_variables
  game_self_switches = $game_self_switches
  game_screen = $game_screen
  game_actors = $game_actors
  game_party = $game_party
  game_troop = $game_troop
  game_map = $game_map
  game_player = $game_player
  load_save_dataB(file)
  file.close
  $game_switches[id] = value
  filename = "save#{save}.rxdata" ; file = File.open(filename, "wb")
  write_save_dataB(file)
  file.close
  characters = charas
  Graphics.frame_count = grphFC
  $game_system        = game_system
  $game_switches      = game_switches
  $game_variables     = game_variables
  $game_self_switches = game_self_switches
  $game_screen        = game_screen
  $game_actors        = game_actors
  $game_party         = game_party
  $game_troop         = game_troop
  $game_map           = game_map
  $game_player        = game_player
end

def change_variable(id, value, save)
  filename = "save#{save}.rxdata" ; file = File.open(filename, "rb")
  characters = []
  for i in 0...$game_party.actors.size
    actor = $game_party.actors[i]
    characters.push([actor.character_name, actor.character_hue])
  end
  charas = characters
  grphFC = Graphics.frame_count
  game_system = $game_system
  game_switches = $game_switches
  game_variables = $game_variables
  game_self_switches = $game_self_switches
  game_screen = $game_screen
  game_actors = $game_actors
  game_party = $game_party
  game_troop = $game_troop
  game_map = $game_map
  game_player = $game_player
  load_save_dataB(file)
  file.close
  $game_variables[id] = value
  filename = "save#{save}.rxdata" ; file = File.open(filename, "wb")
  write_save_dataB(file)
  file.close
  characters = charas
  Graphics.frame_count = grphFC
  $game_system        = game_system
  $game_switches      = game_switches
  $game_variables     = game_variables
  $game_self_switches = game_self_switches
  $game_screen        = game_screen
  $game_actors        = game_actors
  $game_party         = game_party
  $game_troop         = game_troop
  $game_map           = game_map
  $game_player        = game_player
end

def load_save_dataB(file)
  characters = Marshal.load(file)
  Graphics.frame_count = Marshal.load(file)
  $game_system        = Marshal.load(file)
  $game_switches      = Marshal.load(file)
  $game_variables     = Marshal.load(file)
  $game_self_switches = Marshal.load(file)
  $game_screen        = Marshal.load(file)
  $game_actors        = Marshal.load(file)
  $game_party         = Marshal.load(file)
  $game_troop         = Marshal.load(file)
  $game_map           = Marshal.load(file)
  $game_player        = Marshal.load(file)
end
def write_save_dataB(file)
  characters = []
  for i in 0...$game_party.actors.size
    actor = $game_party.actors[i]
    characters.push([actor.character_name, actor.character_hue])
  end
  Marshal.dump(characters, file)
  Marshal.dump(Graphics.frame_count, file)
  Marshal.dump($game_system, file)
  Marshal.dump($game_switches, file)
  Marshal.dump($game_variables, file)
  Marshal.dump($game_self_switches, file)
  Marshal.dump($game_screen, file)
  Marshal.dump($game_actors, file)
  Marshal.dump($game_party, file)
  Marshal.dump($game_troop, file)
  Marshal.dump($game_map, file)
  Marshal.dump($game_player, file)
end

get_switch
get_variable
change_switch(a, b, c)
change_variable(d, e, c)
a = id de l'interrupteur à modifier
b = valeur à donner pour l'interrupteur (true = activé; false = désactivé)
c = id de la sauvegarde dans laquelle effectuer les changements
d = id de la variable à modifier
e = valeur à donner pour la vairable (nombre)

_________________
--- Bad_maker ---


Dernière édition par Bad_maker le 02 Fév 2012, 01:07, édité 1 fois au total.

Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données
MessagePublié: 30 Jan 2012, 22:20 
Villageois (Nv 2)
Avatar de l’utilisateur

Inscrit le: 19 Mai 2010, 22:06
Messages: 30
Logiciel(s) préféré(s): After Effect, Gimp, RpgMaker, Bleder
Sexe: Masculin
Points d'aide: 0/60

Créations :

Voir ses créations

Ok merci beaucoup, je vais tester ça tout de suite :)

Mais j'ai pas bien compris dans tes instructions à quoi servent ces deux là:

C'est drôle parce que en plus je comprend un peu ton script :) Sinon merci beaucoup encore une fois, c'est super!! Je te dois une fière chandelle. Donc si à l'avenir tu a besoins d'un zolie écran titre ou d'un écran de sélection perso pour un projet RM XP, tu peux me demander, se sera avec plaisir.
Tu veux un crédit dans mon jeu ou pas :P ?

P.S. pour te montrer je te posterais une screen de mon écran une fois fini pour que tu puisse voir en quoi ton travail aura été utile)

Edit: Ça marche super bien, je vais mettre un Résolu dans le titre du post :)

_________________
Image


Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données [Résolu]
MessagePublié: 30 Jan 2012, 22:38 
Artisan (Nv 5)
Avatar de l’utilisateur

Inscrit le: 22 Nov 2011, 22:01
Messages: 199
Niveau RPG Maker: Moyen
Logiciel(s) préféré(s): RPG Maker XP
Point(s) Fort(s): Scripts
Sexe: Masculin
Points d'aide: 17/60

Créations :

Voir ses créations

Jibtou a écrit:
P.S. pour te montrer je te posterais une screen de mon écran une fois fini pour que tu puisse voir en quoi ton travail aura été utile)

Content d'avoir pu t'aider. Pour les crédits tu fais comme tu le sens.
Jibtou a écrit:
Je te dois une fière chandelle

Non, je rend service sans attendre quelque chose en retour (Je sais plus à qui je
l'avais dit... :D ). Bonne continuation dans ton projet.

_________________
--- Bad_maker ---


Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données [Résolu]
MessagePublié: 02 Fév 2012, 00:59 
Villageois (Nv 2)
Avatar de l’utilisateur

Inscrit le: 19 Mai 2010, 22:06
Messages: 30
Logiciel(s) préféré(s): After Effect, Gimp, RpgMaker, Bleder
Sexe: Masculin
Points d'aide: 0/60

Créations :

Voir ses créations

En fait je viens de me rendre compte qu'il y a un problème avec ton script, je ne saurais pas t'expliquer pourquoi mais il ne veut plus fonctionner avec les variables: lorsque j'utilise a commande get-variable, la variable qui récupère la valeur ne prend pas la valeur de la variable de l'id demandé mais elle récupère le true ou le false de l'interrupteur ayant l'id demandé. Tu ne vois pas comment résoudre le problème ?

_________________
Image


Haut
 Profil  
 
 Sujet du message: Re: Script de vérification de données [Résolu]
MessagePublié: 02 Fév 2012, 01:06 
Artisan (Nv 5)
Avatar de l’utilisateur

Inscrit le: 22 Nov 2011, 22:01
Messages: 199
Niveau RPG Maker: Moyen
Logiciel(s) préféré(s): RPG Maker XP
Point(s) Fort(s): Scripts
Sexe: Masculin
Points d'aide: 17/60

Créations :

Voir ses créations

get_switch fonctionne normalement?
J'ai édité mon post, copie le code et vérifies si ca déconne encore.

_________________
--- Bad_maker ---


Haut
 Profil  
 
Afficher les messages depuis:  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 17 messages ]  Aller à la page 1, 2  Suivant

Heures au format UTC + 1 heure [ Heure d’été ]


Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Rechercher pour:
Sauter vers:  
cron
RPG Creative Forum version 5 ; Tous droits réservés
phpBB Group (Traduit par Xaphos)
Optimisé pour une résolution 1024*728