Since you're using visustella, you might look at their "javascript snippets" or quick functions.
They're in the Core...down near the bottom, I think.
They're basically js functions that can be used globally.
There are a few random type functions. The one I use a lot of is "randomfrom" which
let's you give a list of numbers from which it will pull one out at random.
So like "randomfrom(10,20,30,40)" will randomly give you 10,20,30 or 40.
The official VisuStella notetag help thread
● ARCHIVED · READ-ONLY
-
-
No I mean, the script is one item per instance. isn't there a $gameMessage.add(You got \\LastGainObj from the chest!) for gold?If it's limited to 1 you can just take out the loops.
-
Oh I completely missed this! thanks!Since you're using visustella, you might look at their "javascript snippets" or quick functions.
They're in the Core...down near the bottom, I think.
They're basically js functions that can be used globally.
There are a few random type functions. The one I use a lot of is "randomfrom" which
let's you give a list of numbers from which it will pull one out at random.
So like "randomfrom(10,20,30,40)" will randomly give you 10,20,30 or 40. -
Hey, just 1 question about the BTB system and chain battles... is there anyway for BP amount to carry over to next chain. each chain reset BP back to 0, I wanna stop that.
-
If there isn't a parameter or notetag for it, you'd have to override it with a plugin.Hey, just 1 question about the BTB system and chain battles... is there anyway for BP amount to carry over to next chain. each chain reset BP back to 0, I wanna stop that.
-
yea i check everywhere and by plugin you mean my own js plugin? its possible just curious if there was a easier wayIf there isn't a parameter or notetag for it, you'd have to override it with a plugin.
-
Looking at the docs, it might be possible, but it will be a pain in the butt.
You can use VS battle core to run a "post battle" common event.
In that event you could make note of the BP value for each party member and
then stick it in a variable for each actor.
Then...you could use the chain battle "Next Victory Queue Common event" command, and have a common event that then assigns those variables to each actor's BP. However, that might not work, since I expect they'll get re-initialized when the battle actually commences.
So, you might have to put it in the very first Troop Event page...
In any case, it would be a pain, and getting the timing right from an eventing/plugin running commands standpoint will take some effort.
A better option would be to put in a feature request to the VZ team via their website. They already maintain hp, mp, tp, etc as part of the plugin. You might ask them to make BP carry over one of the options. -
I had a similar idea, but slightly different. I would have a post-battle common event that stores each actor's BP in a property, and then a base turn 0 troop event that sets each actor's BP to the stored value and deletes the property.Looking at the docs, it might be possible, but it will be a pain in the butt.
You can use VS battle core to run a "post battle" common event.
In that event you could make note of the BP value for each party member and
then stick it in a variable for each actor.
Then...you could use the chain battle "Next Victory Queue Common event" command, and have a common event that then assigns those variables to each actor's BP. However, that might not work, since I expect they'll get re-initialized when the battle actually commences.
So, you might have to put it in the very first Troop Event page...
In any case, it would be a pain, and getting the timing right from an eventing/plugin running commands standpoint will take some effort.
A better option would be to put in a feature request to the VZ team via their website. They already maintain hp, mp, tp, etc as part of the plugin. You might ask them to make BP carry over one of the options. -
Okay, so the way the armor scaling calculation works is this:
First of all, it replaces each instance of b.def, b.mdf, b.agi or b.luk with
Math.max(this.applyArmorModifiers(b, %1), 1), where %1 is the replaced parameter. This applies armour modifiers to b and returns the maximum between that value and 1 (meaning modifiers can't cause the value to be 0 or negative).
It then calculates the damage value as normal, taking the max value between the evaluated formula and 0.
If the action deals HP or MP damage and is not certain hit, the defender's armor is applied:
If the action is a physical attack, we start with target's def, or mdf if it's magical.
We then apply armor modifiers to the target using the relevant parameter.
If armor is greater than or equal to 0, we multiply value by 100 / (100 + armor). Otherwise we multiply value by 2 - (100 / (100 - armor)).
Applying armour modifiers just bundles up all the armor reduction/penetration notetags and reduces them into a final value. For example, let's say you attacked an enemy with 101 def and a 20 flat armour reduction state while equipped with a weapon that has 5% armour penetration.
First the flat value will be subtracted from the enemy's def, giving 81. Then that will be reduced by 5% for the weapon, resulting in the enemy having 76.95 def.
Let's say your weapon attack damage calculation was 50. Ordinarily with no modifiers the enemy's 101 def would reduce that to: 50 * 100 / (100 + 101) = 25. With the armour reduction and penetration, the attack will deal: 50 * 100 / (100 + 76.95) = 28 instead.
Yep, absolutely. You could incorporate target.gainTp(-value) into a pre-damage as user notetag on the skill.
Theoretically you could do
enabled = $gameActors.actor(3).isTpbCharged();
If you put that in the skill notetag, it should make it so that the skill can only be used when actor 3's ATB is full.
I'm curious as to why you need to do that on a skill when you can define the element of it in either the damage settings or a multi-element notetag and that rate will be calculated for you. Or are you trying to incorporate additional elemental damage beyond what the skill already deals?
1. Yes you can, with the script
SceneManager._scene._lightContainer.children.find(child => child instanceof Sprite_LightSpawn && child._source.eventId === {id of the event the light was spawned on}).destroy();
2. It seems that only one light can be attached via notetags, but the first solution should sort out your problem.
Actually, what I wanted to ask was if we could assign elements directly to the hp damage in the notetags.
For example, it is normally written like this, right?
damage *= user.elementRate(elementId);
or
damage += user.elementRate(elementId);
But for example, let's say I don't like using rates. Or I like to use this code as well with rates:
<Received Element id Plus: +x%>
I'm wondering how I can add this to the state notetags. Because the rates increase proportionally,it's a bit limiting :D -
Hello guys, i'm stuck with a problem on Action Sequence (battlecore)
What i'm trying to do :
My character use a self target spell (he eat something with an animation)
In the Action sequence, everything work as expected for this.
But i've the idea to add a random variable, if the variable is less than 10, the character didnt heal himself, and throw his food to an ennemy.
And this is where it fail, i try to use this :
TARGET: Random Target
- Sets index randomly to determine new current target.
But this dont give me any random target, every time the food is just throw on my character and he took the damage because he's the "current target" with the self-target skill.
And if i put this skill on "target ennemy" i had to choose an ennemy everytime i just want to heal myself and it look bad.
If only we could get "random target" in this menu, it would be easier for me
My action sequence look like this :
I've try some random stuff like putting ["random target"] directly on the text sequence ; or use the "force action" basic event with my character using a blank skill (in case it add a target with this, but it wont work)
I just want to choose a random target, nothing more
Maybe there is another solution ? -
@Kazuo Would it make a difference if the scope on the actual skill in the database were set to 'Enemy & Ally'? But perhaps you already have that.
-
I recall a thread trying to get a random target in action sequences and @Arthran wrote a plugin extension to add that functionality.If only we could get "random target" in this menu, it would be easier for me
But I don't recall what thread that was, so hopefully they'll be able to chime in and repost it. -
It "work" for the random part, but my character can be hit with the spell :/@Kazuo Would it make a difference if the scope on the actual skill in the database were set to 'Enemy & Ally'? But perhaps you already have that.
I recall a thread trying to get a random target in action sequences and @Arthran wrote a plugin extension to add that functionality.
But I don't recall what thread that was, so hopefully they'll be able to chime in and repost it.
Oh i would love to get this, it will solve my problem
EDIT : ok i've find this thread, and it work !
MZ - Check if enemy is dead - VisuStella Action Sequences
With just the following instruction from @Arthran everything work !
Thanks you -
Hello. Usually, I just lurk and read through the threads to try and figure stuff out myself, but I can't quite get this to work...
So, I want a "stackable" state that provides a set amount of guaranteed misses and/or evades (preferably only against directly damaging skills, and not against "non-damaging" skills that only apply states & debuffs, IF possible). After each dodge, the state's visible duration ticks down by 1 or removes it when would reach 0.
I'd also prefer it be applicable to any actor or enemy battler, as well.
From what I can tell, I need the VS scripts because that lets me detect whenever a miss/evade happens. I thought I had it working in Common Events without even needing the notetags, but when I tried it with a simple 5-hit repeating damage skill, it would only tick down by 1 instead of by 5...
Any suggestions? (And is there a way to affix the code to the state or something, to avoid having to copy it onto every single actor/class/battler/damaging skill?)
(Also, sorry, I know you've had state-stacking examples previously in here, but I just can't seem to get it all to work together.) -
Hi, its possible to show the HP value of enemy bar ? I want to see how much HP have enemy when fighting them, not just the "blank" hp gauge.
I dont find any option for this in battlecore -
Hello, so I'm trying to create a Frost Barrier which inflicts a freeze state on the attacker.
Frost Barrier State:
<JS Post-Damage As Target>
user.addState(31)
</JS Post-Damage As Target>
it works when an enemy hits me but it also freezes me when I use a potion on myself or when an ally heals me for example.
Any help would be greatly appreciated.
Thanks
Edit: I think if found the solution :
<JS Post-Damage As Target>
if (user.isEnemy()) {
user.addState(31);
}
</JS Post-Damage As Target> -
Is there any easy way to draw the ex parameters for weapons in the item status windows?
We would only need to draw the ones that are altered by the weapon, so any of the values that aren't 0. -
Hello, I have some problems with the Battle AI script, I don't know if it's me who's doing it wrong, but my characters in automatic mode absolutely don't take into account my notetags...
For instance :
<All AI Conditions>
Target Has State 4
</All AI Conditions>
<All AI Conditions>
HP% < 0.2
</All AI Conditions>
do not work at all, I specify that my actor AI lvl is 100
Another thing, the taunt system works but when auto fights are activated the characters don't take taunts into account at all...
I don't see where the problem is, I only use scripts from Visustella -
Hey all, sorry I haven't had much time to update this lately. I'll get to the next batch of questions as soon as I can.
-
Hello,
I've some key binding problem.
I use Visustella battle core & button common event.
I've setup a "flashlight" who's activate by pressing "1" key (or pageup, as secondary)
This work without problem, but by laziness i've try to play with my Xbox controller. I can move, use menu, item, everything work fin, exept the flashlight trigger.
LB & RB are supposed to be, directly from the official RPGmakerMZ page :
( https://rpgmakerofficial.com/product/MZ_help-en/index.html#t=01_06.html )
And my RB / LB button are working, because if i do a simple event
"if pageup is press > Text : OK "
my LB button work, as my pageup keyboard, both show me "ok" as text.
In the ButtonCommonEvent plugin, i've setup both "key 1" and "pageup" shortcut to activate the same flashlight event, both work on keyboard, but not with the gamepad.
& i dont find anything to "activate" the controller in the Core plugin (even if the gamepad work perfectly)
Did i do something wrong ?