[PSPE 0.10.1] Bug après avoir ajouté un combat contre le rival
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 :
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 jeux
Publié le : 14/02/2021 - 13:57
Modifié le : 29/11/2022 - 07:30
Damien Linux - Administrateur
C'est une seule erreur
Certains ont eu un problème du style, mais c'était dû à un dresseur mal défini
Le nom des dresseurs dans "Groupes" de la BDD sont bien définis ? Peux-tu envoyer une image de ces derniees si possible ?
Publié le : 14/02/2021 - 14:54
Modifié le : 29/11/2022 - 07:30
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
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
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
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
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
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