Pokémon SDK Wiki
Crédits

Combats scénarisés

Ce tutoriel est destiné à un public ayant un peu d’expérience dans le domaine du making car il requiert des connaissances sur les interrupteurs et sur de l’édition en général. Il ne faut donc pas avoir peur des commandes scriptées

Les combats scénarisés sont toujours un point important à un moment ou un autre dans la réalisation du jeu pour différencier les dresseurs "normaux" des dresseurs de la ligue ou des rivaux.

Dans PSDK .24.XX, les combats scénarisés utilisent beaucoup l’onglet Troops RPG Maker XP mais pour le bon fonctionnement des combats, il faudra également quelque peu utiliser Ruby Host.

Edition dans la Base de Données RubyHost (pour les dresseurs uniquement) :

Pour activer la scénarisation des combats, il faut se rendre dans l’onglet Dresseurs de RubyHost.

Si vous avez oublié comment paramétrer un Dresseur, référez-vous à la page correspondante
Modifiez ensuite le numéro du groupe de combat (par défaut 0 qui appelle le Combat de Dresseur de l’onglet Troops dans RPG Maker XP) par un nombre supérieur à 0. Sauvegardez, la partie d’édition sur RubyHost s’arrête ici. Fenêtre d'affichage des Dresseurs dans RubyHost

Edition dans RPG Maker XP (Pokémon sauvages et Dresseurs) :

Une fois sur RPG Maker XP dans l’onglet Troops, vous avez le choix entre paramétrer un groupe de Pokémon sauvages et un Combat de Dresseur :

Paramétrer un groupe de Pokémon sauvages

Pour paramétrer un groupe de Pokémon sauvages scénarisé, il faut d’abord définir le groupe que vous souhaitez faire apparaître grâce à quelques commandes puisqu’il n’est pas possible d’éditer directement depuis RubyHost.

Il est entièrement possible de paramétrer des groupes aléatoires sur une zone donnée mais cela ne sera pas détaillé dans ce tutoriel car cela requiert des connaissances avancées en programmation.

Pour cela rendez-vous dans l’onglet Troops de la Base de Données de RPG Maker XP : Fenêtre de la Base de données de RPG Maker XP, onglet Troops

Créez un groupe que vous nommerez à votre convenance, ici, j’ai choisi Other test.

Choisissez ensuite vos Pokémon dans la barre déroulante sur le côté en double-cliquant dessus puis créez le reste du groupe comme ci-dessus à savoir :

$scene.setup_battle(type, actor_count, enemy_count)
$scene.configure_pokemons(content)
$scene.select_pokemon(range, rareness)

Pour ces trois commandes,

Il ne peut pas y en avoir moins que de Pokémon, sinon vous risquez un crash

Une fois que vous avez ça, vous êtes parés pour utiliser les commandes relatives aux combats scénarisés. Pour appeler ce groupe sauvage, vous n'avez plus qu'à créer un évènement contenant Démarrer un combat : Votre Groupe de Sauvage.

Remarque : Pour les Pokémon légendaires, vous pouvez appliquer la même méthode mais en ne mettant qu’un seul Pokémon

Paramétrer un Dresseur

Paramétrer un dresseur est très semblable à paramétrer un Pokémon si on choisit de tout faire à la main. En effet, on réapplique la méthode précédente avec pour commandes scripts :

$scene.setup_battle(type, actor_count, enemy_count, battler_filename) #battler_filename correspond au fichier du dresseur
$scene.trainer_names("name") # name correspond au nom du dresseur
$scene.trainer_class(class_id) # class_id correspond à l'id de la classe des dresseurs définie dans les textes de RubyHost
$scene.trainer_phrases("Victory phrase", "Defeat phrase") # Phrases de victoires et de défaites
$scene.configure_pokemons(content) #Pareil qu'au-dessus

Comment paramétrer un Dresseur

Il existe toutefois une manière plus commode qui fonctionne avec RubyHost : Il s'agit de modifier le groupe de l'id Groupe de Combat en mettant pour Turn 0 et Battle :

$scene.init_trainer_battle

Cela peut sembler redondant avec le groupe Combat de Dresseur, mais il n'en est rien car vous allez justement modifier des choses qui ne concernent pas les dresseurs classiques.

Commandes

Ce qu'il faut savoir, c'est que dans un évènement de combat, on peut utiliser la plupart des commandes classiques de RPG Maker XP. Les seules fonctionnalités absentes pour le moment sont les affichages d'images (C'est pour cela que pour les exemples ci-dessous, il n'y aura pas d'images).

Cependant, pour savoir quand utiliser ces fonctions, il est impératif de savoir comment les combats sont agencés. Déjà dans le span, on peut voir qu'il y a plusieurs conditions selon le moment où l'on veut scénariser le combat :

Ensuite il y a également les différents interrupteurs qui témoignent des différentes phases de combats :

Pour finir, on peut utiliser l'appel de l'équipe adverse dans le but de faire des conditions :

$scene.enemy_party.actors # l'équipe adverse sous forme d'un Array

Un exemple est donné juste en-dessous

Exemple d’un tuto de combat scénarisé (type Prof Chen) :

Exemple d’un combat contre un maître de ligue scénarisé :