Day.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

Sorties: Star Trek: Glorious Wolf - (...) / Sorties: Dread Mac Farlane - episode 3 / News: Plein d'images cools créées par (...) / Sorties: Star Trek: Glorious Wolf - (...) / Jeux: Final Fantasy 2.0 / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

166 connectés actuellement

29183688 visiteurs
depuis l'ouverture

3953 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Alex d'Or

Hellsoft

RPG Maker VX

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [RESOLU] [RPG Maker MV] Modifier les plugin de base pour mon système de combat


maotd - posté le 16/04/2016 à 12:00:36 (103 messages postés)

❤ 0

Dr Latency

Domaine concerné: Scripts de base
Logiciel utilisé: RMMV
Je reviens encore avec plein de questions. Cette fois je m'attaque doucement à mes combats et j'aimerais apporter quelques modifications mais j'ai pas trouvé où ça pouvait se modifier. Sur VXace je savais faire mais là je sèche complètement.
Je précise que je veux juste changer quelques paramètres dans le système de base et pas récupérer un nouveau CBS en plugin fait par je sais pas qui.

* Où est-ce que je peux changer la position X et Y des battler de héros en combat (de base, vue de coté) ? J'aimerais qu'il y ai un plus grand décalage horizontal entre les héros et un écart vertical variable d'un héros à l'autre (les héros 1 et 2 seraient plus proches l'un de l'autre que les héros 2 et 3). résolu

* Où Est-ce que je peux modifier la valeur de base des TP? Pour éviter qu'ils aient une valeur initiale variable et pour la fixer à genre 50.
Voir même comment changer la barre de TP pour qu'elle s'affiche de 50 à 150 au lieu de 0 à 100. Résolu

* Où Est-ce que je pourrais modifier les calculs de chance de coup critique et d'esquive et de dégâts critiques? résolu pour les chances de critique


Je pense que c'est tout pour le moment. Mais j'aurais certainement encore d'autres questions qui viennent par la suite. Merci d'avance.

Ma gallerie


Chaös17 - posté le 16/04/2016 à 13:31:57 (868 messages postés)

❤ 0

Je sais pas n'en plus où modifier çà dans les plugins de base mais tout le monde dit qu'il faut jamais y toucher donc je me permet de te répondre avec des plugins qui font le boulot.

Citation:

* Où est-ce que je peux changer la position X et Y des battler de héros en combat (de base, vue de coté) ? J'aimerais qu'il y ai un plus grand décalage horizontal entre les héros et un écart vertical variable d'un héros à l'autre (les héros 1 et 2 seraient plus proches l'un de l'autre que les héros 2 et 3).


http://pastebin.com/PYRtKySB

Citation:

* Où Est-ce que je peux modifier la valeur de base des TP? Pour éviter qu'ils aient une valeur initiale variable et pour la fixer à genre 50.
Voir même comment changer la barre de TP pour qu'elle s'affiche de 50 à 150 au lieu de 0 à 100.


http://yanfly.moe/2016/01/08/yep-55-enhanced-tp/

Citation:

* Où Est-ce que je pourrais modifier les calculs de chance de coup critique et d'esquive et de dégâts critiques?


http://yanfly.moe/2016/03/20/yep-85-hit-accuracy/
http://yanfly.moe/2015/11/08/yep-26-critical-control/

Citation:

pas récupérer un nouveau CBS en plugin fait par je sais pas qui.


T'as plus çà sur Mv, tout le monde reste avec le moteur de base.

Blog of Chaos17


maotd - posté le 16/04/2016 à 19:21:09 (103 messages postés)

❤ 0

Dr Latency

Je ne vois pas en quoi il ne faudrait pas toucher aux scripts de base tant qu'on sait ce qu'on fait, qu'on le fait bien et qu'on a toujours les fichiers d'origine quelque part.

Sinon merci mais... non merci. J'aimerais des solutions faciles à faire moi même et légères, pas des plugins énormes plein d'options qui en me servent pas. Je veux avoir un jeu le plus personnel possible et pas plein de bouts de codes fait par d'autre qui m'empêchent d'en faire ce que je veux.

edit: Trouvé pour la première question.

edit2: trouvé aussi pour la deuxième partie de la seconde question. Par contre la 1ere partie ça à l'air déjà plus compliqué...

Ma gallerie


HuLijin - posté le 17/04/2016 à 10:20:17 (997 messages postés)

❤ 0

Yeoun, mage-archère-louve

Pour une partie de ta question :

Portion de code : Tout sélectionner

1
2
3
Game_BattlerBase.prototype.maxTp = function() {
    return 100;
};



Et ça qui va sans doute avec :

Portion de code : Tout sélectionner

1
2
3
Game_BattlerBase.prototype.tpRate = function() {
    return this.tp / 100;
};



Et il y a aussi ça :

Portion de code : Tout sélectionner

1
2
3
Game_Battler.prototype.initTp = function() {
    this.setTp(Math.randomInt(25));
};



Tout se trouve dans le fichier objects.js

Par contre, pense à faire tes modifs dans ton propre plugin, histoire de pas trop être ennuyé quand la prochaine mise à jour viendra.

M.V.


maotd - posté le 17/04/2016 à 11:53:50 (103 messages postés)

❤ 0

Dr Latency

Merci. Mais je suis censé faire comment pour les mettre dans mon propre plugin ? Parce que si je colle les fonctions telles quelles dans un nouveau plugin ça fait absolument rien.

edit: ha non en fait ça marche. Je sais absolument pas pourquoi ça marchait pas mais finalement si.
En tout cas, j'ai pu mettre les TP à une valeur fixe de base. C'est très bien.

J'ai changé un peu le code pour que les skills ignorent le coup en TP et puisse être lancés même si on en a pas assez

