A downloadable RPG Maker Plugin

Download NowName your own price

Introduction

If the actor has state id X he gains a +10 attack boost! 

Easy?

But if the actor has class id X and is equipped with weapon Id X and also has state id X, then he will have a +50 ATK boost! 

Not too complicated?

If an actor has a state id X, and his level is below 4, equipping a sword, using a class id X, and his name is Harold, then he will have an HP boost of 1000!!!

Got it?!

This plugin lets you implement dynamic parameter values to battlers(actors or enemies) through the weapons, armor, or state note tags!

You can use fixed values or check for a condition to apply the bonus!

*For the equipment feature, only work on enemies if you have the Eli_EnemyClass.js

Features

  • Dynamically add values to battler parameters through note tags!
  • Support States, Weapons, and Armor!
  • Support all types of parameters!

Help File / How to use

Terms of use

StatusReleased
CategoryTool
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
AuthorHakuen Studio
Made withRPG Maker
Tagshakuen-studio, mz, plugins, RPG Maker, RPG Maker MV, RPG Maker MZ, rpg-maker-plugin, tools
Average sessionA few seconds
LanguagesEnglish

Download

Download NowName your own price

Click download now to get access to the following files:

MZ - Dynamic Parameters 5.0.1 4 kB
MV - Dynamic Parameters 5.0.1 4 kB

Development log

View all posts

Comments

Log in with itch.io to leave a comment.

I found out that formulas in settings can't take "user" or similar stuff into calculations
Math.ceil(-user.atk * 0.5)
I tried that, and it resulted in crash
Would be cool, if it could take stuff like that into consideration.

Hi!

"user" will not work because it does not have on the default code, it's undefined. You need to use "this" without qoutes. It will reference the current actor using the equipment.

  • this.atk
  • this.def

etc...

"user" keyword is implemented by other plugins, usually to refer to the battler.

On my plugin I use the standard code provided by RPG Maker.

I found out you can't put two DynParams notetags at the same time, since only one of them will work. Not sure if it's can be fixed, but here is video evidence.

Hi!

Yes, it will not work. But why do you want to use two DynParams note tags? You don't need that. You can use a single template to raise  both ATK and MHP.

I thought it could be convinient to utilize two already existing ones instead of creating new one, but okay, it's not a big issue.

Ok then, have fun! :)

So, I decided to do a playtest, and I got this error for Dynamic Params, and got TypeError: Cannot read property "param" of undefined. I tried removing all the templates, and it did nothing. I figured it might be a load order problem, so I took a screenshot up till the end of VS tier 1 (and can screenshot more if necessary). Any ideas on how to fix this?


Hi there!

I know some VISU and Dynamic parameter work together because I already tested it with some other people. I guess the problem could be another plugin or a bad configuration of the plugin parameter.

But the error points out that it cannot read property param of undefined. It happens on the second red mark:

This error could only happen if the DynParams is undefined. But that is not possible by default, because the DynParams are being created on the data($dataStates o $dataWeapon or $dataArmor).

My guess is a compatibility problem. Maybe put my Dynamic parameter and other plugins(except the Eli Book) somewhere at the bottom of your list. 

If that not work, leave only my plugins ON and test it. If the plugin works, then it is a compatibility problem. You will have to enable one plugin and playtest. And keep repeating the process until the error triggers again. When it does, you tell me what was the latest plugin you set to ON on the plugin manager. 

(1 edit)

I tried turning everything off but Eli Book, Dynamic Parameters and Custom Parameters and still got the error, though other parts of the log changed. Is there a minimum engine version number for the plugins to function?

Itch isn't letting me send a screenshot for some reason (I had this problem initially when I tried to send screenshots in the original comment and I don't remember what I did to fix it), so I copied the text from the log instead.

