The official VisuStella notetag help thread

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
7,573
Reaction score
5,331
First Language
English
Primarily Uses
RMMV
Asking one of my own here since I'm completely stuck
I'm trying to isolate a base parameter in the parameter formula in Core Engine.
This thread is asking about notetags for the VisuStella plugins. Since your question is about something different, you'll get more and better answers if you start your own thread.

You could use the JS Param Plus notetag, but that will only modify the end result you get in some parts of the engine, not change the actual value of ATK, so I don't think it's what you want.
 

Trihan

Speedy Scripter
Veteran
Joined
Apr 12, 2012
Messages
6,011
Reaction score
5,982
First Language
English
Primarily Uses
RMMZ
Asking one of my own here since I'm completely stuck
I'm trying to isolate a base parameter in the parameter formula in Core Engine.
How do I do that?
Basically: Changing only how ATK works and no other parameters, how can I do that when it's 1 formula for all of them?
You can split the formula by stat by branching on the paramId.
 

KG2020

Villager
Member
Joined
May 11, 2021
Messages
6
Reaction score
0
First Language
English
Primarily Uses
RMMZ
VisuMZ_1_OptionsCore > Options Categories > "General" > Options List > "alwaysDash" > Data > JS: Default Value > change true to false.

Thank you for showing me where to look, and what value to change. Everything is working perfectly now.
 

NaosoX

Veteran
Veteran
Joined
Feb 28, 2013
Messages
634
Reaction score
362
First Language
English
Primarily Uses
RMMZ
You're welcome, mate!
 

Trihan

Speedy Scripter
Veteran
Joined
Apr 12, 2012
Messages
6,011
Reaction score
5,982
First Language
English
Primarily Uses
RMMZ
Any outstanding questions that haven't been answered yet?
 

jgdeutsch

Veteran
Veteran
Joined
Aug 18, 2021
Messages
42
Reaction score
18
First Language
English
Primarily Uses
RMMZ
Any outstanding questions that haven't been answered yet?
Hi, yes, I got this feedback from a developer.

Developer A is using VisuStella's Battle Core Plugin.

Developer B is trying to add a custom battle event (described in this brief)

Here was the feedback from Developer B:

While VisuStella is famous for it convenient plugin for MZ (which is ported from MV), ALL their plugins in the library are OBFUSCATED. This means that developer like us don't even know a clue when happen inside these code. Right now i'm trying to do what i can. I'm researching to know their way of "inject code into notebox", or something familiar.

Does that make sense to you? How should I reply to Developer B?
 

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
7,573
Reaction score
5,331
First Language
English
Primarily Uses
RMMV
Developer A is using VisuStella's Battle Core Plugin.

Developer B is trying to add a custom battle event (described in this brief)

Does that make sense to you? How should I reply to Developer B?
Well...it makes sense insofar as what he said is true. VisuStella code is obfuscated so it's impractical to reverse engineer or add things to it.

I'm not sure it makes sense to me why that matters for your battle event. Action Sequences in VisuStella are run by calling a common event, so I don't understand why you wouldn't simply do that and use the regular event commands to show the text box, image, choices, etc.

I'm not sure why any coding would be necessary for this.
 

Ys42

Veteran
Veteran
Joined
Nov 24, 2019
Messages
36
Reaction score
7
First Language
Ukrainian
Primarily Uses
RMMV
if (value > 0 && this.isHpEffect() && target.mp > 0) {

var mpDmg = Math.floor(value);

target.gainMp(-mpDmg);

value -= mpDmg;

}
this is the code I run inside a passive state to make a "mana shield". But, when the damage occurs, it displays 2 numbers, 0 for HP damage and some number for damage to mana, unless mana is 0. How do I remove that zero number popup, if character has mana for shield?
 

Trihan

Speedy Scripter
Veteran
Joined
Apr 12, 2012
Messages
6,011
Reaction score
5,982
First Language
English
Primarily Uses
RMMZ
Hi, yes, I got this feedback from a developer.

Developer A is using VisuStella's Battle Core Plugin.

Developer B is trying to add a custom battle event (described in this brief)

