Logo de Pokémon Script Project Evolved

[PSPE 0.10.1] Bug après avoir ajouté un combat contre le rival


Logo de l'utilisateurDamien Linux

Damien Linux

Demande de : Azizcan
Résolution faite par : Damien Linux
Autre participant : Symbioss

Problème :
Après avoir ajouté un dresseur dans "Groupes" de la base de données : T/\N[2] afin de désigner le rival, un bug est apparu avec le log suivant :
---------- Erreur de script : Trainer ----------
----- Type
NoMethodError
 
----- Message
- ARGS - [2]
undefined method `[]' for nil:NilClass
 
----- Position dans Trainer
Ligne 32
 
----- Backtrace
Script : Trainer | Ligne : 32 | Méthode : in `initialize'
Script : Trainer | Ligne : 31 | Méthode : in `gsub'
Script : Trainer | Ligne : 31 | Méthode : in `initialize'
Script : Load_Trainers | Ligne : 30 | Méthode : in `new'
Script : Load_Trainers | Ligne : 30 | Méthode : in `load'
Script : Load_Trainers | Ligne : 25 | Méthode : in `upto'
Script : Load_Trainers | Ligne : 25 | Méthode : in `load'
Script : Load_Group | Ligne : 27 | Méthode : in `load'
Script : Load_Group | Ligne : 17 | Méthode : in `upto'
Script : Load_Group | Ligne : 17 | Méthode : in `load'
Script : Load_Data | Ligne : 18 | Méthode : in `load'
Script : Main | Ligne : 34

Résolution :
Ce bug sera patch dans PSPE 0.10.2

Si vous ne voulez pas attendre, voici les action à effectuer :
Ouvrez l'éditeur de scripts et allez dans le script main. Supprimez :
# Chargement des données
    $battle_var = POKEMON_S::Pokemon_Battle_Variable.new
    POKEMON_S::Load_Data.load

Dans le script Scene_Title_SG, l.49 :
Au-dessus de :
if File.exist?("Options.rxdata")
      $data_system.windowskin_name =$save[3] #chargement du Windowskin
      $message_dummy =$save[4] #Chargement de la boîte des dialogues
    end
Ajoutez :
# Chargement des données
    $battle_var = POKEMON_S::Pokemon_Battle_Variable.new
    POKEMON_S::Load_Data.load

Enfin, dans le script Trainer, l.31 :
Remplacez :
@name = name.gsub(/\\[Nn]\[([0-9]+)\]/) do
        $game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
      end
Par :
@name = name.gsub(/\\[Nn]\[([0-9]+)\]/) do
        $data_actors[$1.to_i] != nil ? $data_actors[$1.to_i].name : ""
      end


Publié le : 06/03/2021 - 21:50

Modifié le : 29/11/2022 - 07:30


Historique :


Logo de l'utilisateurAzizcan

Azizcan

Bonjours, a tous ! je suis nouveau ici et donc ce post pour moi et le 1er :embarrassed:
enfin bref, donc j'ai migrer mon projet qui etait sur psp0.9.4 vers pspe (car il y a beaucoup de nouveauté qui m'ont plus)
puis une fois que j'ai tout configurer dès que j'ai lancer le jeux (depuis rpg maker) j'ai eu ces 2 erreur qui vienne l'un après l'autre:



voici le log :
https://pastebin.com/XgRD5Q60

je ne sais pas si j'ai mal configurer un truc mais sa me dérange beaucoup parce que sinon je peut pas développer mon jeuxemoji


Publié le : 14/02/2021 - 13:57

Modifié le : 29/11/2022 - 07:30

Logo de l'utilisateurDamien Linux

Damien Linux - Administrateur

C'est une seule erreuremoji


Certains ont eu un problème du style, mais c'était dû à un dresseur mal définiemoji

Le nom des dresseurs dans "Groupes" de la BDD sont bien définis ? Peux-tu envoyer une image de ces derniees si possible ?emoji


Publié le : 14/02/2021 - 14:54

Modifié le : 29/11/2022 - 07:30

Logo de l'utilisateurAzizcan

Azizcan

Je vien de trouver mon problème.....:fedup: enfaîte sa venait de l'un de mes dresseur qui avait ce nom "T/\N[2]"
car je voulais que le dresseur se nomme de la manière auquel on le nommera notre rivale mais a ce que je vois dans pspe sa ne marche pas :/
y'a t-il un moyen de le faire tout de même ? :embarrassed:


Publié le : 14/02/2021 - 15:35

Modifié le : 29/11/2022 - 07:30

Logo de l'utilisateurVladandGaret

VladandGaret

Si quelqu'un a la réponse, ça m'intéresse fortement car j'ai eu le même problème dû à l'un de mes dresseur qui s'appelait aussi \N[2]


Publié le : 14/02/2021 - 17:31

Modifié le : 29/11/2022 - 07:30

Logo de l'utilisateurSymbioss

Symbioss - Contributeur PSPEvolved

Parce que "T/\N[2]" fonctionnait dans PSP 0.9.4 remastered et pas dans PSPE ?


Publié le : 14/02/2021 - 19:11

Modifié le : 29/11/2022 - 07:30

Logo de l'utilisateurAzizcan

Azizcan

Oui sur psp0. 9.4 sa fonctionnais mais sur pspe sa ne marche plus 😢


Publié le : 14/02/2021 - 19:30

Modifié le : 29/11/2022 - 07:30

Logo de l'utilisateurDamien Linux

Damien Linux - Administrateur

C'est noté, ce sera patch dans une prochaine version


Publié le : 14/02/2021 - 21:51

Modifié le : 29/11/2022 - 07:30

Logo de l'utilisateurDamien Linux

Damien Linux - Administrateur

J'apporte quand même la résolution au problème, il s'agissait bien d'un bug.

Si tu ne veux pas attendre le patch et rectifier le problème voilà ce qu'il y a à faire :
Ouvre l'éditeur de scripts et va dans le script main. Supprime :
# Chargement des données
    $battle_var = POKEMON_S::Pokemon_Battle_Variable.new
    POKEMON_S::Load_Data.load

Dans le script Scene_Title_SG, l.49 :
Au-dessus de :
if File.exist?("Options.rxdata")
      $data_system.windowskin_name =$save[3] #chargement du Windowskin
      $message_dummy =$save[4] #Chargement de la boîte des dialogues
    end
Ajoute :
# Chargement des données
    $battle_var = POKEMON_S::Pokemon_Battle_Variable.new
    POKEMON_S::Load_Data.load

Enfin, dans le script Trainer, l.31 :
Remplace :
@name = name.gsub(/\\[Nn]\[([0-9]+)\]/) do
        $game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
      end
Par :
@name = name.gsub(/\\[Nn]\[([0-9]+)\]/) do
        $data_actors[$1.to_i] != nil ? $data_actors[$1.to_i].name : ""
      end

Par rapport à PSP 0.9.4, les données ne se chargent pas pareil, on a pas mal optimisé. Sauf qu'actuellement quand on chargeait les dresseurs, on ne chargeait pas les acteurs, du coup le rival était inconnu d'où le crash.
Ma correction diffère le moment où le chargement des données est effectué, après que les acteurs ont été chargés + va chercher dans $data_actors, car $game_actors n'est pas encore créé


Publié le : 06/03/2021 - 21:47

Modifié le : 29/11/2022 - 07:30