Zarok RPG Maker
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.



 
AccueilDernières imagesS'enregistrerConnexion
-21%
Le deal à ne pas rater :
LEGO® Icons 10329 Les Plantes Miniatures, Collection Botanique
39.59 € 49.99 €
Voir le deal

Partagez | 
 

 [Demande de tuto]Explication des compétences

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Taliesin
Molécule
Molécule
Taliesin


Masculin Messages : 52
Loisirs : euh...PC, PC et télé... -_-
Date d'inscription : 16/12/2006

[Demande de tuto]Explication des compétences Empty
MessageSujet: [Demande de tuto]Explication des compétences   [Demande de tuto]Explication des compétences EmptySam 16 Déc 2006 - 14:45

Je pose cette demande car j'aimerais avoior les explications concernant les composantes d'une compétence...

Exemple:

Coût en PM: Nombre de Points de Magie que nessecite le sorts.
...
etc

Voila^^

Merci d'avance
Revenir en haut Aller en bas
http://station-foxx.bbgraph.com/index.forum
Andariel
Molécule
Molécule
Andariel


Masculin Messages : 89
Age : 35
Loisirs : Etudier ?
Date d'inscription : 15/12/2006

[Demande de tuto]Explication des compétences Empty
MessageSujet: Re: [Demande de tuto]Explication des compétences   [Demande de tuto]Explication des compétences EmptySam 16 Déc 2006 - 21:18

Tutorial compétences :

I : Définition

Une compétence (comp) est une technique utilisée par les personnages du jeu, ou par les ennemis des personnages, parfois durant un combat, ou sur la carte de déplacement.
Les effets sont très variés, mais se résument générallement à blesser des adversaire, réduire leur efficacité au combat, ou soigner/fortifier le personnage/les alliés du personnage.

Exemple : La compétence intégrée à RPG_Maker Xp 'Vie' redonne 150 pv à la cible du sort.

II :Composantes d'une compétence.