Portion de code : Tout sélectionner

1
2
3
4
5
6
 
Game_BattlerBase.prototype.canPaySkillCost = function(skill) {
// return this._tp >= this.skillTpCost(skill) && this._mp >= this.skillMpCost(skill);
    return this._mp >= this.skillMpCost(skill);
};
 


Mais il faudrait que les TP ne puissent pas tomber en dessous de zéro quand on utilise un skill et qu'on a moins de TP que son coût. Il doit certainement y avoir une fonction pour ramener une valeur à zéro mais je sais pas du tout laquelle.
Et plus important, que la modification des TP intervienne après l'attaque (ou le skill) au lieu de avant. Si c'est possible.
Je me sers des TP dans mon calcul de dégâts et si ils sont retirés avant les dégâts ça diminue injustement les dégâts.

Ma gallerie


HuLijin - posté le 17/04/2016 à 16:56:43 (997 messages postés)

❤ 0

Yeoun, mage-archère-louve

Tu peux faire un Math.max(ta_valeur_en_TP,0);
Ça va ramener à zéro si ta_valeur_en_TP est négative.

Et tu as une fonction pour mettre les TP à la valeur que tu veux, c'est setTp. Si jamais tu la cherchais aussi.

Citation:

Et plus important, que la modification des TP intervienne après l'attaque (ou le skill) au lieu de avant. Si c'est possible.

Ça, je sais plus où ça se passe, je regarde.

Edit, j'ai enfin trouvé. Mais j'i le cerveau en vrac, j'arrive à voir où il faut commenter la ligne de consommation de Tp (c'est dans la fonction paySkillCost).
Là, comme ça, je te dirai de commenter cette fameuse ligne ici et de rajouter un

Portion de code : Tout sélectionner

1
a._tp -= a.skillTpCost(skill); a._tp = Math.max(a._tp,0);


directement dans ta formule de dommages, à la fin.

Il y a certainement mieux à faire cela dit.
Et j'ai une flemme monstrueuse de tester ce que je raconte :/

M.V.


maotd - posté le 17/04/2016 à 20:57:01 (103 messages postés)

❤ 0

Dr Latency

J'ai trouvé comment désactiver le paySkillCost mais le reste ça marche pas. Si je met

Portion de code : Tout sélectionner

1
2
a._tp -= a.skillTpCost(skill); a._tp = Math.max(a._tp,0);
 


Dans ma formule de dégâts ça fait zéro dégâts par contre ça baisse pas mes TP.
J'ai essayé de le rajouter dans le bout de code qui est censé appliquer les dégâts:

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
Game_Action.prototype.executeDamage = function(target, value) {
    var result = target.result();
    if (value === 0) {
        result.critical = false;
    }
    if (this.isHpEffect()) {
        this.executeHpDamage(target, value);
    }
    if (this.isMpEffect()) {
        this.executeMpDamage(target, value);
    }
    a._tp -= a.skillTpCost(skill); a._tp = Math.max(a._tp,0);
};


après les deux if mais je sais pas comment adapter le code pour que ça reconnaisse l'actor en question et le skill en question. Là rien n'est reconnu :(
J'avoue que je suis complètement perdu sur ce coup.

Ma gallerie


HuLijin - posté le 18/04/2016 à 10:53:15 (997 messages postés)

❤ 0

Yeoun, mage-archère-louve

Normal que ça marche pas si tu l'écris comme ça dans ta fonction de dégâts.
En paramètres de ta fonction, tu n'as que "target" (qui va se transformer en le battler qui va recevoir les dégâts) et "value" (qui va se transformer en la valeur des dégâts). "a" et "skill" ne sont pas des paramètres de ta fonction, ta fonction ne peut pas les reconnaitre.

Cela dit, j'avais sacrément la tête ailleurs hier, faudrait utiliser a.setTp(valeur) et pas a._tp = valeur et skill est à remplacer par quelque chose qui identifie le skill en question. Et je bloque.

Sinon, pour la formule de dégâts, j'obtiens des trucs zarbs en faisant des tests, je ne sais pas bien pourquoi. J'ai une vague idée, je creuserai ça plus tard.




Je sais que je vais avoir besoin de faire exactement la même chose que toi (faire payer le coût en TP après le calcul de la formule donc je vais m'en occuper sérieusement. Mais je ne sais pas quand.

Si personne vient te débloquer d'ici là, tu peux voir du coté des plugins de Chaos. Je t'enverrai un MP quand j'aurai regardé un peu mieux ça.

M.V.


maotd - posté le 18/04/2016 à 18:18:19 (103 messages postés)

❤ 0

Dr Latency

Bien entendu je n'avais pas laissé le a. J'avais mis un this.subject() (j'ai vu ça dans une fonction plus haut où rien n'était défini à part target et ça semblait récupérer l'id de l'actor). Skill du coup je l'avais défini dans la fonction après target et value mais ça comprenait pas le skillTpCost.

Pour le moment je peux toujours tricher en ajoutant à la main les tp consommés aux tp dans le calcul de dégâts mais ça passe quand même en dessous de zéro et ça les consomme quand même avant l'action visuellement. Même si j'ai aussi moyen de tricher pour que ça se voit pas qu'ils passent sous zéro (après ils reviennent automatiquement à zéro une fois la compétence finie).

Ou alors peut-être en faisant comprendre au script qu'il faut payer le coup de l'attaque après l'attaque et pas avant ça peut marcher?

edit: non finalement ajouter les tp consommés dans la formule de dégâts ça marche pas pour les attaques multiples. Il faut vraiment que les tps soient consommés après l'attaque.

Ma gallerie

Index du forum > Entraide > [RESOLU] [RPG Maker MV] Modifier les plugin de base pour mon système de combat

repondre up

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