Here was the feedback from Developer B:

While VisuStella is famous for it convenient plugin for MZ (which is ported from MV), ALL their plugins in the library are OBFUSCATED. This means that developer like us don't even know a clue when happen inside these code. Right now i'm trying to do what i can. I'm researching to know their way of "inject code into notebox", or something familiar.

Does that make sense to you? How should I reply to Developer B?
As ATT_Turan said, action sequences are controlled by common events. This means you can inject javascript into them, so I don't see why you couldn't achieve the brief's effect with the VisuStella plugins without needing to know the code.

That said, there's a compatibility channel on VisuStella's Discord where developers can go if they need some help figuring out how to fit their plugins in alongside VS functionality.

this is the code I run inside a passive state to make a "mana shield". But, when the damage occurs, it displays 2 numbers, 0 for HP damage and some number for damage to mana, unless mana is 0. How do I remove that zero number popup, if character has mana for shield?

I'm not sure about this one. I'll have to have a play with it and see.
 

NaosoX

Veteran
Veteran
Joined
Feb 28, 2013
Messages
634
Reaction score
362
First Language
English
Primarily Uses
RMMZ

Trihan

Speedy Scripter
Veteran
Joined
Apr 12, 2012
Messages
6,011
Reaction score
5,982
First Language
English
Primarily Uses
RMMZ
You might be able to stop the popup if you add

target.result().hpAffected = false;
 

GHNeko

Sega Stockholm Syndrome.
Veteran
Joined
May 28, 2018
Messages
37
Reaction score
2
First Language
English
Primarily Uses
RMMZ
Anyone know a method of grabbing data from actor values such as actor.hp prior to expiry ON expiry?

Like for example, a buff that increases max HP by 100%, so you would go from 100 max hp to 200 max hp and right before the buff expires, your current HP is at 150. I'm trying to parse that 150 current hp into a variable to reference in the on-expire notetag for calculations and keeping current hp proportional after the max hp buff expires.

tldr - looking to keep current hp the same/proportionate after a max hp buff expires. i already figured out how to keep it as such when applying the buff.
 

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
7,573
Reaction score
5,331
First Language
English
Primarily Uses
RMMV
Like for example, a buff that increases max HP by 100%, so you would go from 100 max hp to 200 max hp and right before the buff expires, your current HP is at 150.
You can just add a variable to the actor itself. So in your expiration notetag for the buff, you'd just throw something in there like:
Code:
user.moddedHp=user.hp;
presuming that notetag is executed before the buff and its effects are removed.

Then that will stay on the actor for you to use with other things.
 

Ys42

Veteran
Veteran
Joined
Nov 24, 2019
Messages
36
Reaction score
7
First Language
Ukrainian
Primarily Uses
RMMV
Thank you all for your answers, very helpful.
Another question - Id like to make a mechanic through a notetags, but dont really know where to look fro any code example. Idea is simple:
Default MV combat. My character, say X, attack enemy, Y. If no one else has attacked the enemy, the enemy is marked, and then, if any OTHER my character, say X2 or X3 attack same enemy Y, they deal more damage.
Alittle bit clarification - If my character X would attack with multihit, it WOULDNT increase subsequent attacks damage.
UPDATE: Also, if character X attack enemy Y on his turn, then he would receive increased damage from all other enemies Y1,Y2 etc, but not Y
 
Last edited:

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
7,573
Reaction score
5,331
First Language
English
Primarily Uses
RMMV
Another question - Id like to make a mechanic through a notetags, but dont really know where to look fro any code example.
You don't need notetags for this - you can just add it to the damage formula.
Code:
if (b.hp==b.mhp) b.addState(X); then your damage formula

and have that state inflict a penalty to physical elemental rate.
Alittle bit clarification - If my character X would attack with multihit, it WOULDNT increase subsequent attacks damage.
I have no immediate idea how you would simply accomplish that. I guess you'd have to program the whole skill out hit for hit using action sequences and change the damage amount each hit (or remove and then re-apply the state).
 

Ys42