rmmz_managers.js:2036 TypeError: Cannot read property 'param' of undefined

    at Object.setMetaDynamicParams (EliMZ_DynamicParameters.js:494)

    at Object.setBaseDynamicParams (EliMZ_DynamicParameters.js:486)

    at Scene_Boot.processDataStates (EliMZ_DynamicParameters.js:529)

    at Scene_Boot.processDatabaseNotesAndMetas (EliMZ_Book.js:1982)

    at Scene_Boot.onDatabaseLoaded (EliMZ_Book.js:1953)

    at Scene_Boot.isReady (rmmz_scenes.js:280)

    at Function.SceneManager.updateScene (rmmz_managers.js:2105)

    at Function.SceneManager.updateMain (rmmz_managers.js:2063)

    at Function.SceneManager.update (rmmz_managers.js:1942)

    at Function.Graphics._onTick (rmmz_core.js:811)

On MZ if the plugin order is wrong, a warning should pop up on the bottom of the plugin manager. Take a look at that. Dynamic Parameter must be after Class Curves and after Cap Parameter Control.

Otherwise, may be something related to the plugin parameters. Make sure all the custom parameters you created are also present on the class curves. If you created 4 new custom parameters, you must add 4 new custom parameters on the class curves plugin parameters.

If none of that works, then send me a sample project so I can take a look.

(Itch io does not seem to accept copy-and-paste images. You need to save the images as a file and then upload it on the itch io post.)

(2 edits)

I fixed the plugin order, then noticed that in Class Curves, the case was different in param short names listed in templates. It said they don't affect the code, but I changed them to match anyway. I then noticed that some of the templates' custom parameter values were below the minimum set in the plugin parameters and fixed that. None of these things worked, but I may have realized the problem while working on them: all custom params but two have growth chance, minimum and maximum increase on level up set to zero, and every template is like this, since I want to only change them through plugin commands. Another possibility is that the max value for some custom params in some templates is 1000, and I'm not sure if your plugins limit parameters to 999 or not.

I deleted the original post typed above because I hadn't actually verified yet. I tested on a blank project with only Eli Book, Custom Parameters, Class Curves and Dynamic Parameters. It was neither of those things, it seems.

(1 edit)

I figured it out. It's the states they're attached to. Are there restrictions on what characters can be used in template names (and is there a character limit)? Because mine have numbers in them and have long names. The longest one has 27 characters.

Hi. I plan to use this plugin to buff custom params from your custom parameters plugin in two ways while specific states are applied, and I was wondering how to do two things regarding the formula boxes for dynamic param changes. One is to buff/debuff by specific percentage rather than a flat value, and the other is to add a partially-randomized flat value (specify minimum and maximum potential values) to the custom param whenever the state is applied which stacks with itself if the state is reapplied, and then of course reset to 0 when the state is cured.

Currently, you can't do the percentage thing without triggering an error in stack size. But you can increase the flat one.

You need to apply a Dynamic Parameter tag on the state you want. This way, those dynamic values will only be present on the actor while it does have the state.


Both this plugin and the custom parameter one are about to have a rewrite for MZ. There are a lot of things to improve on them to allow such things.

Thanks for the help. It occurred to me while tweaking things in other presets that I don't know how to have presets set a param/custom param to a specific value while the state is applied rather than add or subtract to/from the existing value. How do I go about that?


Also, overhaul incoming? Good to know in advance. Glad it seems we're gonna be getting some new features xD

You can't set a specific value. The values will be added or subtracted from the current one.

Yeah, hopefully this month I will update these plugins :)

Please, help me, I downloaded plugin tomorrow, and it worked perfectly, but today it just refuses to do anything at all. On video there are necessary info, please just help me, I'm so confused, since there is no plugins I added since, but this is just stopped working.
(Character has 0 defense, and state is supposed to boost defense by 30, and enemy uses formula, that treats 1 defense as 1% of damage reduction, so it should've dealt 7 damage, and not 10)

Hi there!

I guess maybe it could be that you leave the Custom Parameter is empty. When you enter on the Custom Parameter(00:19 on your youtube video), instead of pressing cancel to leave that window, press OK. This probably will leave the custom parameter with a default value.

huh, i could've sworn this plugin used to cost money

haha! This one is free ^^

Hi there,

I'm not sure if I'm doing this incorrectly, but negative numbers don't work in this plugin. In a template, any param given a negative number sets it to -1, and only -1. If I set it to -3, -10, or -100, it simply reduces the param by 1. Positive number work correctly. Any idea why this might happen? Really need this to work for my game. Thanks.

Hi there!

What version of RPG Maker you are using?

Can you show to me a screenshot of the template you made?

Hi there and thanks for the quick response. I am using RPG Maker MZ version 1.5.0 on Mac. It's possible that I don't understand the template; however, I am able to get things working with positive values, just not negative values. 

Everything else besides the attack change is set to the default settings.

Thank you!

Hi there!

I think maybe something can be messing with my plugin on your end. Here, I did manage to make it work with negative values.

So, you are using any plugin that messes with the parameters of the actors? 

For example, my Class Curve plugin can set a minimum value for the actor to have on a chosen parameter.

Or maybe, what you are trying to say is, that you want to use the Dynamic Parameter Feature, to not just reduce a parameter, but also to make the actor himself, have a negative value. Is that it?

Like an actor with -10 atk. ?

(3 edits)

Hmm ok. The only other plugin I am using that isn't yours is the Card Game Combat plugin by MythAtelier. This shouldn't mess with parameters though. However, when I use a blank project with only your plugins, it works correctly. It must have something to do with this other plugin. Too bad because I really would love to use your plugin!

Did you try to change the plugin order? Put the Card Combat below or above the dynamic parameter?

How would I use 'this' to reference the holder of a weapon with dynamic params? I am trying to do it so the weapon will calculate the bonuses based off of custom params of the holder. So something like:

0.00005*$gameActors.actor(1).cparam(0)+0.00001*$gameActors.actor(1).cparam(1)

but instead of hard-coding $gameActors.actor(1) I want it to be dynamic. I dont have a full mastery of 'this', but that paired with how rpg maker calls events and objects makes me lost

Hi there! :D

It is very simple, in the example you showed to me, you just have to do this:

0.00005*this.cparam(0)+0.00001*this.cparam(1)

Just replace the $gameActors.actor(1) with this

Hope it helps!

<3 thank you!

(+1)

This is an extremely useful plugin, thanks!

I am using this alongside Eli Extra Params and the VisuStella suite and seem to have encountered a compatibility issue; basically, Actors seem to properly detect their Dynamic States, but enemies do not.

I'm sure it's a plugin conflict as when I change the load order it behaves differently - for example with your plugins at the bottom of the load order a handful of VS features break.

Do you have any advice on troubleshooting this?

In any case, appreciate all the great stuff you're making for MV/MZ.

(+1)

Hi there!

Glad you liked it!

I think that maybe this is not a compatibility issue. To enemies detect their Dynamic settings, you need to have my Eli Enemy Class plugin too:

https://hakuenstudio.itch.io/eli-enemy-class-for-rpg-maker

So try that first and let me know if the problem of the enemies not detecting their dynamic settings will persist.

(1 edit)

Thanks for the reply!

I did try it with the Enemy Class plugin but it didn't seem to fix the issue. That said, let me do some more testing then since I now know this is the intended use case. Much appreciated!

(+1)

Ok!

So when you are done, if you didn't manage to find the problem, then we have to try to find the compatibility issue.
What will help, is that you find the Visu plugin that is causing the issue.

Like, create a project, but only with my plugins(Dynamic Parameters, Enemy Class, and Custom Parameters), test their functionality. 

When you manage to make them work alone, then you start to add the Visustella plugins one by one. 

Add one and test. Keep going until the problem appears again. When it does, you will know the plugin that is causing the conflict. So I can try to fix this.

When you are done with the project, upload it somewhere: Google drive, dropbox, etc.

But the big problem is, as you know, Visustella has obfuscated their code, so I can't open their plugins and take a look into it. So it makes things way harder and more time-consuming than it is supposed to be. Still, I will give it a try, but I can't guarantee that I will manage to find or even fix the problem, because of their terms of use.


(+1)

I appreciate your input on this.

So, a bit of an update: The Enemy Class plugin worked, though not quite as I expected - I couldn't get Enemy Classes to detect Extra Params for some reason. However, since the Dynamic Params are now working, and I didn't really need Enemy Classes for my project scope anyway, I am pretty much happy with the result!

(+1)

Nice! Glad you manage to make them work  :)