Nom : Le nom qui sera affiché dans le jeu, et dans l'éditeur. Peut avoir comme valeur : n'importe quel texte pas très long.
Icône : L'icône qui sera placée à gauche du nom dans le jeu, afin d'aider à la reconaissance des compétences. Peut avoir comme valeur : une petite image du dossier 'icônes' (25x25 pixels en gros je crois)
Description : Court texte (une ligne) qui décrit l'effet de la compétence. Affiché dans le jeu et dans l'écran d'édition des compétences. Peut avoir comme valeur : n'importe quel texte tenant en une ligne.
Cible : Défini le type de cibles que peux avoir la compétence. Peut prendre les valeurs : aucune, un ennemi, tous les ennemis, un allié, tous les alliés, un allié mort, tous les alliés mort, l'utilisateur de la compétence.
Peut être utilisé : Définit les conditions d'utilisation de la compétence. Peut avoir les valeurs : Sur la carte et en combat, Sur la carte uniquement, En combat uniquement, Jamais.
Effet sonore dans le menu : Explicite le son qui sera joué par le programme par dessus la musique de combat/de carte lors de l'utilisation de la compétence. Peut avoir comme valeur : N'importe quel son de la base de donnée.
Appelle un évenement commun : Définit si l'utilisation de la compétence lance la série d'actions d'un évenement commun (défini en lancement : appelé), et si oui quel évenement en particulié est lancé. Peut avoir comme valeur : L'identifiant d'un évenement commun défini en lancement par appel.
Coût en PM : Nombre de Pm qui seront déduit de la réserve de Pm de l'utilisateur après utilisation. Si l'utilisateur n'as pas assez de Pm, il ne pourras pas utiliser cette technique. Peut avoir comme valeur : N'importe quelle valeur de 0 à 9999.
Valeurs "de caractéristiques" (attaque, défense, force, dextérité, agilité, intelligence : Chiffres utilisés pour calculer la puissance du sort. Peut avoir comme valeurs : N'importe quelle valeur entre 0 et 200.
Taux d'effet : Chiffre "de base" utilisé pour calculé l'efficacité du sort. Peut avoir comme valeurs : N'importe quelle valeur entre -9999 et 9999.
Précision : Précision "de base" du sort. Peut avoir comme valeurs : N'importe quelle valeur entre 0 et 100.
Defense physique : Indique l'efficacité d'une défense physique contre le sort. Peut avoir comme valeurs : N'importe quelle valeur entre 0 et 200.
Defense magique : Indique l'efficacité d'une défense physique contre le sort. Peut avoir comme valeurs : N'importe quelle valeur entre 0 et 200.
Variance : Dans quelle mesure le résultat du sort sera 'aléatoire'. Peut avoir comme valeurs : N'importe quelle valeur entre 0 et 200.
Attributs : Défini pour chaque attribut (élément) si cet élément est constitutif du sort ou pas. Par exemple, une boule de feu aura l'attribut (élément) feu.. Peut avoir comme valeurs : Selon chaque attribut : 0 (rien) ou 1 (coché).
Modification des status : Défini pour chaque statut si la compétence à des chances d'ifliger ce statut ou pas. Par exemple, un sort de silence aura le statut silence, car il peux infliger silence à un adversaire.. Peut avoir comme valeurs : Selon chaque statut : 0 (rien) ou 1 (coché)..

Par exemple, la compétence 'Vie' est définit ainsi :
Nom : Vie
Icône : 045 - Skill02
Description : Redonne des HP à un allié
Cible : Un allié
Peut être utilisé : Sur la carte et en combat
Animation sur l'utilisateur : 002 - Sort magique
Animation sur la cible : 015 : Récupération HP1
Effet sonore dans le menu : 105 - Heal01
Appelle un évenement commun : Aucun(e)
Coût en Pm : 80
Taux d'effet : -150
Attaque : 0
Esquive : 0
Force : 0
Défense : 0
Agilité : 0
Intelligence : 50
Précision : 100
Déf. Physique : 0
Déf. Magique : 100
Variance : 15



III Calcul de la force de la compétence.


Lors du lancement, on commence par voir si la compétence va toucher la cible ou pas.
Formule 'de précision' :
Code:
Script : Game_Battler 3
118 hit = skill_hit
119 if skill.att_f > 0
120  hit *= user.hit/100
121 end
122 hit_result = (rand(100) < hit)
"Traduction" :
line 118 : on met la précision dans la variable interne au jeu 'hit'
line 119 : si la valeur d'attaque de la compétence est plus grande que 0 (strictement) -> donc différente de 0, en résumé...
line 120 : alors on multiplie la valeur 'hit' par ['précision du lanceur' divisé par 100]. Sinon on ne fait rien, et on laisse la valeur 'hit' à sa valeur initiale.
line 121 : fin du si / alors
line 122 : on crée un nombre aléatoire entre 0 et 100. Si 'hit' est plus grand que ce nombre, alors on à hit_result = 1 (attaque réussie) sinon on a hit_result = 0 (attaque échouée).
Exemple : Le personnage principal lance le sort 'vie' sur un allié. Comme la valeur 'attaque' de 'vie' est 0, on à hit = 'valeur de précision' = 100
On tire un nombre aléatoire entre0 et 100. On obtiens 56.
On a 100>56, le sort est une réussite ! (Normal, c'est pour un sort de soin mais bon ...)




Ensuite, on calcule la puissance du sort.
Formule 'de puissance' :
Code:
Script : Game_Battler 3
128 power = skill.power + user.atk * skill.atk_f /100
129 if power >0
130  power -= self.pdef * skill.pdef_f /200
131  power -= self.mdef * skill.mdef_f /200
132  power = [power,0].max
133 end
"Traduction" :
line 128 : On range dans la variable 'power' le taux d'effet de la compétence additionné de [l'attaque du lanceur multiplié par la valeur 'attaque' de la compétence divisé par 100]
line 129 : Si power est plus grand que 0 (donc pour un sort qui a un taux d'effet positif, donc qui inflige des blessures, au contraire des sorts de soin par exemple. Alors : ....
line 130 : On soustrait [Défense physique de la cible multiplié par valeur Def. Physique de la compétence divisé par 200] à power
line 131 : On soustrait [Défense magique de la cible multiplié par valeur Def. Magique de la compétence divisé par 200] à power
line 132 : On prends le plus grand entre 0 et power (pour éviter d'avoir un sort de dégat tellement défendu qu'il rendrait des points de vie à la cible !)
line 133 :Fin du Si/Alors
Et on à alors une variable power qui corresponds à la puissance brute du sort.
Exemple : Reprenons le sort de 'vie' qui a réussi tout à l'heure.
Sa valeur de 'taux d'effet' est de -150. Donc on prends power = -150 + 0 (0 car la valeur d'attaque est 0).
On a power = -150, ce qui est plus petit que 0, donc on oublie la suite.


Ensuite on calcule l'efficacité du sort.
Formule "d'efficacité" :
Code:
Script : Game_Battler 3
135 rate = 20
136 rate += (user.str * skill.str_f / 100)
137 rate += (user.dex * skill.dex_f / 100)
138 rate += (user.agi * skill.agi_f / 100)
139 rate += (user.int * skill.int_f / 100)
"Traduction" :
line 135 : On fixe l'efficacité de base à 20 dans la variable interne 'rate'
line 136 : On ajoute à 'rate' la valeur [Force du lanceur multiplié par la valeur 'Force' de la compétence divisé par 100]
line 137 : De même avec la dextérité au lieu de la force...
line 138 : Puis avec L'agilité...
line 139 : Puis avec l'intelligence.
Et on obtient une valeur 'rate' qui corresponds à l'efficacité globale du sort.
Exemple : Le sort de soin débute avec un 'rate' de 20
Sa valeur de 'Force' est 0, donc on ajoute 0 à rate.
Sa valeur de 'Dextérité' est 0, donc on ajoute 0 à rate.
Sa valeur de 'Agilité' est 0, donc on ajoute 0 à rate.
Sa valeur de 'Intelligence' est 50. Donc on ajoute (intelligence du héros*50/100) à 'rate'. Le héros à 1960 en intelligence (c'est un bon mage ^^), ce qui donne : (2000*50/100) = 9800.
Donc rate = 20 + 980 = 1000.


Enfin on regarde la valeur de combat finale :
Code:
self.damage = power * rate / 20
"Traduction" :
Dégats infligés = Valeur de la variable 'power' multiplié par la valeur de la variable 'rate' divisé par 20.
Exemple : Le sort vie à une efficacité finale de : power*rate = -150*1000/20 = -7500.
Il soignera environ 7500 pv à la cible.


Enfin pour l'amplitude la formule est :
Code:
Script : Game_Battler 3
153 if skill.variance>0 and self.damage.abs >0
154    amp = [self.damage.abs * skill.variance / 100,1].max
155    self.damage += rand(amp+1) + rand(amp+1) - amp
156 end
"Traduction" :
line 153 : On applique la formule "Si la variance est différente de 0 et si la compétence effectue vraiment des dégats". Alors :...
line 154 : On range dans la variable interne 'amp' le plus grand entre 1 et [dégats infligés multiplié par 'Variance' de la compétence divisé par 100]
line 155 : On ajoute aux dégats la valeur : [Nombre aléatoire entre 0 et 'amp+1' ajouté à une Autre nombre aléatoire entre 0 et 'amp+1' Soustrait à 'amp']
line 156 : Fin du Si/Alors
Exemple : La valeur finale de 'vie' etait 7500.
On calcule amp = 7500*variance/100 = 7500*15/100 = 1125
On tire un nombre aléatoire entre 0 et 1126, on trouve 524.
On tire un autre nombre aléatoire entre 0 et 1126, on trouve 112.
On ajoute aux "dommages" (donc au soins) : 524 + 112 - 1125 = -489
Donc le sort de soin à une nouvelle valeur finale de : -7500-489 = -7989.
La cible gagne exactement 7989 points de vie.


Voilà !
C'est tout !!

...
Des questions ? Smile


Dernière édition par le Dim 17 Déc 2006 - 16:56, édité 4 fois
Revenir en haut Aller en bas
Azurean
Azurean


Masculin Messages : 2524
Age : 31
Date d'inscription : 02/10/2006

Caractéristiques du membre
Evolution: Atome
Job: Les scripts et les évènements
XP:
[Demande de tuto]Explication des compétences Left_bar_bleue-42/20[Demande de tuto]Explication des compétences Empty_bar_bleue  (-42/20)

[Demande de tuto]Explication des compétences Empty
MessageSujet: Re: [Demande de tuto]Explication des compétences   [Demande de tuto]Explication des compétences EmptySam 16 Déc 2006 - 21:25

Eh beh... On ne peut pas être plus complet. Super tuto!
Je pense que tu aurais pu prononcer le mot Skill dans ton tuto... C'est super utilisé mais les anglophobes... Ils ne savent pas ce que ça veut dir...
Ah bah oui!
Je vais faire un new tuto..


Dernière édition par le Dim 17 Déc 2006 - 9:59, édité 1 fois
Revenir en haut Aller en bas
http://www.zarok-rpgmaker.com
Taliesin
Molécule
Molécule
Taliesin


Masculin Messages : 52
Loisirs : euh...PC, PC et télé... -_-
Date d'inscription : 16/12/2006

[Demande de tuto]Explication des compétences Empty
MessageSujet: Re: [Demande de tuto]Explication des compétences   [Demande de tuto]Explication des compétences EmptySam 16 Déc 2006 - 22:14

WHAAA!!!
Super, merci beaucoup!!!
Revenir en haut Aller en bas
http://station-foxx.bbgraph.com/index.forum
Zarmakuizz
Zarmakuizz


Masculin Messages : 5155
Age : 34
Loisirs : Mon biz'
Date d'inscription : 24/09/2006

Caractéristiques du membre
Evolution: Atome
Job: Faire des passes éclair
XP:
[Demande de tuto]Explication des compétences Left_bar_bleue20/20[Demande de tuto]Explication des compétences Empty_bar_bleue  (20/20)

[Demande de tuto]Explication des compétences Empty
MessageSujet: Re: [Demande de tuto]Explication des compétences   [Demande de tuto]Explication des compétences EmptyDim 17 Déc 2006 - 16:39

Tu as fait une erreur, tu dis "valeurs: entre 0 et 200", or c'est du pourcentage à ces moments là, donc pas 200 mais 100. Tu mets un peu plus bas que "vie" a 100 de précision, or étant un sort qui ne rate pas (quand les conditions le veulent), il est normal qu'il ait le max dans cette caractéristique.

Sinon, c'est super bien fait. Certains pourront même faire un script à aprtir de ça (je ne vise personne, hein interprète?)
Revenir en haut Aller en bas
http://www.pokecardex.com
Andariel
Molécule
Molécule
Andariel


Masculin Messages : 89
Age : 35
Loisirs : Etudier ?
Date d'inscription : 15/12/2006

[Demande de tuto]Explication des compétences Empty
MessageSujet: Re: [Demande de tuto]Explication des compétences   [Demande de tuto]Explication des compétences EmptyDim 17 Déc 2006 - 16:57

Voilà c'est corrigé !
Effectivement j'avais bien fait une erreur : la précision est une valeur comprise entre 0 et 100 et non pas entre 0 et 200.
Mais les autres pourcentages sont bien entre 0 et 200 je crois...
Revenir en haut Aller en bas
Contenu sponsorisé



[Demande de tuto]Explication des compétences Empty
MessageSujet: Re: [Demande de tuto]Explication des compétences   [Demande de tuto]Explication des compétences Empty

Revenir en haut Aller en bas
 

[Demande de tuto]Explication des compétences

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Zarok RPG Maker :: 

 :: DEMANDES :: Demandes de tutoriels
-
Sauter vers: