Partagez
Aller en bas
avatar
Nash
Membre

Nombre de messages : 4
Distinction : aucune
Date d'inscription : 20/09/2017

Création d'un système de menace + Relations entre les personnages

le Ven 22 Sep 2017 - 16:10
Bonjour tout le monde,

Je me tourne vers vous car je suis actuellement "bloqué" (ça ne m'empêche pas d'avancer, mais ce sont deux features indispensables à mon projet), par deux éléments dans le développement de mon jeu.

Avant de me lancer, je tiens à préciser que j'utilise pour l'instant le système de combat classique de VX Ace, avec quelques modifications de mon cru. Mais elles restent très mineures (trop mineures pour avoir un impact sur le script que je cherche à faire).

Le premier est assez simple : je suis très insatisfait de l'IA de VX Ace, surtout dans sa manière de choisir ses cibles. Ce système de choix aléatoire de cible m'énerve particulièrement, et j'essaie donc de rendre ça beaucoup plus cohérent, par la création d'un système de menace (j'avais dis que je piquais des trucs à d'autres jeux. Ben là c'est WoW qui prend). Toutefois, j'aimerai aussi que cette menace soit très instable. A savoir qu'une attaque particulièrement puissante, voire un coup critique, augmentera fortement la menace généré par un personnage du groupe. Et donc, ses chances d'être pris pour cible par les ennemis (pas comme sur WoW, ou dès BC, le tanking devient une promenade de santé tant la construction d'aggro est facile). Pareil pour un soin critique.

J'ai imaginé deux systèmes.

  • Le premier passe par un ensemble de statuts a infliger aux alliés (attire l'attention, provoque, se fait oublier) et qui affecte les chances de se faire attaquer. Le problème, c'est que je n'arrive pas à créer des compétences qui vont à la fois infliger quelque chose à l'ennemi (des dégâts, un empoisonnement, une fracture, et que sais-je encore), ou à un allié (des soins par exemple), et à infliger le statut spécifique ("Provoque" par exemple) à un allié dans le même temps. J'ai bien vu qu'il était possible d'appeler un événement commun pour faire ça, mais je ne comprends pas très bien le fonctionnement du bouton "Forcer l'action" (il m'oblige à choisir un allié indexé. C'est cool. Mais moi je veux que ce soit l'utilisateur de la commande précédente qui soit concerné).

    Ce système me déplaît pour des raisons de Gamedesign (une fois que le joueur aura vaguement compris de combien de % les trois statuts affectent ses chances d'être pris pour cible, il sera très facile à maîtriser, et n'aura plus autant d'intérêt. Le but est quand même de rendre le jeu plus dur. Pas juste de créer une mécanique marrante), mais il me semble aussi plus facile à faire que le second. On verra donc lequel je choisirai. Et puis, c'est du bricolage :o.
  • Je n'ai pas le moindre début de piste de comment je pourrais commencer à coder le second. Donc c'est plus votre expertise que je sollicite ici que votre aide : à savoir est-ce que ça vous semble possible. Je pensais utiliser les variables comme générateur de menace. A savoir que quand un personnage a lance une attaque 1 qui inflige des dommages x, une quantité de menace y est générée en fonction de x et vient s'ajouter à ses chances d'être pris pour cible. A priori, j'imagine donc qu'il va falloir créer une variable "menace" pour chacun des personnages du jeu, et ne pas oublier de la reseter à la fin de chaque combats. Ca, ça me semble pas le plus difficile. Ca doit pouvoir se faire via les events communs.

    Le problème se situe plutôt, à mon avis, aux deux étapes d'avants : aller affecter cette variable lorsque le personnage utilise ses compétences, et ajouter la valeur de cette variable à ses chances d'être pris pour cible. Ca vous semble faisable ? Une idée de comment faire ?


__________________________________

Le second est encore plus simple : je souhaite forcer le joueur à agir en fonction de décisions RP. Donc à développer un background pour son personnage. Et comme on le dit souvent : un bon personnage est bon parce qu'il est entouré d'autres personnages attachants et intéressants. Pour amener le joueur à faire ces choix RP, j'ai donc mis en place un système d'affection/crainte/Respect, géré par trois variables, pour chacun des compagnons du héros. Le système est encore assez laborieux, mais j'ai bon espoir de pouvoir me simplifier la vie à mesure que je comprendrais mieux VX Ace. Mon problème n'est pas là.

Ces variables (et leur valeur) sont pour l'instant cachées. Le jeu les génère bien, mais je ne sais pas trop comment faire pour qu'un joueur puisse y accéder et savoir grossomodo comment Jeanine a peur de lui, le respecte, ou l'aime beaucoup. Je cherche donc un moyen de transcrire cette valeur quelque part, dans un codex par exemple.

Pour l'instant, la méthode que j'ai imaginé me semble trop bancale, et plus fastidieuse qu'autre chose. Il faut aller parler au personnage lorsque vous campez pour la nuit, lui demander ou en sont vos relations, et là, un petit texte apparaît pour vous dire qu'il vous aime ou pas. C'est fastidieux, pas immersif du tout, et surtout pas pratique du tout puisque ce système déverrouille des compétences spéciales à partir d'un certain niveau de relation, et bloque aussi certaines interactions avec les personnages si vous n'êtes pas en suffisamment bon termes avec eux.

Je pensais le faire sur la fiche codex du personnage (je n'ai toujours pas rechercher de bon script de codex cependant). Mais je crois que ça risque de rester assez fastidieux. Et j'aimerai donc pouvoir faire apparaître cette information dans le menu pause, sous l'onglet statut par exemple.

Une petite idée de comment je peux faire ça ?

Voilà, merci d'avance pour le coup de main !

PS : Désolé pour le pavé.
PS 2 : J'espère au moins que je suis clair :o
avatar
Ashala
Membre

Nombre de messages : 534
Age : 27
Localisation : L'Antre-Deux-Mondes.
Distinction : "A une araignée au plafond" [Nowa]
Date d'inscription : 09/06/2016

Re: Création d'un système de menace + Relations entre les personnages

le Ven 22 Sep 2017 - 17:03
Partie I :

Pour les skills hybrides tu peux faire tout simplement un skill qui en déclenche un autre en utilisant ce plugin :
Yanfly Follow-up Skill

... Pour la seconde méthode, sous MV j'aurai sans doute trouvé une idée mais je n'ai pas assez trifouillé Ace pour que ce soit le cas :x
J'éditerai / reposterai au cas ou ça viendrait tout de même.

EDIT : de la doc sur les variables si ça peut t'inspirer

Partie II :

Beh, à ta place je ferai un écran personnalisé accessible soit depuis le menu du jeu (faudra trouver un script), soit depuis un objet RP (event commun en l'utilisant, tu devra juste grapher un peu).
avatar
Nash
Membre

Nombre de messages : 4
Distinction : aucune
Date d'inscription : 20/09/2017

Re: Création d'un système de menace + Relations entre les personnages

le Sam 23 Sep 2017 - 18:25
Merci pour le script de Yanfly. Il me permettra au moins d'avoir un premier truc utilisable.

Mais je suis toujours avide d'idées pour utiliser plutôt le second système ^^.

En ce qui concerne l'affichage des variables relationnelles, on en revient donc à ce que je pensais faire à la base, et qui ne me plaisais pas parce qu'un peu trop fouillis. Mais bon, c'est pas grave. Grand merci à toi quand même Smile.
Contenu sponsorisé

Re: Création d'un système de menace + Relations entre les personnages

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum