YR's New Parameters Plugin
A downloadable plugin
This plugin allows the developer to utilize more parameters, for both actors and enemies (from here on mentioned as "battlers"), than the default ones set by RPG Maker MV.
They are independent among different battlers, meaning you should not expect to use them for the whole party.
Important note: this is an internal mechanics plugin. It does not affect menus and the like. Menaing you can create the parameters and use them, but will need something else to show them.
Compatible with most Yanfly plugins, including Item Core, Equip Core and Attachable Augments and even Equip Battle Skills.
Compatible with RPG Maker MV versions above 1.5.1.
The parameter's value should be able to be called by using:
battler.(command Name)
For example, if the command name is "test", battler.test should return the value of the test parameter for that battler.
[NEW from 1.07] Now you are able to replace the default parameters with your own coded with this plugin.
Be aware this is a new feature, and while I did my best to avoid them ther emay still be some bugs unsquached.
A quick manual:
When you install the plugin, it seems to have only one parameter, called "Parameters".
But, when you open it, you see that is wrong.
"Parameters", when opened, reveals itself as a list. Each of your new parameters will be an element in this list.
Important note: Every time you need to call the parameter's id through code, the number is the position on the list -1. In the example image, the parameter's id is 0.
Open the parameter in the list - or in the case of a new one open the empty one, in the image the 2 but on a first use the 1, to actually change the parameter.
- The first line is the parameter's command name, or the stat's name. It is the value, together with the id that you get on the list, that you will use the most after it is all set to use.
Example, calling for the pictured example in a damage formula would be a.armPen. Be careful though, the Command Name is case sensitive, meaning armPen is different from armpen. - The second line is the parameter's text name. Just in case you are using the messages for buff/debuff and the like. You can also call it in custom-made menus. Most won't use it, though.
- The third line is the preset base of the parameter. The default formula is this.level ? (level * 1) : 1 meaning that, if the battler has a level (being an actor or using an enemy levels plugin) the value will be the level, else it will be 1. Feel free to change it to fit your real needs. As you can see, in the example image it is 0.
- Can also be set individually for each actor or enemy through a notetag <change stat base formula: x>, x being the new formula and stat being the parameter's command name.
- The fourth line is the parameter's formula. It is based on the Yanfly parameters formulas, in for example his Base Parameters plugin. You can add or remove from it as needed, but I suggest only adding to the formula and not removing the variables.
- The fifth line is the parameter's buff formula. It is the formula used when buffing/debuffing to set the parameter's formula buffRate.
- The sixth and seventh lines are the parameter's minimum and maximun value. They can be changed for a certain battler through notetags.
- The next four lines are the max number of how many times something can be buffed/debuffed on this stat, default and maximum values. The value can be changed through notetags for a certain battler, as long as it is more than 0 and less or equal to the value set as max.
- And the final four lines are icons for buffs and debuffs, first and second stages (second stages when they are buffed/debuffed more than once). They can be left as 0 for no images (or to still use the one of the first stage, in the case of the second stage).
In case of any more doubts not understandable here or in the help of the plugin, feel free to ask.
Notetags
"stat" should be the parameter's command name
Actors, Classes, Enemies
(Actors has preference over Classes)
<change stat base formula: x>
"x" should be the formula
Allows you to set a different formula for this battler for the parameter's base than the one set on the settings. For example, two actors' base atk grow different, even at the same level.
Actors, Classes, Enemies, Weapons, Armors, and States
<stat Plus: +x> <stat Plus: -x>
Adds/Subtract value to the "plus" in the parameter's formula.
By defaut "plus" is added to the base, like for stat-up items.
<stat Rate: +x> <stat Rate: -x>
Multiplies the value of the "rate" in the parameter's formula.
By defaut "rate" multiplies "base" and "plus", like for states that double attack for a small bit.
<stat Flat: +x> <stat Flat: -x>
Adds/Subtract value to the "flat" in the parameter's formula.
By defaut "flat" is added to the result, after the rest of the calculations.
<stat Min: x> <stat Max: x>
Sets the minimun/maximum value the stat can have.
Preference is for the higher value, both for minimum and maximum.
<Max stat Buff: +x> <Max stat Buff: -x> <Max stat Debuff: +x> <Max stat Debuff: -x>
Changes the stat's buff/debuff limit by the set number.
Skills and Items
<Apply Buff stat x Turns> <Apply Debuff stat x Turns>
Applies a buff/debuff of x turns to the stat.
<stat Buff Turns: +x> <stat Buff Turns: -x> <stat Debuff Turns: +x> <stat Debuff Turns: -x>
Changes the duration of a buff/debuff the stat may have.
<Custom stat Buff Turns> turn = x; </Custom stat Buff Turns> <Custom stat Debuff Turns> turn = x; </Custom stat Debuff Turns>
Sets the duration of a buff/debuff the stat may have to "turn".
If you have YEP_EquipBattleSkills, Skills
<Equip stat: +x> <Equip stat: -x>
Increases or decreases the stat if skill is equipped.
Functions
As mentioned before, paramId is the parameter's id in the list - 1.
battler.clearYRparamPlus()
Sets all Plus of the battler's custom stats to 0.
battler.setYRparam(paramId, value)
Sets the plus of the custom parameter to get the stat to the value.
battler.setYRparamPlus(paramId, value)
Sets the plus of the custom parameter to the value.
battler.addYRparamPlus(paramId, value)
Adds value to the custom parameter's plus.
battler.minusYRparamPlus(paramId, value)
Subtracts value of the custom parameter's plus.
battler.setYRparamCustomMin(paramId, value)
Sets the custom parameter's minimum value.
If a higher value is set through other means, the higher value wins.
battler.setYRparamCustomMax(paramId, value)
Sets the custom parameter's maximum value.
If a higher value is set through other means, the higher value wins.
battler.clearYRparamCustomLimits()
Removes limits set with setYRparamCustomMin and setYRparamCustomMax.
battler.addYRBuff(paramId, turns)
Adds a buff to the custom parameter.
battler.addYRDebuff(paramId, turns)
Adds a debuff to the custom parameter.
battler.removeYRBuff(paramId)
Removes the buffs and debuffs of the custom parameter.
battler.removeAllYRBuffs()
Removes the buffs and debuffs of all custom parameters.
battler.overwriteYRBuffTurns(paramId, turns)
If "turns" is higher, set the buff/debuff's remaining turns for it.
battler.setYRBuffTurns(paramId, turns)
Sets the buff/debuff's remaining turns.
battler.isYRBuffAffected(paramId) battler.isYRDebuffAffected(paramId) battler.isYRBuffOrDebuffAffected(paramId)
Tells if the battler is being affected by a buff, debuff or either.
battler.YRBuff(paramId)
Tells the current levels of buff on the battler.
Debuffs are negative.
battler.YRBuffTurns(paramId)
Tells the current remaining number of turns for the buff.
From here on the codes are for altering the formula values directly. Only use if you know what you are doing.
battler._YRparamPlus[paramId]
The value of the parameter's plus.
Also for items.
battler._YRparamRate[paramId]
The value of the parameter's rate.
Also for items.
battler._YRparamFlat[paramId]
The value of the parameter's flat.
Also for items.
Using parameters created with it instead of the original RPG Maker ones
While I am already coding an upgraded version of this plugin with this feature already in, it would be a very different plugin in many aspects.
Thus I thought better to release this updated for the original.
The way to use is simple: just name the parameter's command name to the same name as the parameter it will replace.
To use the original values in the base formula, that is the one in the database, classes or enemies, for the base params, and for the special and extra the combination of the traits on the character.
For base params, traits are already added to the paramRate, and equipment is already added to the paramPlus.
For the special and extra parameters, do not forget to set the minimum value. Those numbers are used as percentages, and thus are supposed to be able to reach 0 or even become negative.
Status | Released |
Category | Tool |
Rating | Rated 4.7 out of 5 stars (3 total ratings) |
Author | YoraeRasante |
Genre | Role Playing |
Tags | plugin, RPG Maker |
Download
Click download now to get access to the following files:
Development log
- A very requested updateJun 26, 2021
- Fix AddedAug 05, 2020
Comments
Log in with itch.io to leave a comment.
Hi YoraeRasante, I am not sure if you are still looking over this plugin, but I just wanted to highlight that, for some reason, when I used the notetag, <change stat base formula: x>, it does not work in certain cases, and I am not sure if it is a compatibility issue. I am not also sure if this applies to other notetags as well.
The issues I found with:
It works perfectly otherwise (like if I use the stat in Ramza's Weapon Attack Formula within a weapon instead of an enemy or just directly in the damage formula of a skill - which works for both enemies and actors).
EDIT: I can work around it with a variable, but just thought to mention this issue.
Thanks for the great plugin!
Just a couple of questions. If I want to create a new resource pool that is neither HP, MP or TP, can this plugin work and have the corresponding notetags in Skills and Items for the custom resource cost? If yes, can this resource pool be displayed (e.g. I want a new resource pool called Power Points or PP, along with HP, MP and TP, is this possible)?
Sorry, but for now my plugin is limited to parameters. You can, of course, make one for maxPp to change with equip and the like, and one for currentPp that you could set its base to always be maxPp but lower at each use with its plus/flat and set those back to 0 with script calls.
Displaying, however, you would need another plugin to draw the gauge. Even my normal parameters are not shown by my plugin without an outside plugin, even on the status screen.
But for simpler use... may I suggest Frogboy's plugins? It has a plugin that could be perfect for those, his FROG_Health. https://github.com/FrogboyMV/Health (pretty sure you'll need his Core plugin to use it though. https://github.com/FrogboyMV/FROG_Core)
Right now, I'm in the works on a new version of this one with new features including changing the default parameters too, and adding the new parameters you make to the status menu if you so wish. I guess making new resources instead of just parameters could be a good addition.
Thanks for the suggestion! I will need to go through the plugins and see how they work. Hopefully, they do not conflict with my other plugins I am using. I am generally reluctant to add more plugins unless I know they are compatible with what I already have due to the game mechanics I am already planning, but fingers cross that this will work wonders.
Going through FrogBoyMV's plugins, it seems they are trying to re-create a more WRPG experience, compared to the standard ERPG mechanics that comes with RPG MV and most plugins. Would be very interesting if both can be merged into 1 single game (e.g. Frog's Magic combine with Yanfly's Skill Core). Thanks again!
Hi, sorry, I downloaded Frogboy's plugins, and while I love the idea they have, it is rather difficult to understand (I have very little idea about JS). Think I will have to wait for your new version, but no pressure :p, as I put my game on hold as I am still doing world building.
Also, would you be working on a status menu plugin? I am using YEP's status menu which is great, but I am not able to customize the parameter page (only the Attributes page, which are for Ex and Sp Params, which I mostly reduced to Ex Params as I am not using Sp Params as mechanics much, plus Ramza's Dual Wield params).
Lastly, where should this plugin go, assuming I am running all the core engines from Yanfly? The reason I am asking is that I keep getting an error whenever I tried to open the menu.
Sorry, but I won't work on a status menu plugin of my own. I could to be sure but it would be kinda limited to what I would think it should be... and I don't like limiting the users that much to my own tastes. Mainly because I am aware I'm not a great visual designer.
Instead, my plan is to give you options to show on the current status screen, and add functions to make it easier to get the information you need for adding them in your own custom menus. Maybe some status screens will even already take the changes from the default one, would save the users lots of work.
Hmm, what exactly is the error? I used to use them myself, and never had any problems.
I usually put my plugins under all Yanfly ones, but to be honest I don't think it should cause a problem no matter the position it is put on. Or well, didn't until you said you got an error.
If you could show me a screenshot of the console (some projects open it with F8, others with F12, no idea why, a project I made myself always opens with F8 but some people sent me only open with F12), the default error screen doesn't give barely any info save that an erro happened. Yanfly's makes it give some extra info, but it is not as easy to read as in the console itself and there may be more relevant info the error screen doesn't show.
Thanks for looking into this. I managed to open the console with both F8 and F12. I also have the error from YEP. Please find the screenshot attached.
sorry, but I should have made it clearer... the console window has many tabs, and that tab you put there seems to be the "elements" tab. The one I need is the "console" tab.
that said, I think I did find the cause of the problem through Yanfly's error message, seems like I forgot to initialize the buffs of the new parameters with the new characters, somehow in my tests it skipped any checks without it being initialized before being checked... but that's ok, that's what tests are for, I think it may be fixed now.
Would you mind testing for me? A new save file may be needed for that, sorry.
Hi, just wanted to let you know, the Frog_Health plugin is not possible to use for extra skill resources at the moment. I read through the forum on RPG Maker forum, and the last message from FrogBoy for the plugin was Dec 2018 where they mentioned that this is in the future plans, but it seems that they have at least temporarily stop further development (last message was Nov 2019 answering some questions on the plugin).
NeMV has a plugin that might work, but it won't show on the status screen or battle window from what I can tell, and they have stopped maintaining it since 2017 as well.
So...you're my only hope for now, huhuhu. This is a great plugin regardless, and thank you for making it, cos it's incredibly user friendly.
And also, where I can put the code battler.(command Name)?
anywhere you would use atk for example.
So if you have a parameter with the command "will", in a damage formula you would put for example a.will*4 - b.def*2
Hello! I want to make states that gives buffs and debuffs that are not on percentages. For example: Attack Buff that gives +3 ATK. How can I do that by changing the Base Parameter Formula?
If you look in the formula, the value is multiplied by the buff rate. Just change it to add instead.
But you will also need to change the buff rate formula to use properly.