Difference between revisions of "Extra Parameter Formula (YEP)"
Jump to navigation
Jump to search
(Tag: Undo) |
|||
Line 1: | Line 1: | ||
{{MvPlugin | {{MvPlugin | ||
− | |preview = <youtube>https://www.youtube.com/watch?v=X4vSOhYwRk0</youtube> | + | |preview=<youtube>https://www.youtube.com/watch?v=X4vSOhYwRk0</youtube> |
− | + | |link1=<html><iframe src="https://itch.io/embed/398011" height="167" width="552" frameborder="0"></iframe></html> | |
− | + | |link2=[http://yanfly.moe/plugins/en/YEP_ExtraParamFormula.js Mirror] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |link1 = <html><iframe src="https://itch.io/embed/398011" height="167" width="552" frameborder="0"></iframe></html> | ||
− | |link2 = [http://yanfly.moe/plugins/en/YEP_ExtraParamFormula.js Mirror] | ||
}} | }} | ||
Line 16: | Line 9: | ||
{{Yanfly Engine Plugins}} | {{Yanfly Engine Plugins}} | ||
− | == | + | == Help File == |
<nowiki> | <nowiki> | ||
+ | ============================================================================ | ||
+ | Introduction | ||
+ | ============================================================================ | ||
+ | |||
+ | The values for the Extra Parameters: HIT, EVA, CRI, CEV, MEV, MRF, CNT, HRG, | ||
+ | MRG, and TRG, in RPG Maker MV are only able to be ever modified by traits by | ||
+ | the various database objects. While it is flexible, RPG Maker MV does not | ||
+ | enable you to utilize custom formulas to make things such as ATK and AGI | ||
+ | influence HIT rate or LUK influence CRItical hits. With this plugin, now you | ||
+ | can along with a few more goodies! | ||
+ | |||
+ | ============================================================================ | ||
+ | Instructions - Extra Parameter Explanation | ||
+ | ============================================================================ | ||
+ | |||
For those who aren't familiar with what the Extra Parameters (xparams) do, | For those who aren't familiar with what the Extra Parameters (xparams) do, | ||
this is a list that will explain their standard functions in an RPG Maker MV | this is a list that will explain their standard functions in an RPG Maker MV | ||
Line 106: | Line 114: | ||
--- | --- | ||
− | |||
− | == Instructions - Custom Formulas == | + | ============================================================================ |
+ | Instructions - Custom Formulas | ||
+ | ============================================================================ | ||
− | |||
The values calculated by the formulas in the plugin parameters are to come | The values calculated by the formulas in the plugin parameters are to come | ||
out as float values. If the result value comes out as 0.1 for CRI, it will | out as float values. If the result value comes out as 0.1 for CRI, it will | ||
Line 120: | Line 128: | ||
out to be 10% and the user's LUK parameter is at 500, it will be 0.1 + 0.5 | out to be 10% and the user's LUK parameter is at 500, it will be 0.1 + 0.5 | ||
which means the total comes out to 0.6, hence a 60% CRItical hit rate. | which means the total comes out to 0.6, hence a 60% CRItical hit rate. | ||
− | |||
− | == Instructions - Understanding Formula Variables == | + | ============================================================================ |
+ | Instructions - Understanding Formula Variables | ||
+ | ============================================================================ | ||
− | |||
So, what does the 'base', 'plus', 'rate', and 'flat' mean in the formulas? | So, what does the 'base', 'plus', 'rate', and 'flat' mean in the formulas? | ||
This section will answer that in detail. | This section will answer that in detail. | ||
Line 156: | Line 164: | ||
default formula, this value is added after the sum of the base and plus | default formula, this value is added after the sum of the base and plus | ||
values of the extra parameter stat are multiplied by the rate value. | values of the extra parameter stat are multiplied by the rate value. | ||
− | |||
− | == Examples - Sample Formulas == | + | ============================================================================ |
+ | Examples - Sample Formulas | ||
+ | ============================================================================ | ||
− | |||
The following are some sample formulas you can use to make extra parameters | The following are some sample formulas you can use to make extra parameters | ||
a bit more dynamic: | a bit more dynamic: | ||
Line 186: | Line 194: | ||
The above are some examples on how you can make your extra parameters to be | The above are some examples on how you can make your extra parameters to be | ||
affected by the other stats from the user. | affected by the other stats from the user. | ||
− | |||
− | == Notetags == | + | ============================================================================ |
+ | Notetags | ||
+ | ============================================================================ | ||
− | |||
You can use the following notetags to alter the various aspects that modify | You can use the following notetags to alter the various aspects that modify | ||
the extra parameter values: | the extra parameter values: | ||
Line 220: | Line 228: | ||
base and plus values after being multiplied by the rate value assuming the | base and plus values after being multiplied by the rate value assuming the | ||
plugin's default formula is utilized. | plugin's default formula is utilized. | ||
− | |||
− | == Lunatic Mode - New JavaScript Functions == | + | ============================================================================ |
+ | Lunatic Mode - New JavaScript Functions | ||
+ | ============================================================================ | ||
− | |||
You can use the following JavaScript functions to alter the extra parameter | You can use the following JavaScript functions to alter the extra parameter | ||
values of actors. In these listed functions, the 'actor' variable is to be | values of actors. In these listed functions, the 'actor' variable is to be | ||
Line 291: | Line 299: | ||
mind that 1 is equal to 100% and 0.1 would be equal to 10%. Negative | mind that 1 is equal to 100% and 0.1 would be equal to 10%. Negative | ||
values will add to the extra parameter. | values will add to the extra parameter. | ||
− | |||
− | == Changelog == | + | ============================================================================ |
+ | Changelog | ||
+ | ============================================================================ | ||
− | |||
Version 1.04: | Version 1.04: | ||
- Updated for RPG Maker MV version 1.5.0. | - Updated for RPG Maker MV version 1.5.0. |
Revision as of 19:49, 21 June 2019
Welcome to the wiki! This is where you can find resources from Yanfly.moe, Ækashics.moe,
VisuStella, Caz Wolf, Fallen Angel Olivia, Atelier Irina, and other affiliated content creators.
VisuStella, Caz Wolf, Fallen Angel Olivia, Atelier Irina, and other affiliated content creators.
Download
System
This is a plugin created for RPG Maker MV.
For help on how to install plugins, click here.
For help on how to update plugins, click here.
Got errors with your RPG Maker MV plugin? Click here.
Yanfly Engine Plugins
This plugin is a part of the Yanfly Engine Plugins library.
Help File
============================================================================ Introduction ============================================================================ The values for the Extra Parameters: HIT, EVA, CRI, CEV, MEV, MRF, CNT, HRG, MRG, and TRG, in RPG Maker MV are only able to be ever modified by traits by the various database objects. While it is flexible, RPG Maker MV does not enable you to utilize custom formulas to make things such as ATK and AGI influence HIT rate or LUK influence CRItical hits. With this plugin, now you can along with a few more goodies! ============================================================================ Instructions - Extra Parameter Explanation ============================================================================ For those who aren't familiar with what the Extra Parameters (xparams) do, this is a list that will explain their standard functions in an RPG Maker MV project. --- HIT - Hit Rate% - This determines the physical hit success rate of the any physical action. All physical attacks make a check through the HIT rate to see if the attack will connect. If the HIT value passes the randomizer check, the attack will connect. If the HIT value fails to pass the randomizer check, the attack will be considered a MISS. --- EVA - Evasion Rate% - This determines the physical evasion rate against any incoming physical actions. If the HIT value passes, the action is then passed to the EVA check through a randomizer check. If the randomizer check passes, the physical attack is evaded and will fail to connect. If the randomizer check passes, the attempt to evade the action will fail and the action connects. --- CRI - Critical Hit Rate% - Any actions that enable Critical Hits will make a randomizer check with this number. If the randomizer check passes, extra damage will be carried out by the initiated action. If the randomizer check fails, no extra damage will be added upon the action. --- CEV - Critical Evasion Rate% - This value is put against the Critical Hit Rate% in a multiplicative rate. If the Critical Hit Rate is 90% and the Critical Evasion Rate is 20%, then the randomizer check will make a check against 72% as the values are calculated by the source code as CRI * (1 - CEV), therefore, with values as 0.90 * (1 - 0.20) === 0.72. --- MEV - Magic Evasion Rate% - Where EVA is the evasion rate against physical actions, MEV is the evasion rate against magical actions. As there is not magical version of HIT, the MEV value will always be bit against when a magical action is initiated. If the randomizer check passes for MEV, the magical action will not connect. If the randomizer check fails for MEV, the magical action will connect. --- MRF - Magic Reflect Rate% - If a magical action connects and passes, there is a chance the magical action can be bounced back to the caster. That chance is the Magic Reflect Rate. If the randomizer check for the Magic Reflect Rate passes, then the magical action is bounced back to the caster, ignoring the caster's Magic Evasion Rate. If the randomizer check for the Magic Reflect Rate fails, then the magical action will connect with its target. --- CNT - Counter Attack Rate% - If a physical action connects and passes, there is a chance the physical action can be avoided and a counter attack made by the user will land on the attacking unit. This is the Counter Attack Rate. If the randomizer check for the Counter Attack Rate passes, the physical action is evaded and the target will counter attack the user. If the randomizer check fails, the physical action will connect to the target. --- HRG - HP% Regeneration - During a battler's regeneration phase, the battler will regenerate this percentage of its MaxHP as gained HP with a 100% success rate. --- MRG - MP% Regeneration - During a battler's regeneration phase, the battler will regenerate this percentage of its MaxMP as gained MP with a 100% success rate. --- TRG - TP% Regeneration - During a battler's regeneration phase, the battler will regenerate this percentage of its MaxTP as gained TP with a 100% success rate. --- ============================================================================ Instructions - Custom Formulas ============================================================================ The values calculated by the formulas in the plugin parameters are to come out as float values. If the result value comes out as 0.1 for CRI, it will be 10% CRI. Here is an example: (base + plus) * rate + flat + user.luk / 1000 The 'user.luk / 1000' is inserted at the end. Assuming everything else comes out to be 10% and the user's LUK parameter is at 500, it will be 0.1 + 0.5 which means the total comes out to 0.6, hence a 60% CRItical hit rate. ============================================================================ Instructions - Understanding Formula Variables ============================================================================ So, what does the 'base', 'plus', 'rate', and 'flat' mean in the formulas? This section will answer that in detail. Default plugin formula: (base + plus) * rate + flat BASE - This value is determined by the default way RPG Maker MV determines the value for that stat, and the way RPG Maker MV determines it is by adding up the total trait values of that stat. If a battler would have a mixture of +95%, -10%, and +5% HIT traits, then the base stat value would be +90%. PLUS - This is a new variable added by this plugin. Its purpose is to function as an addition to the base value. This addition can be done independently of database items as you can do a user.addXParam to alter the base value of the extra parameter. If using the default formula, this value is added to the base before any rates are multiplied by it and any flats added to the total. RATE - This is a new variable added by this plugin. Its purpose is to function as a multiplicative modifier for the extra parameter value. This multiplicative value is determined by various database objects through notetags. If using the default formula, this value is multipled to the sum of the base and plus values of the extra parameter before the flat is added to the total. FLAT - This is a new variable added by this plugin. Its purpose is to function as an additive modifier for the extra parameter value. This additive value is determined by various database objects through notetags. If using the plugin default formula, this value is added after the sum of the base and plus values of the extra parameter stat are multiplied by the rate value. ============================================================================ Examples - Sample Formulas ============================================================================ The following are some sample formulas you can use to make extra parameters a bit more dynamic: --- HIT --- (base + plus) * rate + flat + ((user.atk + user.agi) / 2000) - This will cause the HIT rate to gain bonus accuracy from ATK and AGI. --- EVA --- (base + plus) * rate + flat + ((user.def + user.agi) / 2000) - This will cause the EVA rate to gain bonus evasion from DEF and AGI. --- CRI --- (base + plus) * rate + flat + (user.luk / 1000) - This will cause the CRI rate to gain bonus success from LUK. --- CEV --- (base + plus) * rate + flat + ((user.agi + user.luk) / 2000) - This will cause the CEV rate to gain more critical evade from LUK and AGI. --- MEV --- (base + plus) * rate + flat + ((user.mdf + user.agi) / 2000) - This will cause the MEV rate to gain extra magic evasion from MDF and AGI. The above are some examples on how you can make your extra parameters to be affected by the other stats from the user. ============================================================================ Notetags ============================================================================ You can use the following notetags to alter the various aspects that modify the extra parameter values: Actor, Class, Enemy, Weapon, Armor, and State Notetags: <stat Plus: +x%> <stat Plus: -x%> <stat Plus: +x.y> <stat Plus: -x.y> Replace 'stat' with 'hit', 'eva', 'cri', 'cev', 'mev', 'mrf', 'cnt', 'hrg', 'mrg', or 'trg'. This is the value added to the base parameter before the rate and flat values contribute to the total parameter value assuming the plugin's default formula is utilized. <stat Rate: x%> <stat Rate: x.y> Replace 'stat' with 'hit', 'eva', 'cri', 'cev', 'mev', 'mrf', 'cnt', 'hrg', 'mrg', or 'trg'. This is the value multipled to the sum of the base and plus values of the parameter before added by the flat value assuming the plugin's default formula is utilized. <stat Flat: +x%> <stat Flat: -x%> <stat Flat: +x.y> <stat Flat: -x.y> Replace 'stat' with 'hit', 'eva', 'cri', 'cev', 'mev', 'mrf', 'cnt', 'hrg', 'mrg', or 'trg'. This is the value added finally to the sum of the base and plus values after being multiplied by the rate value assuming the plugin's default formula is utilized. ============================================================================ Lunatic Mode - New JavaScript Functions ============================================================================ You can use the following JavaScript functions to alter the extra parameter values of actors. In these listed functions, the 'actor' variable is to be referenced by an actor: ie. actor = $gameActors.actor(3)); Function: actor.clearXParamPlus() - Clears all of the actor's extra parameter plus bonuses. actor.setHit(x) actor.setEva(x) actor.setCri(x) actor.setCev(x) actor.setMev(x) actor.setMrf(x) actor.setCnt(x) actor.setHrg(x) actor.setMrg(x) actor.setTrg(x) - Sets the actor's respective extra parameter value to x. Keep in mind that 1 is equal to 100% and 0.1 would be equal to 10%. Negative values will apply here, too. actor.setHitPlus(x) actor.setEvaPlus(x) actor.setCriPlus(x) actor.setCevPlus(x) actor.setMevPlus(x) actor.setMrfPlus(x) actor.setCntPlus(x) actor.setHrgPlus(x) actor.setMrgPlus(x) actor.setTrgPlus(x) - Sets the actor's respective extra parameter plus value to x. Keep in mind that 1 is equal to 100% and 0.1 would be equal to 10%. Negative values will apply here, too. actor.addHit(x) actor.addEva(x) actor.addCri(x) actor.addCev(x) actor.addMev(x) actor.addMrf(x) actor.addCnt(x) actor.addHrg(x) actor.addMrg(x) actor.addTrg(x) - Adds x to the actor's respective extra parameter value. Keep in mind that 1 is equal to 100% and 0.1 would be equal to 10%. Negative values will decrease the extra parameter. actor.minusHit(x) actor.minusEva(x) actor.minusCri(x) actor.minusCev(x) actor.minusMev(x) actor.minusMrf(x) actor.minusCnt(x) actor.minusHrg(x) actor.minusMrg(x) actor.minusTrg(x) - Subtracts x from the actor's respective extra parameter value. Keep in mind that 1 is equal to 100% and 0.1 would be equal to 10%. Negative values will add to the extra parameter. ============================================================================ Changelog ============================================================================ Version 1.04: - Updated for RPG Maker MV version 1.5.0. Version 1.03a: - Lunatic Mode fail safe added. - Documentation update to fix typos. Version 1.02: - Fixed an issue with the battler.setXParam functions that made them take the wrong value due caching issues. Version 1.01: - Updated for RPG Maker MV version 1.1.0. Version 1.00: - Finished Plugin!