Create a skill that can inflict random status conditions, etc. using variables and a common event.

This tutorial will cover how to create a skill that uses variables in a common event to reach a desired random effect; in this case, status conditions. Use this image as a guide for creating your own random effect skills. I will go over how it works...

The first variable you're setting up (Status Hit Chance) is your hit rate for the skill. In the example, it sets the variable to a random number between 1 and 3, giving it a 33.3% chance to hit. You can change this to whatever you please, or if you want a 100% hit rate, simply do not use a variable to determine the skill's hit rate. However, for the sake of this example, we will use one.

Next, you're going to create a Conditional Branch with an else case. Set the condition to the Hit Chance variable you've just used, and make sure it's set to "Equal to" and a numerical value that is included in your hit chance formula. This will let the branch run when your hit chance returns the same value as the conditional branch requires.

Inside this conditional branch, you want to set up a new variable, in this case it's called "Status Inflicted" because this variable will determine which status condition(s) are inflicted when the result is returned. Set this variable's operand to a random number, in this case between 1 and 5, allowing it five different status effects to be inflicted.

Before continuing, you may want to add bells and whistles such as battle animations or messages to display when the skill is used. Once you've done that, you're going to set up one conditional branch for each result you want. In this case, that would be five different branches, each set to run when the "Status Inflicted" variable returns a different value between 1 and 5 as you've set it to do. Do not add else cases to these branches, they are not required.

These conditional branches execute when the "Status Inflicted" variable returns the value that it is "Equal to" in the operand. For each value between 1 and 5, a different conditional branch will run. In the example above, I've set the skill to add statuses to the entire party. You can change this however you want, choosing instead to add a status to only one character, or two, and so on. Once you've set the desired effects, you're going to move on to the original conditional branch's Else case.

This is where you'd add your "miss" animations, etc. If the "Status Hit Chance" in this example returns a value of 1 or 2, the Else case will execute.

SO! You can use this method to create single skills with multiple effects, such a random healing spell that will either heal your party or enemies. Or, a skill that can randomly force a monster to retreat the battle, even if "Escape" isn't part of their battle command set-up. There are literally thousands of possibilities using just a couple of variables and one common event.

When you set-up the skill in the database, you want to set the scope to whatever you want (even "None" will work), and set the common event to the one you've used to code the skill. Since everything the skill does is coded by you, there is no need to add power, or stat influences to the skill, unless you want it to be able to be Silenced by the silence status condition or not (set Int F to at least 1 in this case).

Happy skill creating!