Night.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

News: Jeux d'Outremanche de l'année (...) / Tutos: Afficher une boîte de dialogue (...) / Programmes: Effekseer / Packs de ressources: Monstres des RTP / Jeux: Projet-Z / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

56 connectés actuellement

26602435 visiteurs
depuis l'ouverture

273 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Hellsoft

Planète Glutko

Le Temple de Valor

RPG Maker VX

Level Up!

Offgame

Tous nos partenaires

Devenir
partenaire



Résoudre le bug du Game Over instantané

Aide à trouver la cause du bug provoquant un game over lorsqu'il y a une condition autre en cas de défaite.

Ecrit par Gari le 08/09/2022


❤ 4

Résoudre le bug du Game Over instantané






Valable pour toutes/certaines versions de RPG Maker 2000 et 2003.

Dans le making, il y a les bugs du logiciel, les erreurs du maker, et celles qui cumulent les deux. Ce tutoriel aborde ce dernier cas, où le maker est semi responsable.

Mais d'abord, de quoi parle t-on ?
Le bug du Game Over instantané n'est pas nouveau. Vous faites un jeu, et au cours de ce jeu, vous avez un tutoriel de combat, ou un combat que vous devez perdre, mais sans enclencher de Game Over.
Habituellement dans ce genre de cas, vous allez faire votre événement pour que la défaite déclenche autre chose que le Game Over.
Vous testez, et tout fonctionne bien. Vous progressez dans le développement de votre jeu, voire vous le finissez, et soit ce combat est optionnel et vous l'oubliez complètement (normal de ne pas le retester, il fonctionnait !), soit il est non évitable, et là c'est le drame : Game Over.
Si vous êtes comme moi, vous allez chercher à modifier la condition de défaite en ajoutant un retirer statut mort devant le soin, voire en ajoutant un personnage en bonne santé dans l'équipe. Après cela, vous allez vérifier qu'un événement en processus parallèle n'enclenche pas un Game Over à cause d'un "si le perso a 0 PV, Game Over".
Et rien de tout cela ne trouvera grâce aux yeux du logiciel. Parce que l'erreur ne se trouve pas là.

Mais alors, on fait quoi ?
L'erreur se trouve bien dans un événement parallèle (qui se déclenche avant l'événement en question). Mais comment le trouver ?
Le plus simple, après avoir testé sur une map sans événement parallèle, est de noter tous vos événements communs en processus parallèles, tous les désactiver (condition = None) et les remettre en événement parallèle un par un (ou deux par deux, tant que vous suivez), et de tester le jeu. Souvent, l'erreur est liée à une condition de type :

Portion de code : Tout sélectionner

1
2
3
4
5
Condition si Actor x est équippé/sous le statut de quelque chose
  Faire quelque chose
Sinon
  Retirer quelque chose
Fin


Le problème, c'est le quelque chose qui est retiré, car il est réalisé lorsque toute l'équipe est morte, ce qui enclenche le Game Over. Et ce petit détail provoque l'écran de fin.

Pour le corriger, il suffit d'ajouter une condition. Par exemple, je veux vérifier si mon perso a un objet équipé qui ajoute des sorts, et les retirer quand l'objet est enlevé.

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
Condition si Actor x est équipé d'un objet spécifique
  Condition si Interrupteur x est désactivé
    Activer Interrupteur x
    Ajouter sort x
  Fin
Sinon
  Condition si Interrupteur X est activé
    Désactiver Interrupteur x
    Retirer sort x
  Fin
Fin



En ajoutant cette condition dans votre Sinon, vous allez éviter la suppression/l'ajout de quelque chose lorsque l'équipe est KO, et ainsi le Game Over instantané en cas de défaite. Cet exemple peut être repris pour d'autres exemples que l'équipement.

En dehors de cet usage très concret, ça montre :
- l'importance d'être précis dans sa programmation, dans ce cas dans la vérification des possibles
- qu'une erreur ne vient pas forcément de l'idée initiale qu'on s'en fait
- qu'il faut toujours tester (ou faire tester) les portions de jeux qui nous semblent acquises à différents stades de progression dans la conception.


Merci à Cherry pour avoir trouvé la piste pour trouver le bug, et à SquonK pour avoir précisé la cause du bug (ajouter ou retirer un équipement/statut/une stat fera apparaître le Game Over à partir du moment où l'équipe est à 0 PV).

Ecrit le 8 septembre 2022.
Edité le 14 septembre 2022.




Aucun commentaire n'a été posté pour le moment.

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers