Dynamic Custom Parameter modificators on states

ScorchedGround

Blizzards most disappointed fan
Veteran
Joined
Apr 12, 2020
Messages
331
Reaction score
486
First Language
German
Primarily Uses
RMMV
Ayy, it's me again, woohoo.

So anyways, I have been playing around with some passive skills recently.
Basically, you learn passive skills that apply passive states on the actors (via. MrTs_PassiveSkills)

Possibly affiliated plugins:
YEP_BuffsStatesCore
YEP_BaseParamControl
MrTs_PassiveSkills

So anyways, I want to make a state that increases the affected actors ATK by 20% of their MAT.
e.g. : a.atk += a.mat * 0.2


I haven't found any way to do it with any plugin mentioned.
YEP_BaseParamControl let's you add modificators, but these are static values by nature and YEP_BuffsStatesCore only let's you execute effects at certain points during actions in battle.

Is it somehow possible to achieve or are there any alternatives?
 

Trihan

Speedy Scripter
Veteran
Joined
Apr 12, 2012
Messages
2,604
Reaction score
1,961
First Language
English
Primarily Uses
RMMV
Yanfly's Auto Passive States plugin allowed you to set states as passives, so you'd just have to create an on apply effect for it that calls user.addParam(2, user.mat * 0.2)
 

ramza

Lunatic Coder
Veteran
Joined
Jan 28, 2013
Messages
781
Reaction score
492
First Language
English
Primarily Uses
RMMV
Yanfly's Auto Passive States plugin allowed you to set states as passives, so you'd just have to create an on apply effect for it that calls user.addParam(2, user.mat * 0.2)
Auto-Passive states are never applied, or removed, so Apply and Remove effects never occur for them.

You can modify the function that determines parameters directly via aliasing it. I have done this in my own project to increase base parameters by a percentage of other base parameters.

JavaScript:
var Ramza = Ramza || {}
Ramza.tweaks = Ramza.tweaks || {}
Ramza.tweaks._actorParamPlus = Game_Actor.prototype.paramPlus
Game_Actor.prototype.paramPlus = function(paramId)  {
    if (this.isStateAffected(320) && paramId == 3){
        //has priest mastery and checking for def
        var updateDef = Ramza.tweaks._actorParamPlus.call(this, paramId)
        var bonusDef = Math.floor((Ramza.tweaks._actorParamPlus.call(this, 5))/10)
        updateDef = updateDef + bonusDef
        return updateDef;
    }
}
In this code snippet, I check for a state active on the actor, and then if found, it adds bonus defense to that actor based on their mdf.
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Profile Posts

Our latest feature is an interview with... me?!

People4_2 (Capelet off and on) added!

Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
Can someone recommend some fun story-heavy RPGs to me? Coming up with good gameplay is a nightmare! I was thinking of making some gameplay platforming-based, but that doesn't work well in RPG form*. I also was thinking of removing battles, but that would be too much like OneShot. I don't even know how to make good puzzles!
one bad plugin combo later and one of my followers is moonwalking off the screen on his own... I didn't even more yet on the new map lol.

Forum statistics

Threads
106,035
Messages
1,018,454
Members
137,821
Latest member
Capterson
Top