Veteran
Veteran
Joined
Nov 24, 2019
Messages
36
Reaction score
7
First Language
Ukrainian
Primarily Uses
RMMV
You don't need notetags for this - you can just add it to the damage formula.
Code:
if (b.hp==b.mhp) b.addState(X); then your damage formula

and have that state inflict a penalty to physical elemental rate.

I have no immediate idea how you would simply accomplish that. I guess you'd have to program the whole skill out hit for hit using action sequences and change the damage amount each hit (or remove and then re-apply the state).
UPDATE: Also, if character X attack enemy Y on his turn, then he would receive increased damage from all other enemies Y1,Y2 etc, but not Y

And, about your statement. Yes, it would work (partially) but, it would work even enmy attacked me first, and then X attacked back.
 

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
7,573
Reaction score
5,331
First Language
English
Primarily Uses
RMMV
UPDATE: Also, if character X attack enemy Y on his turn, then he would receive increased damage from all other enemies Y1,Y2 etc, but not Y
I am now confused, because why would your enemy receive increased damage from other enemies? I'm just really not sure what this is saying.
And, about your statement. Yes, it would work (partially) but, it would work even enmy attacked me first, and then X attacked back.
Just make the skill that your player counters with not be this skill.
 

WilsonE7

Veteran
Veteran
Joined
Oct 12, 2019
Messages
139
Reaction score
68
First Language
English
Primarily Uses
RMMZ
@ATT_Turan I think Ys42 is saying they want their skill to increase the damage dealt to the user by all enemies except the target of said skill.

@Ys42 It sounds to me like you might want aggro. You could have the skill increase the target rate of the user, so he'll be targeted more often by all enemies (and thus receive more damage). That makes more sense to me from a behavioral perspective. After all, why would all enemies except the target get mad and deal more damage? When asking for help implementing a skill mechanic, it's best to explain why you want it to work a certain way so we can help you find more efficient ways to achieve the same or similar results. You should tell us, not just what you want the numbers to do behind the scenes, but what you want the player to see the skill doing (like, "the user provokes surrounding enemies to draw their attention").
 

ATT_Turan

Forewarner of the Black Wind
Veteran
Joined
Jul 2, 2014
Messages
7,573
Reaction score
5,331
First Language
English
Primarily Uses
RMMV
I think Ys42 is saying they want their skill to increase the damage dealt to the user by all enemies except the target of said skill.
...maybe? That's directly opposite to the first description in post 474:
My character, say X, attack enemy, Y. If no one else has attacked the enemy, the enemy is marked, and then, if any OTHER my character, say X2 or X3 attack same enemy Y, they deal more damage.
 

WilsonE7

Veteran
Veteran
Joined
Oct 12, 2019
Messages
139
Reaction score
68
First Language
English
Primarily Uses
RMMZ
...maybe? That's directly opposite to the first description in post 474:
Uh...oops. Okay, I have now learned to look farther back in the posts before I give my input. Sounds like he needs to apply two states: one to the enemy for the "mark" and one for the user for the increased damage. And now I must admit that I don't know exactly how he would set up the states. Hey, @Ys42 are we talking about a skill that does this? Or does the actor just do this with any attack? If the former, then you could set up states (I still don't know the exact code) that are applied by the skill. In the case of the latter, maybe you could set up passive states...?
 

Latest Threads

Latest Posts

Latest Profile Posts

On the "things im remaking" department even i kept getting confused by my status grenades similarity so i decided to redo both of them, now the icons and being thrown animations are very distinctive from each other :kaopride:
1679511126658.gif
1679511135459.gif
I genuinely like the default MZ actor sprites, and the character creator. I think I will draw new headshots for them, but part of me doesn't want to replace the default sprites. But should I? I want to eventually release my game.
Someday, I hope they make a game where 95% of the animation budget went to turning valves and opening door animations, leaving every other animation looking like a CDI zelda cutscene.
programming at 12 years old: "I love how it works!"
programming at 18: "I love that it works."
programming at 25: "I love why it works."
programming at 30: "I love when it works."
programming at 50: "How did this work?"

Forum statistics

Threads
129,766
Messages
1,204,948
Members
170,858
Latest member
MaryMarryMe
Top