Talents PSP 0.9.2

8 Réponses • 461 Vues

Bonjour à tous et à toutes,
En jetant un coup d'oeil sur les suggestions-bugs du serveur Discord de Pokémon Ambre, j'ai remarqué qu'il manquait pas mal de talents dans les Battle_Core. En conséquence, le temps de l'arrivée de PSP 0.10, je vous propose que je recode certains de ces talents. Pour le moment j'ai juste recodé le talent Motorisé, que l'on m'avait signalé. Aussi, si vous pouviez me donner votre avis à propos des talents qu'il faudrait coder et de ceux qui devront être faits en priorité.

Talent Motorisé
(/!\ Ce script n'a été testé que sur PSP 0.9.2, le support ne se fera que sur ce SK et non sur ses dérivés. De plus, ces corrections ne sont pas nécessaires et sont irréalisables sur PSDK) :

Pour le talent Motorisé, il vous faudra vous rendre dans le Battle_Core_1 et trouver
def status_check(target, status, forcing = false)
      # Immunités
      # Poison
      if (target.type_poison? or target.type_steel?) and
          (status == 1 or status == 8)
        draw_text(target.given_name + " est insensible", "au poison!")
        wait(40)
        return
      end
En-dessous, vous devrez placer :
      if target.ability == 79 and target.type_electric? and status == 2 and (target == @actor? @enemy_skill : @actor_skill).type == 4 
        #Motorisé
        return
      end
Ensuite, rendez-vous dans le Battle_Core_2 vers la ligne 1185  et à la place de :
attack_animation(info, hit, miss, user, user_skill, user_sprite, target_sprite)
Mettez :
        unless (target.ability == 79 and user_skill.type == 4) #Motorisé
          attack_animation(info, hit, miss, user, user_skill, user_sprite, target_sprite)
        end
Puis vers la ligne 2436 après :
case target.ability
(qui est situé avant un
when 28
)
placez :
            when 79 #Motorisé
              if target.type_electric? and user_skill.type == 4
                draw_text("#{target.ability_name} de #{target.given_name} l'immunise", "aux dégats de type Electric")
                wait(40)
                n = target.change_spd(+1)
                raise_stat("SPD", target, n)
              end
Enfin vers la ligne 2977 après
case target.ability
(situé avant
when 47
) placez :
        when 79 #Motorisé
          if target.type_electric? and user_skill.type == 4
            base_damage = 0
          end
Normalement vous pouvez tester et admirer ce nouveau talent (sauf si j'ai oublié un bout du code en tapant ce message :peur:)
En espérant vous avoir aidé  :)

ERRATUM PSP 0.8.6 : d'après la remarque de Symbioss les deux case target.ability ne sont pas aux mêmes endroits dans les scripts. Il s'agit des deux du milieu situés au-dessus de when 28 et when 47

Talent Déguisement c'est par ici

« Modifié: 28 février 2019, 06:36:42 par yyyyj »

Patch PSP

Merci à toi yyyyj pour cette initiative, ce sera très utile en attendant PSP0.10 !

"Motorisé" testé dans une version PSP0.8.6 améliorée, je confirme qu'il fonctionne.
Pour ceux qui ont des versions antérieures de PSP, les lignes ne sont pas aux mêmes endroits, donc utilisez ctrl+F dans les script.
Il y a 4 fois la ligne suivante, pas du tout aux mêmes endroits que sur PSP0.9.2 :
case target.ability
Celles dont parle yyyyj sont les deux du milieu.
Très bonne initiative ^^

Je sais que le Talent Déguisement ne fonctionne pas.
Aurais-tu une idée de comment le faire marcher ?

Encore bravo pour ce topic, ça va en aider plus d'un ^^ (Moi le premier)
Je vais voir ce que je peux faire pour remédier à ce talent Déguisement, il est vrai que c'est bizarre puisqu'il est censé être codé, mais comme il ne marche pas ça sert à rien, je vais remettre ça à jour prochainement, merci  :)
Bon j'ai passé une bonne heure sur ce talent Déguisement, puisqu'il était "presque" fonctionnel mais il comportait deux erreurs majeures : il ne fonctionnait que lorsque le Pokémon était du même type que l'attaque, ce qui était totalement inutile, et il inversait les types entre ennemi et notre Pokémon. J'ai finalement corrigé ça. Je reprécise que les lignes sont indicatives puisque ma version de PSP 0.9.2 n'est plus très propre vu que j'expérimente des trucs en même temps : vers la ligne 2453 vous avez un bloc commençant par when 16, supprimez le code entre when 16 et le prochain when (normalement when 9) et collez le suivant en prenant garde à n'avoir qu'un seul when 16 et à conserver le when 9 /!\ : 
when 16 # Déguisement / Color change (ab)
              type = user_skill.type
              if ![target.type1, target.type2].include?(type) and type != 0 and
                  type != target.ability_token and damage > 0 and !target.dead?
                target.ability_token = type
                string = type_string(type)
                draw_text("#{target.ability_name} de #{target.given_name}", "change le type en " + string + "!")
                wait(40)
              end
Normalement votre capacité Déguisement devrait fonctionner, n'hésitez pas à me redemander si vous avez un souci avec  :)

Merci pour tes efforts :)

Je pense qu'à partir de ça, ya moyen de faire Prothéen qui est un peu dans le même délire.

J'en profite aussi pour lister les tutos déjà présents sur le forum pour ajouter des talents.

Pickpocket et Magicien : https://pokemonworkshop.fr/forum/index.php?topic=1045.0
Déclic Tactique : https://pokemonworkshop.fr/forum/index.php?topic=3097.0

Aussi, il semble que Calque ne fonctionne pas (j'ai retrouvé un vieux sujet en cherchant les tutos des talents).
(J'ai aussi retrouvé mon vieux sujet où j'avais essayé de faire Zen Mode de Darumacho, mais je n'y étais pas parvenu).

Si j'en retrouve, je les posterai à la suite. Tu pourras les mettre dans le premier post :)
Et les autres, hésitez pas à compléter si j'en ai oublié.
Fermeté qui est utile , ne fonctionne pas non plus ^^
Yamette Yuri senpai.
Je viens de retrouver Farceur : https://pokemonworkshop.fr/forum/index.php?topic=3115.0

Concernant le premier post, peut-être devrais-tu mettre Motorisé sous spoiler :)
Ça aidera à la lecture quand il y aura un lien vers plusieurs talents.

There was an error while thanking
Thanking...